You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
xremap/example/emacs.yml

67 lines
1.8 KiB
YAML

# Credit: https://github.com/mooz/xkeysnail/blob/bf3c93b4fe6efd42893db4e6588e5ef1c4909cfb/example/config.py#L62-L125
keymap:
- name: Emacs
application:
not: [Emacs]
remap:
# Cursor
C-b: { with_mark: left }
C-f: { with_mark: right }
C-p: { with_mark: up }
C-n: { with_mark: down }
# Forward/Backward word
M-b: { with_mark: C-left }
M-f: { with_mark: C-right }
# Beginning/End of line
C-a: { with_mark: home }
C-e: { with_mark: end }
# Page up/down
M-v: { with_mark: pageup }
C-v: { with_mark: pagedown }
# Beginning/End of file
M-Shift-comma: { with_mark: C-home }
M-Shift-dot: { with_mark: C-end }
# Newline
C-m: enter
C-j: enter
C-o: [enter, left]
# Copy
C-w: [C-x, { set_mark: false }]
M-w: [C-c, { set_mark: false }]
C-y: [C-v, { set_mark: false }]
# Delete
C-d: [delete, { set_mark: false }]
M-d: [C-delete, { set_mark: false }]
# Kill line
C-k: [Shift-end, C-x, { set_mark: false }]
# Kill word backward
Alt-backspace: [C-backspace, {set_mark: false}]
# set mark next word continuously.
C-M-space: [C-Shift-right, {set_mark: true}]
# Undo
C-slash: [C-z, { set_mark: false }]
C-Shift-ro: C-z
# Mark
C-space: { set_mark: true }
# Search
C-s: C-f
C-r: Shift-F3
M-Shift-5: C-h
# Cancel
C-g: [esc, { set_mark: false }]
# C-x YYY
C-x:
remap:
# C-x h (select all)
h: [C-home, C-a, { set_mark: true }]
# C-x C-f (open)
C-f: C-o
# C-x C-s (save)
C-s: C-s
# C-x k (kill tab)
k: C-f4
# C-x C-c (exit)
C-c: C-q
# C-x u (undo)
u: [C-z, { set_mark: false }]