当使用注释缩进java代码时,vim坚持这样缩进:
@Test public void ...
我想要注释与方法定义在同一列中,但我似乎找不到一种方式来告诉vim这样做,除了可能使用缩进表达式,但我不知道我是否可以使用它定期的吝啬。
编辑:我不能删除自己的答案,因为它已被接受,但
@pydave’s answer似乎是更好(更强大)的解决方案。
您应该使用缩进文件为Java FileType(而不是使用cindent)通过设置filetype插件缩进。
也就是说,从我的linux发行版(从目前的vim svn看,现在仍然是7.2)的Vim 7.1的缩进文件并没有考虑注释。因此,我将/usr/share/vim/vim71/indent/java.vim(见https://vim.svn.sourceforge.net/svnroot/vim/branches/vim7.1/runtime/indent/java.vim)复制到〜/ .vim / indent / java.vim,并在结尾之前添加以下行:
let lnum = prevnonblank(v:lnum - 1) let line = getline(lnum) if line =~ '^\s*@.*$' let theIndent = indent(lnum) endif
我不知道这是否打破了其他缩影,但它对我有用。