2016-11-27 1 views
1

Ich möchte einen Schlüssel zuordnen, wo drücken Sie Shift + Befehl und drücken Sie die Eingabetaste, um eine leere Zeile über der aktuellen Zeile einzufügen.Wie kann ich es machen? Momentan habe ich das.vim key mapping gedrückt halten 2 Tasten und geben

nmap <S-Enter> O<Esc>j 

Ich bin mit MacVim

+1

Vim unterstützt nicht mehrere Modifier Keys, so dass Sie zum Beispiel '' nicht tun können. –

Antwort

1

Aufgrund der Art und Weise, dass die Tastatureingabe intern gehandhabt wird, ist dies leider nicht generell möglich, heute, auch in gVim. Einige Tastenkombinationen, wie Ctrl (Befehl auf Mac genannt) + nicht alphabetische nicht abgebildet werden, und Ctrl + Brief gegen Ctrl +Umschalt + Brief nicht unterschieden werden kann. (Es sei denn, Ihr Terminal sendet einen eindeutigen Code dafür, was am meisten nicht ist.) Geben Sie im Einfüge- oder Befehlszeilenmodus die Tastenkombination ein. Wenn nichts passiert/eingefügt wird, können Sie diese Tastenkombination nicht verwenden. Dies gilt auch für <Tab>/<C-I>, <CR>/<C-M>/<Esc>/<C-[> usw. (Einzige Ausnahme ist <BS>/<C-H>.) Dies ist ein bekannter Schmerzpunkt und Gegenstand verschiedener Diskussionen über vim_dev und den #vim IRC-Kanal.

Einige Leute (vor allem Paul LeoNerd Evans) wollen das beheben (auch für Konsole Vim in Terminals, die dies unterstützen), und haben verschiedene Vorschläge, vgl. http://groups.google.com/group/vim_dev/browse_thread/thread/626e83fa4588b32a/bfbcb22f37a8a1f8

Aber bis heute haben sich keine Patches oder freiwillige Helfer gemeldet, obwohl viele den Wunsch geäußert haben, dies in einer zukünftigen Vim-Version zu haben.