Sublime Text 3:将语法 def 从 uew 格式转换为 sublime text

Sublime Text 3: Convert syntax def from uew format to sublime text

我有一个用于 Kawasaki 专有机器人语言 AS 语法高亮显示的 wordfile。

不幸的是,我在 UltraEdits 奇怪的格式中有这些定义,uew。在这里查看 http://www.ultraedit.com/downloads/extras/wordfiles.html

现在,由于这些列表很大,我正在寻找一种方法将 uew 转换为 xml、yaml、tmlanguage 或 sublime-syntax。

我猜 none 个存在 - 我在哪里可以获得 uew 的定义,以便我可以为 sublime 创建一个语法文件?

通常您会在帮助文件中找到该信息,但我假设您没有安装 UltraEdit。还有在线帮助和 this 页面提供了或多或少的完整定义 - 我希望它对您的目的有所帮助。

不幸的是,我认为您将不得不手写语法定义。我查看了您提供的 link 中的几个 .uew 文件,虽然可以编写一个解析器将它们转换为 XML 或 YAML,但这会花费更多时间比它的价值。我的建议是安装 PackageDev 并使用 .YAML-tmLanguage 格式编写您自己的语法定义。

通读 README 以获取有关如何使用该包的基本信息,您还可以在 Sublime 非官方文档 here. As mentioned in the README, you can take a look at the YAML-tmLanguge syntax def itself for ideas. You may also want to check out the YAML version of my Python Improved syntax def for Python. The regexes use the Oniguruma engine. Most of them should work using Regex101, but to be certain I'd also use Rubular 中找到更多信息,其中 Ruby 版本 1.9 用于测试。

最后,如果您想要 YAML-tmLanguage 文件中正则表达式的一些真正特定的语法突出显示,您可能需要查看我的 Neon Color Scheme。我已经为很多语言定制了它,它在 YAML-tmLanguage 文件中特别好用。当然只是一个建议。

如果您使用的是最新版本的 ST3,您可能需要考虑使用新的 sublime-syntax 格式,但缺点是它仅适用于最新版本的 ST3,并且(在我的经验,至少),它比 YAML-tmLanguage 更难上手。 YMMV,当然。

祝你好运!