diff options
| author | Ravi R Kiran <aine.marina@gmail.com> | 2021-08-22 13:25:15 (GMT) |
|---|---|---|
| committer | Ravi R Kiran <aine.marina@gmail.com> | 2021-08-22 13:25:15 (GMT) |
| commit | 3e9d1729bb17c5865ec7e195f40c82e23ace29a4 (patch) | |
| tree | f48c28eb5de4d11b786300266826808ebb872441 | |
| parent | 04abd48a031b8a536096c053cabfb02f55d7531d (diff) | |
| download | dotemacs-3e9d1729bb17c5865ec7e195f40c82e23ace29a4.zip dotemacs-3e9d1729bb17c5865ec7e195f40c82e23ace29a4.tar.gz dotemacs-3e9d1729bb17c5865ec7e195f40c82e23ace29a4.tar.bz2 | |
Work under wayland too
| -rw-r--r-- | init.el | 19 |
1 files changed, 16 insertions, 3 deletions
@@ -99,15 +99,28 @@ :ensure nil) (require 's) +(require 'dash) +(require 'dbus) (require 'ravi-ergodox-mode) -(let* ((xinput-string (and window-system (shell-command-to-string "xinput"))) - (xorg-ergodox (and window-system (s-contains? "Ergodox" xinput-string))) +(let* ((under-wayland (and window-system (not (s-blank-str-p (getenv "WAYLAND_DISPLAY"))))) + (xorg-ergodox (and window-system + (if under-wayland + (-any? (lambda (n) + (s-contains? "Ergodox" + (dbus-get-property :session "org.kde.KWin" + (concat "/org/kde/KWin/InputDevice/" n) + "org.kde.KWin.InputDevice" "name"))) + (dbus-get-property :session "org.kde.KWin" "/org/kde/KWin/InputDevice" + "org.kde.KWin.InputDeviceManager" "devicesSysNames")) + (s-contains? "Ergodox" (shell-command-to-string "xinput"))))) (under-xming (and window-system (or xorg-ergodox (s-contains? "vendor string: Colin Harrison" (shell-command-to-string "xdpyinfo"))))) (using-kitty (and (not window-system) - (string-match "^xterm-kitty" (getenv-internal "TERM" initial-environment))))) + (s-starts-with? "xterm-kitty" (getenv-internal "TERM" initial-environment))))) + ;; (message "Under wayland: %s" (prin1-to-string under-wayland)) + ;; (message "xorg-ergodox: %s" (prin1-to-string xorg-ergodox)) (if (or xorg-ergodox under-xming using-kitty) (progn (ravi-ergodox-mode) |
