aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMattias Andrée <maandree@kth.se>2021-06-26 15:17:32 +0200
committerMattias Andrée <maandree@kth.se>2021-06-26 15:17:32 +0200
commit51471943e2d37bd864c4b53f7e0976ccdf163457 (patch)
tree72ccf9e93db6fdc6ffc4151358628def05e5743b
parentAdd ipa, man, and unicode scripts (diff)
downloaddotfiles-51471943e2d37bd864c4b53f7e0976ccdf163457.tar.gz
dotfiles-51471943e2d37bd864c4b53f7e0976ccdf163457.tar.bz2
dotfiles-51471943e2d37bd864c4b53f7e0976ccdf163457.tar.xz
Add xkbdbind
Signed-off-by: Mattias Andrée <maandree@kth.se>
-rw-r--r--xorg-server/Makefile6
-rw-r--r--xorg-server/xkbdbind.config.h.gpp43
2 files changed, 49 insertions, 0 deletions
diff --git a/xorg-server/Makefile b/xorg-server/Makefile
index 29edef7..72de69f 100644
--- a/xorg-server/Makefile
+++ b/xorg-server/Makefile
@@ -17,10 +17,16 @@ install:
$(CHECK_INSTALLED) xorg-xmodmap
mkdir -p -- ~/.local/bin
ln -sf -- ~/.dotfiles/xorg-server/setkeys ~/.local/bin/
+ test -d xkbdbind || git clone 'git://git.maandree.se/xkbdbind'
+ gpp -s '%%' < xkbdbind.config.h.gpp > xkbdbind/config.h
+ make -C xkbdbind
+ ln -sf -- ~/.dotfiles/xorg-server/xkbdbind/xkbdbind ~/.local/bin/
uninstall:
-unlink -- ~/.config/backgrounds
-unlink -- ~/.config/background
-unlink -- ~/.local/bin/setkeys
+ -unlink -- ~/.local/bin/xkdbind
+ -rm -rf -- xkbdbind
.PHONY: install uninstall
diff --git a/xorg-server/xkbdbind.config.h.gpp b/xorg-server/xkbdbind.config.h.gpp
new file mode 100644
index 0000000..479dad9
--- /dev/null
+++ b/xorg-server/xkbdbind.config.h.gpp
@@ -0,0 +1,43 @@
+/* -*- c -*- */
+
+#define MOD MOD_SUPER
+#define S MOD_SHIFT
+#define C MOD_CTRL
+#define A MOD_ALT
+#define H MOD_HYPER
+
+static struct hotkey hotkeys[] = {
+ {XK_F1, MOD | S, 0, CMD("c")},
+ {XK_F2, MOD | S, 0, CMD("brave")},
+ {XK_F4, MOD | S, 0, CMD("xkill")},
+ {XK_F9, MOD | S, 0, CMD("sh", "-c", "amixer -c \"${MAIN_ALSA_CARD}\" -- set \"${MAIN_ALSA_MIXER}\" 0%")},
+ {XK_F10, MOD | S, 1, CMD("sh", "-c", "amixer -c \"${MAIN_ALSA_CARD}\" -- set \"${MAIN_ALSA_MIXER}\" 5%-")},
+ {XK_F11, MOD | S, 1, CMD("sh", "-c", "amixer -c \"${MAIN_ALSA_CARD}\" -- set \"${MAIN_ALSA_MIXER}\" 5%+")},
+ {XK_F12, MOD | S, 0, CMD("sh", "-c", "amixer -c \"${MAIN_ALSA_CARD}\" -- set \"${MAIN_ALSA_MIXER}\" 100%")},
+%%>if test -x /usr/bin/dmenu; then
+ {XK_u, MOD, 0, CMD("unicode")},
+ {XK_i, MOD, 0, CMD("ipa")},
+ {XK_p, MOD, 0, CMD("dmenu_run", "-fn", "schumacher clean-8")},
+ {XK_p, MOD | C, 0, CMD("plumb")},
+%%>fi
+%%>if test -x /usr/bin/terminator; then
+ {XK_Return, MOD | S, 0, CMD("terminator")},
+%%>elif test -x /usr/bin/st; then
+ {XK_Return, MOD | S, 0, CMD("st")},
+%%>else
+ {XK_Return, MOD | S, 0, CMD("xterm")},
+%%>fi
+ {XK_F12, MOD | S | C, 0, CMD("setkeys")},
+ {XK_g, H, 0, CMD("setkeys", "greek")},
+ {XK_s, H, 0, CMD("setkeys", "swedish")},
+ {XK_t, H, 0, CMD("setkeys", "toggle")},
+%%>if test -x /usr/bin/mocp; then
+ {XK_b, MOD, 0, CMD("mocp", "--next")},
+ {XK_b, MOD | S, 0, CMD("mocp", "--previous")},
+ {XK_o, MOD | S, 0, CMD("mocp", "--toggle-pause")},
+%%>fi
+};
+
+#undef MOD
+#undef S
+#undef C