请注意,与:paste
/ :nopaste
和剪贴板相关的不。我正在谈论完全在vim内复制和粘贴(d
,y
,p
)。
通常将外部块中的代码块复制并粘贴到内部块中。不幸的是,缩进仍然在外部块的水平,我不得不在之后缩进。
我想做的是从:
function foo() {
}
var bar;
var bazz;
到
function foo() {
var bar;
var bazz;
}
在vim中我通常做的是:
1)转到
行2)切换到可视模式
3)突出显示行
4)dd
删除行
5)向上移动光标
6)P
粘贴
7)进入视觉模式
8)突出显示行
9)>>
缩进行
我希望它自动缩进到正确的位置。如果我不需要重新突出显示行然后手动缩进它,那将是一个更平滑的工作流程。换句话说,取消步骤7-9。
有人知道这样做的方法吗?
答案 0 :(得分:1)
您可以轻松地将其作为粘贴的自动缩进键盘图。
例如,
nnoremap gp p`[v`]=
故障:
p to paste text
`[v`] to selecte Pasted text
= to autoindent selected text
答案 1 :(得分:1)