summaryrefslogtreecommitdiff
path: root/.config/stumpwm
diff options
context:
space:
mode:
authorThanos Apollo <[email protected]>2023-03-09 14:24:47 +0200
committerThanos Apollo <[email protected]>2023-03-09 14:24:47 +0200
commitd103e8957d93786ab99b791385cd6536c1553849 (patch)
tree370cb8e6106aa3c5fe1c28f2afc9a239a43dae44 /.config/stumpwm
parent4a2e50a9e42d0a8fd8a7178a8e0ad7d11f67d7d3 (diff)
stumpwm: Add keybindings
Diffstat (limited to '.config/stumpwm')
-rw-r--r--.config/stumpwm/keybindings.lisp53
1 files changed, 53 insertions, 0 deletions
diff --git a/.config/stumpwm/keybindings.lisp b/.config/stumpwm/keybindings.lisp
new file mode 100644
index 0000000..d4ec2e5
--- /dev/null
+++ b/.config/stumpwm/keybindings.lisp
@@ -0,0 +1,53 @@
+
+(in-package :stumpwm)
+
+(which-key-mode)
+
+
+(setf *mouse-focus-policy* :click)
+
+;; prefix key
+(set-prefix-key (kbd "C-t"))
+
+;; prompt the user for an interactive command. The first arg is an
+;; optional initial contents.
+(defcommand colon1 (&optional (initial "")) (:rest)
+ (let ((cmd (read-one-line (current-screen) ": " :initial-input initial)))
+ (when cmd
+ (eval-command cmd t))))
+
+;; Run rofi
+(define-key *root-map* (kbd "C-r") "exec rofi -show drun")
+
+(define-key *root-map* (kbd "e") "exec emacsclient -c")
+
+;; Browse somewhere
+(define-key *root-map* (kbd "b") "colon1 exec firefox http://www.")
+
+;; Lock screen
+(define-key *root-map* (kbd "C-l") "exec xlock")
+;; Audio
+(define-key *top-map* (kbd "XF86AudioLowerVolume") "exec amixer sset Master 5%-")
+(define-key *top-map* (kbd "XF86AudioRaiseVolume") "exec amixer sset Master 5%+")
+
+;;; Groups
+;; Switch to group
+(define-key *top-map* (kbd "s-1") "gselect 1")
+(define-key *top-map* (kbd "s-2") "gselect 2")
+(define-key *top-map* (kbd "s-3") "gselect 3")
+(define-key *top-map* (kbd "s-4") "gselect 4")
+(define-key *top-map* (kbd "s-5") "gselect 5")
+(define-key *top-map* (kbd "s-6") "gselect 6")
+(define-key *top-map* (kbd "s-7") "gselect 7")
+;; Move window to group
+(define-key *top-map* (kbd "s-!") "gmove 1")
+(define-key *top-map* (kbd "s-@") "gmove 2")
+(define-key *top-map* (kbd "s-#") "gmove 3")
+(define-key *top-map* (kbd "s-$") "gmove 4")
+(define-key *top-map* (kbd "s-%") "gmove 5")
+(define-key *top-map* (kbd "s-^") "gmove 6")
+(define-key *top-map* (kbd "s-&") "gmove 7")
+;; Focus
+(define-key *top-map* (kbd "s-b") "move-focus left")
+(define-key *top-map* (kbd "s-f") "move-focus right")
+(define-key *top-map* (kbd "s-n") "move-focus down") \ No newline at end of file