Настройка Compose для ввода нестандартных символов

При наборе текстов зачастую приходится пользоваться символами, которых или нет в даной раскладке, или вообще нет на клавиатуре. Например ввести с клавиатуры что-то типа ¼ или ‰ задача нетривиальная. Можно, конечно, воспользоваться таблицей символов и просто скопировать все оттуда. Но это хорошо, когда нужный символ вводится 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

¢

"|c" "c|" "c/" "/c"

U00a3

£

"L-" "-L"

U00a5

¥

"Y=" "=Y"

U00a9

©

"oc" "oC" "Oc" "OC"

U00ab

«

"<<"

U00ae

®

"or" "oR" "Or" "OR"

U00b0

°

"oo"

U00b1

±

"+-"

U00b2

²

"^2"

U00b3

³

"^3"

U00b5

µ

"mu"

U00bb

»

">>"

U00bc

¼

"14"

U00bd

½

"12"

U00be

¾

"34"

U00bf

¿

"??"

U00c2

Â

"^A"

U00c3

Ã

"~A"

U00c4

Ä

""A"

U00c5

Å

"oA"

U00c6

Æ

"AE"

U00df

ß

"ss"

U00f7

÷

":-" "-:"

U2030

"%o"

U20a3

"Fr"

U20a4

"L=" "=L"

На первое время этих комбинаций должно хватить, а потом... Всегда можно или нагуглить, или внимательно почитать файл /usr/share/X11/locale/en_US.UTF-8/Compose. В нем описаны все-все комбинации

Добавить комментарий

Защитный код
Обновить