Wielki powrót Caps Lock

Poniższy artykuł został napisany i opublikowany 3 lata temu. Istnieje spore prawdopodobieństwo, że część informacji i linków jest już nieaktualna.

Na swoich komputerach od zawsze używam niezliczonych niemal skrótów klawiszowych. Definiuję je albo w preferencjach systemu, albo w ustawieniach aplikacji, a jeśli się nie da – tworzę makra w Keyboard Maestro. Korzystanie z systemu, używając wyłącznie klawiatury, bardzo usprawnia mi pracę i wierzę, że dla każdego, kto na co dzień pracuje przy komputerze, nie jest to żadne zaskoczenie. Jest jednak pewien domyślny skrót klawiszowy, którego szczerze nie znoszę. Mowa o ⌘+TAB. Jak wiadomo, służy on do przełączania się pomiędzy otwartymi aplikacjami.

Problem

Idea tego skrótu jest słuszna, ale mając w trakcie pracy aktywne 10-16 programów cały czas, przełączanie się pomiędzy nimi za pomocą ⌘+TAB to prawdziwa męka i duża strata czasu. Dodatkowo, niejednokrotnie zdarza się, że aplikacja, której się szuka w tym szeregu kolorowych ikonek, okazuje się być zamknięta, o czym użytkownik orientuje się o tym dopiero po dwudziestym piątym naciśnięciu kombinacji ⌘+TAB.

Wiedziałem, że istnieje rozwiązanie tego problemu, polegające na przypisanie najczęściej uruchamianym aplikacjom globalnych skrótów klawiszowych, ale …brakowało mi już klawiszy, które mógłbym użyć. Wszystkie kombinacje z ⌘+⌥+znak, ⌘+^+znak czy ⌘+⇧+znak miałem już od lat wykorzystane i zapamiętane w pamięci mięśniowej – nie było więc mowy o tym, żeby je zmieniać. Wolna zostawała jedynie kombinacja ⌘+⌥+^+⇧+znak, ale w większości wypadków wymagała użycia dwóch rąk i żadną miarą nie można uznać jej za wygodną.

Skanując wzrokiem klawiaturę, „znalazłem” nieużywany Caps Lock i do głowy wpadł mi pewien pomysł; co by było, gdyby przemapować go na powyższą kombinację klawiszy? Zacząłem więc drążyć i jak zwykle w tego typu przypadkach, z pomocą przyszedł internet, a konkretnie Brett Terpstra, który zrobił u siebie dokładnie to samo.

Solucja

Po instalacji i konfiguracji dwóch aplikacji, oto co mogę zrobić w swoim systemie – do każdego z najczęściej używanych programów przełączam się (lub uruchamiam, jeśli był wyłączony) za pomocą skrótu klawiszowego ⇪+znak:

  • ⇪+Q – OmniFocus,
  • ⇪+W – FastMail (jako aplikacja w Fluid),
  • ⇪+E – Safari,
  • ⇪+R – Ulysses III,
  • ⇪+A – Messages,
  • ⇪+S – iTunes,
  • ⇪+D – Evernote,
  • ⇪+C – Calendar,
  • ⇪+V – Ember,
  • ⇪+F – PathFinder,
  • ⇪+` – MailMate.

I wszystkie powyższe mogę obsłużyć jedną ręką (a jeszcze zostaje mi T, Z i X). Dodatkowo, kombinacje ⇪+1 do ⇪+8 przełączają mnie bezpośrednio do wybranych wcześniej perspektyw w OmniFocus i to nawet dostosowując wielkość okna do każdej z nich (więcej o tym już niedługo).

Powyższe rozwiązanie ma dwie ogromne i jedną mniejszą zaletę:

  1. Pozwala na przełączanie się do wybranej aplikacji bez konieczności kliku– czy kilkunastokrotnego naciskania ⌘+TAB.
  2. Nie wymaga, aby „wywołana” aplikacja była wcześniej włączona – skrót działa na zasadzie „jeśli aplikacja X jest włączona, aktywuj ją; jeśli nie – uruchom”.
  3. Pozwala użyć przycisku Caps Lock jako Escape, gdy naciśnie się go samego (bez połączenia z innym znakiem).

Jak tego dokonać?

Poza wspomnianym Keyboard Maestro, potrzebne jeszcze są aplikacje Seil (wcześniej PCKeyboardHack) i Karabiner (wcześniej KeyRemap4MacBook) – obie bezpłatne. Przed przystąpieniem do konfiguracji, należy również wyłączyć przycisk Caps Lock w preferencjach systemu:

Następnie w aplikacji Seil należy zmienić kod przycisku Caps Lock na 80:

Teraz należy przygotować sobie plik .xml z poniższym kodem autorstwa Bretta Terpstry i zapisać go najlepiej w /Library/Application Support/Karabiner/:

<?xml version="1.0"?>
<root>
<item>
<name>F19 to F19</name>
<appendix>(F19 to Hyper (ctrl+shift+cmd+opt) + F19 Only, send escape)</appendix>
<identifier>private.f192f19_escape</identifier>
<autogen>
--KeyOverlaidModifier--
KeyCode::F19,
KeyCode::COMMAND_L,
ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L,
KeyCode::ESCAPE
</autogen>
</item>
</root>

Następnie w aplikacji Karabiner należy przejść do ostatniej zakładki Misc & Uninstall i zaimportować własny plik .xml:

Teraz pozostaje już tylko przejść do zakładki Change Key i kliknąć ReloadXML:

Od teraz przycisk Caps Lock będzie udawał wirtualny klawisz F19, który dla systemu będzie kombinacją ⌘+⌥+^+⇧.

Żeby zrobić z tego użytek, należy utworzyć makra w Keyboard Maestro do każdej z aplikacji, jaką chce się w ten sposób uruchamiać i aktywować:

Et voilá!

Powyższego rozwiązania używam od półtora roku na wszystkich swoich komputerach i żałuję jedynie, że na iPadzie nie ma szans na cokolwiek podobnego, bo używając klawiatury zewnętrznej, średnio kilka razy dziennie łapię się na tym, że naciskam ⌘+Q i dziwię się, że się nie przełączył do OmniFocus.

  • jedrzejb

    Świetne jak zawsze.
    Wracasz do pisania? :)

    • Dziękuję, miło wiedzieć, że komuś się przydało.
      Wygląda na to, że wracam :) Musiałem zmienić stronę, żeby się zmotywować – teraz chętniej będę siadał do pisania, wiedząc, że oprawa jest w porządku.

  • Michał

    Co za niespodzianka! Miłoszu, dziękuję za świetny tekst – warto było od czasu do czasu sprawdzać, czy nie napisałeś czegoś nowego.

    • Masz doskonałe wyczucie czasu, bo zajrzałeś ledwie kilkanaście godzin po publikacji :)
      Mimo zmienionej strony, adres kanału RSS się nie zmienił, a dodatkowo, na stronie głównej istnieje możliwość zapisania się do newslettera, który będzie przesyłał artykuły w momencie ich publikacji (na dobrą sprawę – choć to raczej nieskromna propozycja z mojej strony – można tam podać swój adres do Instapaper).

  • Wiktor

    Brakowało mi Twoich wpisów ;) Jeszcze czekam na powrót a propos piątku :D

  • Wow, wow, wow! Świetnie jak zawsze. Wszyscy na to czekaliśmy ;)

  • Jacek Taranko

    Pomocny tekst. Dziękuję.

  • rurza

    a jak Ci się Yosemite podoba?

    • To niebezpieczny – bo długi – temat. Kilka rzeczy uważam za super, kilka za w porządku, ale jest też kilka, których nie rozumiem i których nie wybaczę.

      • rurza

        a zechciałbyś się podzielić ze mną tymi ostatnimi?

  • Piotr

    Super artykuł, zacząłem używać i wszystko było super, aż do momentu podłączenia zewnętrznej klawiatury. Wedy przerobiony Caps lock nie działa tak jak powinien. Sprawdziłem jak to wygląda na eventViewer i oto różnica (Caps Lock + A).
    Klawiatura apple zewnętrzna:
    http://cl.ly/image/0I0S293E322E/Image%202014-10-19%20at%204.45.45%20PM.png
    Klawiatura apple w macbooku (tutaj jest ok) :
    http://cl.ly/image/1t452D0o2H0h/Image%202014-10-19%20at%204.49.01%20PM.png

    Macie może na to rozwiązanie?

    • Tak, w OS X ustawienia ‘Modifier Keys…’ są osobne dla każdej z klawiatur, więc powinieneś po prostu powtórzyć pierwszy krok dla klawiatury zewnętrznej.

      • Piotr

        Nie zauważyłem – dzięki za info!

  • Tomasz R

    Tak bardzo nie mogę się doczekać kiedy zacznę korzystać z Keyboard Maestro. Czy funkcja Caps Lock działa w tym wypadku też normalnie czy jest kompletnie zmieniona?

    • Nie, klawisz jest przemapowany – wyłączasz jego podstawową funkcję w systemie w pierwszym kroku.