Boli mnie lewy mały. Czy mogę nacisnąć inny klawisz, aby działać jako Control?
On 13 lutego, 2021 by admin Mój lewy mały mały boli z powodu wielokrotnego naciskania przycisku C
podczas korzystania z trybu org Emacsa. Nie ma mowy o pracy z Emacsem, ale wymaga to trochę odpoczynku.
Chciałbym na chwilę zmienić klucz C
na coś innego. Czy mogę zamiast tego użyć, powiedzmy, przycisku „,”?
Komentarze
- W moim przypadku ból ustąpił po zmianie układu klawiatury aby użyć klawisza Caps Lock jako klawisza sterującego. Powinieneś być w stanie znaleźć sposób na zamianę tutaj: emacswiki.org/emacs/MovingTheCtrlKey
- @ DoMiNeLa10: brzmi jak dobrze Pomysł, przynajmniej zmieni punkt nacisku, kiedy używam małego palca.
- Używam klawiatury Kinesis Advantage, która pozwala mi naciskać klawisze Ctrl i Alt kciukami i to bardzo pomaga. Wadą jest to, że są dość drogie.
- Problem z tego typu pytaniami polega na tym, że zachęca do dyskusji na temat zmiany przypisania klawiszy na poziomie systemowym v. W Emacsie, różnych klawiaturach i płatkach stóp, ergonomii / postawie użytkownika siedzącego przy komputerze, różnych programów komputerowych dla różnych systemów operacyjnych, które zmieniają skróty klawiaturowe, itp. Ogólnie tego typu pytania pojawiają się na Reddicie z tagiem Emacs mniej więcej raz w tygodniu i jest około miliarda ludzi, którzy wszyscy współgrać z ich osobistymi opiniami. Głosuję za zamknięciem tego pytania, ponieważ jest ono zbyt szerokie i poszukuje opinii zamiast rozwiązania.
- Wyjaśnij, czy Twoje pytanie brzmi „, co zrobić Emacs pinky ” lub ” jak sprawić, by inny klawisz zachowywał się jak modyfikator sterowania „.
Odpowiedź
Emacs pinky to częsty problem, istnieje kilka sposobów radzenia sobie z nim:
- zamień klawisz Control na coś innego (zwykle Caps Lock).
- Użyj dłoni zamiast małego palca, aby nacisnąć klawisz Control.
- Użyj ergonomicznej klawiatury .
Możesz sprawdzić wiki emacsa, aby zobaczyć, jak radzą sobie inni użytkownicy. https://www.emacswiki.org/emacs/RepeatedStrainInjury
Komentarze
- Głosowanie za wyłącznie za sugestie (2) (chociaż ' próbowałem zamienić sterowanie, używanie boku dłoni jest bardziej naturalne i działa z każdą klawiaturą. Więcej dyskusji znajdziesz na ergoemacs.org/emacs/emacs_pinky.html
Odpowiedź
Możesz zdefiniować klucz, który zastosuje modyfikator do następnego klucza w Emacsie.
(define-key function-key-map "," "event-apply-control-modifier) (global-unset-key ",") (defun insert-comma (count) (interactive "*p") (insert-char ?, count)) (global-set-key [(control ?,)] "insert-comma) (global-unset-key "\e,") (global-set-key [(control meta ?,)] "tags-loop-continue)
Następnie naciśnięcie , , a następnie a jest równoważne naciśnięciu Ctrl + a . Wciśnij , dwa razy, aby wstawić przecinek.
Istnieją ograniczenia. Wiązania Ctrl + Shift działają, jeśli naciśniesz , , a następnie Shift + klawisz , ale w przypadku meta nie można wcisnąć Esc , a następnie , a następnie klawisz . Jeśli tryb definiuje własne powiązanie dla , lub Ctr l + , lub Meta + , to nadpisuje wiązania przecinek-jako-modyfikator. Wstawianie przecinka nie jest już wstawianiem własnym, co ma kilka konsekwencji (takich samych jak uczynienie znaku elektrykiem), takich jak przerywanie sekwencji cofania, niekoniecznie robienie tego, czego oczekiwałbyś od samodzielnego wstawiania do zaznaczenia itp.
Nie sądzę, aby istniał sposób na zastosowanie tego do określonego trybu. Możesz zastosować to do określonego terminala (ale nie do określonego okna w GUI) za pomocą local-function-key-map
ale nie wiem, czy to by ci pomogło.
Zobacz także stronę wiki Emacsa na temat lepkich modyfikatorów . To nie robi dokładnie tego, o co prosisz, ale jedna z funkcji na tej stronie może być dla Ciebie akceptowalnym rozwiązaniem.
Odpowiedź
Po prawie 10 latach używania emacsa uważam, że najlepszym sposobem uniknięcia pinky emacsa jest zapamiętanie:
Powiąż klawisze w taki sposób, aby nigdy nie naciskasz dwóch lub więcej klawiszy jednocześnie jedną ręką!
To całkowicie eliminuje wszelkie problemy z rękami, które miałem wcześniej.
Na przykład, Cx powinno być zawsze wciskane w ten sposób: C (prawa ręka) – x (lewa ręka)
Użycie spacji lub caplocka do zastąpienia sterowania opóźni, ale nie całkowicie zapobiegnie problemom z ręką. Jedynym sposobem, aby temu zapobiec, jest nigdy nie wciskanie dwóch klawiszy jednocześnie jedną ręką.
Komentarze
- Ponadto rozważ (poważnie) użycie lepkie klawisze modyfikujące, takie że nie ' nie trzeba przytrzymywać klawisza modyfikującego podczas naciskania innego klawisza.Myślałem, że nienawidzę tego i że przyzwyczajenie się do tego zajmie mi wieki , ale byłem naprawdę zdumiony tym, jak szybko się do tego przystosowałem. Chciałabym ' zrobić to wiele lat wcześniej.
Odpowiedź
Właśnie zdałem sobie sprawę, że użyłem palca serdecznego do naciśnięcia klawisza Ctrl i sprawdzało się to przez wszystkie lata doświadczenia w emacsie. Mam nadzieję, że może to oznaczać dla ciebie nowy początek.
Odpowiedź
Użyj klawisza CTRL! Mój profesor pokazał mi to na studiach i od tamtej pory używam tego mapowania kbd w każdym systemie, którego używam.
- MacOS – wbudowane mapowanie kbd
- Linux – setxkbmap, lub w systemach Ubuntu zmodyfikuj / etc / default / keyboard i dodaj „ctrl: nocaps” do opcji klawiatury. (XKBOPTIONS = „ctrl: nocaps”) lub (XKBOPTIONS = „ctrl: swapcaps”), aby zamienić wielkie litery i ctrl. Ten pierwszy da ci ctrl jako ctrl i caps jako ctrl. Jest to lepsze niż narzędzie do dostrajania, ponieważ „dostaniesz wielkie litery jako ctrl w tty”.
- Windows – Sharpkeys
Doskonały link: EmacsWiki: przenoszenie klawisza CTRL
Odpowiedź
Ten problem został właściwie rozwiązany w rok 2012, kiedy EVIL jest dojrzały.
Proste rozwiązanie,
Użyj Spacemacs + Evil. Wiązania klawiszy Vima zapewniają, że podczas pracy z tekstem wpisujesz mniej klawiszy. Użyj spacji jako klawisza wiodącego, aby nie trzeba zbyt często przesuwać palca z domyślnej pozycji.
Innymi słowy, jeśli nie używasz klawisza takiego jak Ctrl / Alt / Shift / Win / Cmd / Esc , rozwiązujesz problem z pierwotnej przyczyny.
Rozwiązanie zaawansowane,
Proszę, użyj Zła. Następnie zmierz częstotliwość naciskania klawiszy za pomocą pakietu keyfreq
.
Zobacz http://blog.binchen.org/posts/how-to-be-extremely-efficient-in-emacs.html , aby uzyskać szczegółowe informacje techniczne.
Jeśli chcesz natychmiast rozpocząć optymalizację bez korzystania z keyfreq
, oto moje roczne dane, które możesz use,
https://gist.github.com/redguardtoo/99e69fe3ecfccadeacdb6f1c40978b0c
To rozwiązanie działa w każdym środowisku . Natychmiast przyspiesza również produktywność, dzięki czemu możesz kodować znacznie szybciej. Podsumowując, nie ma żadnego efektu ubocznego.
BTW, na początku potrzebujesz tylko zoptymalizować 20 najpopularniejszych poleceń.
6008 13.33% evilmi-jump-items %, <visual-state> %, <normal-state> % 4292 9.53% winum-select-window-2 , 2, M-2 3806 8.45% winum-select-window-1 , 1, M-1 2522 5.60% switch-to-shell-or-ansi-term , x z, C-x C-z 2280 5.06% my-counsel-recentf , r r 1910 4.24% my-multi-purpose-grep , q q 1791 3.98% back-to-previous-buffer , b b 1561 3.46% winum-select-window-3 , 3, M-3 1379 3.06% counsel-etags-find-tag-at-point C-] 1222 2.71% eval-expression , e e, M-:, M-ESC : 1153 2.56% evil-visualstar/begin-search-forward <visual-state> * 971 2.16% my-evil-goto-definition g t 793 1.76% copy-to-x-clipboard , a a 654 1.45% pop-tag-mark C-t 633 1.40% counsel-imenu , i i 616 1.37% paste-from-x-clipboard , z z 539 1.20% winum-select-window-4 , 4, M-4 522 1.16% toggle-full-window , f f 420 0.93% evil-toggle-input-method C-\ 371 0.82% git-add-current-file , v a 322 0.71% evilnc-comment-or-uncomment-lines , c i, M-; 302 0.67% backward-delete-char-untabify 295 0.65% my-split-window-vertically , x 2, C-x 2 285 0.63% find-file-in-project-by-selected , k k 279 0.62% delete-other-windows , x 1, , s 1, C-w C-o, C-w o, C-x 1, <menu-bar> <file> <one-window> 278 0.62% langtool-goto-next-error , l l 273 0.61% find-function , h f, C-h C-f, <f1> C-f, <help> C-f 270 0.60% kill-buffer , x k, C-x k 261 0.58% my-split-window-horizontally , x 3, C-x 3 251 0.56% narrow-or-widen-dwim , w w 235 0.52% counsel-find-file , x f 224 0.50% winner-undo , u u, C-c <left>, C-x 4 u 203 0.45% beginning-of-defun , b f, <C-M-home>, C-M-a, ESC <C-home> 202 0.45% c-electric-backspace 201 0.45% evil-a-paren 190 0.42% counsel-describe-variable C-h v, <f1> v, <help> v 187 0.42% org-shifttab 187 0.42% wg-create-workgroup SPC s s 186 0.41% evil-surround-region <visual-state> S 155 0.34% ffip-diff-find-file 154 0.34% flyspell-goto-next-error , f e 153 0.34% counsel-etags-find-tag , f t 152 0.34% ivy-switch-buffer-by-pinyin , x b
Odpowiedź
Lewy alt
(tj. meta
klucz w konfiguracji Emacs) można łatwo nacisnąć lewym kciukiem i można ponownie przypisać wszystkie popularne funkcje (np. ruchy kursora) do skrótów opartych na meta-klawiszach zamiast oryginalnych skrótów opartych na klawiszach Ctrl. Robię to w moim pliku init.el .
Dodaj komentarz