LINUX.ORG.RU

Sticky keyboard ! (EXWM & XkbLayout)

 , , ,


0

1

Bonjour !

Debian 10; Emacs 26; EXWM 0.24;

В /etc/default/keyboard:

XkbLayout="us,ru"
XkbOptions="grp:shifts_toggle" 

Соотвественно, переключение языка ввода происходим по одновременному зажатию шифтов.

Проблема в том, что клавиатура начинает странно себя вести при использовании ru-раскладки в EXWM-буферрах, e.g в хромом, а именно: все клавиши начинают залипать (keydown регестрируется, а keyup – нет), при этом бесконечного ввода не происходит, он совершается лишь единожды.

На этом скрине постарался отобразить ситуацию. Как видно, до ивентов 8 и 9 (переключение en на ru) все хорошо, а после – уже нет. Если вновь переключиться на en и нажать залипшую клавишу, то после ввода она таки получает key release…

Не знаю куда копать, надеюсь, если это баг, то фиксящийся. А, быть может, мне стоит иначе менять язык ввода ? Видел нити в Сети на предмет input-methods, но как это адекватно юзать не понял. Also, планирую использовать reverse-im.el, но проблема не внем (я его временно снес).



Последнее исправление: oOoOo (всего исправлений: 1)

Ответ на: комментарий от Evgueni

У emacs же своя переключалка. Я в какой-то момент к ней привык и не парюсь.

Как у вас это (ее использование) происходит ? Если не затруднит детальнее описать…

oOoOo
() автор топика
Ответ на: комментарий от oOoOo

Сочетанием клавиш. А если ты используешь нестандартную раскладку русского, тогда welcome один раз её ввести. И потом снова сочетанием клавиш.

B0B
()
Ответ на: комментарий от oOoOo

Переключение идёт по Ctrl+\ Я несколько переопределяю стандартную раскладку:

;; redefine some orginal keybindings под MS - можно ли попроще?
;;
;; кнопка \| => \/ при переключения регистра (для моего удобства)
;; в русской раскладке вместо большой Ё символ ~ 


(require 'quail)
(require 'cyrillic)


    (quail-define-package
     "russian-computer" "Cyrillic" "RU" nil
     "ЙЦУКЕH keyboard layout widely used in Russia"
     nil t t t t nil nil nil nil nil t)

    (quail-define-rules
     ("1" ?1) ("2" ?2) ("3" ?3) ("4" ?4) ("5" ?5) ("6" ?6) ("7" ?7) ("8" ?8)
     ("9" ?9) ("0" ?0) ("-" ?-) ("=" ?=) ("`" ?ё) ("q" ?й) ("w" ?ц) ("e" ?у)
     ("r" ?к) ("t" ?е) ("y" ?н) ("u" ?г) ("i" ?ш) ("o" ?щ) ("p" ?з) ("[" ?х)
     ("]" ?ъ) ("a" ?ф) ("s" ?ы) ("d" ?в) ("f" ?а) ("g" ?п) ("h" ?р) ("j" ?о)
     ("k" ?л) ("l" ?д) (";" ?ж) ("'" ?э) ("\\" ?\\) ("z" ?я) ("x" ?ч) ("c" ?с)
     ("v" ?м) ("b" ?и) ("n" ?т) ("m" ?ь) ("," ?б) ("." ?ю) ("/" ?.) ("!" ?!)
     ("@" ?\") ("#" ?№) ("$" ?\;) ("%" ?%) ("^" ?:) ("&" ??) ("*" ?*) ("(" ?()
     (")" ?)) ("_" ?_) ("+" ?+) ("~" ?~)
     ("Q" ?Й) ("W" ?Ц) ("E" ?У) ("R" ?К) ("T" ?Е) ("Y" ?Н) ("U" ?Г) ("I" ?Ш)
     ("O" ?Щ) ("P" ?З) ("{" ?Х) ("}" ?Ъ) ("A" ?Ф) ("S" ?Ы) ("D" ?В) ("F" ?А)
     ("G" ?П) ("H" ?Р) ("J" ?О) ("K" ?Л) ("L" ?Д) (":" ?Ж) ("\"" ?Э) ("|" ?/)
     ("Z" ?Я) ("X" ?Ч) ("C" ?С) ("V" ?М) ("B" ?И) ("N" ?Т) ("M" ?Ь) ("<" ?Б)
     (">" ?Ю) ("?" ?,))


 (setq quail-keyboard-layout-type 'russian-computer)

Evgueni ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.