转载:如何利用Vim进行Erlang开发
转自:http://ovalpo.info/how_to_use_vim_for_erlang_dev/
如何利用Vim进行Erlang开发
by Martin J. Logan on September 9, 2013
译者: ovalpo 2014年7月28日
配置Vim/Erlang
call pathogen#helptags()
|
1
2
|
call pathogen#infect()
call pathogen#helptags()
|
| vimerl.vim | 缩进, 自动补全等其他更多的Erlang效果 |
| ctrlp.vim | ctrl p, 提供给力的模糊文件查找. 进而可以把导航树扔掉. |
| NERDTree | Vim中一款给力导航树插件 – 但我很少用它,因为我在用ctrlp. |
| NERDTree Tabs | 将 NERDTree中打开过的文件添加到标签栏 |
在我们讨论关于如何使用这些插件来创造Erlang魔法效果的基础前,我想给你们展示两个我很喜欢的小技巧。第一个,配置一个好看的色彩主题。为此,需要创建一个$HOME/.vim/colors目录,然后给你自己找个华丽的色彩主题扔进去。我推荐TPope的vividchalk.vim.
Pro Tip
对于dropbox或者其他文件同步服务的用户,可以通过下面的简易方式来同步备份你的vim的所有配置;把你的 .vim 目录和 .vimrc 配置文件移到你的dropbox目录下。然后执行命令:ln -s ~/Dropbox/.vim ~/.vim
ln -s ~/Dropbox/.vimrc ~/.vimrc
12 ln -s ~/Dropbox/.vim ~/.vimln -s ~/Dropbox/.vimrc ~/.vimrc现在你所有的机器上的vim都会运行同一份配置。如果你还有某些兼容性问题,那就单独处理下那台机器吧。
如何使用Vim插件来进行Erlang开发
[No Name] [TYPE= unix] [0/1 (100%)]
> test/ec_dictionary_proper.erl
> src/ec_dictionary.erl
> src/ec_date.erl
prt path ={ files }= >> ec_da
|
1
2
3
4
5
6
|
~
[No Name] [TYPE= unix] [0/1 (100%)]
> test/ec_dictionary_proper.erl
> src/ec_dictionary.erl
> src/ec_date.erl
prt path ={ files }= >> ec_da
|
|~
.. (up a dir) |~
<lang-projects/erlware_commons/|~
▸ doc/ |~
▸ priv/ |~
▸ src/ |~
▸ test/ |~
CONTRIBUTING.md |~
COPYING |~
Makefile |~
README.md |~
rebar.config |~
rebar.config.script |~
~ |~
~ |~
~ |~
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
Press ? for help |
|~
.. (up a dir) |~
<lang-projects/erlware_commons/|~
▸ doc/ |~
▸ priv/ |~
▸ src/ |~
▸ test/ |~
CONTRIBUTING.md |~
COPYING |~
Makefile |~
README.md |~
rebar.config |~
rebar.config.script |~
~ |~
~ |~
~ |~
|
- <enter> 在当前窗口打开文件
- T 在vim新标签页打开文件,光标停留的目录树NERDTree
- t 在vim新标签页打开文件,光标也跳转到新标签页
- gt 跳转到下一个标签页
- gT 跳转到上一个标签页
Pro Tip
把下面的内容加入你的.vimrc文件,可以NERDTree的标签页的跳转命令映射到tab键。map <C-t> :tabn<Enter>
map <C-n> :tabnew<Enter>
map nt :NERDTreeTabsToggle<Enter>
123 map <C-t> :tabn<Enter>map <C-n> :tabnew<Enter>map nt :NERDTreeTabsToggle<Enter>
使用vimerl编码
自动缩进
代码补全
框架
- :ErlangApplication 生成一个行为模式为OTP应用程序行的框架。
- :ErlangSupervisor 生成一个行为模式为OTP监督树的框架。
- :ErlangGen[Server|Fsm|Event] 生成gen_server,fsm,event框架。
|
1
|
call pathogen#helptags()
|
转载:如何利用Vim进行Erlang开发的更多相关文章
- Ubuntu下利用vim搭建python开发环境
1. 安装vim $ sudo apt-get install vim 2. 安装ctags,ctags用于支持taglist,必需! $ sudo apt-get install ctags 3. ...
- 利用vim查看日志,快速定位问题《转载》
利用vim查看日志,快速定位问题 链接:https://www.cnblogs.com/abcwt112/p/5192944.html
- 利用vim查看日志,快速定位问题
起因 在一般的情况下,如果开发过程中测试报告了一个问题,我一般会这么做: 1.在自己的开发环境下重试一下测试的操作,看看能不能重现问题.不行转2 2.数据库连接池改成测试库的地址,在自己的开发环境下重 ...
- 将vim作为QT开发的IDE
转载请注明链接与作者huihui1988 用了一段时间的vim,喜欢上了这种简洁高效的编辑器.恰逢正在学习QT中,于是将vim变成了开发QT的工具.以下是具体配置. 一.语法高亮支持: 1.打开VIM ...
- CentOS 6安装thrift支持erlang开发
早前,在我的博文thrift多平台安装介绍了如何在debian/ubuntu下面安装thrift,并支持erlang开发的.而在CentOS平台下,并没有成功安装.经过不断摸索,终于成功了,这篇博文就 ...
- [Python] 利用Django进行Web开发系列(一)
1 写在前面 在没有接触互联网这个行业的时候,我就一直很好奇网站是怎么构建的.现在虽然从事互联网相关的工作,但是也一直没有接触过Web开发之类的东西,但是兴趣终归还是要有的,而且是需要自己动手去实践的 ...
- [Python] 利用Django进行Web开发系列(二)
1 编写第一个静态页面——Hello world页面 在上一篇博客<[Python] 利用Django进行Web开发系列(一)>中,我们创建了自己的目录mysite. Step1:创建视图 ...
- Web API应用架构在Winform混合框架中的应用(4)--利用代码生成工具快速开发整套应用
前面几篇介绍了Web API的基础信息,以及如何基于混合框架的方式在WInform界面里面整合了Web API的接入方式,虽然我们看似调用过程比较复杂,但是基于整个框架的支持和考虑,我们提供了代码生成 ...
- 跟我一起学WCF(2)——利用.NET Remoting技术开发分布式应用
一.引言 上一篇博文分享了消息队列(MSMQ)技术来实现分布式应用,在这篇博文继续分享下.NET平台下另一种分布式技术——.NET Remoting. 二..NET Remoting 介绍 2.1 . ...
随机推荐
- openssl rsa 加解密
<h4>1.openssl进行rsa加密解密</h4>首先介绍下命令台下openssl工具的简单使用:生成一个密钥:<pre lang="c" esc ...
- 支持 MBTiles 规范的预缓存
SuperMap iServer 支持生成符合MBTiles规范的预缓存(MBTiles是由MapBox制定的一种将瓦片地图数据存储到SQLite数据库中并可快速使用,管理和分享的规范. 该规范由Ma ...
- hdu 2899(数学基础+二分)
题意:给了你一个函数,然后给了你x的变化范围,让你求出函数的最小值. 分析:它让你求的是函数的最小值,所以我们可以先对函数求导,得到的导数就可以判断函数的单调性了,求出导数后,我们发现如果函数的导数是 ...
- Android数据库升级,数据不丢失解决方案
假设要更新TableC表,建议的做法是: 1) 将TableC重命名为TableC_temp SQL语句可以这样写:ALERT TABLE TableC RENAME TO TableC_temp; ...
- Yii 显示错误信息(Fatal Error,Warning)在页面上
Yii由于设计上对于一些php奇怪问题的顾虑,并没有像cake,kohana一样把php错误信息打印在页面上. 遇到错误时,只是显示白页,这让没有经验的programmer会一头雾水. 实际上通常vh ...
- [转载]C++异常机制的实现方式和开销分析
原文章网址:http://baiy.cn/doc/cpp/inside_exception.htm C++异常机制的实现方式和开销分析 白杨 http://baiy.cn 在我几年前开始写<C+ ...
- Android 应用启动速度优化
现在很多的应用一开始点击的时候总会出现黑屏或者白屏,甚至前段时间微信也有同样的问题.其实白屏或者黑屏还是一些其他的东西,都是因为Android 主题的问题,只要自己自定义一个启动主题,问题完美解决. ...
- cocoa中获取时间
头文件#import "Foundation/NSCalendarDate.h" + (id)calendarDate; - (int)yearOfCommonEra;- (int ...
- scala初学
起因:新公司的程序用scala,为了不落后,不落伍,跟上时代的浪潮,咱们测试也得学学新东西 适合读者:有java经验的IT人士 scala:所有变量都是对象,所有操作都是方法 1.定义变量:变量:类型 ...
- php时间函数
PHP中的时间函数有这么些:(1)date用法: date(格式,[时间]);如果没有时间参数,则使用当前时间. 格式是一个字符串,其中以下字符有特殊意义:U 替换成从一个起始时间(好象是1970年1 ...