vim erlang环境搭建

本文详细介绍了在Windows上如何搭建vim编辑器的Erlang开发环境,包括安装必要的vim插件如pathogen、Project、taglist、vimerl等,以及配置ctags生成tags文件。同时,针对vimerl在Windows上无法直接使用的問題,文章提供了修改escript.exe路径、调整makeprg设置和添加头文件目录的解决方案,确保智能提示和语法检查等功能正常运行。另外,提到了vim版本要求和NERD Commenter插件的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.需要安装vim插件列表:
taglist依赖于ctags程序生成的tags文件,  http://sourceforge.net/projects/ctags/

  拷贝下载文件中的ctag.exe到系统目录下,在项目根目录下使用“ctag -R”命令生成tags文件,这样在项目根目录下打开vim,会自动加载tags文件,也可以在vim使用“set tags=d:/myproject/tags”设置tags文件路径

2.vimerl在windows平台上的修改
vimerl插件在windows平台上不能直接使用,主要原因是erlang脚本文件的执行方式不一样,所以需要修改几个地方:
智能提示
修改文件autoload/erlang_complete.vim,其中一行
let functions = system(s:erlang_complete_file . ' ' . a:module)
s:erlang_complete_file前面加上escript.exe所在路径
let functions = system('escript.exe ' . s:erlang_complete_file . ' ' . a:module)

语法检查
找到compiler/erlang.vim文件,
if match(getline(1), "#!.*escript") != -1
setlocal makeprg=escript\ -s\ %
else
execute "setlocal makeprg=" . s:erlang_check_file . "\\ \%"
endif
修改为
if match(getline(1), "#!.*escript") != -1
setlocal makeprg=escript.exe\ -s\ %
else
execute "setlocal makeprg=escript.exe\\ " . s:erlang_check_file . "\\ \%"
endif
erlang.vim

注意execute命令参数中空格之前要用\\, %表示当前文件,

增加自己 的头文件目录
有时候,vimerl不能识别erlang文件,找到文件compiler/erlang_check.erl
main([File]) ->
    Dir = filename:dirname(File),
    Defs = [strong_validation,
            warn_export_all,
            warn_export_vars,
            warn_shadow_vars,
            warn_obsolete_guard,
            warn_unused_import,
            report,
            {i, Dir ++ "/include"},
            {i, Dir ++ "/../include"},
            {i, Dir ++ "/../../include"}],
    ...
在上面的列表添加自己 的头文件目录即可


注意:

PS:
1.vim版本一定要安装7.3以上,否则vimerl插件某些功能可能不支持,如语法检查
2. NERD Commenter, vim中快速添加注释的插件,支持erlang
3.vimerl的代码格式化、缩进功能(vimerl/indent目录下)在window上有问题,解决办法是直接把indent目录下的文件删除,因为vim本身有对erlang的相关支持
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值