LinuxOpen.ru > библиотека > Мой Linux часть 9

Мой Linux часть 9


3 марта 2008. Разместил: root
Немного теории:

В GNOME также есть утилита «Таблица символов», позволяющая отображать символы определённого блока или системы письма, и предоставляющая возможность поиска по названию или описанию символа.

МОЙ LINUX 9

МОЙ LINUX 9

Когда код нужного символа известен, его можно ввести в соответствии со стандартом ISO 14755:

При зажатых клавишах Ctrl и Shift ввести шестнадцатеричный код (в GNOME версии 2.15 или более поздней ввод кода нужно предварить нажатием клавиши «U»). Вводимый шестнадцатеричный код может иметь до 32 бит в длину, позволяя вводить любые символы Юникода без использования суррогатных пар.

Все приложения X Window, включая GNOME и KDE, поддерживают ввод при помощи клавиши Compose.

Для клавиатур, на которых нет отдельной клавиши Compose, для этой цели можно назначить любую клавишу — например, CapsLock или Win.

Консоль GNU/Linux также допускает ввод символа Юникода по его коду — для этого десятичный код символа нужно ввести цифрами расширенного блока клавиатуры при зажатой клавише Alt.

Можно вводить символы и по их шестнадцатеричному коду:

Для этого нужно зажать клавишу AltGr, и для ввода цифр A—F использовать клавиши расширенного блока клавиатуры от NumLock до Enter(по часовой стрелке).

Поддерживается также и ввод в соответствии с ISO 14755.

Для того, чтобы перечисленные способы могли работать, нужно включить юникодный режим консоли вызовом:

unicode_start

и выбрать подходящий шрифт вызовом:

setfont

Mozilla Firefox для Linux поддерживает ввод символов по ISO 14755.

Юникод

Материал из Википедии — свободной энциклопедии.

Как задавать произвольные Compose-последовательности.

МОЙ LINUX 9

В Linux(точнее в X Window System) есть потрясающее средство для ввода символов отсутствующих в установленной раскладке клавиатуры.

Это средство называется клавиша Compose.

С помощью неё можно вводить практически все варианты символов с акцентами, а также разные специальные символы.

Включить клавишу Compose можно там же, где настраивается клавиатура, то есть или в:

/etc/X11/xorg.conf


или в настройках клавиатуры рабочего стола.

Я удовлетворяюсь настройками клавиатуры Gnome.
Там я «подвесил» функцию Compose на правую клавишу Win:

МОЙ LINUX 9

Включить клавишу Compose можно также используя setxkbmap.

Следующая команда включает две раскладки (us и ru-winkeys), переключаемые по Alt+Shift, с клавишей Compose на месте правого Alt:

$ setxkbmap -layout us,ru -variant ',winkeys' -option 'grp:alt_shift_toggle,grp_led:scroll,compose:ralt'


После этого, стало возможным набирать много интересных символов, нажимая вначале клавишу Compose, а потом набирая ту или короткую иную последовательность.

Например:

Compose + O + C даёт © (символ авторского права),
Compose + O + R даёт ®,
Compose + = + e даёт € (знак евро),
Copmose + = + y даёт ¥ (знак йены),
Compose + - + - + - даёт — (тире, знак препинания),
Compose + - + - + . даёт –­ (короткое тире, разделитель диапазонов и фамилий)
Compose + < + < даёт « (левую кавычку-ёлочку),
Compose + > + > даёт » (правую кавычку-ёлочку),
Compose + " + , даёт „ (левую кавычку-лапку),
Compose + " + < даёт “ (правую кавычку-лапку),
Compose + пробел + пробел даёт неразрывный пробел.

С клавишей Compose очень легко набирать акценты и особые буквы европейских алфавитов, которые отсутствуют в моей обычной раскладке клавиатуры, но иногда нужны:

Compose + ' + a = á,
Compose + ` + a = à,
Compose + ^ + a = â,
Compose + " + a = ä,
Compose + ~ + a = ã,
Compose + * + a = å,
Compose + a + e = æ,
Copmose + s + s = ß.

Понятно, что вместо буквы «a» в примерах можно подставлять другие буквы.

Любопытствующие могут взглянуть полный список Compose-последовательностей:

http://webcvs.freedesktop.org/xorg/xc/nls/Compose/en_US.UTF-8?view=co


Если же вы пользуетесь преимущестенно GTK-приложениями, то установив метод ввода Latin Plus, вы заметно расширите возможности этой волшебной клавиши.
Вам станет доступен весь греческий алфавит, цифры в виде верхних и нижних индексов, знаки математических отношений, всевозможные стрелки и другие полезные символы... ♥!

Эти символы можно использовать где угодно:
в письмах, при наборе текста в веб, в простом тексте, ведь они входят во все стандартные unicode-шрифты.

В настоящий момент Compose-последовательности GTK-приложений отличаются от Compose-последовательностей, предоставляемых X.org.
Поэтому в разных приложениях возможно немного разное поведение клавиши Compose.

Использовать Latin Plus не обязательно, достаточно отредактировать файл:

~/.XCompose

Об этом и пойдёт речь.

1. Надо включить клавишу Compose (об этом написано вверху);

2. Маленькая хитрость. Вначале надо настроить систему так, чтобы библиотеки Qt и особенно GTK использовали метод ввода X Input Method(xim).

Для этого в Debian можно установить:

im-switch

запустить:

im-switch -c

и выбрать:

default-xim из списка

В других системах, видимо, надо присвоить переменным окружения GTK_IM_MODULE и QT_IM_MODULE значение xim.
Если этот шаг пропустить, все последующие настройки на GTK приложения распространяться не будут (они будут использовать свой метод ввода).
С Qt приложениями, если честно, я не экспериментировал, но видимо и они могут иметь отдельную настройку;

3. После этого можно создать в домашнем каталоге файл ~/.XCompose.

Первой его строчкой можно включить все стандартные комбинации клавиш:

include "/usr/share/X11/locale/en_US.UTF-8/Compose"

А затем можно и задать любые дополнительные последовательности:

по образцу как в /usr/share/X11/locale/en_US.UTF-8/Compose

Например:

: "…" U2026 # HORIZONTAL ELLIPSIS, многоточие
: "́" U0301 # ударение

Всё, в запускаемых теперь приложениях должны работать новые комбинации.

В частности, при нажатии Compose + точка + пробел будет набираться знак многоточия (который отличается от трёх точек), а если после буквы нажать Compose + два раза апостроф — над буквой появится знак ударения.

Таким образом можно вводить любые сиволы из уникодной таблицы (найти нужный символ поможет gnome-character-map).
Достаточно вставить этот символ в кавычки после описания последовательности.
Можно таким образом создавать целые клавиатурные макросы.

В частности, я попробовал повесить:


на сочетание Compose+a+h

Работает!!!

Желающие могут взглянуть на файл ~/.XCompose (кодировка UTF-8).
Там добавлены ещё немного математики и греческие буквы.

Теперь можно прямо в e-mail писать: «∀ε>0ѣ ∃δ>0 ∀x,|x-x₀|<δ : …» :)

МОЙ LINUX 9


Информация почерпнута из этих источников:

Жизнь на свободе:


http://sovety.blogspot.com/

International text support on Linux:

http://www.jw-stumpel.nl/stestu.html#T6.1

Compose key magic:

http://cyberborean.wordpress.com/2008/01/06/compose-key-magic/

Ввод символов :

http://sphinx.net.ru/blog/entry/unicode-input/

Ссылка на .XCompose, в котором есть дореволюционная буква «ѣ», довольно удобные кавычки для русской раскладки, башкирские буквы и набор разных стрелок (← → ↗ ↘ ⇐ ⇒ …):

http://shoorick.ru/lj/txt/dotXCompose_as

Пользователи Windows могут насладиться удобством Compose–последовательнстей, установив программку:

AllChars