如何在当前行之后加入上面的行?

时间:2012-11-28 16:26:00

标签: vim join lines

我在Vim中知道这些命令:

  

J:在当前行之后加入以下行   -J:加入

之后的当前行

但如何在当前行之后加入上面的行?

3 个答案:

答案 0 :(得分:2)

您也可以使用前命令

:m-2|j
  • m-2具有将当前行移动到当前位置上方2行的效果;这会切换当前行和上面一行的位置。
  • j加入当前行和上面的行,在两者之间插入一个空格。如果您不想要空间,请使用j!
  • |分隔2个前命令

这个ex-command是编写以下内容的简短方法

:move .-2
:join  

答案 1 :(得分:1)

有很多方法可以做到这一点。一个是......删除上面的行并将其附加到下面一行的末尾:

k move up one line
^ move to the first printable character
y$ yank to the end of the line
"_d get rid of the now useless line by deleting it into the black hole register
$ move to the end of the line
p put the deleted text

答案 2 :(得分:0)

我在.vimrc中添加了以下几行。现在,在正常模式下,我可以按@j或 j。对我来说,领导者就是空间。我还看到人们将其设置为..

" join with previous line with @j
let @j="kJ"
nnoremap <leader>j @j

如果尚未设置领导者,可以将其设置为如下空间:

let mapleader = " "
let g:mapleader = " "