Sublimetext3 如何在Windows中为Sublime JSHint插件指定SublimiteText3中节点的路径
在使用SublimiteText3在Windows XP上安装node.js和Sublimite JSHint插件后,我发现以下错误: “在默认路径中找不到Node.js。请指定位置。” 这是一个已知的配置问题,作者对此进行了记录,但我无法确定如何指定路径。有人能告诉我如何在Windows XP中指定路径吗 我试过了Sublimetext3 如何在Windows中为Sublime JSHint插件指定SublimiteText3中节点的路径,sublimetext3,jshint,Sublimetext3,Jshint,在使用SublimiteText3在Windows XP上安装node.js和Sublimite JSHint插件后,我发现以下错误: “在默认路径中找不到Node.js。请指定位置。” 这是一个已知的配置问题,作者对此进行了记录,但我无法确定如何指定路径。有人能告诉我如何在Windows XP中指定路径吗 我试过了 "node_path": "/Program Files/nodejs", "node_path": "C:/Program Files/nodejs", "node_pat
"node_path": "/Program Files/nodejs",
"node_path": "C:/Program Files/nodejs",
"node_path": "/Program Files/nodejs/node.exe",
"node_path": "C:/Program Files/nodejs/node.exe",
试用
"node_path": "/c/Program Files/nodejs/node.exe"
并确保此选项位于包/User/JSHint.sublime设置文件中。我不确定您的上一个设置为什么不起作用,因为它的格式也是有效的,但希望使用Cygwin样式路径会起作用。这对我来说很有用:
“node_path”:“C:/Program Files/nodejs/node.exe”这终于对我起作用了:
"node_path": "\"C:/Program Files (x86)/nodejs/node.exe\"",
我在Windows7上,所以节点安装在程序文件(x86)中。只需敲一下程序文件中安装了if节点的“(x86)”部分
基本上,我必须在Windows中启动cmd
应用程序并键入命令,直到找到一个可以吐出节点帮助文本的应用程序:
"c:/Program Files (x86)/nodejs/node.exe" --help
我必须用双引号将文件路径括起来,因为文件路径中有空格字符和括号。“node\u path”
配置设置还需要用双引号括起来的文件路径,必须对其进行转义。我发现了另一个导致显示该错误的问题。它位于注册表编辑器上。HKEY\U CURRENT\U USER\Software\Microsoft\Command Processor我在这里设置了自动运行键以加载c:\profile.bat,在这里我添加了升华路径从cmd运行升华。但是,当我打开cmd时,它会出错(实际上是由powershell完成的)。删除key node.js后,路径工作正常。希望这能对某人有所帮助。我在html-css-js.prettify中遇到了这个问题。最后,所有这些问题对我都不起作用,我不得不注释掉HTMLPrettify.py的第58-62行,这样剩下的唯一一行就可以用该行查找路径了
node = settings.get("node_path")
我重新启动了SublimiteText,它开始工作
我认为类似的解决方案可能适用于JSHint 我只需更改python脚本,并将我的节点路径指定给node_path,而不是get_node_path()。或者您可以设置get\u node\u path()
以返回C:\\DevTools\\nodejs\\node.exe
%APPDATA%\Sublime Text 2\Packages\HTML-CSS-JS Prettify\HTMLPrettify.py
line 81 def run_script_on_file(self, temp_file_path):
try:
node_path = "C:\\DevTools\\nodejs\\node.exe"
嗯,你应该
Ctrl + ` // or View => Show Console
看看出了什么问题
通常,这不是Node.js路径问题
例如,我能看到的是
UnicodeDecodeError: 'ascii' codec can't decode byte 0xcd in position 0: ordinal not in range(128)
因此,我搜索了它,并用以下方法解决了它:
// HTMLPrettify.py
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
import sublime, sublime_plugin
import os, sys, subprocess, codecs, webbrowser
reload(sys) # NEW LINE !!! <================
sys.setdefaultencoding("utf-8") # NEW LINE !!! <================
//HTMLPrettify.py
#此源代码表单受Mozilla Public的条款约束
#许可证。2.0. 如果MPL的副本未随此一起分发
#文件,您可以在http://mozilla.org/MPL/2.0/.
导入升华,升华插件
导入操作系统、系统、子流程、编解码器、webbrowser
重新加载(系统)#新线 在我的情况下,此设置不起作用
"node_path": "/usr/lib/nodejs/node-v6.11.0/bin/node",
但这是有效的
"node_path": { "linux" : "/usr/lib/nodejs/node-v6.11.0/bin/node" }
必须在JSHint.sublime设置文件中进行此更改
希望这有帮助!虽然更改会立即生效,但我会在更改后尝试重新启动Sublime,以确保这是否解决了您的问题。什么对我有效:
我在程序文件和程序文件(x86)中搜索了node.exe。
然后我在某个文件夹中得到了一个名为node.exe的文件,我复制了它的路径并像这样粘贴
/path/node.exe
注意:您必须将\
更改为/
,这看起来很有希望,但我仍然得到相同的错误。我尝试创建Packages/User/JSHint.sublime-settings,但每当出现错误时,单击OK就会打开Packages/JSHint/JSHint.sublime-settings。我试着注释掉该文件中的node_路径行,并将其全部删除。谢谢你的努力though@plainflavour这里还有另一个选项-将节点路径添加到Windowspath
变量中。右键单击“我的电脑”,选择“属性”,转到“高级”选项卡,单击“环境变量”按钮,然后找到路径变量并单击“编辑”。转到已经存在的内容的末尾,在最后一个条目之后添加;C:\Program Files\nodejs
(确保包含;
)。单击确定,然后重新启动升华,看看它现在是否工作…嗨,再次感谢您的帮助。我试过了,但还是没用。我还重新安装了node和JSHint插件,但我想它在XP中不起作用。这太糟糕了。如果说这是一个安慰的话,它正朝着为ST3发布的方向发展,它默认包括(或包括)JSHint。如果你绝对需要它,并且找不到其他插件,你可以降级到Sublime Text 2并使用…太好了,我会留意的。希望在那之前我能得到一台新电脑!谢谢,记得添加node.exe
也帮了我的忙:-)如果HTML文件的文件路径包含非sacii字符,升华将提示“默认路径中找不到node.js。请指定位置。”