Прокачиваем ru-раскладку в Linux. Добавляем спец символы { } [ ] < > @ # $ ^ & | ~ ` , которых нет в оригинальной русской раскладке. Всё под пальцами через правый Alt и правый Ctrl.
Кратко: патчим блок winkeys в файле /usr/share/X11/xkb/symbols/ru. Добавляем AltGr (правый Alt) и правый Ctrl как модификаторы. После перезагрузки { } [ ] < > @ # $ ^ & вводятся правым Alt, ~ и | — правым Ctrl. Обратный апостроф ` так же добавлен на комбинацию “ё” и правого Alt.
1. Резервная копия
Сохраняем копию оригинальной раскладки.
sudo cp /usr/share/X11/xkb/symbols/ru /usr/share/X11/xkb/symbols/ru.orig
2. Открыть файл
sudo nano /usr/share/X11/xkb/symbols/ru
Сохранить: Ctrl+S. Выйти: Ctrl+X.
3. Найти блок winkeys
В файле несколько вариантов раскладки. Нас интересует winkeys — «Russian (Windows)», выбираемый по умолчанию. Он находится в самом начале:
// Windows layout default partial alphanumeric_keys xkb_symbols "winkeys" { include "ru(common)" name[Group1]= "Russian"; key <AE03> {[ 3, numerosign ]}; ... key <BKSL> {[ backslash, slash ]}; };
4. Заменить блок winkeys целиком
// Windows layout default partial alphanumeric_keys xkb_symbols "winkeys" { include "ru(common)" name[Group1]= "Russian"; key <AE03> {[ 3, numerosign ]}; key <AE04> {[ 4, semicolon ]}; key <AE05> {[ 5, percent ]}; key <AE06> {[ 6, colon ]}; key <AE07> {[ 7, question ]}; key <AE08> {[ 8, asterisk, U20BD ]}; // ruble key <AB10> {[ period, comma ]}; key <BKSL> {[ backslash, slash ]}; // --- фигурные скобки на AltGr: х → {, ъ → } --- key <AD11> { type[Group1] = "FOUR_LEVEL", symbols[Group1] = [ Cyrillic_ha, Cyrillic_HA, braceleft, braceleft ] }; key <AD12> { type[Group1] = "FOUR_LEVEL", symbols[Group1] = [ Cyrillic_hardsign, Cyrillic_HARDSIGN, braceright, braceright ] }; // --- квадратные скобки на AltGr: ш → [, щ → ] --- key <AD08> { type[Group1] = "FOUR_LEVEL", symbols[Group1] = [ Cyrillic_sha, Cyrillic_SHA, bracketleft, bracketleft ] }; key <AD09> { type[Group1] = "FOUR_LEVEL", symbols[Group1] = [ Cyrillic_shcha, Cyrillic_SHCHA, bracketright, bracketright ] }; // --- угловые скобки на AltGr: б → <, ю → > --- key <AB08> { type[Group1] = "FOUR_LEVEL", symbols[Group1] = [ Cyrillic_be, Cyrillic_BE, less, less ] }; key <AB09> { type[Group1] = "FOUR_LEVEL", symbols[Group1] = [ Cyrillic_yu, Cyrillic_YU, greater, greater ] }; // --- дополнительные символы на AltGr --- // @ на "2" (цифровой ряд) key <AE02> { type[Group1] = "FOUR_LEVEL", symbols[Group1] = [ 2, quotedbl, at, at ] }; // # на "3" key <AE03> { type[Group1] = "FOUR_LEVEL", symbols[Group1] = [ 3, numerosign, numbersign, numbersign ] }; // $ на "4" key <AE04> { type[Group1] = "FOUR_LEVEL", symbols[Group1] = [ 4, semicolon, dollar, dollar ] }; // ^ на "6" key <AE06> { type[Group1] = "FOUR_LEVEL", symbols[Group1] = [ 6, colon, asciicircum, asciicircum ] }; // & на "7" key <AE07> { type[Group1] = "FOUR_LEVEL", symbols[Group1] = [ 7, question, ampersand, ampersand ] }; // ` (обратный апостроф) на "ё" (клавиша с тильдой) key <TLDE> { type[Group1] = "FOUR_LEVEL", symbols[Group1] = [ Cyrillic_io, Cyrillic_IO, grave, grave ] }; // ` (тильда) на Right Ctrl + ё key <TLDE> { type[Group1] = "EIGHT_LEVEL", symbols[Group1] = [ Cyrillic_io, Cyrillic_IO, grave, grave, asciitilde, asciitilde, NoSymbol, NoSymbol ] }; // | (вертикальная черта) на Right Ctrl + клавиша под Backspace key <BKSL> { type[Group1] = "EIGHT_LEVEL", symbols[Group1] = [ backslash, slash, backslash, slash, bar, bar, NoSymbol, NoSymbol ] }; include "level3(ralt_switch)" include "level5(rctrl_switch)" };
5. Перезагрузка
sudo reboot
6. Таблица добавленных комбинаций
Клавиша |
Правый Alt (AltGr) |
Правый Ctrl |
|---|---|---|
2 |
@ |
|
3 |
# |
|
4 |
$ |
|
6 |
^ |
|
7 |
& |
|
ш |
[ |
|
щ |
] |
|
х |
{ |
|
ъ |
} |
|
б |
< |
|
ю |
> |
|
ё |
` |
~ |
\ |
\ |
| |
7. Пояснения
Квадратные скобки добавлены на ш и щ в силу того, что данные клавиши визуально воспринимаются как сдвоенная пара, наравне с 9 и 0, или же х и ъ.
Обратный апостроф ` редко используется, но применим на хабре для выделения блоков кода в статьях или комментариях.
alexs963
Я использую типографскую раскладку, там на русском есть { } [ ] < > | ` $ &. А «@ # ^ ~» получаю через rAlt+shift — временное переключение на английский, по удержанию rAlt.
upd. Вернее раскладка инженерная с включенным третьим рядом по «menu».
artrades Автор
Если это оно - https://www.opennet.ru/opennews/art.shtml?num=57776.
Я делал, чтобы минимизировать расхождения с тем, что нарисовано на стандартной клавиатуре. И с учётом своего опыта. По принципу «всё на своих местах» (не тащить же ноут на гравировку).
Что считаю удачным и пометил зелёным: ёлочки, валюты, параграф, знак копирайта, длинное тире.
Неудачным (красным): переезд тильды, переезд знака рубля (в Linux в оригинальном конфиге он на клавише 8), переезд квадратных скобок на клавиши «ж» и «э» - эти кнопки не воспринимаются мной как сгруппированная пара и ещё знаки препинания с них исчезли(а на клавиатуре они всё ещё нарисованы - и, думается, эти знаки препинания можно тоже сделать в русской раскладке).
Смешанное (жёлтым): квадратные скобки. В английской раскладке имело смысл убрать их с клавиш, занятых буквами. В русской же раскладке эти кнопки и так уже заняты буквами «х» и «ъ». Возможно, есть смысл разгрузить клавиши, отправив квадратные скобки на визуально сдвоенные «ш» и «щ».
Подход с единственной кнопкой-модификатором «menu» у меня не применим - тильду и обратный апостроф я оставляю на одной кнопке(чтоб были где обозначены изначально). При таком подходе придется задействовать две клавиши-модификатора.
artrades Автор
А если эта - https://ru.wikipedia.org/wiki/Типографская_раскладка_Ильи_Бирмана
Она типографская действительно.
alexs963
У меня стандартные конфиги кде, выбрана раскладка ручей, но по меню включается некая разновидность типографской раскладки, она слегка отличается от изображенной выше, например на Ф стоит только ударение, на В только °, на М ↓ и ◊ и т.д.
alexs963
.