我现在正在使用Vim,我似乎不能让缩进选项做我想做的事情。
以下是我的设置,我将它们放在.vimrc的底部,以确保它们优先。正如你所看到的,我有点疯狂,所以我试着关闭几乎所有的东西:
set cindent
set cinkeys=o,O
set cinoptions=
set cinwords=
set indentexpr=
在大多数情况下,它似乎工作得很好,它在打开一个块后缩进一次,一切都很好。但是有一种情况让我抓狂,当case
语句后面有一个{
时,下一行缩进得太多了:
switch () {
case CASE: {
// <-- next line gets indented to here, why??
// <-- should be indented to here
我怎样才能让它停止这样做呢?提亚
发布于 2010-08-10 07:52:58
:set cinoptions=l1
(这是字母ell后面跟着数字1)
查看:help cinoptions-默认字符串的值和不同选项的描述。
发布于 2010-08-10 07:22:38
当我手动键入您的set
命令时,我没有得到任何缩进。您是否查看了:set all
的输出以确认您的设置未被覆盖?
注意:这可能应该在评论中,但我目前不允许这个选项。
发布于 2016-07-06 15:59:43
如果缩进为N个空格(将N替换为实际值),请尝试以下操作
set cinoptions=p0,t0,:N,=0
set cinwords=if,else,switch,case,for,while,do
set cindent
:N ->从开关的缩进位置放置'case‘标签0个字符
=0 ->缩进case标签内的语句
https://stackoverflow.com/questions/3444696
复制相似问题