![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Есть несколько способов добавить нужные символы на клавиатуру в Linux, однако их работоспособность варьируется в зависимости от дистрибутива, рабочего окружения и фазы Луны. Например, у меня Compose key так нормально и не заработал в русской раскладке (у кого-то он не работает в приложениях GTK и т.д.). Поэтому задача решалась простым дедовским способом.
Сначала в свойствах клавиатуры назначается клавиша для выбора третьего ряда (у меня это правая Win):

А потом редактируется файл по адресу
В блоке
ищем нужные строки, например:
и дописываем свой символ через запятую с пробелом (в данном случае длинное тире "—" на клавише с минусом и подчеркиванием):
Я изменил строки:
что дает следующие клавиатурные сочетания в русской раскладке:
RWin + Ё (лат. ~) = ѣ / RWin + Shift + Ё (лат. ~) = Ѣ
RWin + Й (лат. Q) = і / RWin + Shift + Й (лат. Q) = І
RWin + Ф (лат. A) = ѳ / RWin + Shift + Ф (лат. A) = Ѳ
RWin + И (лат. B) = ѵ / RWin + Shift + И (лат. B) = Ѵ
RWin + С (лат. C) = ©
RWin + Ж (лат. :) = «
RWin + Э (лат. ") = »
RWin + Р (лат. H) = ®
RWin + Т (лат. N) = ™
RWin + . (лат. .) = …
RWin + - (лат. -) = —
Смотрим на фазу Луны и перезагружаем компьютер.
Сначала в свойствах клавиатуры назначается клавиша для выбора третьего ряда (у меня это правая Win):

А потом редактируется файл по адресу
/usr/share/X11/xkb/symbols/ru
, куда вписываются нужные символы в кодировке Юникод (UXXXX) или по их названиям. Я назначил следующие: ѣ, і, ѳ, ѵ, ©, ®, ™, «, », —, …В блоке
partial hidden alphanumeric_keys
xkb_symbols "common" {
ищем нужные строки, например:
key { [ minus, underscore ] };
и дописываем свой символ через запятую с пробелом (в данном случае длинное тире "—" на клавише с минусом и подчеркиванием):
key { [ minus, underscore, emdash ] };
Я изменил строки:
key { [ minus, underscore, emdash ] };
key { [ Cyrillic_io, Cyrillic_IO, U0463, U0462 ] };
key { [ Cyrillic_shorti, Cyrillic_SHORTI, U0456, U0406 ] };
key { [ Cyrillic_ef, Cyrillic_EF, U0473, U0472 ] };
key { [ Cyrillic_er, Cyrillic_ER, registered ] };
key { [ Cyrillic_zhe, Cyrillic_ZHE, guillemotleft ] };
key { [ Cyrillic_e, Cyrillic_E, guillemotright ] };
key { [ Cyrillic_es, Cyrillic_ES, copyright ] };
key { [ Cyrillic_i, Cyrillic_I, U0475, U0474 ] };
key { [ Cyrillic_te, Cyrillic_TE, trademark ] };
что дает следующие клавиатурные сочетания в русской раскладке:
RWin + Ё (лат. ~) = ѣ / RWin + Shift + Ё (лат. ~) = Ѣ
RWin + Й (лат. Q) = і / RWin + Shift + Й (лат. Q) = І
RWin + Ф (лат. A) = ѳ / RWin + Shift + Ф (лат. A) = Ѳ
RWin + И (лат. B) = ѵ / RWin + Shift + И (лат. B) = Ѵ
RWin + С (лат. C) = ©
RWin + Ж (лат. :) = «
RWin + Э (лат. ") = »
RWin + Р (лат. H) = ®
RWin + Т (лат. N) = ™
RWin + . (лат. .) = …
RWin + - (лат. -) = —