January 18, 2023
Определить текущую раскладку BASH (linux)
За управление раскладкой в консоли отвечает команда setxkbmap
, а при запуске с параметром -print
она показывает текущее положение дел.
$ setxkbmap -print xkb_keymap { xkb_keycodes { include "evdev+aliases(qwerty)" }; xkb_types { include "complete" }; xkb_compat { include "complete+ledscroll(group_lock)" }; xkb_symbols { include "pc+ru+us:2+inet(evdev)+compose(caps)" }; xkb_geometry { include "pc(pc105)" }; };
Если немного поиграться, можно достать вот эти вот ru
:
$ setxkbmap -print | sed -n 's#xkb_symbols[^"]*"\([^"]*\)".*$#\1#p' | awk -F+ '{print $2}' ru