Лисаков и макромир

Раскладка в Ubuntu 14.04

Для починки раскладки в Ubuntu + GNOME везде советуют это:

user $
user $
gsettings set org.gnome.settings-daemon.plugins.keyboard active false
setxkbmap -option "grp:alt_shift_toggle,grp_led:scroll,compose:ralt"

Первая команда отключает гномовский индикатор раскладки, так что он работать не будет. Зато вторая команда должна зажигать/гасить лампочку на Scroll Lock (при её наличии) в зависимости от выбранной раскладки. Также вторая команда вешает переключение раскладок на Alt+Shift, а Compose Key — на правый Alt.

Чтобы заменить Alt+Shift, например, на Caps Lock, надо заменить alt_shift_toggle на caps_toggle. У меня полный список клавиш с их кодами находится в /usr/share/X11/xkb/rules/base.lst. Можете просмотреть его соответствующую часть, щёлкнув на следующую кнопку.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
grp                       Switching to another layout
grp:switch Right Alt (while pressed)
grp:lswitch Left Alt (while pressed)
grp:lwin_switch Left Win (while pressed)
grp:rwin_switch Right Win (while pressed)
grp:win_switch Any Win key (while pressed)
grp:caps_switch Caps Lock (while pressed), Alt+Caps Lock does the original capslock action
grp:rctrl_switch Right Ctrl (while pressed)
grp:toggle Right Alt
grp:lalt_toggle Left Alt
grp:caps_toggle Caps Lock
grp:shift_caps_toggle Shift+Caps Lock
grp:shift_caps_switch Caps Lock (to first layout), Shift+Caps Lock (to last layout)
grp:win_menu_switch Left Win (to first layout), Right Win/Menu (to last layout)
grp:lctrl_rctrl_switch Left Ctrl (to first layout), Right Ctrl (to last layout)
grp:alt_caps_toggle Alt+Caps Lock
grp:shifts_toggle Both Shift keys together
grp:alts_toggle Both Alt keys together
grp:ctrls_toggle Both Ctrl keys together
grp:ctrl_shift_toggle Ctrl+Shift
grp:lctrl_lshift_toggle Left Ctrl+Left Shift
grp:rctrl_rshift_toggle Right Ctrl+Right Shift
grp:ctrl_alt_toggle Alt+Ctrl
grp:alt_shift_toggle Alt+Shift
grp:lalt_lshift_toggle Left Alt+Left Shift
grp:alt_space_toggle Alt+Space
grp:menu_toggle Menu
grp:lwin_toggle Left Win
grp:win_space_toggle Win Key+Space
grp:rwin_toggle Right Win
grp:lshift_toggle Left Shift
grp:rshift_toggle Right Shift
grp:lctrl_toggle Left Ctrl
grp:rctrl_toggle Right Ctrl
grp:sclk_toggle Scroll Lock
grp:lctrl_lwin_rctrl_menu LeftCtrl+LeftWin (to first layout), RightCtrl+Menu (to second layout)

grp_led Use keyboard LED to show alternative layout
grp_led:num Num Lock
grp_led:caps Caps Lock
grp_led:scroll Scroll Lock

Меня это, однако же, эти команды не спасли, поэтому поведаю историю тягостной грусти и вселенской печали.

Жил я припеваючи, и стояла у меня Ubuntu 12.04 с оболочкой GNOME 3.2. Где-то через полгода после выхода версии 14.04 я обновился, и появились невероятные проблемы со сменой раскладки. Нигде ещё на просторах интернета я не видел симптомов, в точности совпадающих с моими, поэтому опишу их подробно — может быть, Вам будет приятно увидеть знакомые до боли элементы!

  • После включения компьютера раскладка работала нормально.
  • Через 1-2 часа раскладка зависала в следующем состоянии: индикатор показывает только EN, по нажатию клавиши (или комбинации клавиш) раскладка переключается с английского на русский (индикатор стыдливо умалчивал об этом, продолжая показывать EN), но не переключается с русского на английский! Но, щёлкнув на индикатор раскладки, можно выбрать нужный язык. Только выбранным всё равно будет показываться EN.
  • Значительно реже происходило то же самое, но наоборот — индикатор зависал в положении RU и позволял переключаться с русского на английский, но не обратно. Возможно, это связано с тем, какая раскладка была активной в тот момент поломки.
  • Я рылся в интернете и проделывал все операции с i-bus, gnome-tweak-tool, /etc/default/keyboard и пр. Ничего не помогало. Из-за этих операций или по воле всевышнего раскладка стала ломаться иногда через 5 секунд после включения компьютера, а иногда могла целый день продержаться.
  • Num Lock так и не удалось заставить гореть при русской раскладке.
  • С горя я обновился с 14.04 на 14.10. Не спасло.

Наконец, я поставил XFCE4 (между прочим, на эту оболочку перешёл Линус Торвальдс, когда вышел GNOME 3). С лёгким сердцем я сразу же после этого выпилил гном подчистую, неистово при этом хохоча и сквернословя. В XFCE я сразу почувствовал себя как дома. А ведь я целый год уговаривал себя, что гном 3 — это нестрашно, и даже почти уговорил. Раскладка стала переключаться нормально. Но один маленький косячок всё же был. Он поражал своей элегантностью: Compose Key не работает, если включён Num Lock. Спустя какое-то время он почему-то исчез.

Кстати, с GNOME 3.2 система грузилась чуть больше 20 секунд, а с XFCE4 она грузится чуть больше 10 секунд. Всем рекомендую SSD!