0
点赞
收藏
分享

微信扫一扫

使用Sublime Text进行Erlang开发

E_topia 2022-11-24 阅读 141


很少看到有人用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:


       插件管理工具,需要自己安装


  1. 按Ctrl+`调出console
  2. 粘贴以下代码到底部命令行并回车:
    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>
  3. 重启Sublime Text 2。
  4. 如果在Perferences->package settings中看到package control这一项,则安装成功。

    


    在安装完插件管理工具后就能够通过命令来安装插件


    安装插件的方法一:


  1. 按下Ctrl+Shift+P调出命令面板
  2. 输入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无法下载的附插件包​​


         ​​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+/

注释整行(如已选择内容,同“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)

举报

相关推荐

0 条评论