我测试了 SublimeText 2 和 3,但都存在问题:
如果您测试这段代码,您会注意到 之后的所有代码:
都不会被正确地语法高亮显示。
def foo(a, b) -> str:
# Nothing gets properly colored from here
# A bunch of code…
return "bar"
我找到了一些解释如何添加您自己的语法高亮规则的链接,但我没有找到如何修改已经实现的规则以尝试修复它们。
编辑:感谢 MattDMo,现在知道在哪里修改默认语法高亮规则,我尝试更改文件的第 385 行
<key>end</key>
<string>(\))\s*(?:(\:)|(.*$\n?))</string>
到
<key>end</key>
<string>(\))\s*(?:\->\s*[A-Za-z_][A-Za-z0-9_]*\s*)?(?:(\:)|(.*$\n?))</string>
但是没有用。
最佳答案
我在大约 2 个月前创建了自己的版本,它仍然有一些(严重) 错误,所以不要犹豫,在这个 github 页面上报告这些错误或贡献修复:
https://github.com/petervaro/python
虽然有一个 Cython 版本是从与 Python 本身相同的文件生成的 -> 但它绝对是一个正在进行的 tmLanguage,所以不要使用它!:)
更新:它现在“稳定”并准备好投入认真的工作,所以请使用它、分享它并报告错误! :)
关于python - 如何让 SublimeText 支持 Python 3 的注解?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18407025/