LINUX.ORG.RU

Fedora, i3wm, xkb, японский (Mozc / Anthy) - как подружить?

 , , , ,


1

2

Здравствуйте!

Сейчас пользую две раскладки, en и ru. Настроил переключение вот таким чудесным способом:

setxkbmap -layout us,ru -option "grp:shift_caps_switch,shift:both_capslock,compose:menu"

Начал потихоньку изучать японский - интереса ради. Когда сидел под третьегномом, использовал Mozc и (почти) не имел никаких проблем, благо настройка тыканьем мышки не сложная. А вот сейчас, под i3wm, никак не получается нормально воткнуть японский ввод. Хочется, как и в случае с английским и русским, повесить его на отдельный хоткей, ну или циклично с одного из них (где-то видел конфиги xkb, которые позволяют переключать отдельно крайние раскладки и прыгать на центральную циклическим переключением), но мне хотя бы просто завести все это дело. Единственный способ, которым получилось внятно что-то написать - через ibus и включением ibus engine anthy, но это такое себе - ibus вроде как не умеет вешать хоткеи на раскладку, только цикличное переключение меня категорически не устраивает, а делать переключение хоткеями в конфиге i3 не очень красиво, да и панелька индикации в polybar не воспринимает изменения раскладки ibus-ом.

Вроде как в самом xkb есть что-то с японским (как минимум раскладка jp и пара вариантов), но то ли я чего-то не знаю (хоткеи?), то ли просто криворук, но так и не смог запустить правильно. Ну и скорее всего, там нет подсказок ввода, как в том же Anthy.

Как все это дело провернуть?



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

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

Спасибо за ссылки, прошелся по диагонали. Это все замечательно, но все-таки подозреваю, что на чистом xkb тут не уехать. То есть заремапить или сделать еще какую клавиатурную магию можно, конечно, но логика обработки вряд ли в самом xkb будет. То есть в идеале мне бы мостик xkb <-> IME (тот же Mozc / kkc). Сейчас пока что сделал страшными биндингами в i3 в стиле «по этому хоткею стартуем ibus-daemon, ставим в xkb -layout jp, дабы показывал на панельке, по этому хоткею меняем IME, по этому падаем обратно в старую систему». Костыль, но хотя бы работает, и явно быстрее, чем поднять всю доку по xkb (

Пробежался глазами по symbols/jp, ну и скорее всего оно для специальных японских клавиатур с кучей доп кнопочек (jp106), поэтому и не заводилось правильно, видимо.

sharro
() автор топика

Использую fcitx. В настройках клавиатуры (не fcitx) 4 раскладки: английская (США), русская сербская (Россия), японская, китайская. В настройках дополнений (fcitx) включено «Keyboard Layout (Use Keyboard Layout as Input Method)». В списке методов ввода:

  1. Keyboard — Английская (США) — Английская (Macintosh).
  2. Keyboard — Английская (США).
  3. Keyboard — Русская — Сербская (Россия).
  4. Anthy.
  5. Pinyin.

В настройках Anthy и Pinyin в качестве «Keyboard Layout» соответственно стоят японская и китайская раскладки. В настройках плагина «Input Method Selector» в секции «Global Selector» для 1—4 методов ввода соответственно стоят клавиши F1—F4. Таким образом, раскладки переключает fcitx: нажатием F1—F4 выбирается соответствующая раскладка и включается нужный / отключается ненужный метод ввода.

PS. Мне потребовалось именно две английские раскладки, иначе всё работает не так: в настройках «Input Method Selector» методы ввода считаются со второго из приведённого выше списка, а на реально стоящий первым хоткей повесить нельзя. Поэтому нужно первым методом ввода выбрать какую-нибудь альтернативную английскую раскладку. Возможно, у тебя этого бага не будет.

PPS. Русская сербская уже точно не помню почему, ЕМНИП, у меня только она соответствует обозначениям на клавиатуре.

PPPS. Для японского и китайского сойдёт и английская раскладка, но я поставил их собственные (не сильно от неё отличающиеся), чтобы изгнать из трея жуткий срач иконок fcitx и использовать для индикации обычную переключалку.

sudopacman ★★★★★
()
Последнее исправление: sudopacman (всего исправлений: 3)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.