Mathics和Wolfram语言的字符表和词法分析器。
项目描述
Mathics字符表和扫描器
此存储库实际上包含了两件事
描述WL符号和运算符及其属性的详尽表格
Wolfram语言的词法分析器或扫描器部分。
关于第一项,有一个注释YAML,其中包含Wolfram语言命名字符的完整翻译集
Wolfram语言命名字符,
Unicode/ASCII等效字符和Unicode/WL代码点,
AMSLaTeX等效名称,
运算符名称(如果符号是运算符),
运算符优先级(如果是运算符),
符号的键盘转义序列
用途
扫描器和字符表用于Mathics内部。但是,该信息也可以供其他程序用于对Wolfram语言代码进行标记和格式化。
例如,在mathics-pygments中使用了表格,这是一个基于Pygments的Mathematica/Wolfram语言源代码的词法分析和高亮显示器。
如果您需要处理Wolfram语言命名字符并将其转换为各种格式,这个库可能很有用。
用法
要标记和扫描Wolfram语言代码,请使用mathics_scanner.tokenizer.Tokenizer类。
要转换Wolfram语言命名字符与Unicode/ASCII之间的格式,请使用mathics_scanner.characters.replace_wl_with_plain_text和mathics_scanner.characters.replace_unicode_with_wl函数。
要转换命名字符的合格名称(如FormalA为\[FormalA])与Wolfram的内部表示形式,请使用m̀athics_scanner.characters.named_characters字典。
要重新生成JSON格式的表格,请运行
$ mathics-generate-json-table
在不带选项的情况下,mathics-generate-json-table产生最大的对应集。
尽管如此,在大多数应用中,您可能只需要其中的一部分。可以使用--field选项来缩小输出到JSON的条目列表。运行mathics-generate-json-table --help以获取所有字段的完整列表。
实现
有关包实现的说明或转换方案的详细信息,请参阅实现。
贡献
请鼓励您为此包或Mathics做出贡献!创建自己的分支,进行所需更改,提交,并提交拉取请求。
许可证
Mathics遵循GNU通用公共许可证第3版(GPL3)。
项目详情
下载文件
下载适合您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。