LINUX.ORG.RU

Исчезают раскладки клавиатуры

 


1

2

Добрый день. Система Linux Mint 20 + FVWM. Вначале есть раскладка трех языков, Alt+Shift функционирует, клик по иконке языка в трее тоже переключает нормально раскладки. Назначенные мною функциональные клавиши работают нормально

Key F9  A A Exec exec setxkbmap -layout us
Key F10 A A Exec exec setxkbmap -layout ru
Key F11 A A Exec exec setxkbmap -layout br

При нажатии на любую из них остается одна раскладка, клик по иконке не работает, Alt-Shift не фурычит. Пробовал сменить на Ctrl+Shift та же история. Клавиатура беспроводная. Если отключить клавиатуру выдергиванием флешки, а потом включить, то все снова работает, но после setxkbmap -layout us или других языков, снова остается один язык. В файле /etc/default/keyboard все нормально

XKBMODEL="pc105"
XKBLAYOUT="br,us,ru"
XKBVARIANT=",,"
XKBOPTIONS="grp:alt_shift_toggle,lv3:ralt_switch,grp_led:scroll"
BACKSPACE="guess"

Ума не приложу, где корень зла? Конфликт с клавиатурой?

★★★★

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

Пардон, не прав. У меня так было раньше назначено на функц клавишах, я сменил на setxkbmap -layout не помню уж почему. Кажется был конфликт с xxkb, который я использую для вывода иконки языка большого формата. Сейчас отключил xxkb, пока все работает. Посмотрю что будет дальше.

rustamych ★★★★
() автор топика

Ман не пробовал читать? setxkbmap не переключает раскладки. Эта команда компилирует и загружает в иксы новую конфигурацию, при этом старая конфигурация херится. Полностью. После команды setxkbmap -layout us у тебя будет только одна раскладка, американская. После setxkbmap -layout ru — одна русская. И так далее.

Так что всё у тебя работает так, как и должно. Зачем ты это делаешь — это уже к тебе вопрос.

debugger ★★★★★
()
Ответ на: комментарий от serg002

А какая команда переключает? Как через консоль переключиться на определенный layout?

Есть два способа переключить раскладку:

  1. Если раскладку хочет переключить пользователь, он нажимает комбинацию клавиш, определённую в конфигурации иксов, и иксы сами переключают раскладку.

  2. Если раскладку хочет переключить программа (типа индикатора (а заодно и переключателя) текущей раскладки), она вызывает функцию XkbLockGroup.

В штатном наборе иксовых программ (= команд), переключающих раскладку, нет. Считается ненужным, так как (1) и (2) должно хватать всем.

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

Кстати, xkb-switch, как нетрудно догадаться, вызывает функцию XkbLockGroup.

debugger ★★★★★
()
Последнее исправление: debugger (всего исправлений: 1)
Ответ на: комментарий от debugger

У меня так и были назначены клавиши

Key F9  A A Exec exec xkb-switch -s us
Key F10 A A Exec exec xkb-switch -s ru
Key F11 A A Exec exec xkb-switch -s br

Но после замены клавиатуры на давно купленную беспроводную китайскую, начались проблемы - внезапно исчезают другие раскладки и остается одна. Замена на

Key F9  A A Exec exec setxkbmap -layout us
Key F10 A A Exec exec setxkbmap -layout ru
Key F11 A A Exec exec setxkbmap -layout br

давало возможность хотя бы этими клавишами переключать. Но Ctrl+Shift все равно не работало. Сечас вернул все назад. Проблема осталась. Решил просто - отключаю флешку от клавиатуры и сразу снова подключаю. Проблема исчезает на время. Дело видимо в клавиатуре. Надоела эта вся фигня с беспроводными клавиатурами. Куплю проводную, к черту все эти технологии.

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

Надоела эта вся фигня с беспроводными клавиатурами. Куплю проводную, к черту все эти технологии.

а ещё безпроводные клавиатуры передают данные в незашифрованном виде, и сосед может стырить пароль.

teod0r ★★★★★
()