LINUX.ORG.RU

Инженерная раскладка клавиатуры (Ручей)

 ,


4

2

Всем привет.

Клавиатурные раскладки появляются редко, тема достаточно специфическая и в новостях не встречается, поэтому хочу поделиться.

В релизе xkeyboard-config-2.36 (это Fedora 37, Arch, Gentoo) появилась русская инженерная раскладка «Ручей» (Ruchey).

Смысл раскладки в том, чтобы для кириллицы был полный набор спецсимволов. Магии, конечно не бывает и часть спецсимволов набирается с помощью правого Alt (AltGr). Зеркальная раскладка есть и для латиницы, которая имеет такое же расположение спецсимволов, а также включает в себя специфические русские символы «,»,₽,§,№.

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

Подробности с сайта:

  • Раскладок именно две: «Русская (инженерная, кириллица)» и «Русская (инженерная, латиница)».
  • Переключаются именно раскладки, а не языки ввода. Язык ввода один - Русский.
  • Полный набор спецсимволов как в кириллической, так и в латинской раскладке.
  • Большинство спецсимволов находятся на своих местах, но часть вынесена на третий уровень и набираются при зажатом правом Alt (AltGr).
  • Часть спецсимволов смещена для удобства набора программного кода.
  • Предусмотрено, чтобы пользователь не испытывал дискомфорт при использовании AltGr.

Ограничения, которые были заданы при разработке:

  • Буквы должны оставаться на своих местах, раскладка не решает проблему скорости набора.
  • Спецсимволы, по возможности, также должны находится на своих местах, но при этом необходимо обеспечить удобный набор часто встречаемых спецсимволов в коде.
  • Перенос спецсимволов должен компенсироваться их лёгким запоминанием.
  • Не должен страдать опыт набора методом «слепой печати».

На данный момент раскладка относится «экзотическим» и расположена «base.extras.xml». В KDE экзотические раскладки работают из коробки. Для Gnome необходимо выполнить команду «gsettings set org.gnome.desktop.input-sources show-all-sources true», чтобы увидеть экзотические раскладки в списке доступных.

По сути в этой раскладке можно писать технический текст на русском без переключений.

Например без переключений можно напечатать:

§ Решение
  если А > Б && С < Д, то СП = `{А,Б,С,Д}`

Сайт проекта на GitHub


Ответ на: комментарий от papin-aziat

У них священный ужас перед сторонними репами 😱😈

Я наверное неправильный дебианьшик. Сторонняя репа это конечно ужас, но не ужас-ужас-ужас)). Мне проще собрать мелкую софтину и закинуть ее в пакет.

einhander ★★★★★
()
Последнее исправление: einhander (всего исправлений: 1)
Ответ на: комментарий от den73

Вообще за ссылку спасибо, интересно было познакомиться. Про Эль 76 я книжку читал. Кстати, туда тему можно копипастнуть, может ребятам пригодиться.

mega_m
() автор топика
Ответ на: комментарий от den73

В ЯОСе я полностью контролирую всю клавиатуру

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

Я до такого ещё не дошел))

einhander ★★★★★
()
Ответ на: комментарий от einhander

Когда-то давно, когда приходилось патчить шрифты (cairo, fontconfig, что-то ещё) я пересобирал дебы, потом ушёл на федору и сама сборка деба запомнилась как ужас-ужас по сравнению с rpm.

papin-aziat ★★★★★
()

Вообще я думал, что будет проблема, если один язык ввода и несколько раскладок, что я просто не буду понимать какой ru сейчас активен латиница или кириллица, но нет и Gnome и Kde нормально отображают как: ru1, ru2.

Скриншот

mega_m
() автор топика
Последнее исправление: mega_m (всего исправлений: 1)
Ответ на: комментарий от papin-aziat

Сделать deb-пакет из готовой скомпилированной проги - не ужас, там не сильно сложнее чем tar czf. А вот делать по всем их правилам с deb-src пакетом - я не осилил например.

firkax ★★★★★
()
Ответ на: комментарий от papin-aziat

Когда-то давно, когда приходилось патчить шрифты

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

Можно просто открыть deb как архив и поменять файлы и запаковать обратно.

Если собирать программу с нуля то вместо make install пишется checkinstall и пакет уже под управлением apt.

Так же Федора мне сильно не понравилась невозможностью установить нужный пакет без интернет, так как нужно скачать вручную его зависимости. Synaptic в таком случае просто делает скрипт со списком url пакетов которые нужно скачать.

einhander ★★★★★
()
Ответ на: комментарий от firkax

А вот делать по всем их правилам с deb-src пакетом - я не осилил например.

У меня получалось, но я уже забыл как)) Там файловая организация немного запутанная, но тоже не сильно сложно, когда есть пример.

einhander ★★★★★
()
Ответ на: комментарий от den73

Была какая-то тема про печатные машинки, что раскладку делали, чтобы снизить вероятность залипания (когда одна буква падает, а вторую уже нажали), но не уверен насчёт русской раскладки. Или что-то в этом роде.

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

Ты уверен, что у тебя не синдром утёнка? В каком возрасте ты научился печатать на машинке и сколько тебе сейчас, если не секрет?

Печатать слепым методом научился в 17 лет, прошло около двадцати лет. Это что-то меняет?

… Ты уверен, что у тебя не синдром утёнка? …

Когда у тебя от набора большого количества текста определенным образом болит рука при вводе запятой в русской Microsoft’овской раскладке это «синдром утенка»?

И предвидя вопросы скажу что посадка была правильная с правильно расположенными клавиатурой и монитором.

Может у меня руки какие-то неправильные… =)

ex-kiev
()
Ответ на: комментарий от ex-kiev

Когда у тебя от набора большого количества текста определенным образом болит рука при вводе запятой в русской Microsoft’овской раскладке

Слушай, а как так, я тоже набираю всё «слепым методом». Запятая (она же точка), ведь под мизинец попадает без проблем. Мне в штатной US раскладке сложнее на запятую попасть. Может в клавиатуре дело?

mega_m
() автор топика
Ответ на: комментарий от einhander

Если собирать программу с нуля то вместо make install пишется checkinstall и пакет уже под управлением apt.

Это способ учесть артефакты установки в базе пакетного менеджера, но однозначно не способ собирать пакеты для последующего распространения.

firkax ★★★★★
()
Ответ на: комментарий от ex-kiev

Когда у тебя от набора большого количества текста определенным образом болит рука при вводе запятой в русской Microsoft’овской раскладке это «синдром утенка»?

Ну вообще навык, полученный в молодости, крепче заходит. Хотя может быть это и не тот случай. Если запятая, то да, она же на мизинец попадает. И главное backspace :)

den73 ★★★★★
()
Последнее исправление: den73 (всего исправлений: 1)
Ответ на: комментарий от Dog

А есть ли такая клавиатура? А что на счёт ноутбука?

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

И еще, насколько я понимаю, её требуется описать в «/usr/share/X11/xkb» и это затрётся первым же прилетевшим обновлением, а другого способа нет. Т.е. нужно добиться размещения раскладки в исходниках xkeyboard-config.

Короче кастом не вариант. Это только фан и светодиоды.

mega_m
() автор топика
Последнее исправление: mega_m (всего исправлений: 3)
Ответ на: комментарий от mega_m

Слушай, а как так, я тоже набираю всё «слепым методом». Запятая (она же точка), ведь под мизинец попадает без проблем.

Проблем с попаданием по точке-запятой(рус.) никогда не было. =) Хотя можно иногда промазать по левому Shift’у который необходим для ввода запятой. =)

Просто болит ладонь в районе мизинца правой руки.

… Мне в штатной US раскладке сложнее на запятую попасть. …

Никогда такой проблемы не испытывал.

… Может в клавиатуре дело?

Клавиатуры были разные, в том числе и ноутбучные, везде одно и тоже.

ex-kiev
()
Ответ на: комментарий от mega_m

Про ноуты не подумал. Да, на них актуально.

требуется описать в «/usr/share/X11/xkb» и это затрётся первым же прилетевшим обновлением

Да вроде не затирает, хотя не знаю, где конфиг, настраивал гуем.

Dog ★★★
()
Ответ на: комментарий от token_polyak

Две вещи: уродливый энтер, спецсимволы не на своих местах.

Спасибо огромное, никогда бы не подумал что можно так себе навредить на ровном месте!

Узкий левый Shift это то что мне очень мешает комфортно пользоваться клавиатурой. Еще очень неудобен маленький «Backspace», нажимаешь его вслепую, промахиваешься и вынужден искать его глазами и нажимать его уже два раза, что сильно снижает скорость печати.

ex-kiev
()
Ответ на: комментарий от ex-kiev

В статье по его ссылке узкого backspace нигде нет вроде. Хотя мне наоборот бы подошла клавиатура с узким backspace и стоящим на своём правильном месте «\|» (слева от backspace, я не знаю как эта раскладка называется но она была самая удобная). И разумеется, безо всякого мусора между шифтом и Z.

firkax ★★★★★
()
Ответ на: комментарий от another

grp:lctrl_lwin_rctrl_menu - LCtrl+Win - первая раскладка, RCtr+Menu - вторая. Этот вариант удобен тем, что можно мизинцем и безымянным пальцем правой и левой руки одним нажатием включать нужную раскладку.

Я тебе как автор lctrl_lwin_rctrl_menu говорю: LCtrl+LWin/RCtrl+Menu штука хорошая, но LCtrl/RCtrl — в два раза лучше, т. к. для включения раскладки нужно нажать одну клавишу, а не две.

Включать раскладки по Caps/Shift+Caps я пробовал, это тоже проигрывает LCtrl/RCtrl. Во-первых, одна из раскладок включается двумя клавишами, а не одной, а во-вторых, тут вступает в работу моторика: оба Caps и Shift+Caps нажимаются левой рукой, а LCtrl и RCtrl — разными, последнее легче усваивается и автоматизируется (хотя в этом я могу быть не объективен).

debugger ★★★★★
()
Ответ на: комментарий от debugger

LCtrl/RCtrl — в два раза лучше, т. к. для включения раскладки нужно нажать одну клавишу, а не две.

Вот ни разу не буду спорить, полностью согласен. Но я перед тем, как отправить пост попробовал включить grp:lctrl_rctrl_switch. Сломались хоткеи, завязанные на Ctrl. Увы.

another ★★★★★
()
Ответ на: комментарий от debugger

оба Caps и Shift+Caps нажимаются левой рукой, а LCtrl и RCtrl — разными, последнее легче усваивается и автоматизируется (хотя в этом я могу быть не объективен)

Объективен! Разное, есть разное, общее у них только то, что находятся в одном ряду, что в твоём таппере опять же поправимо без проблем, так что не надо быть профессором психологии, чтобы понять, что сделать удобнее уже невозможно, разве что ИИ будет делать всё за человека.

papin-aziat ★★★★★
()
Последнее исправление: papin-aziat (всего исправлений: 1)
Ответ на: комментарий от another

Вот ни разу не буду спорить, полностью согласен. Но я перед тем, как отправить пост попробовал включить grp:lctrl_rctrl_switch. Сломались хоткеи, завязанные на Ctrl. Увы.

Дудык, LCtrl/RCtrl ≠ grp:lctrl_rctrl_switch. LCtrl/RCtrl в голых иксах сделать невозможно† без потери функций Ctrl. Когда я писал про LCtrl/RCtrl я имел ввиду Таппер.

† Тут я не вполне уверен, т. к. я натыкался на странные патчи Муттера присланные из Убунты. Они там что-то не совсем понятное химичили с раскладками, из-за чего Таппер не работал. Вернее, Таппер работал, вызывал XkbLockGroup и менял раскладку, но патченый Муттер тут же менял её обратно на старую. Этот убунтовский патч откатывали в Федоре по моей жалобе, но потом, вроде бы, накатили обратно.

debugger ★★★★★
()
Ответ на: комментарий от mega_m

Короче кастом не вариант. Это только фан и светодиоды.

Ахинея. Ну и обнова приходить очень, очень редко.

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

Думать вообще полезно. MS испоганила русскую раскладку. Крутые пацаны используют для начала ru typewriter а потом свой кастом.

Oldboy
()
Ответ на: комментарий от debugger

а LCtrl и RCtrl — разными, последнее легче усваивается и автоматизируется (хотя в этом я могу быть не объективен).

Да, ты не объективен. При 45% клаве - правый ctrl делают Fn для слоя. Раскладки должны быть автоматизированы на любой ОС - win+space - можно двумя, можно одной.

Oldboy
()

////По сути в этой раскладке можно писать технический текст на русском без переключений.

А почему не настроить по-простому один «win» на постоянное переключение, а другой «win» на «пока нажата»?

mister_VA ★★
()
Ответ на: комментарий от Oldboy

в Xorg ты можешь всё.

А ты? Давай, покажи нам как сделать включение одной раскладки по LCtrl, второй по RCtrl и при этом чтоб функция Control сохранилась.

При 45% клаве - правый ctrl делают Fn для слоя.

Тот, кто выбирает 45% клаву а потом жалуется на отсутствие RCtrl — сам себе злобный буратино.

Раскладки должны быть автоматизированы на любой ОС - win+space - можно двумя, можно одной.

Win+Space — спасибо, кушайте сами. Мне ваш Win+Space даром не надо.

debugger ★★★★★
()
Ответ на: комментарий от debugger

Дудык, LCtrl/RCtrl ≠ grp:lctrl_rctrl_switch. LCtrl/RCtrl в голых иксах сделать невозможно† без потери функций Ctrl.

Я вот не могу понять, зачем придумали и реализовали эту опцию в иксах, если она не работает «бай дезайн». Есть люди, которые не используют Ctrl в качестве модификатора? Зачем им вообще клавиатура нужна?

another ★★★★★
()
Ответ на: комментарий от another

Я вот не могу понять, зачем придумали и реализовали эту опцию в иксах, если она не работает «бай дезайн». Есть люди, которые не используют Ctrl в качестве модификатора?

Ну хз. Могу предположить, что некоторые (емаксисты, например), функцию Control на клавишу Caps Lock вешают. Может быть, при таком раскладе всё работает (но я не проверял).

debugger ★★★★★
()
Ответ на: комментарий от Dark_SavanT

Ты имеешь в виду URL? Для этого надо перепахать движок PHPbb, на это ресурсов нет. Не более смешно, чем эта страничка: URL на английском, linux.org.ru - на английском, имена пользователей в латинице, но текст русский. Посмеёмся над ЛОРом тоже или только над моим URL-ом?

den73 ★★★★★
()
Последнее исправление: den73 (всего исправлений: 1)
Ответ на: комментарий от another

Я вот не могу понять, зачем придумали и реализовали эту опцию в иксах, если она не работает «бай дезайн».

Потому что есть xcape, который решает эту проблему. Уже второй раз пишу. Вот, например:

утилита xcape, позволяющая назначить модификатору второе действие. Так, что если он нажат в сочетании с какой-то буквенно-циферной клавишей, то он срабатывает как модификатор, а если он нажат и отпущен в одиночку — он срабатывает как-то по-другому, как мы захотим.

https://habr.com/ru/post/222285/

Как слышно, приём?

den73 ★★★★★
()
Последнее исправление: den73 (всего исправлений: 1)
Ответ на: комментарий от Oldboy

При 45% клаве - правый ctrl делают Fn для слоя.

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

papin-aziat ★★★★★
()
Ответ на: комментарий от den73

///Кнопка win в лубунте, к примеру, уже нагружена кучей функций.

Любой другой модификатор. Смысл в том, чтобы иметь 2 кнопки, одну на постоянное переключение, другую на пока нажата. И не дурить с программными раскладками, которые всё равно неудобны, если не полностью соответствуют физической.

mister_VA ★★
()
Ответ на: комментарий от einhander

Ну да, чуть-чуть лучше, но сделанный таким способом «пакет» это по сути тупо .tar.gz архив только с возможностью для dpkg запомнить список распакованных из него файлов. Для сборки нормального пакета можно использовать утилиту dpkg-deb (возиться с официальными правилами сборки deb-src при этом всё ещё не нужно).

Создаёшь некое $WORK/, в него собираешь прогу, так что бы получились $WORK/etc, $WORK/usr итд, создаёшь там же $WORK/DEBIAN с управляющими файлами (control, md5sums, conffiles, хуки postinst итд есл нужны), затем вызываешь

dpkg-deb --build $WORK/ $TARGET_DIR
после чего в директории $TARGET_DIR/ будет создан deb-пакет.

В отличие от checkinstall тут надо будет вручную заполнить метаданные, но это - никак не минус способа, а наоборот. checkinstall сам эти метаданные сгенерить принципиально не может, и вместо них там будут заглушки, а тут нормальный пакет.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)