From 1935b416207360aea523521c8abb240970e44fbe Mon Sep 17 00:00:00 2001 From: Vincent Ambo Date: Fri, 24 Dec 2021 22:28:22 +0300 Subject: feat(tazjin/emacs): Use Emacs input methods in X11 buffers This is much easier than the shitty keyboard layout switcher which caused all kinds of terrifying bugs. Unfortunately the layout switcher remains additionally because this doesn't work with Quassel (Qt dropped support for XIM). Change-Id: I7c58cebf9391216b6e7134d8c283d52cb18332de Reviewed-on: https://cl.tvl.fyi/c/depot/+/3497 Tested-by: BuildkiteCI Autosubmit: tazjin Reviewed-by: tazjin --- users/tazjin/emacs/config/desktop.el | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'users/tazjin/emacs/config') diff --git a/users/tazjin/emacs/config/desktop.el b/users/tazjin/emacs/config/desktop.el index 3a4983f629f0..c160ae131f8a 100644 --- a/users/tazjin/emacs/config/desktop.el +++ b/users/tazjin/emacs/config/desktop.el @@ -4,13 +4,14 @@ ;; window-management (EXWM) as well as additional system-wide ;; commands. -(require 's) -(require 'f) (require 'dash) (require 'exwm) (require 'exwm-config) (require 'exwm-randr) (require 'exwm-systemtray) +(require 'exwm-xim ) +(require 'f) +(require 's) (defcustom tazjin--screen-lock-command "tazjin-screen-lock" "Command to execute for locking the screen." @@ -52,6 +53,7 @@ (defun lock-screen () (interactive) (set-xkb-layout "us") + (deactivate-input-method) (shell-command tazjin--screen-lock-command)) (defun create-window-name () @@ -180,6 +182,11 @@ (bind-xkb "no" "л т") (bind-xkb "ru" "л к") +;; Configuration of EXWM input method handling for X applications +(exwm-xim-enable) +(setq default-input-method "russian-computer") +(push ?\C-\\ exwm-input-prefix-keys) + ;; Line-editing shortcuts (exwm-input-set-simulation-keys '(([?\C-d] . delete) -- cgit 1.4.1