Es gibt sie auf jeder handelsüblichen Tastatur unter der Sonne: Die Caps Lock Taste ⇪ – Eine Geißel der modernen Menschheit.
Im besten Falle wird sie einfach gar nicht benutzt, im schlimmsten zum augenzerfetztenden RUMSCHREIEN in Großbuchstaben. Die Sinnhaftigkeit dieses links außen in der Homerow der Tastatur sitzenden Reliktes aus den Zeiten mechanischer Schreibmaschinen ist also mit zweifelhaft noch sehr geschönt beschrieben. Ein geradezu schreiender1 Euphemismus.
Glücklicherweise lässt sich unter so gut wie jedem OS Abhilfe schaffen. Es existieren auch Initiativen wie CapsOff, die fordern, die Taste grundsätzlich durch eine ⌃-Taste zu ersetzen. Es gibt sogar Leute, die einfach einen Schraubendreher bemühen und die Taste physikalisch entfernen.
Kann man ja auch alles machen.
Hier steht allerdings nun, wie ich die Schreitaste in ein so dermaßen sinnvolles Werkzeug verwandelt habe, dass Computer ohne dieses Feature für mich beizeiten kaputt erscheinen.
Serious geekery ahead. Click for more…
Caps Lock für vim
User
Ich hatte meine Caps Lock Taste schon sehr lange auf Esc gemappt.
Das macht für einen vim
User auch sehr großen Sinn. Esc braucht man
ständig, um aus dem Insert-Mode zurück in den Normal-Mode zu kommen. Jedes mal,
wenn man eine Texteingabe abgeschlossen hat, die linke Hand aus der Homerow
zu heben um an die Taste ganz oben links auf der Tastatur zu kommen ist halt
nicht gerade praktisch.
Um also Esc in die Homerow der Tastatur zu verfrachten schaltet man Caps Lock erst einmal in den Tastatur-Systemeinstellungen von OS X komplett ab2. Die entsprechende Option findet sich hinter dem Button Sondertasten:
Hier ist es auch möglich, die Taste auf eine andere Modifikationstaste zu mappen. Nur Esc ist hier halt leider nicht dabei.
Zu diesem Zwecke nimmt man daher das merkwürdig benannte OS X Tool PCKeyboardHack und mappt dort den Keycode, den die Caps Lock Taste sendet, von der standardmäßigen 57 auf die Nummer 53. Eben genau den Keycode für Esc.
Bumm, Zack, Return. Schon fertig. Wenn man sich einmal an diese Config gewöhnt hat3, will man nie wieder zurück.
Aber es geht noch eine ganze Spur cooler…
Caps Lock als Hyper Key
Hyper Hyper
Is everybody on the floor?
We put some energy into this place!
I want to ask you something…
Are you ready for the sound of Scooter?
Das Ding ist, dass ich sehr gerne so viel wie möglich über die Tastatur erledige. Shortcuts auf den Tasten sind schlicht um Größenordnungen schneller als mit der Maus durch Menüs zu jagen.
Persönliche, systemweite Shortcuts definieren zu können, ohne mit bestehenden Kombination von OS X oder den laufenden Programmen zu kollidieren ist dabei mit den gegebenen Modifikationstasten ⇧, ⌃, ⌥ und ⌘ gar nicht so einfach. Teilweise sind auch schon Kombinationen von zwei Modifikationstasten belegt und mehr sind schwierig zu tippen, zu halten und zu behalten…
Daher habe ich alle vier in Hardware vorhandenen Modifikationstasten zu einem Hyper Key zusammengefasst und auf die Caps Lock Taste gebunden. Diese Kombination ist ohne ein Remapping so dermaßen blöd zu tippen, dass sie mit keinerlei mir bekannten anderen Shortcuts kollidert.
So steht mir die gesamte Tastastur für die Definition eigener Kommandos zur Verfügung. Und das allerbeste ist, dass Esc auch auf Caps Lock liegen kann:
- Wenn Caps Lock gehalten wird und dann eine andere Taste auslöst, verhält sie sich als Hyper.
- Wenn Caps Lock betätigt und wieder gelöst wird, verhält sie sich als Esc.
Und das geht so:
Als erstes wird das Caps Lock Keycode Mapping in PCKeyboardHack auf die 80 eingestellt. Das ist der Keycode für F19. Diese Taste existiert weder auf meiner MacBook Pro Tastatur, noch auf dem Apple Bluetooth Keyboard. Nur auf der großen, kabelgebundenen Apple Tastatur gibt es diese Taste ganz rechts oben auf dem Ziffernblock. Diese nutzte ich in den vergangenen Jahren genau nie, sie ist mithin über.
Als nächstes benötigt man dann noch KeyRemap4MacBook. Mit diesem Tool kann
man so ziemlich alles an einer Mac-Tastatur einstellen. Die standardmäßigen
Optionen sind schon sehr mächtig, lassen sich aber zusätzlich über eine persönliche
XML-Datei namens private.xml
weiter konfigurieren. Am einfachsten erreicht
man die private.xml
über den Punkt Misc & Uninstall - Custom Setting
- Open private.xml.
Das öffnet zunächst den Finder mit dem Ordner ~/Library/Application Support/KeyRemap4MacBook
.
Dort gelandet lässt sich die private.xml
mit dem bevorzugten Texteditor
bearbeiten. Hier ist meine:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
|
Der interessante Teil ist im <autogen>
-Abschnitt zu finden. Hier wird genau
das gewünschte Verhalten, nämlich Hyper beim Halten und Esc beim schlichten antippen von F19
definiert. Und da die Caps Lock Taste nun ebenfalls diesen Keycode sendet,
verhält sie sich genau so.
Nachdem hier Änderungen durchgeführt wurden, kann man zurück in die Einstellungen von KeyRemap4MacBook und findet dort unter Change Key und nach einem beherzten Klick auf ReloadXML, die soeben neu gebaute Option Remap Caps Lock to Hyper, die nur noch mit einem kleinen Haken zu versehen ist, um sie zu aktivieren.
Das ist schon alles. Für noch viel mehr tiefschwarze Remapping-Magie, sei hier auf die KeyRemap4MacBook Dokumentation und das private.xml Reference Manual verwiesen.
Was macht man also nun mit dieser neuen, ultimativen Modifikationstaste? Besonders profitieren natürlich Macro-Tools wie Keyboard Maestro4 oder Fast Scripts von so einer Taste. Ich persönlich nutze weder das eine, noch das andere.
Die neuen Möglichkeiten mit Hyper zu arbeiten nutze ich vor allem für das Fenstermanagement mit Slate, sowie die Steuerung des Wohnzimmer-iTunes auf dem Mac mini via Simplify. So kann ich sowohl meinen üblichen Fensterwust slicen & dicen wie es mir passt, als auch die Musik auf dem anderem Mac steuern, ohne die Hände von der Tastatur zu nehmen. Enorm praktisch und wirklich konkurrenzlos schnell.
Wie das genau funktioniert, werde ich in zwei folgenden Posts aufschreiben.
Pro Tips
Zum Abschluss drei weitere Hinweise. Die haben nicht direkt etwas mit Hyper zu tun, sorgen aber dennoch für noch mehr Spaß am Gerät.
private.xml
in ~/.dotfiles
versionieren
Die persönliche private.xml
kann unter Umständen deutlich mehr Einträge als nur
den oben stehenden Hyper-Part beinhalten. Damit man sie, wie andere
Konfigurationsdateien, versioniert und leicht verteilbar halten kann empfiehlt
es sich, diese in den eigenen dotfiles
zu speichern5. Dazu verschiebt man die
private.xml
einfach in ~/.dotfiles
und verlinkt sie zurück an die
ursprüngliche Stelle:
1 2 3 4 5 |
|
Das ist dann wieder eine Sache weniger, die man sich auf einem neuen Mac zurecht konfigurieren muss.
Key Repeat Rate anpassen
Ich tippe schnell und ich mag eine schnelle Tastatur. Auch, dass eine Taste sich schnell wiederholt. Daher habe ich die Key Repeat Rate mit den folgenden Einstellungen nach oben geschraubt.
Die Initiale Wartezeit beim Anschlag einer Taste habe ich von 500 auf 400 ms verringert und die Wartezeit beim Halten der Taste von 83 auf 33 ms gesenkt. Für erhöhte Schwuppdizität eine unerlässliche Sache.
Function Key Magic
Die Funktionstasten auf einem Mac sind standardmäßig mit Funktionen wie Lauter, Leiser, Heller, Dunkler, Dashboard und so weiter belegt. Will man anstelle von Lauter F12 auslösen, muss man zusätzlich Fn bemühen. Das ganze kann man auch umkehren und standardmäßig die Funktionstasten anstelle der integrierten Kontrollen auslösen. Dazu ist aber immer ein Ausflug in die Systemeinstellungen nötig.
Mit Palua ist es möglich, per Hotkey den Modus der Funktionstasten auf der Tastatur hin und her zu schalten. Standardmäßig ist der Shortcut ⌘-⌥-⇥, aber hier könnte man ja auch was mit Hyper machen…
Noch eleganter ist die Möglichkeit, den Modus basierend auf der aktuellen
Applikation automatisch zu definieren. So kann ich in vim
aus dem vollen
Funktionstastenumfang schöpfen, während ich in anderen Programmen schnell die
OS X Kontrollen nutzen kann.
GTD – Hyper Style
Es ist wirklich ausgesprochen erstaunlich, wie schnell sich selbstgebaute, persönliche Shortcuts in das Muskelgedachtnis einbrennen. Einfach deswegen, weil sie für einen selbst so verdammt nützlich sind und deswegen ständig benutzt werden.
Die nächste Phase ist dann rasch erreicht:
Sehr kurze Zeit nachdem man sich an die persönliche Arbeitsweise mit Hyper gewöhnt hat, funktionieren andere Computer nicht mehr so recht und wirken in ihren Möglichkeiten arg beschränkt. Das persönliche GTD-Empfinden hat heutzutage eben wirklich immer weniger mit roher Rechenkraft zu tun, als mit der Art und Weise wie man den Computer benutzt. Und da ist Hyper ein extrem nützlicher Baustein.
Highly recommended.
(via: Steve Losh, Dr. Drang und vor allem Brett Terpstra)