Mijn linker pink doet pijn. Kan ik op een andere toets drukken om als controle te fungeren?
Geplaatst op februari 13, 2021 door admin Mijn linker pink doet pijn door herhaaldelijk op de C
-knop te drukken tijdens het gebruik van de Emacs org-modus. Niet werken met Emacs is uitgesloten, maar het heeft wat rust nodig.
Ik zou de C
-sleutel voor een tijdje willen veranderen voor iets anders. Kan ik in plaats daarvan bijvoorbeeld de “,” -knop gebruiken?
Reacties
- In mijn geval verdween de pijn nadat ik mijn toetsenbordindeling had verwisseld om de caps lock-toets als controletoets te gebruiken. Je zou hier een manier moeten kunnen vinden om het om te wisselen: emacswiki.org/emacs/MovingTheCtrlKey
- @ DoMiNeLa10: klinkt als een goede idee, het zal in ieder geval het drukpunt veranderen als ik de pink gebruik.
- Ik gebruik een Kinesis Advantage-toetsenbord waarmee ik met mijn duimen op de control- en alt-toets kan drukken en dit helpt enorm. Het nadeel is dat ze vrij duur zijn.
- Het probleem met dit soort vragen is dat het uitnodigt tot een discussie over het opnieuw toewijzen van toetsen op systeemniveau v. In Emacs, verschillende toetsenborden en voetbladen, ergonomie / houding van de gebruiker die achter de computer zit, verschillende computerprogrammas voor verschillende besturingssystemen die sneltoetsen opnieuw toewijzen, enz. Over het algemeen komen dit soort vragen ongeveer één keer per week op Reddit met Emacs-tag naar voren en er zijn ongeveer een ontelbaar aantal mensen die allemaal spelen in op hun persoonlijke mening. Ik stem om deze vraag af te sluiten omdat deze te breed is en een mening zoekt in plaats van een oplossing.
- Geef aan of je vraag ” is wat je eraan kunt doen Emacs pinky ” of ” hoe zorg ik ervoor dat een andere sleutel zich gedraagt als controlemodificator “.
Antwoord
Emacs pinky is een veelvoorkomend probleem, er zijn verschillende manieren om ermee om te gaan:
- Verwissel de Control-toets in iets anders (meestal Caps Lock).
- Gebruik je handpalm in plaats van de pink om de Control-toets in te drukken.
- Gebruik een ergonomisch toetsenbord .
Je kunt emacs wiki bekijken om te zien hoe andere gebruikers het doen. https://www.emacswiki.org/emacs/RepeatedStrainInjury
Reacties
- Upvoting alleen voor suggestie (2) (hoewel ik ‘ heb geprobeerd de besturing te wisselen, voelt het gebruik van de zijkant van de hand natuurlijker aan en werkt met elk toetsenbord. Zie wat meer discussie op ergoemacs.org/emacs/emacs_pinky.html
Antwoord
Je kunt een sleutel definiëren die een modifier toepast op de volgende sleutel in Emacs.
(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)
Vervolgens op , en vervolgens a drukken is gelijk aan drukken op Ctrl + a . Druk op , tweemaal om een komma in te voegen.
Er zijn beperkingen. Ctrl + Shift-bindingen werken als u op , en vervolgens op Shift + key , maar voor meta kun je “niet op Esc en dan , dan key . Als een modus zijn eigen binding definieert voor , of Ctr l + , of Meta + , dan zal het de comma-as-a-modifier bindingen overschrijven. Het invoegen van een komma is niet langer een zelfinvoeging, wat een aantal consequenties heeft (hetzelfde als een teken elektrisch maken), zoals het afbreken van reeksen die ongedaan maken, niet noodzakelijkerwijs doen wat je zou verwachten van een zelfinvoeging in de selectie, enz.
Ik denk niet dat er een manier is om dit toe te passen op een specifieke modus. Je kunt het toepassen op een specifieke terminal (maar niet op een specifiek venster in een GUI) met local-function-key-map
maar ik weet niet of dat je zou helpen.
Zie ook de Emacs-wikipagina over sticky modifiers . Dat doet niet precies wat u vraagt, maar een van de functies op deze pagina kan voor u een acceptabele oplossing zijn.
Antwoord
Na bijna 10 jaar emacs te hebben gebruikt, denk ik dat de beste manier om emacs pinky te vermijden, is door te onthouden:
Bind de sleutels zodanig dat je drukt nooit twee of meer toetsen tegelijk in met één hand!
Dit elimineert volledig alle handproblemen die ik had.
Bijvoorbeeld, Cx moet altijd als volgt worden ingedrukt: C (rechterhand) – x (linkerhand)
Het gebruik van spatie of caplock om de besturing te vervangen zal je handproblemen vertragen, maar niet helemaal voorkomen. De enige manier om ze te voorkomen is door nooit twee toetsen tegelijk met één hand in te drukken.
Opmerkingen
- Overweeg bovendien om (serieus) te gebruiken sticky wijzigingstoetsen, zodat u geen ‘ een wijzigingstoets ingedrukt hoeft te houden terwijl u op een andere toets drukt.Ik dacht dat ik het zou haten, en dat het leeftijden zou kosten om eraan te wennen, maar ik was oprecht verbaasd over hoe snel ik me eraan aanpaste. Ik wou dat ik ‘ het vele jaar eerder had gedaan.
Antwoord
Ik realiseerde me net dat ik de ringvinger heb gebruikt om op de Ctrl-toets te drukken en dat heeft al die jaren emacs-ervaring gewerkt. Hopelijk kan dat een nieuw begin voor je betekenen.
Antwoord
Gebruik de CTRL-toets! Mijn professor heeft me dit op de universiteit laten zien en ik gebruik deze kbd-mapping sindsdien op elk systeem dat ik gebruik.
- MacOS – ingebouwd in kbd mapping
- Linux – setxkbmap, of wijzig op Ubuntu-systemen / etc / default / keyboard en voeg “ctrl: nocaps” toe aan toetsenbordopties. (XKBOPTIONS = “ctrl: nocaps”) of (XKBOPTIONS = “ctrl: swapcaps”) om caps en ctrl te wisselen. De eerste geeft je ctrl als ctrl en caps als ctrl. Dit is beter dan een tweaktool omdat je “ook hoofdletters als ctrl in tty” krijgt.
- Windows – Sharpkeys
Uitstekende link: EmacsWiki: de CTRL-toets verplaatsen
Antwoord
Dit probleem is feitelijk opgelost in jaar 2012 wanneer EVIL volwassen is.
Eenvoudige oplossing,
Gebruik Spacemacs + Evil. Vim-toetsbindingen zorgen ervoor dat u minder toetsen typt bij het omgaan met tekst. Gebruik spatie als leider-toets zodat u uw vinger niet te vaak van de standaardpositie hoeft te verplaatsen.
Met andere woorden, als u geen toetsen zoals Ctrl / Alt / Shift / Win / Cmd / Esc gebruikt , lost u het probleem op vanaf de hoofdoorzaak.
Geavanceerde oplossing,
Gebruik alstublieft Evil. Meet vervolgens de frequentie waarmee u een toets indrukt met behulp van pakket keyfreq
.
Zie http://blog.binchen.org/posts/how-to-be-extremely-efficient-in-emacs.html voor technische details.
Als u onmiddellijk met optimaliseren wilt beginnen zonder keyfreq
te gebruiken, kunt u hier mijn gegevens over een jaar volgen use,
https://gist.github.com/redguardtoo/99e69fe3ecfccadeacdb6f1c40978b0c
Deze oplossing werkt in elke omgeving . Het versnelt ook onmiddellijk uw productiviteit, zodat u veel sneller kunt coderen. Kortom, er is helemaal GEEN bijwerking.
In het begin hoeft u trouwens alleen de top 20 commandos te optimaliseren.
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
Antwoord
Links alt
(dwz meta
sleutel in Emacs config) -toets kan gemakkelijk worden ingedrukt met je linkerduim, en je kunt al je algemene functies (bijv. cursorbewegingen) opnieuw verbinden met meta-key-gebaseerde sneltoetsen in plaats van de originele ctrl-toets-gebaseerde sneltoetsen. Ik doe dat in mijn init.el -bestand.
Geef een reactie