-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathkeymapper.conf
executable file
·104 lines (78 loc) · 3.19 KB
/
keymapper.conf
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
# Class matchers
browser = /brave-browser|chrome|chromium|lights-ui|crx_|outlook|navigator|firefox/i
terminal = /kitty|tmux|konsole/i
code = /Code/i
thunderbird = /thunderbird/i
dolphin = /dolphin/i
plasmashell = /plasmashell/i
Trackpad = /Apple Internal Keyboard \/ Trackpad/i
@grab-device "Apple Inc. Mouse"
#@grab-device "Apple Inc. Magic Trackpad"
#@grab-device "Apple Internal Keyboard / Trackpad"
# Alias
Command = MetaLeft
@forward-modifiers Shift Control
# Manually forward Command (instead of @forward-modifiers), because forwarding
# must only happen in first stage.
Command >> Command
[class = terminal]
Command{C} >> !Command (Shift Control){C}
Command{F} >> !Command (Shift Control){F}
Command{N} >> !Command (Shift Control){N}
Command{P} >> !Command (Shift Control){P}
Command{T} >> !Command (Shift Control){T}
Command{V} >> !Command (Shift Control){V}
Command{W} >> !Command (Shift Control){W}
[class = thunderbird]
Command{K} >> !Command Control{K} # Search in mailboxes
[class = browser]
(Shift Command){R} >> !Command (Control Shift){R}
(Command AltLeft){I} >> !Command (Control Shift){I} # Inspector
(Shift Command){Delete} >> !Command (Shift Control){Delete} # Delete browsing data
(Shift Command Fn){Backspace} >> !Command (Shift Control Fn){Backspace} # Delete browsing data (no delete key present)
Command{J} >> !Command Control{J} # Downloads
[class != code]
# Generic application keybindings except for VSCode.
# VSCode gets custom application keybindings applied through home-manager
Command{A} >> !Command Control{A}
Command{C} >> !Command Control{C}
Command{F} >> !Command Control{F}
Command{H} >> !Command Control{H}
Command{M} >> !Command MetaLeft{PageDown}
Command{N} >> !Command Control{N}
(Shift Command){N} >> !Command (Shift Control){N}
Command{P} >> !Command Control{P}
Command{Q} >> !Command AltLeft{F4}
Command{R} >> !Command Control{R}
Command{S} >> !Command Control{S}
Command{T} >> !Command Control{T}
Command{V} >> !Command Control{V}
Command{W} >> !Command Control{W}
Command{X} >> !Command Control{X}
Command{Z} >> !Command Control{Z}
!Shift Command{Comma} >> !Command Control{Comma}
[default]
Command {ArrowLeft} >> !Command Home
Command {ArrowRight} >> !Command End
# Select entire line. Note: After selecting entire line, one should
# be able to adjust selected area with Shift+ArrowLeft/ArrorRight, regardless
# wether initially Shift OR Command was the first one pressed of both keys.
(Shift Command) {ArrowLeft} >> !Command Shift{Home}
(Shift Command) {ArrowRight} >> !Command Shift{End}
# Diaeresis
#kb_layout = "us", kb_variant = "altgr-intl"
AltLeft{U} U >> AltRight{Y} #ü
AltLeft{U} (Shift U) >> (AltRight Shift){Y} #Ü
AltLeft{U} A >> AltRight{Q} #ä
AltLeft{U} (Shift A) >> (AltRight Shift){Q} #Ä
AltLeft{U} O >> AltRight{P} #ö
AltLeft{U} (Shift O) >> (AltRight Shift){P} #Ö
AltLeft{S} >> AltRight{S} #ß
[stage]
# In separate stage because both Command and ButtonLeft
# needs to be forwarded in first stage
ButtonLeft >> ButtonLeft
[default]
# Command Click for URLs (Terminal + Brave)
# Multiselect item (Desktop and Dolphin, VSCode, etc. )
(Command ButtonLeft) >> !Command (Control ButtonLeft)