* .emacs.d/init.el: Show system volumes in mode-line.
[~bandali/configs] / .emacs.d / lisp / bandali-exwm.el
index 3072765..4cd2d1c 100644 (file)
@@ -181,30 +181,63 @@ around if needed."
    ([?\s-\;] . (lambda ()
                  (interactive)
                  (start-process-shell-command
-                  "dmneu-pamixer" nil "dmenu-pamixer")))
+                  "dmneu-pamixer" nil "dmenu-pamixer")
+                 (b/set-volume-level (b/get-volume-level))
+                 (force-mode-line-update)))
    ([XF86AudioMute] .             ; borken on my X200 :-(
     (lambda ()
       (interactive)
-      (start-process "" nil "pamixer" "--toggle-mute")))
+      (start-process "" nil "pamixer" "--toggle-mute")
+      (b/set-volume-mute (b/get-volume-mute))
+      (force-mode-line-update)))
+   ([\s-XF86AudioMute] .            ; toggle mic mute
+    (lambda ()
+      (interactive)
+      (start-process
+       "" nil "pamixer" "--default-source" "--toggle-mute")
+      (b/set-volume-mute (b/get-volume-mute 'mic) 'mic)
+      (force-mode-line-update)))
    ([XF86Launch1] .
     (lambda ()
       (interactive)
-      (start-process "" nil "pamixer" "--toggle-mute")))
+      (start-process "" nil "pamixer" "--toggle-mute")
+      (b/set-volume-mute (b/get-volume-mute))
+      (force-mode-line-update)))
    ([\s-XF86Launch1] .            ; toggle mic mute
     (lambda ()
       (interactive)
       (start-process
-       "" nil "pamixer" "--default-source" "--toggle-mute")))
+       "" nil "pamixer" "--default-source" "--toggle-mute")
+      (b/set-volume-mute (b/get-volume-mute 'mic) 'mic)
+      (force-mode-line-update)))
    ([XF86AudioLowerVolume] .
     (lambda ()
       (interactive)
       (start-process
-       "" nil "pamixer" "--allow-boost" "--decrease" "5")))
+       "" nil "pamixer" "--allow-boost" "--decrease" "5")
+      (b/set-volume-level (b/get-volume-level))
+      (force-mode-line-update)))
    ([XF86AudioRaiseVolume] .
     (lambda ()
       (interactive)
       (start-process
-       "" nil "pamixer" "--allow-boost" "--increase" "5")))
+       "" nil "pamixer" "--allow-boost" "--increase" "5")
+      (b/set-volume-level (b/get-volume-level))
+      (force-mode-line-update)))
+   ([\s-XF86AudioLowerVolume] .
+    (lambda ()
+      (interactive)
+      (start-process
+       "" nil "pamixer" "--default-source" "--decrease" "5")
+      (b/set-volume-level (b/get-volume-level 'mic) 'mic)
+      (force-mode-line-update)))
+   ([\s-XF86AudioRaiseVolume] .
+    (lambda ()
+      (interactive)
+      (start-process
+       "" nil "pamixer" "--default-source" "--increase" "5")
+      (b/set-volume-level (b/get-volume-level 'mic) 'mic)
+      (force-mode-line-update)))
    ([XF86AudioPlay] .
     (lambda ()
       (interactive)
@@ -319,7 +352,7 @@ around if needed."
     '((:eval
        (format
         " [%s]" (number-to-string
-                exwm-workspace-current-index)))))))
+                 exwm-workspace-current-index)))))))
 
 (with-eval-after-load 'exwm-layout
   (setq exwm-layout-show-all-buffers t))