Ich versuche, es so zu gestalten, dass es der Standardtextbearbeitung in Mac entspricht. Ich habe es versucht
map! <D-Left> 0
und
map! <D-Right> $
in ~ / .vimrc, aber natürlich hat es nicht funktioniert. Wie kann ich das machen?
Soweit ich weiß, ist die Syntax ( <D-...>
) des Befehlstastenmodifikators ( ) nur in GUI-Instanzen von Vim unter Mac OS X wirksam.
Die Vim- Instanz muss GUI-basiert sein, da die meisten Terminalemulatoren ( Terminal , iTerm usw.) keine Steuersequenzen für Befehlstastenkombinationen generieren. Eine nur tty-Instanz von Vim kann daher nicht erkennen, dass jemals eine Befehlstastenkombination vorhanden war gedrückt (der Terminalemulator sendet niemals etwas über die tty-Schnittstelle). Tatsächlich bindet das Terminal ⌘ ← und ⌘ → (Befehl-Links und -Rechts) an das Durchlaufen der geöffneten Fenster, sodass diese Tasten beim Tippen im Kontext des Terminals „bereits vergeben“ sind .
MacVim (wenn es im GUI-Modus ausgeführt wird) enthält funktionale Zuordnungen für (neben anderen Tastenanschlägen im Mac-Stil)<D-Left>
und<D-Right>
(jeweils für<Home>
(nahezu identisch mit0
) bzw.<End>
(identisch mit$
)). Eine Einschränkung ist, dass diese Standardzuordnungen in eingerichtet sind$VIM/gvimrc
, sodass sie nur von Ihrem~/.gvimrc
† ordnungsgemäß überschrieben werden können.
Ich denke, es gab andere GUI-basierte Versionen von Vim für Mac OS X, aber MacVim scheint die einzige moderne zu sein.
† Grob gesagt, werden die Startdateien in dieser Reihenfolge verarbeitet: $VIM/vimrc
, ~/.vimrc
, $VIM/gvimrc
, ~/.gvimrc
. Seit den Karten von MacVim müssen Sie Ihre Zuordnung von (wenn Sie sie tatsächlich überschreiben möchten) in Ihre $VIM/gvimrc
Karte einfügen , damit sie das „letzte Wort“ hat.<D-Left>
<D-Left>
~/.gvimrc