Prevent bad interaction between EXWM and winner-mode
[~bandali/configs] / .emacs.d / lisp / bandali-exwm.el
index bd28d5b..3072765 100644 (file)
@@ -27,8 +27,7 @@
 (add-to-list 'load-path (b/lisp "xelb"))
 (add-to-list 'load-path (b/lisp "exwm"))
 (require 'exwm)
-(setq ;; exwm-replace t
-      exwm-workspace-show-all-buffers t)
+;; (setq exwm-replace t)
 ;; make class name the buffer name, truncating beyond 60 characters
 (defun b/exwm-rename-buffer ()
   (interactive)
@@ -90,14 +89,14 @@ around if needed."
  exwm-workspace-number 10
  exwm-input-global-keys
  `(([?\s-R] . exwm-reset)
-   ([?\s-b] . exwm-workspace-switch-to-buffer)
-   ([?\s-\\] . exwm-workspace-switch)
+   ;; ([?\s-b] . exwm-workspace-switch-to-buffer)
+   ([?\s-/] . exwm-workspace-switch)
    ([?\s-\s] . dmenu)
-   ;; ([?\s-\s] . (lambda ()
-   ;;               (interactive)
-   ;;               (start-process-shell-command
-   ;;                "rofi" nil "rofi -show run")))
-   ([?\S-\s-\s] . (lambda (command)    ; doesn't work in X windows
+   ([?\s-\\] . (lambda ()
+                 (interactive)
+                 (start-process-shell-command
+                  "passmenu" nil "passmenu --type")))
+   ([?\S-\s-\s] . (lambda (command)
                     (interactive
                      (list (read-shell-command "➜ ")))
                     (start-process-shell-command
@@ -110,10 +109,6 @@ around if needed."
                      (start-process "" nil "xterm"
                                     "-name" "floating")))
    ([?\C-\s-\s] . counsel-linux-app)
-   ([?\M-\s-\s] . (lambda ()
-                    (interactive)
-                    (start-process-shell-command
-                     "passmenu" nil "passmenu --type")))
    ([?\s-h] . windmove-left)
    ([?\s-j] . windmove-down)
    ([?\s-k] . windmove-up)
@@ -171,7 +166,7 @@ around if needed."
             (interactive)
             (exwm-workspace-move-window ,i))))
       (number-sequence 0 (1- exwm-workspace-number)))
-   ([?\s-F] . exwm-floating-toggle-floating)
+   ([?\s-.] . exwm-floating-toggle-floating)
    ([?\s-f] . exwm-layout-toggle-fullscreen)
    ([?\s-W] . (lambda ()
                 (interactive)
@@ -183,6 +178,10 @@ around if needed."
                  (interactive)
                  (start-process-shell-command
                   "dmneu-light" nil "dmenu-light")))
+   ([?\s-\;] . (lambda ()
+                 (interactive)
+                 (start-process-shell-command
+                  "dmneu-pamixer" nil "dmenu-pamixer")))
    ([XF86AudioMute] .             ; borken on my X200 :-(
     (lambda ()
       (interactive)
@@ -228,8 +227,8 @@ around if needed."
       (start-process "" nil "light" "-A" "5")))
    ([XF86ScreenSaver] .
     (lambda ()
-         (interactive)
-         (start-process "" nil "dm-tool" "lock")))
+      (interactive)
+      (start-process "" nil "dm-tool" "lock")))
    ([\s-XF86Back] . previous-buffer)
    ([\s-XF86Forward] . next-buffer)))
 
@@ -262,8 +261,10 @@ around if needed."
    ([?\s-q] . [?\C-q])
    ;; misc
    ([?\C-s] . [?\C-f])
+   ([?\s-g] . [?\C-g])
    ([?\s-s] . [?\C-s])
-   ([?\C-g] . [escape])))
+   ([?\C-g] . [escape])
+   ([?\C-/] . [?\C-z])))
 
 (require 'exwm-manage)
 (setq
@@ -310,6 +311,7 @@ around if needed."
 (require 'exwm-edit)
 
 (with-eval-after-load 'exwm-workspace
+  (setq exwm-workspace-show-all-buffers t)
   (setq-default
    mode-line-format
    (append
@@ -319,5 +321,8 @@ around if needed."
         " [%s]" (number-to-string
                 exwm-workspace-current-index)))))))
 
+(with-eval-after-load 'exwm-layout
+  (setq exwm-layout-show-all-buffers t))
+
 (provide 'bandali-exwm)
 ;;; bandali-exwm.el ends here