Vim 正在查找此代码段的正确选项
我可以设置哪些选项以使下面的块缩进,如图所示Vim 正在查找此代码段的正确选项,vim,indentation,Vim,Indentation,我可以设置哪些选项以使下面的块缩进,如图所示 f(int *p) : a(p) , b(0) { std::cerr << blah << foo << std::endl; } f(int*p) :a(p) ,b(0) { std::cerr看起来您只需要一个附加选项。我通过将p0添加到cinoptions,获得了您期望的结果: 设置cino=i0,+2,p0 这将调整K&R样式缩进: 那么i0,+2,t0呢?(tN表示“函数返回类型声明”)
f(int *p)
: a(p)
, b(0)
{
std::cerr << blah
<< foo << std::endl;
}
f(int*p)
:a(p)
,b(0)
{
std::cerr看起来您只需要一个附加选项。我通过将p0
添加到cinoptions
,获得了您期望的结果:
设置cino=i0,+2,p0
这将调整K&R样式缩进:
那么i0,+2,t0
呢?(tN
表示“函数返回类型声明”)
这对我来说很有效,但是,我尝试的vims(7.0和7.3)使用i0,+2
做了两件不同的事情,与您的不一样。我使用set cino=i0,+2
和set cino=i0,+2,p0
获得了相同的输出。这可能与其他一些选项有关吗?我正在使用set cindent
,set expandtab
,以及上的文件类型缩进没有看到您报告中的行为。当我使用您的选项时(无p0)我在后两行上得到一个缩进,当我添加p0时,它会按照要求运行。您可以执行:mkvimrc
,确认cinoption
值正确,然后将您得到的设置粘贴到中吗?我已经创建了两个粘贴箱。第一个是带有:mkvimrc
:。第二个是手动缩进文件用set cino=i0,+2,p0:Andy,这对我也很有用。最后用g0,+2,(2,i0,t0,:0
。
f(int* p)
: a(p)
, b(0)
{
std::cerr << blah
<< foo << std::endl;
}
pN Parameter declarations for K&R-style function declarations will
be indented N characters from the margin. (default
'shiftwidth').
cino= cino=p0 cino=p2s
func(a, b) func(a, b) func(a, b)
int a; int a; int a;
char b; char b; char b;