В Debian, как изменить раскладку клавиатуры в одном файле USER -SPECIFIC, который будет использоваться X (через setxkbmap )и (ядро ​​)виртуальные консоли (TTY )?

Немного другая интерпретация. Я прочитал это, так как последние 1 -2 символа не могут быть цифрами, поэтому я получаю

grep -E '^[[:digit:]]+[^[:digit:]]{1,2}$' file
1234567a
2245678902da
1
10.12.2020, 10:30
1 ответ

Если кому-то пригодится, вот хак, о котором я упоминал выше того, что я использовал на данный момент.

~/bin/setxkbmap.shанализирует ~/.keyboard, извлекая xkb settings и запускает эквивалентную команду setxkbmap (s )в X. ~/bin/setxkbmap.shможно вызвать вручную или автоматически при запуске X через линейный вход, например, ~/.xsessionrc.

~/bin/setxkbmap.sh:

#!/bin/bash
# Parse ~/.keyboard, extracting the xkb settings, and run equivalent
# setxkbmap command(s) in X.

source ~/.keyboard
setxkbmap_cmd=(setxkbmap -model "${XKBMODEL}")
setxkbmap_cmd+=(-layout "${XKBLAYOUT}")

# Clear previously-set options first; otherwise, these will be
# appended to whatever is already there.
setxkbmap_cmd+=(-option)

# -r      : do not allow backslashes to escape any characters
# -a array: assign the words read to sequential indices of the array
#           variable ARRAY, starting at zero
IFS=',' read -r -a xkbopts <<< "${XKBOPTIONS}"
for opt in "${xkbopts[@]}"; do
    setxkbmap_cmd+=(-option "${opt}")
done

"${setxkbmap_cmd[@]}"

~/.keyboard:

XKBMODEL="pc105"
XKBLAYOUT="us"

# ctrl: specifies options coming from /usr/share/X11/xkb/symbols/ctrl
# file.
XKBOPTIONS="ctrl:menu_rctrl,ctrl:nocaps,ctrl:swap_rwin_rctl,terminate:ctrl_alt_bksp"

~/.xsessionrc:

# ~/.xsessionrc is sourced by Xsession (a sh script), everytime an X
# session is started. See 'man xsession' for details.

# Explicitly use bash, as ~/.xsessionrc is called by sh (dash in
# Debian 9 GNU/Linux).
bash ~/bin/setxkbmap.sh
0
18.03.2021, 22:43

Теги

Похожие вопросы