如何更改 Vim 分割键映射?

如何更改 Vim 分割键映射?

我最近开始学习 Vim,我不喜欢 Vim 中默认的拆分窗口键映射。也就是说,我不喜欢输入 Cw 然后输入 S 来水平移动,输入 v 来垂直移动,以及通过 Cw jkhl 或上下左右移动焦点。

我希望在正常模式下使用“h”进行水平分割,使用“v”进行垂直分割,而无需输入 Cw。如何实现?此外,是否有人知道在窗口中更改焦点的合理配置,因为我不确定如果没有 Cw 这是否有意义。

谢谢。

答案1

这不是一个好的答案,因为我不记得我从哪里得到这些,但在我的_vimrc.vimrc在 Windows 上)

这批货物在缓冲区之间移动,即Alt right arrow移动到下一个缓冲区等等

    nmap <silent> <A-Right> :wincmd l<CR>
    nmap <silent> <A-Up> :wincmd k<CR>
    nmap <silent> <A-Down> :wincmd j<CR>
    nmap <silent> <A-Left> :wincmd h<CR>

更新 Vim 使用引导键的概念,即标准键后跟其他键,以使命令更容易。请参阅:h <Leader>。在我使用的默认安装中,它默认为退格键,let mapleader = ","因为我发现,sw(leftarrow)它比更容易backspace(leftarrow)。它的意思是,例如,nmap <leader>q :q!<cr>输入,q退出当前缓冲区而不保存它。 结束更新

这些命令将 vim 命令重新映射到更短的命令,使用leader命令例如在缓冲区的左上角创建新的缓冲区,leader>sw<left>其中<left>表示左箭头

    nmap <leader>sw<left>  :topleft  vnew<CR>
    nmap <leader>sw<right> :botright vnew<CR>
    nmap <leader>sw<up>    :topleft  new<CR>
    nmap <leader>sw<down>  :botright new<CR>
    nmap <leader>s<left>   :leftabove  vnew<CR>
    nmap <leader>s<right>  :rightbelow vnew<CR>
    nmap <leader>s<up>     :leftabove  new<CR>
    nmap <leader>s<down>   :rightbelow new<CR>

相关内容