1

我在现实生活中总是面临这个问题。

我要这个:

我的光标位于多行代码的第一行。内容应该放在多行代码之后。

[cursor]xxxx
xxxxxxxxxxxx
xxxxxxxxxxxx
xxxxxxxxxxxx
xxxxxxxxxxxx
[this is where i want to place the code]

现在的问题:

由于p在 vim 中只是将代码粘贴在光标之后,我必须转到行尾和p.

xxxxxxxxxxx
xxxxxxxxxxxx
xxxxxxxxxxxx
xxxxxxxxxxxx
[cursor]xxxxxx
[this is where i want to place the code]
4

3 回答 3

4

put是您要查找的命令

:[lineNo]put x

例如

:200pu

"将在第 200 行之后粘贴寄存器的值。

:200pu n

将在第 200 行之后粘贴寄存器的值n(在您可能已经完成之前:)。"ny

有关更多详细信息,请检查:h :pu

编辑_nu

我觉得在不同情况下使用数字或相对数字很好。不要一直坚持一个。至少我正在这样做。在我的 vimrc 中,我写了一个小函数来切换相对编号和正常行号:

function! ToggleRelativeNumber()
    let &relativenumber = &relativenumber?0:1
    let &number = &relativenumber? 0:1
endfunction
"map <leader> rn to the function
nnoremap <silent> <Leader>nu :call ToggleRelativeNumber()<cr>

所以我可以打字,nu在它们之间切换。(我的领导是,

于 2013-04-14T17:32:31.090 回答
1

如果要在代码块之后粘贴,可以使用}P导航到块的末尾,然后粘贴到该行。

于 2013-04-14T17:22:17.243 回答
0

假设您要从默认寄存器粘贴,

  • 在下一次出现后粘贴foo

    /foo<cr>p
    
  • 或肯特的建议:

    :+4put
    
于 2013-04-14T18:14:52.497 回答