Ich verwende derzeit Seil, um Caps-Lock neu zu mappen, um auf OSX 10.11 zu entkommen. Immer wenn ich htop überprüfe, um zu sehen, was läuft, wenn das System nicht viel tut (Programme geöffnet, aber nicht viel verarbeitet), ist Seil immer da und schwankt in seiner CPU- und Speicherbenutzung. Es ist wahrscheinlich keine große Sache, aber es fühlt sich verrückt an, dieses Ding immer laufen zu lassen, wenn man bedenkt, dass ich nur vim für gelegentliche flache Textdateien verwende. Ich möchte Seil nicht jedes Mal starten müssen, wenn ich vim benutze. Ist meine beste Option, einfach die Feststelltaste zu deaktivieren und eine Brücke an den Escape-Schlüssel anzuhängen? Vim kommt standardmäßig auf OSX und ist unbrauchbar, ohne dass es zu etwas zurückverfolgt werden muss, also würde ich denken, dass dies auftauchen würde, anstatt sich auf jemand anderen zu verlassen, um eine App dafür zu erstellen.Wie kann ich meine OSX-Tastatur neu zuordnen, ohne Programme von Drittanbietern zu verwenden?
Antwort
Neuzuordnung Caps Lock
Steuerung Sie können neu zuordnen die Kappen Schlüssel zum Steuer Schlüssel in den Tastatureinstellungen sperren (klicken Sie auf die Modifier Keys
Taste).
In vim, ein Alias für esc ist Kontrolle - [, die viel zugänglicher ist für die esc Schlüssel als erreicht.
Neuzuordnung Caps Lock in Vim
Navigieren Sie zu dem Library/Preferences/ByHost
Verzeichnis unter dem Home-Ordner
ls -a | grep Global
es auf eine Shell-Variable Escape Vergeben
cd ~/Library/Preferences/ByHost
Identifizieren Sie die versteckte Eigenschaftslistendatei für eine einfache Referenzierung später
pfile=$(ls -a | grep Global)
Stellen Sie sicher, dass die neu erstellte Variable pfile
den richtigen Wert hat. Es sollte wie folgt aussehen: .GlobalPreferences.7D7C488E-0E83-5562-B58B-011C540890F3.plist
echo $pfile
ein Backup für alle Fälle etwas
cp $pfile{,.bak}
Kopieren Sie die pfile auf das Home-Verzeichnis schief geht und wandeln es
cp $pfile ~/keys-binary.plist
plutil -convert xml1 -o ~/keys-xml.plist ~/keys-binary.plist
in XML
Öffnen Sie die Datei und suchen Sie nach dem Text HIDKeyboardModifierMappingSrc
und HIDKeyboardModifierMappingDst
. Setzen Sie den Wert zwischen integer
Tags unter HIDKeyboardModifierMappingDst
auf 5 und unter HIDKeyboardModifierMappingSrc
auf 0, wie folgt.
<key>com.apple.keyboard.modifiermapping.1452-588-0</key>
<array>
<dict>
<key>HIDKeyboardModifierMappingDst</key>
<integer>5</integer>
<key>HIDKeyboardModifierMappingSrc</key>
<integer>0</integer>
</dict>
</array>
Speichern und dann in eine Binärdatei
plutil -convert binary1 -o ~/keys-binary.plist ~/keys-xml.plist
Schließlich kopieren Sie diese Datei zurück zum ByHost
Verzeichnis, die ursprüngliche Datei zu ersetzen konvertieren zurück.
Sie müssen sich abmelden und wieder anmelden, bevor die Änderungen wirksam werden. Sobald Sie wieder angemeldet haben, fügen Sie die folgende Zeile in .vimrc
:
noremap <Esc>Op <Esc>
noremap! <Esc>Op <Esc>
Das wird, wenn Sie offen vim im Terminal arbeiten. Wenn Sie gvim verwenden, versuchen Sie Solution 2 by eelco, auf die ich verwiesen habe, um diesen Beitrag mit ein paar verschiedenen Zuordnungen zu schreiben, damit es im Terminal funktioniert.
Beachten Sie auch, dass, damit dies funktioniert, der VT100-Anwendungstastaturmodus Option in Ihren Terminaleinstellungen aktiviert sein muss.
Dies ist eine ziemlich gute Alternative für die meisten Leute, aber die Mittelhandknochen in meiner rechten Hand, Finger und Finger sind gebrochen und nicht richtig verheilt. Ich versuche, ihre Verwendung zu begrenzen, und es ist einfach der meistgenutzte Schlüssel in vim neben dem Raum. Ich sollte zuerst härter gesucht haben und fand das: https://stackoverflow.com/questions/30308192/how-to-hook-remap-an-arbitrary-keyboard-event-on-osx?rq=1 – crazyfox
Wow! Genau das wollte ich tun! Ich schätze die Arbeit, die Sie hier leisten! Funktioniert perfekt! – crazyfox
Haben Sie xmodmap? Ich weiß nicht, ob das auf OS X funktioniert. – yellowantphil
@yellowantphil Es sei denn, es kam mit allen xcode-Sachen, die Sie installieren müssen, damit ein Haufen * nix-Zeug funktioniert. Ich habe nichts davon gehört, also muss ich herumlesen. Ich dachte nur daran, vielleicht vim (plugin?) Zu ändern, um caps-lock (oder etwas anderes) als Escape zu verwenden. Es ist besser, Schuhe zu tragen als die Welt in Leder zu kleiden und all das, aber ich bin mir nicht sicher, ob das noch funktionieren würde. – crazyfox
und speziell für vim können Sie auch 'Strg-]' verwenden - oder es gibt weitere Ideen in dieser Liste: http://vim.wikia.com/wiki/Avoid_the_escape_key – bdecaf