2024-10-06 12:27:32 发布
网友
运行插件代码时如何检测可用的语法?你知道吗
例如,当我调用
output_view.set_syntax_file("Packages/ANSIescape/ANSI.tmLanguage")
如果没有安装ANSIescape包,那么我从Sublime得到一个错误,这个错误不能用try: ... except:捕获。你知道吗
try: ... except:
我想安全地执行set_syntax_file,没有任何错误,并希望知道它是否成功。你知道吗
set_syntax_file
您可以使用sublime.find_resources()查找Sublime知道的所有提供语法的文件。这将是所有类型为tmLanguage(对于旧的遗留语法)和sublime-sytax(对于使用新语法的包)的文件。你知道吗
sublime.find_resources()
tmLanguage
sublime-sytax
在this plugin code中有这样一个例子。相对的代码片段如下:
def syntax_name(self, syntax): syntax_file = os.path.basename(os.path.split(syntax)[1]) return os.path.splitext(syntax_file)[0] def parse(self, langs, resource_spec): for syntax in sublime.find_resources(resource_spec): langs[self.syntax_name(syntax)] = syntax def query_syntax(self): langs = {} self.parse(langs, "*.tmLanguage") self.parse(langs, "*.sublime-syntax")
这里的代码正在构建一个字典,其中的键是语言名(从文件名派生而来,有关详细信息,请参阅完整代码)和值是文件的完整名称。你知道吗
您可以使用
sublime.find_resources()
查找Sublime知道的所有提供语法的文件。这将是所有类型为tmLanguage
(对于旧的遗留语法)和sublime-sytax
(对于使用新语法的包)的文件。你知道吗在this plugin code中有这样一个例子。相对的代码片段如下:
这里的代码正在构建一个字典,其中的键是语言名(从文件名派生而来,有关详细信息,请参阅完整代码)和值是文件的完整名称。你知道吗
相关问题 更多 >
编程相关推荐