Sublime Text 3 中包的语法高亮 (.tmLanguage)

use*_*543 5 package python-3.x robotframework sublimetext3 sublime-text-plugin

我正在研究这个插件

使用包控制安装插件时,语法突出显示不适用于 Sublime Text 3。

Error loading syntax file "Sublime Text 3/Installed Packages/robot.tmLanguage": Unable to open Sublime Text 3/Installed Packages/robot.tmLanguage
Run Code Online (Sandbox Code Playgroud)

该插件位于Installed Packcages/Robot Framework Assistant.sublime-package内部存档中的文件“robot.tmLanguage”下Robot Framework Assistant.sublime-package

这是我设置路径的方法 https://github.com/andriyko/sublime-robot-framework-assistant/blob/master/rfassistant/ init .py

我的问题与此线程类似,但在我的情况下,插件安装为存档(.sublime-package)而不是包含文件的文件夹。

  1. 我不确定我上面提到的路径设置在python3中是否正确。

  2. 如何引用 .sublime-package 文件内的 tmLanguage 文件?

  3. 我应该将该文件放在哪里?这是完全令人困惑的,为什么它在 Sublime Text 2 和 Sublime Text 3 上工作(当从 github 安装到目录中时),但在通过 Package Control 安装时不起作用。

那么,如何设置 tmLanguage 文件的路径以及应该将其存储在哪里。只是想澄清一下,当从 github zip 文件安装插件时它可以正常工作(因为我将其内容放入 Packages 目录下的 RobotFrameworkAssistant 文件夹中)。通过 Package Control 安装插件时它不起作用。

Meg*_*ron 5

.tmLanguage根据其他人的建议添加自定义文件的手动解决方案的快速摘要:

  1. myLang.tmLanguage文件放入具有所需语法名称的文件夹中。
  2. 压缩文件夹并命名为myLang.zip
  3. 将 zip 存档重命名为myLang.sublime-package
  4. 将其myLang.sublime-package放入 Sublime 3 包文件夹中。它现在将出现在 sublime 语法突出显示菜单中。

根据 ST3 文档,我现在似乎找不到此手动方法的替代方法,但它会起作用。

包控制可能会在幕后完成您需要的一切


use*_*543 2

问题似乎已经解决了。请参考这个修复

为什么我在 ST3 中遇到语法设置(.tmLanguage)问题?

因为 ST3 文档完全令人困惑并且不清楚该文件应该位于哪里。(即使它说Packages如果在 中找不到文件,则在目录中继续查找文件Installed Packages)。

目录下有两个“主”文件夹Sublime Text 3Installed PackagesPackages

当使用 Package Control 安装插件时,它会进入Installed Packages打包到名为 like 的存档文件Robot Framework Assistant.sublime-package(实际上是 ZIP 文件)中的目录。该robot.tmLanguage文件(语法文件)位于Robot Framework Assistant.sublime-package.

所以,简而言之,我的问题是:如何引用该文件(应该为view.set_syntax_file方法提供什么路径)?

不直观,但我应该指不存在的路径Packages/Robot Framework Assistant/robot.tmLanguage。实际上,就我而言,该Packages目录仅包含Users文件夹。我唯一可以猜测的是文件夹名称应该与包名称相同(Robot Framework Assistant在我的例子中)。