前段时间迷上了CoffeeScript。这是一个基于JavaScript的语言,在JavaScript之上融入了其他语言的一些长处,使语法变得更简单灵活,某种程度上弥补了JavaScript的一些缺陷。而且它提供一个编译器,用来把CoffeeScript编译成JavaScript。废话不多说,看看 官网的例子 你就什么都明白了。
用了一段时间,感觉确实比javascript要方便很多。不说javascript中每次敲函数时总要写长长的function关键字,而且估计不少人遇到过写json时掉了一个逗号导致的一系列莫名其妙的错误。尤其在ExtJS中简直司空见惯,更尤其是我这种用vim写ExtJS的……个人觉得,虽然框架可以使很多事情变得简单(比如jQuery优雅的API),但无法弥补语法层面的一些缺陷。CoffeeScript算是比较好的弥补了这方面的问题。
所以,这篇文章就是讲怎么安装CoffeeScript的。本人操作系统为Ubuntu 10.10。
CoffeeScript依赖于Node.js和NPM。Node.js是一个服务端的javascript平台,而NPM是基于它的包管理器。两者类似于Ruby和RubyGems的关系(这里说的Ruby是指解析器)。我们的目标就是先装Node.js,再装NPM,最后用NPM安装coffee script。
附带一提,Ubuntu的apt-get中有coffee script,不过那个版本太老了。而且个人觉得这种东西还是由专门的包管理器管理比较好。关于Node.js。你也可以下载源码编译安装,过程也很顺利。我只是不想再去手动make install和添加path路径而已。
1. 安装Node.js
Node.js提供了Ubuntu下的apt源。所以这一步很省事。
sudo apt-get install python-software-properties sudo add-apt-repository ppa:jerome-etienne/neoip sudo apt-get update sudo apt-get install nodejs
安装完成后,控制台会多出一个 node 命令。可以用 node -v 看看版本。我是0.4.4。和最新版是一样的。
2. 安装NPM
这步更简单。别人已经提供好了安装脚本供你使用了
sudo curl http://npmjs.org/install.sh | sh
这个脚本会自动下载并安装NPM。安装完成后就可以在控制台使用 npm 命令安装其他的包了。
再次赞叹下 curl 和 sh 的完美配合。
3. 安装CoffeeScript
没什么好说的
npm install coffee-script
这一步完成后我们就能使用 coffee 命令了。可以靠它把CoffeeScript编译成Javascript。
试一下,建立一个文件 test.coffee。内容如下:
alert 'aaa' if true
然后使用 coffee 命令编译它:
coffee -c test.coffee
这会在相同的目录下生成 test.js 文件:
(function() { if (true) { alert('hello'); } }).call(this);
4. Vim的CoffeeScript支持
不用Vim的可以不用看这一部分。Vim下有个插件叫 vim-coffee-scripts。它提供了CoffeeScript的语法高亮,缩进和自动编译功能。感兴趣的可以看看 github上的介绍。因为官方文档足够好了,这里就不多说了。
参考资料:
CoffeeScript官网,可以在线尝尝鲜。还记得Ruby官网的那个"Try Ruby"吗?
http://jashkenas.github.com/coffee-script/
Node.js官网,不多说了,服务器端JavaScript最近挺火的
安装Node.js和NPM的步骤。想自己编译的可以看看
https://github.com/joyent/node/wiki/Installation
使用包管理器安装Node.js,各种平台
https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager
Vim的插件支持