我在Windows上使用Vim 7.4,而Vim对Graphviz点文件的缩进似乎是半工作。
如果我取消整个文件,突出显示全部,并使用=
,所有内容都会缩进。但是当我输入时,一切都会自动进入最左边的列(没有缩进)。
这是一个示例文件,以防我输入错误:
digraph "test" {
"node1" -> "node2";
"node2" -> "node3";
}
高亮显示点文件的语法很有效,其他文件(Java,XML等)中的缩进也是如此。
答案 0 :(得分:1)
这可能是因为您没有设置smartindent
或cindent
。
检查
的输出:set smartindent?
:set cindent?
如果他们分别返回nosmartindent
和nocindent
,则添加
set smartindent
(或set cindent
)将解决问题。
来自:h smartindent
:
开始新线时执行智能自动延迟。适用于C类 程序,但也可以用于其他语言。
indentexpr
的特殊函数(编辑java文件时尝试:verb set indentexpr?
)。 :h indentexpr
:在为| = |创建新行时使用操作员和 在插入模式下,使用'缩进键'选项。 如果此选项不为空,则会取代“cindent”。和 ' smartindent'缩进。
=
?来自:h =
:通过外部程序过滤{motion}行 给予' equalprg'选项。什么时候等同于' 选项为空(这是默认值),使用 内部格式化功能| C-indenting |和 |'口齿不清' |。但是当' indentexpr'它不会是空的 改为使用。