LINUX.ORG.RU

Тонкая настройка переключателя раскладок

 , , , ,


1

2

Имею в системе 3 раскладки (en, ru и jp). Есть ли способ повесить переключение между en и ru на Caps Lock, а на Ctrl+Space - безусловное переключение на jp?

SCIM не предлагать потому, что

  • indicator-keyboard-service в Ubuntu теперь знает о японской раскладке, и мне бы не хотелось идти против этой политики (а раньше в линуксах об этом знал только SCIM / его аналог)
  • При необходимости переключения с ru на jp мне придется сначала переключаться на en
  • Интересует обобщенное решение для любых раскладок (т.е. даже тех, которые работают не через SCIM)

Как вариант рассматриваю выпиливание существующего переключателя раскладок и написание Python-скрипта, но не хотелось бы изобретать велосипед.

★★★

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

Краем ухом слышал, что хохлы придумали нециклическое переключение раскладок под онтопик. Это же есть на гитхабе?

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

потыркал setxkbmap - через иксы как ты хочешь не сделать. Максимум что можно - капс между ru и en, и alt-shift с en на jp

а если не иксы, то все остальное, собственно, велосипеды, и твой велик будет не хуже уже существующих

Kesha_Molchanov
()
Ответ на: комментарий от Minoru

Не знаю. Я бы сделал так - капсом переключал ru <-> en, а на альт-шифт повесил скрипт, который врубает jp. Но я чот не нашел, как программно переключить раскладку

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

Тупо сделай её единственной. setxkbmap jp. А по капсу делай setxkbmap us,ru

NeverLoved ★★★★★
()
$ setxkbmap -layout jp,ru,us -option grp:win_menu_switch,grp:caps_toggle

По rwin будет всегда включаться jp, по lwin всегда включаться ru, по caps циклически переключаться все, соответственно us можно выбрать только таким образом, или она будет всегда первой, если текущая ru и нажать caps.

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

Делаем

$ setxkbmap jp
...И получаем фигу (en и ru работают).

И такой финал вполне закономерен: конвертация латиницу в японицу - это сложный и интерактивный процесс, и я слабо представляю, как уместить его в рамках протокола X11.

Так что курю исходники пакета indicator-keyboard.

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

...И получаем фигу (en и ru работают).

Я полагал, обойдётся без банальностей. Дописать по вкусу:

-variant (106, OADG109A, kana86, kana, nicola_f_bc, mac, hztg_escape, dvorak)

anonymous
()

Да, вот рабочие команды для переключения раскладок из консоли с учетом всяких Gnome3, IME и Ай-басов:

gsettings get org.gnome.desktop.wm.keybindings switch-input-source
gsettings get org.gnome.desktop.input-sources sources
gsettings set org.gnome.desktop.input-sources current 2
Minoru ★★★
() автор топика
Последнее исправление: Minoru (всего исправлений: 1)
Ответ на: комментарий от Minoru

Я хахол. Тупо средствами WM прописал хоткеи:

Win+F3  setxkbmap ua,us
Win+F4  setxkbmap us,ru
В принципе, доволен, только когда по дефолту стоит нелатиница, во многих приложениях хоткеи с буквенными клавишами перестают работать.

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