我知道 Vim 中的这些命令:
J:在当前行之后加入下一行
-J:在上一行之后加入当前行
但是如何在当前行之后加入上面的行?
您也可以使用前命令
:m-2|j
m-2
具有将当前行移动到其当前位置上方 2 行的效果;这将切换当前行和上一行的位置。j
连接当前行和上面的行,在两者之间插入一个空格。j!
如果您不想要空间,请使用。|
将 2 个前命令分开此前命令是编写以下内容的简短方式
:move .-2
:join
有很多方法可以做到这一点。一种是......删除上面的行并将其附加到下面的行的末尾:
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
我将以下行添加到我的 .vimrc 中。现在,在正常模式下,我可以按@j 或<leader>j。对我来说领导者是空间。我还看到人们将其设置为 ,。
" join with previous line with @j
let @j="kJ"
nnoremap <leader>j @j
如果您还没有设置领导者,您可以将其设置为空格,如下所示:
let mapleader = " "
let g:mapleader = " "