OpenSolaris: Как подружиться с тётей Клавой

Алексей Федорчук

2008-12-24

назад | к началу | вперед

Для начала выяснилось, что настройка раскладок клавиатуры в OpenSolaris независима от подсистемы xkb Иксов — за неё отвечает собственная подсистема, носящая имя IIIM (Intrenet/Intarnet Input Method), точнее, её модуль IIIMF (Internet/Intranet Input Method Framework). Непосредственная же настройка осуществляется с помощью Редактора настроек способа ввода.

Вызвать этот редактор можно двумя способами:

  1. через главное "панельное" меню Система -> Параметры -> Input Methods;
  2. щелчком правой кнопкой мыши на иконке индикатора раскладок и выбором пункта Параметры из контекстного меню (рис. 1): два других пункта последнего, Справка и О программе, вызывают, соответственно, весьма подробное описание (рис. 2) и сведения о копирайтах (рис. 3) и авторах (рис. 4).


Рис. 1. Вызов Редактора настроек способа ввода


Рис. 2. Редактор настроек способа ввода. Справка


Рис. 3. О программе


Рис. 4. Авторы

В любом случае перед нами появляется панель со вкладками (рис. 5):

  • Общие;
  • Языки/Скрипты;
  • Пусковые ключи;
  • Клавиатура;
  • Разное.


Рис. 5. Панель Редактора настроек способа ввода. Вкладка Общие

Во вкладке Общие для начала можно включить или отключить использование IIIMF через переключатель Включить Способ Ввода.

Далее из выпадающего меню можно определить Статус и Параметры Настройки Способа ввода. И тут надо вспомнить, что IIIM используется не только в OpenSolaris, но и в Solaris просто. Где до недавнего времени, помимо GNOME, в качестве стандартных сред использовались также CDE и JDS. Так вот, ряд настроек применим только к одной из них. У нас же речь далее пойдет только о тех параметрах, которые имеют силу в среде GNOME — единственном умолчальном десктопе OpenSolaris. Так вот, в данном случае выбирать не приходится — для него применим только пункт Использовать параметры приложения Способа Ввода. Перевод достаточно коряв, но смысл его уловить можно: значок индикатора/переключателя размещается в трее управляющей панели GNOME.

Переключатель Синхронизировать активацию Способа Ввода для всех приложений предписывает, будет ли переключение раскладки распространяться на все приложения (как это происходит в Иксах при использовании средств xkb) или только на то, в котором оно выполнено, подобно тому, как это по умолчанию принято в Windows и может быть настроено в KDE (при использовании её штатного переключателя kxkbd) и в Xfce (при использовании её штатного апплета).

Что удобнее — сквозная раскладка в сеансе или своя для отдельного приложения, каждый должен решить для себя. Я, будучи раньше твердым приверженцем первой схемы, в последнее время перешёл таки на вторую: по крайней мере, можно быть уверенным, что в окне терминала всегда включена латиница :)

Интересно, что попытка переключения раскладки при "пустом" десктопе, если на данном рабочем столе нет окон открытых приложений или все они свёрнуты, в любом случае не даст никаких результатов.

Секция Когда язык переключён также не имеет для нас особого смысла — в среде GNOME выбор языка интерфейса определяется локалью и распространяется на все приложения. Собственно, во вкладке Общие можно не делать вообще ничего — способ ввода по умолчанию включён, синхронизация раскладок — выключена, а на изменение остальных параметров никакой реакции не последует.

Переходим к вкладке Языки/Скрипты (рис. 6). Здесь в левом верхнем фрейме панели мы видим список всех доступных "языков", в правом — тех, поддержка которых включена в нашей системе. Соответственно, "языки" можно добавлять в список поддерживаемых, удалять из него, а также менять порядок в списке. На рисунке приведён сильно "прореженный" список поддерживаемых "языков" — по умолчанию их было гораздо больше.


Рис. 6. Вкладка Языки/Скрипты — определение списка поддерживаемых раскладок

Почему в предыдущем абзаце слово "языки" я употребил в кавычках? Потому что это не столько языки, сколько раскладки клавиатуры для оных. Обращаем внимание, что некоторые из так называемых "языков" представлены более чем в одном экземпляре. Это обычно как раз и связано с вариантами раскладок — например, США/Английский и США/Дворак, Чешкий просто и Чешский/QWERTY. Хотя есть и локально-зависимые "языки" — например, Канадский и Канадский/Французский. Вообще, номенклатура "языков" достаточно запутана, что еще усугубляется русским переводом — вполне себе ПРОМТовским.

В нижних фреймах приведены списки так называемых engines — модулей, собственно и отвечающих за характер раскладок и переключение между ними. Впрочем, список — это громко сказано: в каждом из них лишь по одному элементу (unitle). В документации указано, что некоторые языки могут иметь более одного engine, но я пока такого не видел. Так что добавлять, удалять или тасовать тут нечего.

Активизированный в текущий момент "язык" индицируется на панели соответствующим символом, например: en — английский, ru — русский, ua — украинский. Выбрать нужный "язык" можно из списка, появляющегося по щелчку левой кнопкой мыши на индикаторе. При этом, однако, в любом случае с клавиатуры вводятся только латинские символы — почему это происходит так, мы сейчас увидим.

Вкладка Пусковые ключи — это, попросту говоря, настройка горячих клавиш или их комбинаций для переключения между раскладками. В примере (рис. 7) таковой выступает левая Win-клавиша.


Рис. 7. Вкладка Пусковые ключи — установка переключения раскладок

Можно определить несколько переключателей. Для добавления нового достаточно нажать кнопку Добавить и в появившейся панельке (рис. 8) нажать желаемую клавишу или их комбинацию.


Рис. 8. Определение нового переключателя

После определения клавиши-переключателя нажатие её, наконец, приводит к переключению раскладок с разными наборами символов — при этом слева от значка-индикатора языка появляется надпись Keyboard. То есть при включённых "языках" русском, английском европейском и украинском, как в примере на рис. 6, в переключенном состоянии будет осуществляться ввод символов чистой кириллицы, набора символов Latin1 и кириллицы в украинском варианте, соответственно.

Что происходит во вкладке Клавиатура — интуитивно понятно из приводимого скриншота (рис. 9): это и есть собственно выбор конкретной раскладки — того самого, что в терминологии xkb называется вариантом. С той только разницей, что здесь аналоги значений опции XkbVariant представлены самостоятельными вариантами :). Например, для американской раскладки это будут US/English и US/Dvorak.


Рис. 9. Вкладка Клавиатура: выбор вариантов

К сожалению, для русской раскладки никаких вариантов, кроме базового, не предусмотрено (рис. 10). Впрочем, на эту тему я уже жаловался.


Рис. 10. Вкладка Клавиатура: русская раскладка без вариантов

В принципе, клавиатуру здесь можно и вовсе не определять, отметив чекбокс Использовать автоматическое распознавание (как это и сделано по умолчанию). В этом случае выбор подходящей раскладки будет произведён в соответствие с системной локалью. Смысл предупреждения в скобках понятен. Ведь мы помним, как расшифровывается аббревиатура IIIM, и догадываемся, что физически описание раскладок клавиатуры может находиться на удалённой машине, локаль которой не обязана совпадать с таковой машины нашей. Однако в условиях десктопа это не имеет значения.

Ну а в части Разное, как обычно, начинается самый охмурёж (рис. 11). Во-первых, здесь можно включить вызов списка доступных "языков" горячими клавишами (по умолчанию — Shift+Control+Spacebar), аналогично тому, как это происходит при щелчке левой кнопкой мыши на индикаторе раскладки.


Рис. 11. Вкладка Разное

Во-вторых, можно включить циклическое переключение "языков" по комбинациям горячих клавиш: по умолчанию Shift+Control+> прокручивает их в направлении от первого до последнего по списку (см. рис.6), Shift+Control+& — в обратном порядке.

Вот, собственно, и всё, что можно настроить в интерактивном режиме Редактора настроек способа ввода: во-первых, не очень много, во-вторых, далеко не самым удобным образом, в-третьих, кое-какие возможности просто оказываются лишними. Так, выбор "языка" в полном объеме к среде GNOME вообще не применим, так что при потребности лишь в двух раскладках достаточно оставить единственный "язык" — русский, гражданам же Украины целесообразно добавить к нему украинский. Зато, если есть необходимость периодического ввода французских, немецкий, испанских, скандинавских или западнославянских вкраплений с их диакритическими знаками, все соответствующие "языки" нужно включить в список и в дальнейшем выбирать нужный из меню или циклическим перебором. А вот способа определить нециклические переключатели не обнаруживается.

назад | к началу | вперед