Jestem bardzo nowy w Emacsie i próbuję wbudowanego samouczka. Po tym, jak przeszedł podstaw, uważam, że to bardzo trudne do osiągnięcia Ctrli Altczy Escklucze. Próbuję pisać szybciej, ale ponieważ wszystkie polecenia wymagają tych klawiszy, w ogóle nie mogę być szybki. Szukałem, ale wygląda na to, że nikt nie narzeka na te klucze.
Wiem już, że możesz zamienić klawisze Ctrli Caps Lock, ale wolę tego nie robić, ponieważ słyszałem, że nie jest to zalecane.
Jak mogę ułatwić pisanie poleceń?
key-bindings
keystrokes
accessibility
anonimowy
źródło
źródło
Odpowiedzi:
Trudno odpowiedzieć na to pytanie, ale kilka przemyśleń:
Spróbuj przez jakiś czas pracować z domyślnymi powiązaniami klawiszy, ponieważ Emacs na początku poczuje się dziwnie. Nie sugerowałbym wprowadzania poważnych zmian w konfiguracji, dopóki nie zrozumiesz, co działa, a co nie.
Po obu stronach argumentu caps-lock vs. ctrl znajdziesz użytkowników Emacsa. Osobiście od dawna używam Caps-Lock jako klawisza Ctrl i uważam, że jest to bardzo wygodne. Używam lewej ręki do wszystkich klawiszy modyfikujących: ogólnie mój różowy dla Caps Lock(
C-
) i Shift, i mój kciuk dla Alt(M-
). Robię to od lat i jestem z tego zadowolony. Widzę sens bicia klawiszy modyfikujących jedną ręką, ale tego się nie nauczyłem.Istnieją tryby, które nie zależą tak bardzo od klawiszy modyfikujących. Jeśli podoba Ci się styl edycji modalnej Vima, możesz wypróbować Zło lub tryb boga podobny do Emacsa . Ale nadal sugeruję spędzenie czasu z domyślnymi ustawieniami.
Gdy zapoznasz się z Emacsem i dowiesz się, które polecenia i tryby są najbardziej przydatne, możesz zacząć majstrować przy użyciu klawiszy. Klawisze funkcyjne mogą być używane jako prefiks, aby zaoszczędzić trochę użycia modyfikatorów, choć trzeba po nie sięgnąć. Istnieją pakiety takie jak klawisz-akord, które pozwalają powiązać powtarzające się klawisze (jak jj) lub klawisze (jak jk) z poleceniami. Są też takie rzeczy, jak smartrep, które pozwalają używać pojedynczych klawiszy, aby kontynuować wykonywanie poleceń po niektórych poleceniach początkowych, których można użyć, aby uniknąć konieczności przytrzymywania kombinacji klawiszy modyfikatora. Ale konfigurowanie tego rodzaju pakietów wymaga znajomości poleceń, które chcesz ponownie powiązać, co wymaga najpierw doświadczenia.
źródło
alt gr
klawisza, gdy muszę pisać akcentowane znaki z mojego układu. Nie muszę go tak często używać, ale warto wspomnieć, że to podejście dobrze skaluje się do układów opartych na tym kluczu.Mam na święta klawiaturę Kinesis. Nie będę publikować linków, aby nie robić z tego reklamy. Zrobią to również klawiatury o podobnych właściwościach.
Wcześniej miałem klawiaturę Steelseries z dodatkowym Ctrlmapowaniem na Caps Lock. Ważne rzeczy, których musiałem się nauczyć (na mojej starej klawiaturze):
źródło
C-x C-f
tylko z lewą ręką i to naprawdę zaczyna boleć moją lewą różowawą. Zamiast tego, umieszczenie prawego palca wskazującego na prawej kontroli, a następnie lewego palca wskazującego uderza x, f, jest znacznie lepsze.Ctrl
, przewróć rękę i naciśnijx
palcem wskazującym. Zamiast mocno ścisnąć dłoń, jesteś zrelaksowany i używasz dużych mięśni ramion. Nie działa to dla wszystkich kombinacji, ale możesz spróbować, szczególnie w lewym dolnym roguC-a C-c C-d C-s C-x
„scrunch fest”.krok 1, zainstaluj tryb zła ( http://www.emacswiki.org/emacs/Evil ). Wykorzystuje powiązania klawiszy vim i zapewnia zaawansowane funkcje vim, takie jak obiekty tekstowe, więc wpisujesz znacznie mniej Ctrl, Alt
krok 2, użyj evil-leader ( https://github.com/cofi/evil-leader ), najpierw naciskasz klawisz lidera (odwzorowuję go na „,”), a następnie wpisujesz kombinację dowolnych klawiszy, aby wywołać polecenie. Wykorzystaj to w pełni, nigdy nie będziesz potrzebować Ctrl i Alt, na przykład używam „, mx”, aby zastąpić Mx
krok 3, zainstaluj evil-escape ( https://github.com/syl20bnr/evil-escape ), naciskasz „kj”, aby symulować „Cg” i „ESC”
To rozwiązanie działa w dowolnym terminalu BTW.
Świetnym przykładem są spacemacs https://github.com/syl20bnr/spacemacs (ale klucz SPACE jest tam używany jako klucz wiodący)
źródło
Korzystam z układu Dvorak i stwierdziłem, że działa on bardzo dobrze z domyślnymi powiązaniami klawiszy Emacsa.
C-n
znajduje się w wierszu głównym iC-p
można go nacisnąć palcem wskazującym zamiast różowego.C-u
(klawisz prefiksu) znajduje się również w wierszu głównym.Zamieniłem Caps Lock i Ctrl na wszystkich klawiaturach, ponieważ łatwiej jest mi pisać pewne kombinacje klawiszy. Związałem się również
M-x
z klawiszem menu (po prawej stronie spacji), ponieważ łatwiej mi trafić niż w lewoAlt
ix
.Poza tym używam,
god-mode
aby dłuższe sesje edytorskie były nieco bardziej komfortowe. Nie uważam kluczy Emacsa za przeszkodę i używam głównie domyślnych.Podobnie jak @glucas używam lewego pinky dla Ctrl i mojego lewego kciuka dla lewego klawisza Alt. Na prawdziwie ergonomicznej klawiaturze powiązałem lewy klawisz spacji z klawiszem Alt, co sprawia, że jest to znacznie mniej niewygodne niż na zwykłej klawiaturze.
Jeśli martwisz się zbyt dużym obciążeniem lewej ręki poprzez zamianę Ctrl i Caps Lock, możesz nawet przypisać Ctrl do klawisza Return. Zobacz ten artykuł, aby uzyskać więcej informacji: http://emacsredux.com/blog/2013/11/12/a-crazy-productivity-boost-remap-return-to-control/
źródło
TL; DR : upewnij się, że ważne klucze nie są trudne do osiągnięcia.
Drugą odpowiedź wvxvw na temat Kinesis jako profilaktyki przeciwko „Emacsowi Pinky'emu”. Używam mojego od 14 lat, więc jestem pewien, że inwestycja już się opłacała. W Kinesis zamapowałem dolny wiersz na modyfikatory (
s-H-C-M
/M-C-H-s
) i mamMode_switch
na kciukach klawisze, aby uzyskać dostęp do „osadzonych klawiszy strzałek”. Ta konfiguracja pozostawia niewiele do życzenia.Nadal są chwile, kiedy muszę lub wybieram pisanie na laptopie i mam coś podobnego skonfigurowanego, zmieniając przypisanie wiersza liczb na modyfikatory i umieszczając symbole liczbowe na klawiszach funkcyjnych (zobacz mój plik .xmodmap lub .xkb Detale). To znowu oznacza, że na moich nadgarstkach jest niewielki skręt i nie ma żadnego nacisku na pinkies.
W ostatnich miesiącach zauważyłem pewien stres w palcach, których używam do
Control
iMode_switch
na laptopie. Zawsze dobrze jest spróbować zmniejszyć stres, gdy go zauważysz. Bawiłem się lepkimi klawiszami , ale stwierdziłem, że obecne wsparcie dla nich pozostawia wiele do życzenia. Szkoda, bo to naprawdę dobry pomysł.Miałem jednak trochę szczęścia w trybie Boga , który jest jak udoskonalony lepki
Control
klucz, ale tylko w Emacsie. Wplątując się w ten i tryb Zła , zauważyłem, że łatwo jest zdefiniować podobny lepkiMeta
klucz - lub można zdefiniować inne modyfikatory lub osadzone warstwy. evil-dvorak jest jedną z powiązanych optymalizacji, chociaż wybrana mapa klawiszy jest nieco osobista.Podsumowując główne dostosowania związane z ergo, które pomogły mi „żyć w emacs” w dość wysokim stopniu:
~ 10 lat: Kinesis, dvorak, Xmodmap / Xkb, Ratpoison (ważne: ustawienie ucieczki RP na coś w zasięgu,
C-t
jest domyślne, ale można to łatwo poprawić)~ 1 rok: pentadaktyl (z powiązaniami Emacsa ), tryb boga + tryb zła (bezbożny sojusz) i zmiana części dnia na stojące biurko. Również Helm do szybkiego wprowadzania poleceń.
źródło
Zauważysz, że jest to bardzo drażliwy temat wśród długoletnich użytkowników emacsa. Jak sugerują inne odpowiedzi tutaj, wypróbuj trochę wartości domyślnych, aby dowiedzieć się, jakie sekwencje klawiszy są dla Ciebie szczególnie trudne, dla języków, które wpisujesz na konkretnej klawiaturze. Następnie zaimplementuj jedno lub dwa remapy kluczowych kluczy, takie jak Ctrl, Meta i Escape. W zależności od laptopa i systemu operacyjnego może istnieć kilka sposobów mapowania. Na przykład w systemie Mac OS X panel preferencji klawiatury wraz z Karabinerem wystarczą, aby znaleźć wykonalne przemapowanie klawiszy. Wypróbuj jedno rozwiązanie na raz, aby sprawdzić, czy odpowiada Twoim potrzebom. Znalezienie tego, co odpowiada Twoim potrzebom, może chwilę potrwać. Długo użytkownicy sugerują unikanie przeciążania paluszków. Uważajcie.
źródło
Ten problem nie dotyczy Emacsa. Cierpią także użytkownicy innych programów, które można kontrolować za pomocą skrótów klawiszowych. Emacs ma to w większym stopniu, ponieważ ma więcej poleceń. Podstawowym powodem jest to, że nie ma wystarczającej liczby klawiszy dla wszystkich potrzebnych nam poleceń. Jeśli nie interesuje Cię teoria, przejdź do ostatniego akapitu.
Oczywistym rozwiązaniem jest dodanie dodatkowej klawiatury dla poleceń Emacsa. Będziesz miał w sumie 200 kluczy. Wtedy będziesz pisać jeszcze wolniej. W rzeczywistości 100 klawiszy na standardowej klawiaturze to zbyt wiele, aby pisać na klawiaturze. Szacuję, że człowiek może osiągnąć maksymalnie 22 klucze jedną ręką, nie poruszając nadgarstkiem.
Aby szybciej pisać, przesuwaj klawisze modyfikujące pod palcami. Wtedy nie ma wystarczającej liczby klawiszy na litery łacińskie. Na przykład „j” to klawisz modyfikujący, naciśnięcie „j”, a następnie naciśnięcie „d” powoduje powstanie litery „j”. Jeśli nie lubisz naciskać klawisza modyfikatora dla każdej litery, korzystasz z trybów i edytorów modalnych. Na przykład w trybie wstawiania „j” tworzy literę „j”; w trybie poleceń preformy „j” wycinają (zabijają); są klawisze do przełączania trybów. (Te przykłady nie są zaimplementowane w żadnym edytorze, są tylko przykładami.)
Vim to znany edytor modalny. Zostało wspomniane powyżej. Ponieważ Emacs jest programowalny, istnieje modalny tryb podrzędny o nazwie God Mode . Służy to potrzebie, choć można ją ulepszyć. W trybie boskim nie musisz uczyć się nowego przypisywania klawiszy dla każdego polecenia Emacsa, jednak musisz przełożyć każde przypisanie na sekwencję klawiszy w twojej głowie. Na przykład „gw” tworzy polecenie powiązane z „M-w”.
źródło
Krótko mówiąc, naciśnij je wszystkie łatwo kciukami. Możesz to zrobić bez Kinezy.
Teraz szczegóły. Kup np. Japońską klawiaturę:
(źródło: owltech.co.jp )
i używać w dolnym rzędzie zarówno przykład jak AltShiftCtrlShiftAlti EscBSSpaceRetTab, środkowy będąc fizyczny spacji. Oznacza to, że jeśli naciśniesz sam spację, będzie to zwykła spacja, ale gdy naciśniesz z innymi, będzie to Ctrl. To samo dotyczy Alt / Esc, Shift / BS itp.
Aby dowiedzieć się, jak to osiągnąć, zobacz Jaki jest najlepszy sposób na uniknięcie „Emacsa Pinky”? w stackoverflow.com. (To pytanie jest już poruszone przez Gillesa )
Japońskie klawiatury można kupić na stronie np. Ebay.com lub amazon.com. Witryna amazon.co.jp jest również dostępna w języku angielskim.
źródło
Lewy
alt
(tj.meta
W emacs) klawisz można łatwo nacisnąć lewym kciukiem i można ponownie powiązać wszystkie typowe funkcje (np. Ruchy kursora) ze skrótami opartymi na meta-klawiszach zamiast na oryginalnych skrótach opartych na klawiszach Ctrl. Robię to w moim pliku init.el.źródło