目前我在使用Vim编辑Yaml文件时,使用了set autoindent
命令。它可以通过复制上一行的缩进来实现新行的缩进,看起来工作得还不错。然而,我总觉得它可以更加智能化。如果在foo: "bar"
后开始一行,应该保持相同的缩进级别,但在foo:
后开始一行,则应该增加一个额外的缩进级别。
Xavier激发了我对此进行一些修改,并开发了适用于Yaml的自己的缩进脚本。它不能处理更高级的Yaml功能,但它可以做我最初要求的事情。
要使用它,您只需将其放入~/.vim/after/ftplugin/yaml.vim
(假设您使用了set ftplugin on
)即可。
特定缩进规则按语言存储在:
$VIMRUNTIME\indent\foo.vim
(其中foo
是语言名称)。
在我的默认安装中,我有 ruby.vim
, haml.vim
等许多文件,但没有 yaml.vim
。
您可以创建一个 indent\yaml.vim
文件来获取所需的缩进规则。我已经试图在网上搜索是否有类似的文件可用,但没有找到。