我最近开始使用vim 7(以前是vim 6)和smartindent
设置。大多数情况下,它运作良好,尽管我习惯于在左花括号后键入一个制表符,但这几乎是适得其反。
但是,有一种疯狂的行为。在编辑shell脚本时,我尝试在当前缩进级别创建注释,但smartindent
不会理睬它。它坚持认为注释必须在0级(无缩进)上。更糟糕的是,它会破坏shift-right('>>
'和类似的操作),使它们无法正常工作。这是公然的不服从,我想知道如何修复它的最佳方法?
(我也不喜欢smartindent
对在if
之后缩进then
的想法。)
首选解决方案将节省我手动敲击键盘-我懒惰了。一种选择是“在编辑shell脚本时关闭smartindent
(其他情况下保留开启)”。另一种选择是提供指南,告诉我如何找到smartindent
的控制脚本以及要编辑哪些内容来更改我不喜欢的特征。最后一个选项(我不需要关于如何执行它的建议-只是提示这是恢复理智的最佳或唯一方法)是将smartindent
设置为未设置。
我看过了与之有关的问题“(PHP and) annoying vim unindent rules”,尽管其中提到的cindent
和相关条目可能确实是答案的一部分,但这并没有直接提供给我答案。