在 SublimeLinter 的 sublimelinter_executable_map 中设置相对路径
Posted
技术标签:
【中文标题】在 SublimeLinter 的 sublimelinter_executable_map 中设置相对路径【英文标题】:Setting relative path in SublimeLinter's sublimelinter_executable_map 【发布时间】:2013-12-15 21:01:52 【问题描述】:设置: 便携式版本的Sublime Text 2
及其插件Sublimelinter
和node.exe
。
sublimelinter_executable_map
必须设置为使Sublimelinter
使用node.exe
作为 javascript 引擎。
可以使用相对路径而不是完全限定路径来做到这一点吗?
尝试使用MSDN 中给出的不同形式的相对路径,插件未能检测到node.exe
。我得到的控制台消息是SublimeLinter: javascript disabled (One of the following JavaScript engines must be installed: node.js, JavaScriptCore)
【问题讨论】:
Windows 快捷方式和开始菜单项可以设置 Sublime Text 可执行文件的工作目录。如果任何路径是相对的,我猜它们是相对于这个工作目录的。如果插件允许相对路径输入,您可以从 SublimeLinter 源代码中确认:github.com/SublimeLinter/SublimeLinter 【参考方案1】:您在此主题上的 GitHub 问题:
https://github.com/SublimeLinter/SublimeLinter/issues/612是否与这些重复:
https://github.com/SublimeLinter/SublimeLinter/issues/611 https://github.com/SublimeLinter/SublimeLinter/issues/459这似乎是一个热门话题。
我分叉了存储库并开始为你编写一个补丁,它似乎围绕这个部分:
https://github.com/SublimeLinter/SublimeLinter/blob/4ef4b2ca08e0224b8af59bf3406c4927432efb94/sublimelinter/modules/base_linter.py#L380
但后来,我恍然大悟……环境变量。由于这似乎是许多未解决请求的普遍问题,因此您似乎应该设置 PATH
环境变量,并将您希望找到的位置首先放在该变量的前面。
不知道您的 Windows 版本,设置环境变量的过程会因您的版本而异,因此您应该尝试一下,然后将该方法用作您所有环境的标准(看起来暗示你有不止一个要维护)。
更新: Ruby 似乎允许相对路径,但 JavaScript 不允许,因为这个部分:
https://github.com/SublimeLinter/SublimeLinter/blob/4ef4b2ca08e0224b8af59bf3406c4927432efb94/sublimelinter/modules/base_linter.py#L380
取决于:JAVASCRIPT_ENGINE_WRAPPERS_PATH
所以答案是,除非该代码被改编,否则不会。 JS不能使用相对路径。
【讨论】:
PATHS 很好,但由于这是一个可移植的设置,我有兴趣在 'sublimelinter_executable_map' 中使用相对路径以上是关于在 SublimeLinter 的 sublimelinter_executable_map 中设置相对路径的主要内容,如果未能解决你的问题,请参考以下文章
SublimeLinter:如何从 Sublime Text 3 中删除
求教Sublime Text2 SublimeLinter插件安装问题
Sublime Text3 安装SublimeLinter后无法配置