vim向上或向下移动一块选定的代码

时间:2015-11-06 05:30:50

标签: linux unix vim

有一种方法可以使用箭头键向上或向下移动突出显示的代码。放下块时,即使缩进也是正确的。

对于我的生活,我不记得该怎么做。

有人可以告诉我该怎么做。(非常尴尬地问这个)。

4 个答案:

答案 0 :(得分:2)

以下是帮助您

的链接

link

您可以使用:m命令移动一行或一行。例子:

:m 12 将当前行移至第12行

要移动一个直线,请使用相同的命令,但在输入移动命令之前,可以直观地选择这些直线。您还可以使用move命令使用任意范围。例子:

:5,7m 21 将第5,6和7行移至第21行

答案 1 :(得分:1)

如果你想用箭头键做,你可以试试Tim Pope的vim-unimpaired插件,你可以在Github上找到它。

然后你可以使用与这些类似的映射(除了将它们映射到你喜欢的任何键)。

" ^U moves lines up, ^D moves lines down.
" Works in normal or visual select modes.
nmap <C-u> [e
nmap <C-d> ]e
vmap <C-u> [egv
vmap <C-d> ]egv

答案 2 :(得分:0)

如果您选择了区号

,为什么不使用d+p

答案 3 :(得分:0)

这是我的配置,我使用一个很好的配置来映射 ctr+J 来向上移动一个代码块,并使用 ctrl + K 来向下移动一个块。我目前使用的是 NVIM,但我认为相同的配置设置也适用于 VIM。

  • NVIM 上的设置 我在 macOS Catalina 上用于 NVIM 的位置位于:

    .config/nvim/init.vim

    nnoremap K :m .-2<CR>==
    nnoremap J :m .+1<CR>==
    vnoremap K :m '<-2<CR>gv==gv
    vnoremap J :m '>+1<CR>gv=gv

对于vim,我认为您可以更改设置 .vimrc 位于主目录下。