vim中的哪些设置抵消了smartindent拒绝在shell脚本中缩进#个注释
我最近开始使用vim 7(以前的vim 6)和smartindent设置。在大多数情况下,它的效果很好,尽管我习惯于在开放的大括号之后键入一个选项卡,几乎是有效的。
然而,有一件疯狂的行为。编辑shell脚本时,我尝试在当前的缩进级创建一个注释,但是smartindent与它无关。它坚持认为评论必须在0级(无缩进)。更糟糕的是,它打破了右派(‘>>’和朋友),使他们不工作。这是彻底的不服从,我想知道什么是最好的方法来解决它? (我也不喜欢smartindent关于缩进的想法,如果。) 首选解决方案可以帮助我手动打嗝 – 我很懒。一个选项是“编辑shell脚本时关闭smartindent(将其留给休息)”。另一个选择是关于如何找到smartindent的控制脚本以及要编辑以更改不喜欢的特性的指导。最后的选择(我不需要关于如何做的建议 – 只是提示它是最好的,或者只是恢复理智的方式)是离开智慧未定。 我看到有关“(PHP and) annoying vim unindent rules”的模糊相关的问题;它不提供我直接的答案,但也许在这里提到的有关和相关的项目实际上是答案的一部分。
找到缩进文件(例如我的系统上的/usr/share/vim/vim71/indent/sh.vim)
这条线看起来像是这样的问题: setlocal indentkeys-=:,0# 也许您可以在.vimrc中修复此问题,或手动加载自定义缩进文件。 编辑:它看起来比我想象的更复杂,但也许在缩进文件中有一些特定的设置,你需要修复。 第二次编辑:看起来我完全错了,看看:
要么 howto-configure-vim-to-not-put-comments-at-the-beginning-of-lines-while-editing (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 如何使用Angular2模板与* ngFor从嵌套数组创建表?
- angularjs – 在使用“$state.go(‘stateName’,null,{‘re
- scala – 如何在IntelliJ IDEA 14社区版中创建Play项目?
- Bootstrap简单认识之Collapse组件
- Bootstrap用户界面架构视频教程
- 【数据结构】用C++实现顺序表的各种操作(包括头删,尾删,
- 4.2、Bootstrap V4自学之路------组件---按钮组
- angularjs – 在多重数组的ng-repeat上使用orderBy
- angular学习第一篇-----环境搭建
- 为什么不在Scala中设置方法强制执行类似的类型?