Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在vim中格式化多行语句_Vim_Indentation - Fatal编程技术网

在vim中格式化多行语句

在vim中格式化多行语句,vim,indentation,Vim,Indentation,在vim中,有一个长语句,如 if ( (image == null) || (image.getFileHash() == null) || (image.getFileImage() == null) ) 当我在第二个或第二个 if ( (image == null) || (image.getFileHash() == null) || (image.getFileImage() == null) ) { 有没有办法将vim设置为缩进 if ( (image == n

在vim中,有一个长语句,如

 if ( (image == null) || (image.getFileHash() == null) || (image.getFileImage() == null) )
当我在第二个或第二个

if ( (image == null) || (image.getFileHash() == null)
        || (image.getFileImage() == null) ) {
有没有办法将vim设置为缩进

if ( (image == null) || (image.getFileHash() == null)
    || (image.getFileImage() == null) ) {
i、 e.将其与前一行(的)后面的列对齐

在冲刺的帮助下,汤姆·邦解决了一部分问题 问题。但是,现在花括号未按预期对齐 如果
{
从同一行开始

if ( (image == null) || (image.getFileHash() == null) ||
     (image.getFileImage() == null) )
{

}

if ( (image == null) || (image.getFileHash() == null) ||
     (image.getFileImage() == null) ) {

     }

控制此操作的设置是
cinoptions
,请参阅
:help cinoptions values

将其添加到.vimrc中,以与大多数本地未闭合括号对齐。(可以通过提供不同的数字(包括负数)在空格中提供额外的缩进。可以使用Ns缩进N个制表位。)


默认值是2s,它将缩进两个制表符超过打开的paren;希望这就是您看到的。

如果((image==null)| |(image.getFileHash()==null)| |(image.getFileImage()==null)){}结束的花括号与('而不是if语句。查看我上面引用的帮助文档,它将为您提供各种配置选项。右括号应默认为“正确”位置,但您可以尝试添加
}0
到您的
cinoptions
查看这是否会改变行为。另一种可能性是,如果您的括号不匹配,自动格式化程序会执行各种您可能不喜欢的操作…尝试了
}0
但找不到方法。我更新了原始帖子,以准确显示我看到的内容。奇怪。这是我在Windows上使用Vim 7.3时,情况很好。也许可以检查您的缩进设置,是否
设置cindent?
显示cindent已打开?我有自动缩进,nosmartindent,cindent。我尝试了自动缩进,nosmartindent,cindent。同样的问题。但是,我正在使用MacVim(Vim-Vi改进了7.3(2010年8月15日,编译2012年1月16日19:11:00)MacOS X(unix)版本)
set cinoptions=(0