很少看到有人用Erlang语言作服务器或者应用开发,常见的开发语言都是java,js,Objective-C,C++,C,Python,Lua,Ruby,甚至还有R语言。包括现在的深度神经网格的人工智能,个人感觉Erlang天生就是为神经网络设计的语言了。Erlang天生多进程,一个4G内存的机器,可以同时跑30万加的进程,并且所有进程这间都可以互相无需线程锁通信,Erlang使用了进程邮箱通信机制,每一个进程只读取自已的邮箱,别的进程可以给你的邮箱发送数据。而且Erlang天生支持多系统分布式集群开发,还支持代码程序的热更新。因为Erlang多进程通信无锁,所以可以很好的支持多核处理器,如果后边再给Erlang加上GPU的同步数据处理,那Erlang操作系统还真的就无敌了。一个使用Erang开发的服务器可以连续工作十几年不用重启不用停机维护。世界上可能没有那种开发语言有这么强大了。
今天的主题只是说一下使用轻量经,但功能强大的Sublime Text编辑器作Erlang的编辑器。之前使用eclipse的Erlide作开发环境其实也不错,但感觉eclipse就是有些太重了,如果是开发大项目用eclipse可能会好一些,但其实也有人很多人开发Erlang不使用eclipse的。
好,废话不说了,直接把别人的配置方法转发过来。
1.下载并安装Sublime Text
这个就不多说了。我们直接进入第二步。
2.安装插件:
某些重要功能是通过插件提供的,所以首先要安装插件管理工具
package control:
插件管理工具,需要自己安装
- 按Ctrl+`调出console
- 粘贴以下代码到底部命令行并回车:
de>imp ort urllib2,os;pf='Package Control.sublime-package';ipp=sublime.installed_packages_path();os.makedirs(ipp) if not os.path.exists(ipp) else None;open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read()) de> - 重启Sublime Text 2。
- 如果在Perferences->package settings中看到package control这一项,则安装成功。
在安装完插件管理工具后就能够通过命令来安装插件
安装插件的方法一:
- 按下Ctrl+Shift+P调出命令面板
- 输入install 调出 Install Package 选项并回车,然后在列表中选中要安装的插件。
安装插件的方法二:
点击Preferences->Package Control进入Package Control: 输入框,输入install Package即可
CTags安装:
支持大多数语言的函数、宏等跳转。
原理是首先预处理生成标签文件,标签文件详细定义一个函数宏的使用位置和定义位置等信息,每次跳转直接查询标签文件即可。
在插件安装框输入CTags找到对应插件安装即可
CTags使用方法:
1、预处理:
在选中的文件夹上右键选择CTags:Rebuild Tags,预处理根据选中内容的多少需要的处理时间不同。
2、跳转:
默认情况下按按住crtl键,连击两下t就能够实现函数调转到定义位置和变量或者宏的跳转
3、其它按键:
请参看Preferences->Package Setting->CTags->Key Bindings-Default
版本相关插件:Git、SVN
Erlang相关插件:
暂时无法通过插件管理器来安装,必须要手动的安装
https://github.com/fjl/Sublime-Erlang:语法插件,仅优化现有的erlang语法功能,全平台支持
1、从git上下载代码,讲拿到的Sublime-Erlang复制到Sublime Text的Packages目录下,改名并替换掉原有的Erlang文件夹。
2、补齐功能有优化,定义跳转有优化
3、个人感觉用处不大
Git无法下载的附插件包:
http://files.cnblogs.com/files/luobei/Sublime-Erlang.rar
https://github.com/ostinelli/SublimErl:不支持windows,仅支持mac和Linux,支持erlang系统函数的补齐,各种测试函数
1、能够支持系统函数的补全
2、不支持windows
3、配置比较复杂,需要安装rebar,erl才能够正常运行
3、使用Sublime Text进行Erlang代码开发:
1、配置编译环境
首先你需要安装erlang程序
确保在win的cmd指令内能够不需要路径执行erl,如果不能,请配置环境变量
配置方式是(控制面板\所有控制面板项\系统->高级系统设置->环境变量->系统变量->PATH->加入ERLANG的bin路径..\erl5.10.3\bin,请注意这里是绝对路径)
选中文件,按Crtl+B就能实现erl文件的编译,编译产生的beam文件直接在本目录下
编译命令的配置在Preferences->Browse Packages-> Erlang ->Erlang.sublime-build,可以通过蟹盖erlc指令将beam文件重定向到任意文件或者是加入自己的编译参数。
2、编写自己的erlang代码木板
Eclipse的重要功能是创建gen_server模块就给你创建对应的回调函数,sublime Text也可以做到,通过使用snippet功能能够自定义代码块。
增加自定义代码块:Tools ->new sinppet,在新的sinppet的CDATA代码块加入自己想要的代码
通过自定义按键来定义insert sinppet操作,
通过选择不同的模板来选择代码块,上述代码来源于sublime-erlang插件
3、引入ERLANG的源代码
Project->Add Folder to Project->加入ERLANG源码目录
通过引入Erlang的源代码,并对源代码进行ctags之后,就能实现任意erlang系统函数的定义跳转
多数情况下识别都是没问题的。
4、小技巧:
通过修改Setting-Default中的file_exclude_patterns,加入beam文件能够避免beam文件出现在编辑器中
修改translate_tabs_to_spaces选项从false到true可以实现Tab的空格补齐tab_size能够指定Tab被几个空格替代。
推荐ERLANG的颜色主题为Monokai Bright
如果是windows编写代码,Linux执行的话,仅仅将Sublime Text当作编辑器来用也是极好的。
附一:Sublime Text的快捷键(Preferences->Key Bindings-Default)
以下为常用快捷键,可以随意修改,建议是不要变动Key Bindings-Default,而是配置Key Bindings-User,User的配置会覆盖Default的数据:
Ctrl+F 文件内文字查找 Ctrl+H 文件内文字替换 Ctrl+P 在所有项目中查找文件 Ctrl+O 打开外部文件 Ctrl+N 创建新文件 Ctrl+G 跳转到某行 Ctrl+Shift+F 文件夹内文字查找 Ctrl+L 选择整行(按住-继续选择下行) Ctrl+KK 从光标处删除至行尾 Ctrl+Shift+K 删除整行 Ctrl+Shift+D 复制光标所在整行,插入在该行之前 Ctrl+D 选词(按住-继续选择下个相同的字符串) Ctrl+M 光标移动至括号内开始或结束的位置 Ctrl+Shift+M 选择括号内的内容(按住-继续选择父括号) Ctrl+/ 注释整行(如已选择内容,同“Ctrl+Shift+/”效果) Ctrl+Shift+/ 注释已选择内容 Ctrl+Z 撤销 Ctrl+Y 恢复撤销 Ctrl+M 光标跳至对应的括号 Ctrl+Shift+A 选择光标位置父标签对儿 Ctrl+T 词互换 Ctrl+Enter 插入行后 Ctrl+Shift Enter 插入行前 Ctrl+K Backspace 从光标处删除至行首 Shift+Tab 去除缩进 Tab 缩进 F9 行排序(按a-z)