我正在尝试使vim与选项卡一起自动缩进,并与空格对齐,但实际上,vim与选项卡一起缩进,并用选项卡+空格填充对齐。
Vim做到了:
(每个块是一个选项卡)
{
>--long a = 1,
>-->--..b = 2,
>-->--..c = 3;
}
可以做到:
{
>--long a = 1,
>--.....b = 2,
>--.....c = 3;
}
因此,我认为关于制表符和空格的问题很多,但没有一个提供某些Just Works解决方案:
- /programming/8493705/vim-use-tabs-for-indentation-spaces-for-alignment-with-c-source-files
- /programming/29208431/vim-indent-with-tabs-align-with-spaces
- /programming/6504507/vim-indenting-and-alignment-combining-spaces-and-tabs
实际上我正在使用:
set ai
set cindent
set cinoptions=(0,:0,u0,U0,g0)
我尝试了Smart Tab插件,该插件似乎运行良好,但是当我尝试时gg=G
出现一些奇怪的错误:
Error detected while processing function CtabRedoIndent..<SNR>12_CheckAlign:
line 11:
E108: No such variable: "b:ctab_lastalign"
Press ENTER or type command to continue
Error detected while processing function CtabRedoIndent:
line 10:
E170: Missing :endwhile
这个讨论似乎很陈旧,所以现在,2015年,有一个正式的解决方案可以解决?
3
emacswiki.org/pics/static/TabsSpacesBoth.png
—
约翰·施密特
我没有为此的映射,只是一个主意...但是如果您在按Tab键时将Vim设置为插入制表符(您喜欢的任意宽度)会怎样,但是如果您按Shift键,实际上会将制表符扩展为空格-标签?这样会不会简化这种对齐方式?
—
通配符