surprising number上有questions this个subject,但有些人没有回答我想要的内容。
我有一个代码块如下:
void foo {
somecodehere
morecode
...
}
正如您所看到的,我的函数的内容与我的代码块的其余部分在同一级别上是缩进。我目前所做的是>%
在我的块的末尾(即}
),它缩进整个块,包括带有花括号的行。
我想要做的是一个类似的命令,它在排除我的大括号之间缩进每一行。
我无法开始告诉你这会节省多少时间。
答案 0 :(得分:13)
而不是映射新的东西,>i{
似乎在这里做你想要的,但它会移动光标。
答案 1 :(得分:3)
将光标放在要缩进的块内,然后键入vi{>
v
进入视觉模式。
i{
选择最里面的{}块
>
缩进视觉块并返回正常模式
然后,您可以使用''
将光标移回原始行。
N.B。如果您想缩进大括号,请将i{
替换为a{
。
答案 2 :(得分:1)
插入
map sb v%><<%<<
进入你的 .vimrc (用你想要的任何组合键替换'sb')。 它将整个功能向右移动,然后是第一个和最后一个 回到左边。它适用于块的第一行或最后一行
答案 3 :(得分:1)
我使用的标记有时会很痛,但它有效
转到功能的最后一行(上方的行))
ma
创建标记'a'
返回函数顶部并执行此操作。
&GT;`一个
只是缩进一级,直到达到标记a。