blob: 96ba7c96459b0507523461863f74544f2c07c050 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
# Keybindings
Since I'm using Emacs to manage most of my workflow, all of the keybindings
should be defined herein and -- in order to scale -- order must be imposed. This
can help avoid KBD collisions and improve my ability to remember each KBD.
See `kbd.el` for the programmatic encoding of these principles.
## Troubleshooting
When in doubt, use Emacs's `read-key` and `read-event` to learn what signal
you're sending Emacs.
### Super-
- EXWM X11 windows are not processing `s-`.
- EXWM X11 windows are not processing `<M-ESC>`.
### Super-Ctrl-
I'm reserving `C-s-` for opening X11 applications.
- `terminator`: `t`
- `google-chrome`: `c`
## Emacs nouns
Most of my keybindings should be organized according to their function, which in
turn should be related to the following Emacs nouns.
- `workspace`: As defined by EXWM.
- `frame`: What non-Emacs users would call a "window". Currently my workflow
doesn't use or rely on Emacs frames.
- `window`: A vertical or horizontal split within an Emacs frame.
- `buffer`: Anything storing text in memory.
## Prefixes and their meanings
TODO: Have a system for leader-prefixed KBDs, chords, and prefixed chords.
- `s-`: Switching between named workspaces. Right now, super is too overloaded
and would benefit from having more deliberate keybindings.
- `C-M-`: Window sizing
- `M-{h,j,k,l}`: Window traversing
- `M-{\,-}`: Window splitting
- `M-q`: Window deletion
- `<leader>-q`: Window deletion
|