View difference between Paste ID: 98uTzh7m and nb6SaTM1
SHOW: | | - or go back to the newest paste.
1
Emacs's default keybinds are of some infamy, and RSI memes abound aplenty.
2
The simple fact is that they are not very ergonomic, at least not for modern keyboard layouts.
3
4
Luckily there's a few ways to remedy this situation.
5
6
------------------------------------------------------------
7
8
1. Ignore the issue entirely and pretend everything is okay
9
10
Alternatively, get yourself some foot pedals...
11
https://www.emacswiki.org/emacs/FootSwitches
12
13
------------------------------------------------------------
14
15
2. Remap Ctrl to another button
16
17
There were keyboards designed for writing lisp: https://upload.wikimedia.org/wikipedia/commons/4/47/Space-cadet.jpg
18
You'll notice that Ctrl, the most commonly used modifier key is also the closest to the spacebar.
19
This means you can easily hit Ctrl with your thumb, instead of modern keyboards where you'll be straining to stretch your pinky to hit it.
20
21
Swapping Alt and Ctrl is common.
22
As is swapping Ctrl and Caps Lock (though it has some issues http://ergoemacs.org/emacs/swap_CapsLock_Ctrl.html).
23
You can do this at the OS level with xmodmap, or internally in emacs if you don't want to fuck up your other keybinds.
24
25
--------------------
26
27
Globally via setxkbmap:
28
setxkbmap -option ctrl:swapcaps
29
or
30
setxkbmap -option ctrl:swap_lalt_lctl
31
You may also want to have Caps Lock as Ctrl and Ctrl as Hyper key:
32
setxkbmap -option ctrl:swapcaps_hyper
33
More information: man setxkbmap and man xkeyboard-config
34
Note: you probably want to auto-execute this when your X session starts
35
36
--------------------
37
Globally via X.Org configuration file:
38
1. Create and edit /etc/X11/xorg.conf.d/00-keyboard.conf
39
2. Paste the following:
40
41
Section "InputClass"
42
        Identifier "system-keyboard"
43
        MatchIsKeyboard "on"
44
        Option "XkbOptions" "swapcaps"
45
EndSection
46
47
2.1 Put your own setxkbmap option instead of "swapcaps" on line 4 if you need it.
48
3. Restart X.Org or reboot.
49
--------------------
50
51
In Emacs only:
52
;; Swap Ctrl and Alt
53
;; V26+, X11 only
54
(setq x-ctrl-keysym 'meta)
55
(setq x-meta-keysym 'ctrl)
56
57
Note that many terminal binds are the same as emacs, so doing it only in emacs  as opposed to globally would lead to inconsistency.
58
For more info see https://www.gnu.org/software/emacs/manual/html_node/elisp/X11-Keysyms.html
59
60
------------------------------------------------------------
61
62
3. Use an external package
63
64
evil-mode: Probably the most common, as vim keys are pretty widespread and many migrants to emacs are already used to them.
65
evil-collection and evil-escape are also nice mentions, as they make the vim experience a lot more consistent.
66
The downside of course is that you're removing the "emacs"ness of keybinds, many prefer to stay more vanilla.
67
68
--------------------
69
70
god-mode: Unlike evil, this keeps all of emacs's keys intact, you simple map a GOD-KEY to type commands more easily.
71
You simply hit your configured key, then every key you hit afterwards has C- prefixed to it.
72
SPC- lets you remove C-.
73
So  <C-x> <C-f> becomes GOD-KEY x f
74
And <C-x> b     becomes GOD-KEY x SPC b
75
76
--------------------
77
78
xah-fly-keys: For the more adventurous, following neither emacs defaults nor vim, it maps keys on a usage based scheme.
79
see for more info: http://ergoemacs.org/misc/ergoemacs_vi_mode.html
80
81
------------------------------------------------------------
82
83
Other links:
84
85
https://www.emacswiki.org/emacs/MovingTheCtrlKey
86
https://www.emacswiki.org/emacs/RepeatedStrainInjury