摘自:http://blog.sina.com.cn/s/blog_5a6efa330102vcla.html  (略有修改)

首先安装sublime text3,百度一堆,自己找吧。理论上sublime text2应该也可以。我只能说一句:这个软件实在是太强悍了。

跨平台,丰富的插件体系,加上插件基本上就是一个强悍的ide了。目前我在使用的主要是Emmet、Python、还有一些格式化的插件(xml,json),加上这次安装的node.js。

node.js的安装就不用多说了,直接http://nodejs.org/ 点击install下载window版本的安装程序后安装即可。默认的安装会将安装目录加到path环境变量中,这一步是为了后续使用node的时候,可以不用带路径,当然,后续在sublime text中安装好nodejs插件之后,也可以对node的路径进行一些自定义的设置。为了使用方便,建议增加到path环境变量。

SublimeText-Nodejs插件(https://github.com/tanepiper/SublimeText-Nodejs)

原本在sublime text的插件库里面有nodejs的插件,但是经过尝试安装后,发现无法修改编译设置,没找到Nodejs.sublime-build文件,后来在github上面看了下人家的安装说明之后再重新安装的。

安装Package Control;运行Sublime,按下快捷键Ctrl + `;在控制台中输入如下并回车;

代码如下:

版本Ver 2

import urllib2,os,hashlib; h = '2deb499853c4371624f5a07e27c334aa' + 'bf8c4e67d14fb0525ba4f89698a6d7e1'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); os.makedirs( ipp ) if not os.path.exists(ipp) else None; urllib2.install_opener( urllib2.build_opener( urllib2.ProxyHandler()) ); by = urllib2.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', ' ')).read(); dh = hashlib.sha256(by).hexdigest(); open( os.path.join( ipp, pf), 'wb' ).write(by) if dh == h else None; print('Error validating download (got %s instead of %s), please try manual install' % (dh, h) if dh != h else 'Please restart Sublime Text to finish installation')

版本Ver 3

import urllib.request,os,hashlib; h = '2deb499853c4371624f5a07e27c334aa' + 'bf8c4e67d14fb0525ba4f89698a6d7e1'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', ' ')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)

安装也有二种方式:

1、直接下载压缩包后解压到sublime text的package目录中。查看package目录在哪可以通过菜单栏中的Preferences-->浏览程序包Browse Packages直接打开package目录。

2、使用git命令下载到package目录(git clone https://github.com/tanepiper/SublimeText-Nodejs "D:\ProgramFiles\Sublime Text 3\Data\Packages\nodejs")

修改编译选项,在package目录下的nodejs目录中,打开Nodejs.sublime-build,原始内容如下:

{

  "cmd": ["node", "$file"],
  "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
  "selector": "source.js",
  "shell": true,
  "encoding": "cp1252",
  "windows":
  {
    "shell_cmd": "taskkill /F /IM node.exe & node $file"
  },
  "linux":
  {
    "shell_cmd": "killall node; /usr/bin/env node $file"
  },
  "osx":
  {
    "shell_cmd": "killall node; /usr/bin/env node $file"
  }
}

有2个地方需要修改,一个是编码,为了避免乱码code,需要改成cp936;另外一个是cmd命令,本身如果只是想简单的运行nodejs程序的话,windows下面的cmd可以直接 "cmd": ["node", "$file"],但是这样非常不利于开发环境,因为这样的话每次build都会重新启动一个node.exe进程,且会占用一个端口,这肯定是我们不希望的。上文中的cmd原本是想在启动node.exe之前讲node.exe进程都杀掉,然后再启动node.exe,但是这个命令写的不对,直接使用的话是编译不成功的。对cmd命令需要做简单的处理,修改好之后的Nodejs.sublime-build文件内容如下:

{

  "cmd": ["node", "$file"],
  "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
  "selector": "source.js",
  "shell": true,
  // "encoding": "cp1252",
  "encoding": "utf8",
  "windows":
  {
    // "shell_cmd": "taskkill /F /IM node.exe & node $file"
    "shell_cmd": "taskkill /F /IM E:/DevelopTools/nodejs/node.exe & node $file"
  },
  "linux":
  {
    "shell_cmd": "killall node; /usr/bin/env node $file"
  },
  "osx":
  {
    "shell_cmd": "killall node; /usr/bin/env node $file"
  }
}

重启sublime text之后,配置就算完成了。我们写一小段代码来验证一下是否可以正常运行。

var http = require('http');

var os = require('os');

http.createServer(function (request, response) {

response.writeHead(200, {'Content-Type': 'text/plain'});

response.end('Hello World\n'); }).listen(3000);

console.log('Server running at http://127.0.0.1:3000/');

Ctrl+b编译这段代码之后,sublime text窗口中就会显示

Server running at http://127.0.0.1:3000/

若之前有运行的node进程在,则会先杀掉node进程,再启动node,显示如下:

成功: 已终止进程 "node.exe",其 PID 为 154588。

Server running at http://127.0.0.1:3000/

到此,服务端算是启动成功,打开浏览器,输入http://127.0.0.1:3000/,页面显示Hello World则表示交互正常。

转载于:https://www.cnblogs.com/cnblogs-jcy/p/6875914.html

在windows环境下基于sublime text3的node.js开发环境搭建相关推荐

  1. Sublime Text3配置Node.js开发环境

    下载Nodejs插件,下载zip压缩包后解压 链接: http://pan.baidu.com/s/1hsBk60k 密码: jrcv 打开Sublime Text3,点击菜单"首选项(N) ...

  2. 【ZAN】MacOS环境下基于Sublime Text3的Markdown学习笔记

    [ZAN]2022年10月的第5天我开始用markdown写日记- 为什么突发奇想打算学习并使用markdown呢?也许就是让文字回归文字本身吧-

  3. Windows家庭版下基于Docker的hadoop、Spark集群搭建

    Windows家庭版下基于Docker的hadoop.Spark集群搭建 目录 Windows家庭版下基于Docker的hadoop.Spark集群搭建 1.实验目的 2.实验平台 3.实验内容和要求 ...

  4. 基于node.js开发环境下创建及开发vue.js项目的环境配置骤

    基于node.js开发环境下创建开发vue.js项目的环境配置骤如下: 步骤一:安装node.js,安装完后运行node -v命令检安装node的查版本,判断是否安装成功.Npm是node.js包管理 ...

  5. 计算机系统的搭建步骤,电脑搭建Node.js开发环境的操作教程[多图]

    电脑如何搭建Node.js开发环境?近日有用户询问怎么在Win7系统电脑上搭建Node.js开发环境,今天教程之家就给大家分享Node.js开发环境的搭建教程. 操作步骤: 1.下载Node.js官方 ...

  6. 手把手教你学node之搭建node.js开发环境

    搭建node.js开发环境 本文只针对在Linux或者Mac下面.至于使用 Windows 并坚持玩新技术的同学,我坚信他们一定有着过人的.甚至是不可告人的兼容性 bug 处理能力,所以这部分同学麻烦 ...

  7. mac sublime html开发环境,在Mac下用Sublime Text 2 架设C开发环境

    申明:如果尝试失败,请确认你的运行快捷键是Shift+Command+B,编译快捷键是Command+B,不要搞混. 在Mac下使用Sublime编写C程序,首先下载Xcode和Command Lin ...

  8. node.js开发环境配置

    node.js是什么 Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境.Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型,使其轻量又高效.Node.j ...

  9. Mac OS X 下Node.js开发环境的搭建

    1.安装Xcode 2.安装Homebrew  谷歌搜索Homebrew 复制命令行 打开终端  粘贴命令行  点击回车  安装  输入密码等 2.安装Nodejs 利用Homebrew安装nodej ...

最新文章

  1. 征途linux编译错误,征途误事-山外メ雲ジ-ChinaUnix博客
  2. Delphi和C++数据类型对照表
  3. pytorch 初始化权重
  4. java-静态-单例-继承
  5. android:persistent (非系统app失效)
  6. 【简便代码】1063 计算谱半径 (20分)_10行代码AC
  7. 2018.11.16 长难句4
  8. 【渝粤教育】广东开放大学 计量经济学 形成性考核 (21)
  9. 零基础学习鸿蒙开发,零基础学习鸿蒙App开发 (第一天)
  10. 【C语言】----宏定义,预处理宏
  11. 用好pypi,提高开发速度
  12. 蓝桥杯 ALGO-77 算法训练 斜率计算
  13. 30+岁、没转管理、加不动班,我的竞争力从哪里来?
  14. 正则匹配emjio表情
  15. EndNote X9使用教程
  16. runtime错误c语言,c,runtime_为什么这样的代码会出现RUNTIME ERROR?,c,runtime - phpStudy...
  17. android锁定屏幕通知_如何在Android锁定屏幕上隐藏敏感通知
  18. zbb20171223 vm12 Vmware虚拟机设置静态IP地址
  19. 分布式调度:对概念和应用的回顾
  20. 如何自动生成独一无二的漂亮高分辨率图片 - 图片背景生成器教程

热门文章

  1. 【LeetCode】55.跳跃游戏
  2. mysql 存储过程逻辑表达 and_MySQL - 存储过程 (二)- 逻辑判断语句
  3. 服务器硬件电路设计书籍,家庭网关硬件接口电路设计大全——电路精选(3)...
  4. java 比较对象内容是否相同的_Java 比较对象中的内容是否一致
  5. taro 重新加载小程序_Taro 小程序采坑
  6. python简单小游戏实现_python基础--小游戏简单实现
  7. jmeter constant timer 如何添加_基于jmeter+perfmon的稳定性测试记录
  8. VISP视觉库框架详细解释
  9. _tmain和main
  10. html5 图形化操作,HTML5的图像及动画图形操作-20210525222751.ppt-原创力文档