如何在Vim中正确缩进Erlang的多行列表、映射、元组及函数头?
解决Vim中Erlang代码统一缩进问题
要解决Vim里Erlang代码缩进混乱的问题,最简方案是用官方维护的Erlang Vim插件+统一缩进配置:
- 清理旧插件:先移除之前安装的vimerl和vim-erlang-runtime,删除对应插件目录,避免版本冲突。
- 安装官方插件:用你的Vim插件管理器添加官方
vim-erlang插件,比如用vim-plug的话,在~/.vimrc里加一行:
然后执行Plug 'erlang/vim-erlang':PlugInstall完成安装。 - 添加缩进配置:在
~/.vimrc里追加以下Erlang专属缩进规则,强制统一各类语法结构的缩进量:" Erlang统一缩进配置 autocmd FileType erlang setlocal expandtab autocmd FileType erlang setlocal shiftwidth=4 autocmd FileType erlang setlocal softtabstop=4 autocmd FileType erlang setlocal tabstop=4 autocmd FileType erlang let g:erlang_indent_paren = 4 autocmd FileType erlang let g:erlang_indent_fun = 4 autocmd FileType erlang let g:erlang_indent_map = 4 autocmd FileType erlang let g:erlang_indent_tuple = 4
配置完成后,重新打开Erlang文件,代码会自动缩进成你想要的统一效果:
TestList = [ a, b ], TestTuple = { a, b }, TestMap = #{ a => 0, b => 1 }, {ok, _} = mymodule:myfunc( a, b ),
内容的提问来源于stack exchange,提问作者ITChap
相关产品推荐
相关产品推荐

