语法解析工具Marcdown、Sorbet、YACEP、MDTool介绍

以下为你介绍的语法解析工具都可用在Linux系统上:Marcdown(轻量级 markdown 查看器和编辑器)、Sorbet(Ruby 类型检查器)、YACEP(轻量级高性能表达式解析器)、MDTool(无第三方依赖的 Markdown 解析器)。

1、Marcdown(轻量级 markdown 查看器和编辑器)

Marcdown 是一个轻量级实时标记查看器和编辑器。

特点:

轻巧:采用简约的UI设计。

实时编辑器:使用MarkedJS的WYSIWYG(所见即所得)markdown编辑器,专为速度而打造。

代码高亮显示:语法高亮显示,185种语言和89种样式,自动语言检测,多语言代码突出显示。

数学支持:适用于LaTeX,MathML和AsciiMath表示法的MathJax,使用MathML,TeX和ASCIImath作为输入,并生成HTML+CSS,SVG或MathML作为输出。

PWA:渐进式Web应用程序,首次使用后可离线使用,作为Web应用程序安装在您的手机或PC上的桌面应用程序中。

实时查看器:键入时查看更改。

拖放:抓取降价文件并放到编辑器中。

滚动同步:编辑器和查看器与您一起滚动。

黑暗模式。

语法解析工具Marcdown、Sorbet、YACEP、MDTool介绍

语法解析工具Marcdown、Sorbet、YACEP、MDTool介绍

下载地址:https://gitee.com/mirrors/marcdown

2、Sorbet(Ruby 类型检查器)

Sorbet,一个快速且强大的 Ruby 类型检查器,大部分代码都是用 Ruby 编写的,为 Ruby 开发环境提供了类似 IDE 的特性,包括自动完成和跳转到定义等。

包括内容:

核心静态类型检查器。

创建新的 Sorbet 项目的工具。

在现有项目中逐步采用 Sorbet。

用于编写类型注解的 DSL。

用于共享 Ruby gems 类型定义的中央存储库。

特点:

快速且可伸缩。

简单且强大。

兼容 Ruby。

以配合团队使用的循序渐进的设计。

快速开始:

安装依赖项:

brew install bazel autoconf coreutils parallel

克隆此存储库:

git clone https://github.com/sorbet/sorbet.git

cd sorbet

制作Sorbet:

./bazel build //main:sorbet --config=dbg

运行Sorbet:

bazel-bin/main/sorbet -e "42 + 'hello'"

下载地址:https://gitee.com/mirrors/sorbet

3、YACEP(轻量级高性能表达式解析器)

YACEP是一款基于netstandard2.0构建的轻量级高性能表达式解析器。

特性:

开箱即用,内置了一系列的字面值,一元及二元操作符以及内置的统计类与时间类函数可满足大部分使用场景。

跨平台,基于netstandard2.0标准构建。

轻量级,只有500多行代码实现的轻量级词法分析器。

低消耗,词法分析器使用 ReadOnlySpan 解析字符串。

高性能,使用EMIT命名空间生成IL来构建可执行对象(查看基准测试报告)。

支持条件表达式。

支持索引器。

支持 in 表达式。

支持自定义字面量。

支持自定义一元操作符。

支持自定义二元操作符。

支持自定义函数。

样例代码:

var state = new

{

x = 7,

y = 43.0f,

z = new Dictionary<string, string>

{

["yacep"] = "yet another csharp expression parser",

["tupac-amaru"] = "was the last indigenous monarch (Sapa Inca) of the Neo-Inca State"

},

rand = new Func<object>(() => new Random().Next(1, 3)),

array = Enumerable.Range(1971, 1996 - 1971)

};

var expr = "x + y - z['yacep'].Length + max([1, 2, 3]) + (this.rand() > 2 ? 1971 : 1996) - len(array)";

var evaluator = expr.Compile();

var value = evaluator.EvaluateAs<decimal>(state);

下载地址:https://gitee.com/mirrors/YACEP

4、MDTool(无第三方依赖的 Markdown 解析器)

语法解析工具Marcdown、Sorbet、YACEP、MDTool介绍

MDTool,一个无第三方依赖的Markdown 解析器。

如何使用:

从Maven 中央仓库拉取最新版本:

<dependency>

<groupId>com.youbenzi</groupId>

<artifactId>MDTool</artifactId>

<version>1.2.2</version>

</dependency>

或者从https://gitee.com/cevin15/MDTool/tree/master/download下载。

一行代码即可使用:

MDTool.markdown2Html(new File(markdown_file_path));

或者:

MDTool.markdown2Html(markdown_content);

为什么选择MDTool:

使用简单,一行代码即可。

支持基本的Markdown 语法。

支持表格语法。

支持待办列表。

无任何第三方依赖。

下载地址:https://gitee.com/cevin15/MDTool

注明

以上就是语法解析工具Marcdown、Sorbet、YACEP、MDTool的介绍内容,这些语法解析工具都能使用在Linux操作系统中。

栏目相关文章