跳转到主要内容

Mathics和Wolfram语言的字符表和词法分析器。

项目描述

Workflows Pypi Installs Latest Version Supported Python Versions

Packaging status

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_textmathics_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)。

项目详情


下载文件

下载适合您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源代码分发

mathics_scanner-1.3.1.tar.gz (127.8 kB 查看哈希值)

上传时间 源代码

构建分发

Mathics_Scanner-1.3.1-py3-none-any.whl (115.9 kB 查看哈希值)

上传时间 Python 3

由以下机构支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面