Daibor Cyber Space
学习笔记、思考和记录
在 Sublime Text3 中搭建 NodeJS 环境
终于不用再同时开着命令行窗口了

步骤:

  • 如果是第一次安装 Sublime Text3 ,则需要首先安装 Package Control
  • 使用热键 Ctrl + ` 调出 Console ,然后输入以下代码:
import urllib.request,os; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); open(os.path.join(ipp, pf), 'wb').write(urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ','%20')).read()) 
  • 使用热键 Ctrl + Shift + P 唤醒Package的快捷输入框,输入 install 会自动联想出 Package Control: Install Package 的item,进入。
  • 点击后等一下,取决于网络环境。可以看看左下角位置有没有一个 [= ] 的符号。如果很慢的话可以考虑全局梯子试试,我曾经在这里卡过很久。
  • 输入NodeJS,选择匹配词条,等待安装,如果网络不好,多次失败的话可以去 NodeJS插件GitHub仓库地址 下载后移动到 Sublime 的 package 文件夹里,默认的路径应该是 C:\Users\用户名\AppData\Roaming\Sublime Text 3\Packages
  • 结束之后在菜单栏 Prefernces -> Package Setting -> Nodejs 中选择 Setting
  • 更改配置为以下,路径要换成你安装node的位置,如果不记得了可以在开始菜单点击node图标,打开文件位置来查看。修改时注意要把路径中的 \ 前添加一个转义符 \ 。
{
  "save_first": true,
  "node_command": "C:\\Program Files\\nodejs\\node.exe",
  "npm_command": "C:\\Program Files\\nodejs\\npm.exe",
  "node_path": true,
  "expert_mode": false,
  "output_to_new_tab": false
}
  • 继续修改 Nodejs.sublime-build文件,这个文件和刚才我们修改的配置文件在一个文件夹里,路径可以查看刚才编辑配置时 sublime 程序左上角的文件路径。然后继续用 sublime 编辑build文件为以下配置。其中windows那一行的意思是在每次编译运行时强制退出正在运行的node程序,防止同时运行太多个进程。如果好奇的话可以在 CMD命令行 中输入 taskkill /? 来查看语法。
{
  "cmd": ["node", "$file"],
  "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
  "selector": "source.js",
  "shell": true,
  "encoding": "cp936",
  "windows":
    {
        "cmd": ["taskkill", "/F", "/IM", "node.exe", "&", "node", "$file"]  
    },
  "linux":
    {
        "cmd": ["killall node; node", "$file"]
    }
}
  • 现在应该没有什么问题了,随便创建一个 JS 文件,console一下,使用快捷键 Ctrl + B 看看下面是不是打印出来了。之前我在这里遇到了中文字符乱码的问题,如果你和我一样按照各种教程配置,都遇到了这个问题的话,可以尝试修改 Nodejs.sublime-build文件中的编码方式字段,试试 GB2312GB13030UTF8等常见编码。与此同时,初次运行时控制台打印的找不到 找不到 node.exe 的问题也让我头疼了一下,有人提示Nodejs.sublime-build 文件中的 cmd 字段数组中每个逗号前面要留一个空格。但我后来意识到,其实找不到就说明当前并没有正在运行的node进程,比如执行一个只有一行 console.log() 的代码,其实执行完毕后就自动退出了,后面再尝试 kill 带有 node 关键字的进程当然就找不到啦。
  1. 至此配置完毕。

MORE

很早就开始使用 Sublime 了,但是一直没有很好地进行配置。虽然只是简单地搭建一下 nodejs 环境,但一直有各种各样的问题还是花了些时间,不过带来的体验让这件事情看起来确实事半功倍。


Last modified on 2018-07-26