Создаём свою «идеальную программерскую» раскладку или Недооценённый AltGr

в 10:21, , рубрики: дворак для программистов, для программистов, клавиатуры, комфорт, комфортная работа, Настольные компьютеры, периферия, Программирование, программисты, раскладка, раскладка клавиатуры

*Примечание: чтобы в полной мере ощутить все преимущества новой "ка́стомной" раскладки, необходимо уверенно владеть десятипальцевым слепым вводом (иначе последующие действия не имеют никакого смысла).

Что здесь написано?

  • Осуждение QWERTY

  • Немножко об альтернативных раскладках

  • На чём печатаю Я

  • AltGr (правый Alt) и что с ним можно сделать

  • MSKLC: собираем раскладку

Шаг №1: Выбор базовой раскладки клавиатуры

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

Немного отсебятины: Я, как и все, изучая десятипальцевый слепой ввод, печатал на всем знакомой QWERTY-раскладке. В процессе использования, испытывался лютый дискомфорт (возможно нас таких и не очень много): уставал левый указательный палец, правый безымянный и мизинец (даже несмотря на то, что P - далеко не самый частотный символ в английском языке). Также было замечено, что пальцы при печати сильно вытягиваются - как бы пытаются уйти подальше друг от друга.

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

Создаём свою «идеальную программерскую» раскладку или Недооценённый AltGr - 1

Вот здесь как раз всё встаёт на свои места: T находится довольно далеко от основной позиции пальцев, плюсом буквосочетания AT/TA, TE/ET, ST/TS, DT, CT, NU/UN, NI/IN, NO,ON заставляют пальцы вытягиваться. Также я отметил главную неприятную особенность QWERTY, о которой конечно-же многие знают - это то, что основным по нагрузке является на домашний, а верхний ряд. Про перегрузку левой или правой руки ничего говорить не буду, так как на планете есть как правши, так и левши, но для левшей у меня плохие новости: если посмотреть на клавиатуру, то можно заметить, что снизу вверх клавиши смещаются ВЛЕВО, что удобно лишь правой руке.

Что по альтернативным раскладкам?

Начнём с того, что разные раскладки проектировались по-разному и преследовали разные цели: наиболее развёрнуто, научно и точно рассказано в этом посте: О вопросах сравнения и оптимизации клавиатурных раскладок / Хабр (habr.com)

  • Dvorak: все гласные влево, максимальное чередование и минимизация использования нижнего ряда любой ценой -> повышение скорострельности.

  • Colemak/Workman: A влево, остальные гласные вправо, повышение эргономичности - расстояния, которые преодолевают пальцы при вводе текста, "Мы круче Dvorak'a!!!"

  • Capewell: нафиг чередования, даёшь эргономичность и идеальный межпальцевый баланс!

  • Carpalx: математические модели, системы штрафов, optimizing.

  • Minimak 4, 8, 12 keys: улучшаем QWERTY с минимальными усилиями!

  • ARENSITO: У вас есть Ergodox или Maltron? Тогда я к вам!!!

Лично я не смогу конкретно тебе порекомендовать одну, лучшую альтернативную раскладку, так как это дело очень индивидуальное, у всех по-разному развиты пальцы. К тому же в всех свои сильные и слабые стороны, а такое разнообразие раскладок даёт возможность сделать лучший выбор для себя самого. Но если уж совсем лень выбирать, можно обратить внимание на Comelak или Workman - они более универсальны.

Что бы там не говорили про то, что альтернативные раскладки нисколько не быстрее стандартной QWERTY, что на 99% правда, фактом является то, что люди переходящие на подобный раскладки идут на этот "трудный в освоении" шаг ради комфорта, а не скорости. Комфорт - это не пустой звук, я сам через это прошёл и очень доволен результатом, да в некоторых программах Ctrl+C и Ctrl+V приходится нажимать не как в QWERTY, но что мешает вводить комбинации двумя руками??? Верно, ничего не мешает.

К чему пришёл Я???

За основу я взял раскладку Dvorak, модифицированный Capewell'ом - Capewell-Dvorak, в котором символ L больше не нажимается правым мизинцем, что очень здорово. Я заметил, что клавишу N в QWERTY мне очень легко нажимается (вспоминаем как смещены символы в нижнем ряду) и там как раз поставили L, да и в принципе, раскладка вышла неплохая. Но, как вы поняли, и здесь есть маленький изьян, из-за которого пришлось немного откатиться к классическому Dvorak'у, а именно ZXCV,а точнее символ C (такое можно простить только Colemak/Workman и Carpalx'у, ибо гласные и K находятся справа, но не в этом случае)

Создаём свою «идеальную программерскую» раскладку или Недооценённый AltGr - 2

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

Создаём свою «идеальную программерскую» раскладку или Недооценённый AltGr - 3

Шаг №2: Ставим всё необходимое на базу

Кто-то может возразить насчёт "программерской" клавиатуры, ибо уже есть Dvorak programmer. Да, он есть, но все спец-символы находятся в верхнем ряду. В то же время хочется нажимать все основные программерские символы в домашнем ряду, чем Dvorak programmer порадовать не может.

Я же предлагаю использовать AltGr (почти Ctrl+Alt, ибо AltGr+Del не работает как Ctrl+Alt+Del, то есть не работает) он же правый Alt, работает как Shift, точнее создаёт новый "чистый" слой клавиш, в который можно засунуть ещё кучу символов. Однако отмечу, что нужно научиться нажимать AltGr только правым мизинцем, тогда никаких проблем в его использовании не возникнет. Также я заметил, что почему-то на правый Alt стараются частотные символы не заводить, даже в домашний ряд, ограничиваясь диакритическими знаками, математическими знаками и греческим алфавитом. Скорее всего, это объясняется некоторой сложностью в использовании AltGr, а именно неправильное нажимание неправильным пальцем.

Теперь открываем блокнот и переписываем все спец-символы, чтобы не забыть: все скобки, кавычки, апостро́фы, звёздочки, амперса́нды, собачки, или даже диакритические знаки!

Агась, базовая раскладка есть, спец-символы не забыли, теперь можно приступать с сборке нашей супер-раскладки. Отрываем MSKLC (да-да, я Winдузятник) и вбиваем свои символы, не забывая всё проверять и тестировать. Перед сборкой очень рекомендую везде понажимать и посмотреть, какие функции содержит MSKLC, что такое Dead Key, как провести тест (там всё очень просто).

Создаём свою «идеальную программерскую» раскладку или Недооценённый AltGr - 4

Жмём Shift и прописываем, что будет вводиться при зажатом Shift'е, большие буквы и стандартный спец-символы. Ещё можно предусмотреть спец-символы на месте точки и запятой (у меня это ! и =).

Создаём свою «идеальную программерскую» раскладку или Недооценённый AltGr - 5

Теперь то, ради чего мы здесь собрались: AltGr!!! (не забудьте убрать галочку с Shift, иначе символы будут вводиться не с AltGr, а с AltGr+Shift, на которую (если это кому-то нужно) можно поставить цифры или даже шаблонные тексты)

Я расположил спец-символы следующим образом: слева - все виды скобок, справа - операторы и другие спец-символы. Самые частотные из них находятся в домашнем ряду, что упрощает их ввод. Вверху я расположил комбинируемые диакритические знаки "на все случаи жизни".

Создаём свою «идеальную программерскую» раскладку или Недооценённый AltGr - 6

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

Создаём свою «идеальную программерскую» раскладку или Недооценённый AltGr - 7

Ура, вы расставили все клавиши так, как вам нужно, теперь осталось всё это добро собрать и установить на компьютер: открываем Project -> Properties, будем свойства задавать

Создаём свою «идеальную программерскую» раскладку или Недооценённый AltGr - 8

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

Создаём свою «идеальную программерскую» раскладку или Недооценённый AltGr - 9
Создаём свою «идеальную программерскую» раскладку или Недооценённый AltGr - 10

После того как всё введено, жмём "Build DLL and Setup Package", после успешной установки перезагружаем ПК и радуемся новой установленной раскладке (старую можно удалить в настройках).

В итоге получается максимально комфортная раскладка, при кодинге в которой нужно делать минимальные пальцедвижения для ввода кода, скобок, операторов, тэгов и прочего (смотря на чём вы кодите)

Создаём свою «идеальную программерскую» раскладку или Недооценённый AltGr - 11

Подытожим: для идеальной раскладки необходимо:

  1. Идеальная базовая раскладка

  2. Удобно расставленные спец-символы

  3. Программа MSKLC

  4. Много практики (если не печатаете на альтернативной раскладке)

Автор: Лев Сергеевич Шумилов

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js