Wie ändere ich die Tastenbelegung für die Vim-Aufteilung?

Wie ändere ich die Tastenbelegung für die Vim-Aufteilung?

Ich habe vor Kurzem angefangen, Vim zu lernen, und mir gefällt die Standard-Tastenbelegung zum Teilen von Fenstern in Vim nicht. Das heißt, ich gebe nicht gern Cw und dann S für horizontal und v für vertikal ein und verschiebe den Fokus nicht mit Cw jkhl oder hoch-runter, links-rechts.

Ich möchte im Normalmodus „h“ zum horizontalen Teilen und „v“ zum vertikalen Teilen haben, ohne Cw einzugeben. Wie kann das gemacht werden? Und kennt außerdem jemand eine einigermaßen vernünftige Konfiguration zum Ändern des Fokus in Fenstern, denn ich bin nicht sicher, ob das ohne Cw Sinn ergibt.

Danke.

Antwort1

Dies ist keine gute Antwort, da ich mich nicht erinnern kann, woher ich diese habe, aber in meinem _vimrc( .vimrcunter Windows)

Diese Menge bewegt sich zwischen Puffern, d. h. Alt right arrowbewegt sich zum nächsten Puffer rechts usw.

    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>

Aktualisieren Vim verwendet ein Konzept mit einem Leader, also einer Standardtaste, gefolgt von einer oder mehreren weiteren Tasten, um Befehle einfacher zu machen. Siehe :h <Leader>. In der Standardinstallation, die ich verwende, ist die Rücktaste standardmäßig aktiviert, let mapleader = ","da ich dies ,sw(leftarrow)einfacher finde als backspace(leftarrow). Das bedeutet beispielsweise, dass nmap <leader>q :q!<cr>beim Eintippen ,qder aktuelle Puffer ohne Speichern verlassen wird. ENDE des Updates

Diese Befehle ordnen vim-Befehle einem kürzeren Befehl zu, indem sie den leaderBefehl verwenden. Um beispielsweise einen neuen Puffer oben links in Ihren Puffern zu erstellen, verwenden Sie, leader>sw<left>wobei <left>der linke Pfeil bedeutet

    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>

verwandte Informationen