exwm: add local simulation keys for urxvt and abrowser
[~bandali/configs] / .emacs.d / init.el
index 847f282..f7afe3c 100644 (file)
@@ -711,6 +711,23 @@ around if needed."
       ;; escape
       ([?\C-g] . [escape]))))
 
+(use-feature exwm-manage
+  :demand
+  :after exwm
+  :hook
+  (exwm-manage-finish . (lambda ()
+                          (when exwm-class-name
+                            (cond
+                             ((string= exwm-class-name "URxvt")
+                              (exwm-input-set-local-simulation-keys
+                               nil))
+                             ((string= exwm-class-name "Abrowser")
+                              (exwm-input-set-local-simulation-keys
+                               `(,@exwm-input-simulation-keys
+                                 ([?\C-\S-d] . [?\C-d])
+                                 ([?\C-\S-w] . [?\C-w])
+                                 ([?\C-\S-q] . [?\C-q])))))))))
+
 (use-feature exwm-randr
   :demand
   :after exwm
@@ -1481,7 +1498,8 @@ This function is intended for use with `ivy-ignore-buffers'."
   (load-theme 'tangomod t)
   (sml/apply-theme 'automatic)
   (font-lock-remove-keywords
-   'org-mode b/org-mode-font-lock-keywords))
+   'org-mode b/org-mode-font-lock-keywords)
+  (exwm-systemtray--refresh))
 
 (defun b/lights-off ()
   "Go dark."
@@ -1490,7 +1508,8 @@ This function is intended for use with `ivy-ignore-buffers'."
   (load-theme 'doom-tomorrow-night t)
   (sml/apply-theme 'automatic)
   (font-lock-add-keywords
-   'org-mode b/org-mode-font-lock-keywords t))
+   'org-mode b/org-mode-font-lock-keywords t)
+  (exwm-systemtray--refresh))
 
 (bind-keys
  ("C-c t d" . b/lights-off)
@@ -1761,11 +1780,9 @@ This function is intended for use with `ivy-ignore-buffers'."
                ("p" . mc/mark-previous-like-this)
                ("a" . mc/mark-all-like-this))))
 
-(comment
-  ;; TODO
-  (use-package forge
-    :after magit
-    :demand))
+(use-package forge
+  :demand
+  :after magit)
 
 (use-package yasnippet
   :defer 0.6
@@ -1874,6 +1891,13 @@ This function is intended for use with `ivy-ignore-buffers'."
   :demand
   :config (minions-mode))
 
+(use-package dmenu
+  :disabled
+  :custom
+  (dmenu-history-size 0)
+  (dmenu-prompt-string "run: ")
+  (dmenu-save-file (b/var "dmenu-items")))
+
 \f
 ;;; Email (with Gnus)