Настройка Compose для ввода нестандартных символов
- Информация о материале
- Категория: Рабочие Станции
- Опубликовано: 11.09.2011, 13:30
- Автор: Super User
- Просмотров: 2717
При наборе текстов зачастую приходится пользоваться символами, которых или нет в даной раскладке, или вообще нет на клавиатуре. Например ввести с клавиатуры что-то типа ¼ или ‰ задача нетривиальная. Можно, конечно, воспользоваться таблицей символов и просто скопировать все оттуда. Но это хорошо, когда нужный символ вводится 1-2 раза. А что делать если он нужен постоянно? Вот тут на помощь и приходит Compose key.
Клавиша compose также известна под названием «Multi_key» в X Window System. В X.Org Server многие раскладки клавиатуры предусматривают различные варианты расположение Multi_key, обычно используемых в PC-совместимых архитектурах.
Назначить эту клавишу можно по разному. Например при помощи XkbOptions («compose:rwin»). У меня в Kubuntu 10.04 (KDE 4.4) это делается в Kmenu-Компьютер-Системные параметры-Страна/регион/язык. На клавишу Compose я назначил кнопку, которой вообще никогда не пользуюсь — CapsLock.
Теперь пойдем по настройкам по порядку
1. Настроим метод ввода.
Compose нужно, что бы метод ввода был xim
Выполним команду:
$ im-switch -c
Появится что-то вроде:
There are 10 candidates which provide IM for /home/yakim/.xinput.d/uk_UA:
Selection Alternative
-----------------------------------------------
1 default
*+ 2 default-xim
3 ibus-kde
4 lo-gtk
5 none
6 scim
7 scim-bridge
8 scim-immodule
9 th-gtk
10 th-xim
System wide default for uk_UA (or all_ALL) locale is marked with [+].
Press enter to keep the current selection[*], or type selection number:
Выберем пункт default-xim (если он уже установлен — ничего не меняем)
2. Добавим переменные окружения
Откроем на редактирование файл ~/.bachrc
$ nano ~/.bachrc
И добавим туда две строчки:
export GTK_IM_MODULE=xim
export QT_IM_MODULE=xim
3. Создадим файл .XСompose
$ touch ~/.XСompose
В этом файле мы будем хранить наши личные настройки ввода дополнительных символов.
Можно, конечно, редактировать и общесистемный файл /usr/share/X11/locale/en_US.UTF-8/Compose, но тут есть два нюанса — во-первых так не получится для каждого пользователя задавать индивидуальные настройки, а во-вторых при обновлении системы есть вероятность, что этот файл перезапишется, и мы потеряем все нажитое непосильным трудом.
4. Теперь подготовительные работы закончены и можно заняться непосредственно нашими личными настройками ввода.
Откроем на редактирование файл .XСompose
$nano ~/.XCompose
Первой строчкой добавим в него
include "/usr/share/X11/locale/en_US.UTF-8/Compose"
Если этого не сделать, то все общесистемные настройки комбинаций клавиш для нас будут потеряны.
Далее начнем вводить свои собственные комбинации.
Мне, например, всегда хотелось, что бы в украинской раскладке апостроф можно было бы набрать той же клавишей, что и в английской.
По этому я добавляю строчку :
<Multi_key> <Ukrainian_ie> <Ukrainian_ie> : "'"
Так же мне не нравится, что при переходе на русскую или украинскую раскладку теряется знак $. Для того, что бы это исправить - добавляю еще одну строчку:
<Multi_key> <4> <4> : "$"
Сохраняем файл и перелогиниваемся в системе. Теперь установленные нами комбинации клавиш будут работать.
Для проверки запустим, например, kate и последовательно нажмем 3 кнопки — ту, что мы выбрали в качестве Compose key и два раза «4». Видим, что появился знак «$». У нас все заработало.
Кстати, никто вам не мешает забить на какую-то комбинацию клавиш сразу целую строку. Например так:
<Multi_key> <a> <z> : "Привет!"
Ну и напоследок небольшая таблица стандартных настроек Compose в системе:
Unicode |
Символ |
Compose |
---|---|---|
U00a1 |
|
|
U00a2 |
|
|
U00a3 |
|
|
U00a5 |
|
|
U00a9 |
|
|
U00ab |
|
|
U00ae |
|
|
U00b0 |
|
|
U00b1 |
|
|
U00b2 |
|
|
U00b3 |
|
|
U00b5 |
|
|
U00bb |
|
|
U00bc |
|
|
U00bd |
|
|
U00be |
|
|
U00bf |
|
|
U00c2 |
|
|
U00c3 |
|
|
U00c4 |
|
|
U00c5 |
|
|
U00c6 |
|
|
U00df |
|
|
U00f7 |
|
|
U2030 |
|
|
U20a3 |
|
|
U20a4 |
|
|
На первое время этих комбинаций должно хватить, а потом... Всегда можно или нагуглить, или внимательно почитать файл /usr/share/X11/locale/en_US.UTF-8/Compose. В нем описаны все-все комбинации