Налаштування Compose для введення нестандартних символів
- Деталі
- Категорія: Робочі станції
- Опубліковано: Неділя, 11 вересня 2011, 13:30
- Автор: Super User
- Перегляди: 3237
При наборі текстів часто доводиться користуватися символами, яких або немає в даній розкладці, або взагалі немає на клавіатурі. Наприклад ввести з клавіатури щось типу ¼ або ‰ завдання нетривіальне. Можна, звичайно, скористатися таблицею символів і просто скопіювати все звідти. Але це добре, коли потрібний символ вводиться 1-2 рази. А що робити якщо він потрібен постійно? Ось тут на допомогу і приходить Compose key.
Клавіша compose також відома під назвою «Multi_key» в X Window System. В X.Org Server багато розкладок клавіатури передбачають різні варіанти розташування Multi_key, що зазвичай використовуються в PC-сумісних архітектурах.
Призначити цю клавішу можна по різному. Наприклад за допомогою XkbOptions («compose: rwin»). У мене в Kubuntu це робиться в 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. У ньому описані всі-всі комбінації