Jak sprawić, by Caps Lockdziałał jak Escw Mac OS X?
Ctrl + [
dla esc
. Przydatne dla Vima.
Jak sprawić, by Caps Lockdziałał jak Escw Mac OS X?
Ctrl + [
dla esc
. Przydatne dla Vima.
Odpowiedzi:
Edit: Jak to opisano w tej odpowiedzi , nowsze wersje MacOS teraz natywne wsparcie dla ponownego wiązania Caps Locksię Escape. Dlatego nie jest już konieczne instalowanie oprogramowania innych firm, aby to osiągnąć.
Oto moja próba wyczerpującej, wizualnej odpowiedzi (wraz z linkami), jak to osiągnąć za pomocą Seila (wcześniej znanego jako PCKeyboardHack
).
W wyskakującym oknie dialogowym ustaw Caps Lock Key na No Action
:
2) Teraz kliknij tutaj, aby pobrać Seil i zainstalować go:
3) Po instalacji będziesz mieć zainstalowaną nową aplikację (Mountain Lion i nowsze), a jeśli masz starszy system operacyjny, może być konieczne sprawdzenie nowego panelu Preferencji systemowych:
4) Zaznacz pole „Zmień Caps Lock” i wpisz „53” jako kod dla klawisza Escape:
I jesteś skończony!Jeśli to nie zadziała natychmiast, może być konieczne ponowne uruchomienie komputera.
Możesz także sprawdzić KeyRemap4MacBook, który jest tak naprawdę flagowym narzędziem do mapowania klawiaturypqrs.org
- jest również bezpłatny.
Jeśli podoba Ci się te narzędzia, możesz przekazać darowiznę . Nie mam z nimi żadnych powiązań, ale używam tych narzędzi od dłuższego czasu i muszę powiedzieć, że chłopaki wykonali świetną robotę, utrzymując je, dodając funkcje i naprawiając błędy.
Oto zrzut ekranu pokazujący kilka (setek) wstępnie wybranych opcji:
PQRS ma również świetne narzędzie NoEjectDelay , którego można używać w połączeniu z KeyRemap4MacBook do przeprogramowywania klucza Eject. Po drobnych poprawkach mam swój zestaw, aby przełączyć AirPort Wifi.
Te narzędzia oferują nieograniczoną elastyczność podczas mapowania klawiatury Mac. Baw się dobrze!
CTRL-[
jest właściwie odpowiednikiem ESC. stackoverflow.com/questions/5030164/…
Od MacOS 10.12.1 możliwe jest przemapować Caps Lockdo Escnatywnie (Preferencje systemowe -> Klawiatura -> Klawisze modyfikujące).
Nie byłem zadowolony z żadnej z odpowiedzi tutaj i zacząłem szukać rozwiązania dla wiersza poleceń .
W macOS Sierra 10.12 Apple wprowadził nowy sposób mapowania kluczy przez użytkowników.
Jeśli brzmi to dla ciebie dobrze, spójrz na hidutil
.
Na przykład, aby ponownie przypisać Caps-Lock do ucieczki, zapoznaj się z tabelą kluczy i dowiedz się, że Caps-Lock ma kod użytkowania 0x39, a klawisz Escape ma kod użytkowania 0x29. Umieść te kody lub kod o wartości szesnastkowej 0x700000000 w źródle i dest:
hidutil property --set '{"UserKeyMapping":[{"HIDKeyboardModifierMappingSrc":0x700000039,"HIDKeyboardModifierMappingDst":0x700000029}]}'
Możesz dodać inne mapowania w tym samym poleceniu. Osobiście lubię mapować Caps-Lock na backspace i mapować backspace, aby usunąć:
hidutil property --set '{"UserKeyMapping":[{"HIDKeyboardModifierMappingSrc":0x700000039,"HIDKeyboardModifierMappingDst":0x70000002A}, {"HIDKeyboardModifierMappingSrc":0x70000002A,"HIDKeyboardModifierMappingDst":0x70000004C}]}'
Aby zobaczyć bieżące mapowanie:
hidutil property --get "UserKeyMapping"
Twoje zmiany zostaną utracone przy ponownym uruchomieniu systemu. Jeśli chcesz, aby trwały, umieść je w skrypcie i ustaw hak logowania:
sudo defaults write com.apple.loginwindow LoginHook /path/to/login_script.sh
LoginHook
metody - chyba coś po uruchomieniu wybiera ustawienia lokalnej klawiatury dla skandynawskiej klawiatury? W każdym razie stackoverflow.com/a/22872222/874188 zauważa, że LoginHook
jest przestarzałe i zaleca używanie launchd
zamiast niego.
To jest możliwe.
Z artykułu na stronie TrueAffection.net.
- Pobierz PCKeyboardHack i zainstaluj go.
- Przejdź do PCKeyboardHack w Preferencjach systemowych.
- Włącz „Zmień Caps Lock” i ustaw kod dostępu na 53.
To rozwiązanie nie wymaga łatania sterownika klawiatury, ale daje rozwiązanie specyficzne dla Vima.
OS X obsługuje mapowanie klawisza Caps Lock na całą masę kluczy, ale musisz to zrobić ręcznie, edytując pliki .plist. Proces ten opisano w tym artykule . Jako dodatek do tej wskazówki sugeruję, aby najpierw ustawić Caps-Lock na Brak w Preferencjach systemowych, a następnie wystarczy zmienić tylko jedną wartość w pliku .plist. Ponadto możesz oczywiście użyć Edytora list właściwości zamiast przejść przez etapy konwersji XML.
Sztuczka polega na zamapowaniu klawisza Caps Lock na klawisz Pomoc (kod 6), którego nie ma na większości klawiatur. Ale jeśli tak, to zostanie potraktowane jako klawisz wstawiania, którego prawdopodobnie i tak prawdopodobnie nie używasz, ponieważ pytasz o ponowne mapowanie Caps Locka, aby zapobiec rozciąganiu rąk;)
Następnie możesz zmapować Pomoc i Insertklucz na Escvim.
map <Help> <Esc>
map! <Help> <Esc>
map <Insert> <Esc>
map! <Insert> <Esc>
Działa to dla gvim (Vim.app). Nie dostałem go do pracy z vimem w Terminalu i nie testowałem go z MacVimem.
Jest to więc raczej skomplikowane, na wpół upieczone rozwiązanie lub instalacja hakera innej firmy. Twój wybór ;)
Edit: Właśnie zauważyłem rozwiązanie 3, jeśli używasz MacVim można użyć Ctrl, Optioni Commandjak Esc. W Preferencjach systemowych mapowanie Caps Lock na jeden z tych kluczy jest banalne.
Teraz znacznie łatwiej jest zamapować Caps Lockklucz za Escpomocą macOS Sierra.
Otwórz Preferencje systemowe → Klawiatura.
Kliknij przycisk Klawisze modyfikujące w prawym dolnym rogu.
Kliknij menu rozwijane obok klucza sprzętowego, który chcesz ponownie przypisać, i wybierz opcję Escape.
Kliknij OK i zamknij Preferencje systemowe.
Jedyne, co wiem, jak to zrobić, to zmapować Caps Lock na Control, Option lub Command. Można to zrobić za pomocą panelu Klawiatura i mysz w Preferencjach systemowych. Kliknij „Klawisze modyfikujące” w lewym dolnym rogu, a będziesz mógł zmienić przypisanie Caps Lock, Control, Option i Command do dowolnego z nich.
@Craig: Sugeruje to, że Caps Lock może być używany jako normalny - to znaczy bez przełączania - klawisz. Na moim MacBooku, ponieważ zmieniłem mapowanie Caps Lock na Control, lampka Caps Lock nigdy się nie świeci. Po prostu działa jak klawisz Control.
Seil nie jest jeszcze dostępny w systemie macOS Sierra (10.12 beta). Jako taki korzystam z Keyboard Maestro z tymi ustawieniami:
Podziękowania dla tego komentarza github: https://github.com/tekezo/Seil/issues/68#issuecomment-230131664
Po wypróbowaniu kilku z tych rozwiązań mam kilka uwag:
DoubleCommand będzie nie pozwalają, aby zamienić esc i czapki-lock.
PCKeyboardHack będzie pozwalają map CapsLock uciec,ale nie ma możliwości odwzorowania ucieczki na capslock. Najnowsze wersje umożliwiają wykonanie pełnej wymiany poprzez edycję obu klawiszy.
To może, ale nie musi być wystarczające dla twoich potrzeb (wiem, że to jest moje).
Jeśli nie chcesz instalować aplikacji innych firm i naprawdę zależy ci tylko na vimie w iTerm, działają:
Zmień mapowanie CapsLock na Pomoc zgodnie z opisem tutaj .
Wersja skrócona: użyj edytora plutil lub podobnego ~/Library/Preferences/ByHost/.GlobalPreferences*.plist
, powinien wyglądać podobnie do tego:
<key>HIDKeyboardModifierMappingDst</key>
<integer>6</integer>
<key>HIDKeyboardModifierMappingSrc</key>
<integer>0</integer>
Uruchom ponownie! Proste wylogowanie i logowanie nie działało dla mnie.
W iTerm dodaj nowe mapowanie kluczy w celu uzyskania pomocy: wyślij kod szesnastkowy 0x1b, który odpowiada Escape.
Wiem, że nie było to dokładnie to, o co proszono, ale zakładam, że intencją wielu osób szukających takiego rozwiązania jest w rzeczywistości ten bardziej wyspecjalizowany wariant.
Aby faktycznie zamienić klawisz Esc na klawisz Caps Lock (nie tylko mapować jeden na drugi) za pomocą PCKeyboardHack i KeyRemap4MacBook, musisz postępować zgodnie z instrukcjami w tym wątku , mapując klawisz Caps Lock na kod nieużywany przez klawiatura, ale rozliczana przez KeyRemap4MacBook (np. 110). Następnie w PCKeyboardHack wybierz odpowiednią opcję, która odwzorowuje ten kod klucza do ucieczki (w przypadku 110 jest to „Klucz aplikacji do ucieczki”). Oto jak powinny wyglądać twoje preferencje KeyRemap4MacBook (pod warunkiem, że zaznaczyłeś pole wyboru „pokaż tylko włączone”).
I początkowo próbowała wysłać tę informację jako edycja na doskonałą odpowiedź CWD za , ale została ona odrzucona. Zachęcam każdego, kto chce iść trasą, którą opisuję, aby najpierw przeczytał jego / jej odpowiedź.
Seil jeszcze nie działa na macOS Sierra, więc używam Karabiner Elements , pobierz z https://pqrs.org/latest/karabiner-elements-latest.dmg .
Użyj GUI lub umieść w ~/.karabiner.d/configuration/karabiner.json
:
{
"profiles" : [
{
"name" : "Default profile",
"selected" : true,
"simple_modifications" : {
"caps_lock" : "escape"
}
}
]
}
Możesz również użyć DoubleCommand do ponownego przypisania tego i innych kluczy.
IIRC, zamapuje Caps Lock na Esc.
Otwórz preferencje klawiatury i kliknij klawisze modyfikatora ... możesz zmienić klawisz Caps Lock na sterowanie, opcję, klawisz ucieczki lub polecenie.
Esc
i Escape
? (poważne pytanie)
Karabiner-Elements Potężny i stabilny konfigurator klawiatury dla systemu macOS. (darmowy)
https://pqrs.org/osx/karabiner/index.html
Pracowałem dla mojej Mojave, aby zmienić Caps-Lock na backspace