Передмова : Це не має нічого спільного з Vim як таким, але я покажу вам, що я вважаю "найкращим" способом вставити цих персонажів далеко; Система диграфів Vim майже або однакова, але вона працює лише з Vim. Це буде працювати у всіх програмах.
Це буде працювати лише для систем X11 (Linux, BSD тощо). Для Windows є AllChars . Він не оновлювався деякий час, але можу підтвердити, що він добре працює з Windows 7 (використовувався на попередній роботі). Я вважаю, що в OS X також є хороші можливості для цього вбудовані в ОС; якщо ви використовуєте OS X, я рекомендую вам перевірити їх, але оскільки я ніколи не використовував OS XI, я не можу вказати на них.
Нижче наводиться (частина) проекту статті у веб-журналі, яку я переглядаю. На жаль, справді вичерпного посібника не існує (поки що), і наведене нижче не описує всі функції, які він пропонує (наприклад, деякі частини про мертві клавіші відсутні), і в деяких частинах вони можуть бути краще написані, але я думаю, що це все ще "досить корисний".
А «Compose послідовність» віджимає Composeключ , а потім один або кілька символів , щоб зробити який- то символ не знайдено на клавіатурі, наприклад, натискання Compose, відразу після "і aможе призвести ä
.
За замовчуванням Composeне прив’язаний до жодної клавіші 1 ; Права Altклавіша (ака. Alt Gr) часто використовується, але ви встановлюєте її будь-яку клавішу.
Встановіть його за допомогою xmodmap
Ви можете xmodmap
встановити це:
$ xmodmap -e 'keysym Alt_R = Multi_key' # Set it right Alt
$ xmodmap -e 'keysym Caps_Lock = Multi_key' # Set it to Caps Lock
$ xmodmap -e 'keysym F12 = Multi_key' # You're free to use *any* key, like F12
Ви, ймовірно, хочете додати це у свій ~/.Xmodmap
файл 2 :
! Set compose key
keysym Alt_R = Multi_key
Встановіть його за допомогою XKB
Ви також можете встановити композиційний ключ як опцію XKB за допомогою
setxkbmap
:
setxkbmap -option compose:ralt # Right alt
setxkbmap -option compose:caps # Caps Lock
Щоб зробити їх постійними, додайте команду до файлу запуску X, або ви також можете встановити її у /etc/X11/xorg.conf
:
Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
Option "XkbOptions" "compose:ralt"
#Option "XkbOptions" "compose:caps"
EndSection
Або, у більш "сучасному" стилі, ви можете створити файл
/etc/X11/xorg.conf.d/90-compose.conf
:
Section "InputClass"
Identifier "Set compose key"
MatchIsKeyboard "on"
Option "XkbOptions" "compose:ralt"
EndSection
Перелік можливих значень можна знайти в xkeyboard-config(7)
розділі «Положення клавіші Compose» 3 .
Налаштування мертвих ключів
Мертвий ключ в основному використовується для додавання акценту або діакритики до листа (наприклад, умлаута, могили акценту тощо), хоча його можна використовувати для створення будь-якого символу. Це працює від ... TODO
'
keycode 133 = dead_greek NoSymbol SuperR
http://zuttobenkyou.wordpress.com/2011/08/24/xorg-using-the-us-international-altgr-intl-variant-keyboard-layout/
http://stackoverflow.com/questions/14922007/how-to-enter-greek-alpha-under-xor
keycode 48 = dead_grave apostrophe
<dead_grave> <space> : "`" grave # GRAVE ACCENT
<dead_grave> <dead_grave> : "`" grave # GRAVE ACCENT
<dead_grave> <a> : "À" agrave # LATIN CAPITAL LETTER A WITH GRAVE
Створення ~ / .XCompose файла
Файл Compose за замовчуванням, якщо ~/.XCompose
його немає, відсутній
/usr/share/X11/locale/$LANG/Compose
. Маючи власні ~/.XCompose
зміни заміни за замовчуванням, але ви все одно можете включити типові за допомогою:
include "%L"
Зміни в будь-якому файлі Compose набувають чинності при перезапуску програми. Вам не потрібно перезавантажувати X.
Складіть ключ
"Послідовність складання" - це натискання Composeклавіші, а потім один або кілька символів, щоб створити певний символ, наприклад:
<Multi_key> <quotedbl> <a> : "ä" adiaeresis
Означає, що натискання Compose, негайно супроводжується "і
aвиробляє ä
.
<Multi_key>
позначає, що ми використовуємо Composeключ. ми слідуємо цьому за списком однієї або декількох клавіш, вони повинні бути keysyms
символічними зображеннями клавіш, які використовує X (Див. розділ Ключі).
Слідом за ним :
, а за ним результат.
Результат:
<Multi_key> <a> : "ä" adiaeresis
<Multi_key> <b> <b> : "ä" adiaeresis
<Multi_key> <c> <c> <c> : "ä" adiaeresis
<Multi_key> Alt <d> : "ä" adiaeresis
<Multi_key> Ctrl <e> : "ä" adiaeresis
Примітка . Файл Compose відрізняється від регістру, тому A
він не такий, як a
.
Мертві ключі
ЗРОБИТИ
Зробіть його в GTK & Qt
Встановити змінні середовища GTK_IM_MODULE
& QT_IM_MODULE
на xim
.
Оболонка Борна:
# Make compose key work for GTK, Qt
export GTK_IM_MODULE=xim
export QT_IM_MODULE=xim
С оболонка:
# Make compose key work for GTK, Qt
setenv GTK_IM_MODULE xim
setenv QT_IM_MODULE xim
Дивись також
Моя ~/.XCompose
Це те, ~/.XCompose
що я використовую ; Я використовував сценарій для створення цього, але я випадково його перезаписав під час компіляції> _ <Тому мені потрібно його переписати.
Також врахуйте цей рядок:
<Multi_key> <i> <b> : "NL65AEGO0721647952"
Натискання Compose ibвставить цей рядок (випадковий тестовий номер IBAN); дуже корисний для тестування програм, де така кількість потрібна для створення якогось об'єкта (Person, Organisation); XCompose також може служити інструментом "фрагмент" :-)
Виноски
1: Деякі клавіатури UNIX мали виділений Composeключ ( наприклад, цей SUN ), але це досить рідко.
2: Залежно від існуючих налаштувань, це може бути, а може і не прочитане при запуску, залежно від конфігурації, додайте рядок xmodmap ~/.Xmodmap
до
~/.xinitrc
або ~/.xsession
;
також дивіться вікі ArchLinux .
3: Відтворено на вашу користь:
Position of Compose key
+------------------------------------------------------+
|Option Description |
+------------------------------------------------------+
|compose:ralt Right Alt |
|compose:lwin Left Win |
|compose:lwin-altgr 3rd level of Left Win |
|compose:rwin Right Win |
|compose:rwin-altgr 3rd level of Right Win |
|compose:menu Menu |
|compose:menu-altgr 3rd level of Menu |
|compose:lctrl Left Ctrl |
|compose:lctrl-altgr 3rd level of Left Ctrl |
|compose:rctrl Right Ctrl |
|compose:rctrl-altgr 3rd level of Right Ctrl |
|compose:caps Caps Lock |
|compose:caps-altgr 3rd level of Caps Lock |
|compose:102 <Less/Greater> |
|compose:102-altgr 3rd level of <Less/Greater> |
|compose:paus Pause |
|compose:prsc PrtSc |
|compose:sclk Scroll Lock |
+------------------------------------------------------+