Благодаря начинаниям широко известного в узких кругах ibnteo (Вольки) задумался о разработке концепции эргономичной клавиатуры, удобной не только для набора текста, а и для полного управления компьютером (ага, люблю использовать в программах так называемые «горячие клавиши» — из-за них даже фотошоп использую англоязычный, да и «страшная синяя программа» FAR — это основной мой рабочий инструмент, им и файлы «гоняю», и просматриваю, и «запускаю» документы).
В стандартных компьютерных клавиатурах меня не устраивает прежде всего диагональное смещение клавиш, унаследованное от механических печатных машинок (там в этом, по утверждениям, была необходимость — хотя, были пишмашинки и без этого смещения). Затем, конечно же, хотелось, чтобы при работе не было необходимости переносить руки между функциональными «зонами» клавиатуры (основное поле, поле навигации и редактирования, цифровой блок, функциональные клавиши).
Ну и «на закуску»: неудобно расположены «шифты» (так я называю «одним словом» клавиши-модификаторы Ctrl, Shift, Alt и Win) — когда работаешь на клавиатуре двумя руками, то достаточно удобно, если привыкнуть, жать «шифты» одной рукой (но, всё равно, приходится «снимать» эту руку с основной позиции), а «горячую клавишу» — другой (а копи-паст — Shift+Ins, Ctrl+Ins и Shift+Del), но, когда в другой руке (в правой — я «правша») находится мышка, да не просто «находится», а ею активно работаешь — нажать «одной левой» горячую клавишу в сочетании с модификаторами — це́лая проблема (даже простейшие Ctrl+Z, Ctrl+X, Ctrl+C и Ctrl+V), я начинал работать с компьютерами давно и привык нажимать Ctrl больши́м пальцем, а ZXCV — указательным (ну непривычно мне Ctrl жать мизинцем! он слабый и неуклюжий!)…
Частично проблема, скажем, ввода цифр левой рукой была решена программно для стандартной клавиатуры (кстати, довольно удобно — сам удивился, насколько!). Проблема управления текстовым курсором с основного текстового поля клавиатуры, не отрывая рук от «основной позиции слепой печати» (частично, сочетания «стрелок» с Shift и Ctrl так и не сделал) — тоже проработана. Но, конечно же, это всё были «полумеры»…
Даже рассматривался вариант (в основном, теоретически) добавления двух клавиш Fn — одной после левого Alt, «за счёт пробела» (ибо давить большим пальцем Alt на стандартной клавиатуре всё же несколько утомительно, приходится его «подгибать» под ладонь), и второй ниже пробела:
В конце концов пришло осознание, что Волькина идея насчёт модификаторов на больших пальцах обеих рук — это гениально, ибо они достаточно сильные, чтобы длительно удерживать модификаторы при необходимости (да-да, от режимов — ибо великий и ужасный Джеф Раскин утверждает, что «режимы = зло», а ему приходится верить! — CapsLock и NumLock было решено отказаться, а режим ScrollLock вообще во внимание не принимался, т. к. практически никто из пользователей не знает, для чего нужна «эта кнопка», а те, кто знает — и я в том числе — затрудняются придумать, для чего можно практически использовать этот режим, я, к примеру, на стандартной клавиатуре вызываю ею калькулятор), и, в силу того, что противолежат остальным пальцам, а также управляются отдельными мышцами и сухожилиями — достаточно подвижны, чтобы при фиксации ими кнопки остальные пальцы не испытывали затруднений при «слепой печати». Практически же большинство людей, владеющих «слепым десятипальцевым методом печати» используют один большой палец правой руки для нажатия пробела, что следует признать расточительством (Переборыч вон, когда задействовал большие пальцы для печати букв, даже назвал это «12-пальцевым методом»).
Так же была сделана попытка (которая — не пытка) учесть физиологию: ведь четыре «печатающих» пальца гораздо лучше работают «на сгибание-разгибание» (причём на разгибание — дальше), чем «по-диагонали», а большие — как раз «в сторону» (по дуге). В то же время указательные могут слегка отгибаться «внутрь» (обслуживая два ряда), а мизинцы — отгибаются «наружу» гораздо свободнее, без особых проблем «управляясь» с тремя рядами (хотя, в моём варианте, третий ряд неполный, т. к. до крайних кнопок «полного» третьего ряда мизинец дотягивается с трудом).
С расположением клавиш вопросов не возникало — безусловно, ровными «вертикальными» рядами, чтобы не «гнуть» пальцы «под себя»! Также, в процессе «прикидок» пришло «осознание №2» — пальцы-то разной длины, значит ряды для каждого пальца следует сдвинуть «по-вертикали» в соответствии с длиной пальца, чтобы в основной позиции пальцы не были напряжены. Дальше было совсем просто — на плоскость налеплен двухсторонний скотч, и на эту липкую поверхность «смакетированы» колпачки от компьютерной клавиатуры, при этом проверялось удобство «доставания», соответствие положения рядов длине пальцев и доступность клавиш («лишние», неудобные — до которых далеко тянуться либо «не гнутся пальцы» — колпачки были безжалостно сняты с макета, кстати, оказалось, что средний палец отдельно от других плохо гнётся вниз, но буквы С и Б всё-же нужны, так что пока замнём для ясности).
Сразу скажу, что «рабочая» клавиатура была «на живую нитку» собрана из механических переключателей (оказались «крутые» Alps Green) от старой 286-й клавы навесным (проволочным) монтажом, контроллер также был использован «оригинальный», от этой же клавы. Расположение основного поля клавиш, как ни странно, сразу оказалось достаточно удобным (неудивительно: в интернете можно найти множество разработок с похожим расположением клавиш, значит, общий принцип выбран правильно), расположение и «изгиб» «дуг» клавиш для больших пальцев было несколько раз пересмотрены.
Пока что, после долгих неспешных экспериментов получилась вот такая раскладка.
Так как мне (вот чудо-то!) чаще приходится работать с русским языком, то, естественно, его раскладка и стала основной. Латинская же была взята так называемая «фонетическая» (собственно, это не моё изобретение, она была широко известна во времена́ «советских» компьютеров под кодовым названием “JCUKEN”) — русскоязычным пользователям, безусловно, нет никакой необходимости изучать «вражескую» раскладку, вполне достаточно адаптировать «и́хнюю» к «нашей». Таким образом, русские буквы на получившемся количестве клавиш были размещены по принципу «одна буква — одна клавиша», за исключением «многострадальной» буквы «Ё» (поскольку она и сама достаточно редкая, и употреблять её обязательно только в ещё более редких случаях), и заодно с ней — буквы «Ъ», «в пользу» запятой и точки, которые всяко чаще встречаются в тексте. Следует заметить, что так называемая «трагедия запятой» перестала доставлять мне какие-либо неудобства ровно с того момента, когда я «открыл» для себя программы для изменения раскладок клавиатуры в Windows XP и даже чуть раньше, когда в Windows-95 (кажется) я HEX-редактором «обменял» точку на запятую. Получилось где-то даже логично — запятая вводится часто, но «внутри» предложения, а точка (с шифтом!) завершает предложение (и мысль) эдаким «аккордом».
Строго говоря, я печатаю слепым методом ещё с 90-х годов «того» века: обучался на самодельной клавиатуре самодельного компьютера «Специалист» по книжке о машинописи — и, что характерно, сделал ту клавиатуру не с ровными, а со сдвинутыми рядами «потому что так положено!» (причём нюанс о сдвиге рядов «на пол-четверть-пол-клавиши» прошёл мимо меня как несущественный), «умел», естественно, и JCUKEN, а на «Спектруме» — и ЯВЕРТЫ, много лет «умею» ЙЦУКЕН и QWERTY (для программирования), так что удобство «слепой печати» для меня не каприз, а насущная необходимость, ибо печатать «зрячим способом» не умею уже.
Кстати, изначально, естественно, хотел «засунуть» буквы Ё и Ъ в AltGr-слой, он поддерживается (вроде бы) «вендой» и программами для изменения раскладок. Но, оказалось (ну, в микрософте всё через … гланды), что, если в раскладке существует этот са́мый слой, то правый Alt «отрабатывается» некорректно, видимо, система «сама» при его нажатии генерирует его отпускание, затем нажатие какой-то другой клавиши, и так каждый раз, т. е., получается, постоянный вызов меню в программах…
В процессе размышлений (с написанием программ для «вычисления» «частоты букв» на различных диалектах языка «Васик»), самостоятельно (начиная с тех же 90-х годов прошлого века, ага, вместо «разборок» — «ботаничил» с компьютером) и в содружестве с Волькой (в последнее время), было установлено, что стандартная для русского языка раскладка ЙЦУКЕН достаточно неплоха́ как с точки зрения частоты использования букв (расположенных в основной позиции «слепой печати»), так и с точки зрения распределения нагрузки на пальцы (которая почти монотонно «спада́ет» от указательных пальцев к мизинцам), к тому же она стандартна, так что, большинству пользователей не придётся переучиваться. Отсюда естественно вытекает логичность её использования как основы раскладки новой клавиатуры, хотя всё же были сделаны две перестановки — «обменяны» местами буквы Ф<=>Я и Е<=>Ы, чтобы более частые Я и Е оказались на основной позиции.
В силу уменьшения количества клавиш, «закреплённых» за правым мизинцем, и «расширения зоны обслуживания» левого мизинца, буква Э поставлена слева над кнопкой BackSpace (бывший CapsLock).
Таким образом, новая раскладка «звучит» как ЙЦУКЫН (что-то среднеазиатское?) или, по второму ряду — ЯЕВАПРО.
Хочу сказать, что замечательную во многих отношениях раскладку «Русская машинопись» (с её «препинаками» без шифта) я так и не «принял душой», очевидно, потому, что латинская всегда давала как раз цифры вводить без шифта, а всякие значки́ — с шифтом (и, кстати, я так и не «затвердил» для себя, какой регистр букв считается «верхним», а какой — «нижним»). Так что в среде MS-DOS я всегда применял (самодельный) аналог «машинописи» с «препинаками через шифт».
Поскольку клавиатура на этот раз замыслилась «революционная», то с учётом предыдущего опыта (фи́га, 15 лет «наборщиком на все руки» в типографии — не шутка!) было решено «развести» цифры и знаки препинания не только по разным «кнопочкам», но и, с учётом «сокращённости» клавиатуры — по разным так называемым «слоям» (регистрам). Таким образом, «цифровой ряд» освободился для двух «комплектов» значков — без шифта и с ним (четыре «горизонтальных» ряда клавиш — диктуются по бо́льшей части доступностью [для пальцев] колпачков клавиш стандартного размера <19 мм> из «основной позиции» на «плоской» клавиатуре {в «задумках» — и «объёмная», по типу Kinessis'а}, ну и немного — традицией, а также необходимостью иметь в «быстром доступе» не только весь алфавит, но и наиболее частоиспользуемые знаки препинания).
И, безусловно, знаки препинания обязаны быть расположены строго одинаково в обеих раскладках (рус и лат), на месте же тех русских букв, которым «не хватило» соответствующих латинских, разместил в латинском регистре типично «иностранные» и «программистские» значки́, такие как “anglijskie” кавычки и <#&|>.
Кстати, здесь проиллюстрировано ещё одно достоинство фонетической раскладки — при печати «не тем языком» получается ne abrakadabra, a (po<ti) transkripciq…
Цифры же расположились под основной позицией правой и левой рук аналогично «цифровому блоку» стандартной клавиатуры (NumPad'у) и как «телефонная клавиатура» соответственно. Второе расположение было успешно протестировано в работе с программой Alt_Left_Num, ссылка на которую была дана выше, об оптимальности первого расскажут бухгалтера́ (хотя, мало кто из них работает на нум-паде «слепым методом»).
Функциональные клавиши F1-10 предварительно «положим» туда же, где «уложили» цифры — получаем их и справа, и слева для удобства, a F11-F12 — где-нибудь рядом (тут возникает как раз одна из проблем, упомянутых в названии статьи, к ним вернёмся позже).
«Стрелки» курсора, безусловно, следует «иметь под рукой», на основной позиции, причём тоже и справа, и слева (такое расположение «обкатано» в программе Win_Arrows, где и подтвердило свою жизнеспособность). Здесь же, поблизости, располагаем и остальные клавиши управления текстовым курсором: Home, End, PageUp, PageDown, Ins и Del.
Возможны варианты размещения этого блока клавиш (рассмотрим для простоты правый блок):
— стрелки располагаем в виде «перевёрнутой буквы Т» (курсорный крест) на буквах ШОЛД, Home и End — слева и справа от «стрелки вверх» (ГЩ), PgUp и PgDn — под мизинцем, на буквах ЗЖ, Ins и Del внизу, соответственно под указательным и безымянным пальцами (ЬЮ), а внизу под средним пальцем (Б) можно разместить кнопку, на которой (на стандартном NumPad'е) нарисована цифра 5 и больше ничего (её ещё обозначают словом “Empty”) — она также с огромной пользой используется в FAR'е;
— стрелки ставим так, как они расположены на NumPad'е, на буквах ШОДБ, посередине ставим 5 (Empty), а Home, End и «пэйджи» — опять-таки, аналогично NumPad'у, на буквах ЩЮ.
С левым блоком «стрелок» — аналогичная ситуация.
Для сокращения «тянучести» правого мизинца клавиша Enter поставлена непосредственно справа от буквы Ж (правый мизинец в основной позиции), а клавиша BackSpace — слева от буквы Я (левый мизинец в основной позиции). Прямо под этими очень важными кнопками расположены клавиши переключения языков (мне удобнее включать слева латиницу, а справа — кириллицу.
На «периферии» клавиатуры, на самом дальнем «краю» (в третьем неполном «мизинечном» ряду) расположены такие жёстко необходимые для повседневной работы клавиши, как Esc, Tab слева и Pause и PrintScreen справа, хотя, конечно же, никто не запрещает назначить им любые другие функции…
Ну и, типа, резюме: набирать на получившейся клавиатуре текст — удобно! Все буквы буквально «просятся под пальцы», особенно удачно произошел «обмен» букв Я и Ф.
С латинской раскладкой, конечно, приходится «задумываться», ибо навык работы на «советских» компьютерах утрачен чуть более, чем полностью.
Сочетания горячих клавиш с «контролом» теперь вообще не вызывают затруднений, жму теперь Ctrl+S для сохранения набранного текста (нажимаю часто, ибо привычка сформировалась в те времена́, когда компьютеры были «кассетными» — да даже когда они были 486-ми! — и могли «похерить» твою работу в любой момент просто по собственной прихоти), хотя на стандартной «клаве» всегда настраиваю горячую клавишу F2 для «сохранения». В то же время, некоторые программы, тот же Corel Draw, задействуют горячие клавиши с Ctrl с учётом раскладки (аффтары имеют запущенную форму мании величия, даже представить себе не могутЬ, что может быть «не QWERTY»).
«Гонять» курсор «стре́лками» — тоже удобно, только ещё программно не «отстроил» сочетания «стрелок» с шифтом и контролом…
Бэкспэйс под левым мизинцем — это вообще кайф, рекомендую назначить на стандартной клавиатуре вместо капслока как раз бэкспэйс и попробовать — не пожалеете! Притом, что я сделал на клавиатуре два «забоя» (так их называли «по-русски») — второй на «бывшей» цифре 6.
ТАКЖЕ НЕ ВЫЗЫВАЕТ ОСОБЫХ ПРОБЛЕМ НАПИСАНИЕ ТЕКСТА ЗАГЛАВНЫМИ БУКВАМИ (единственно, приходится «плясать» большим пальцем правой руки после каждого слова, нажимая пробел — ну, перенос Shift'а на очереди!). Хотя, в любом приличном текстовом редакторе (не говоря уже о текстовых процессорах) преобразование регистра букв — штатная операция.
И — вы себе не представляете, насколько удобно иметь «в быстром доступе» полный набор разнообразных кавычек и скобок! В связи с их «наличием» я отказался от использования в текстовых редакторах (и программах вёрстки в будущем) функции “типографские кавычки”, преобразующей «простые» кавычки в «типографские».
Есть и отдельные «ньюа́нсы», куда-ж без них…
К примеру, в конце предложения большой палец правой руки, опять-таки, «пляшет»: нажимается точка (с шифтом), затем нажимается пробел, затем — снова шифт, теперь уже для начала следующего предложения «с большой буквы»… Хотя, использую программу-скрипт на языке AHK для «залипания шифта́», т. е., удерживать шифт для написания одной заглавной буквы не нужно. Есть также мысль (а мысль убивать нельзя!) сделать также «залипание» и для Ctrl'а.
Возможно, следует ещё раз обдумать расположение клавиш, входящих в «ду́ги» для больших пальцев, к примеру, перенести Shift налево, на место теперешнего Ctrl.
В заключение, покажу ещё одну картинку, из Excel'я, там (почти) текущее состояние раскладок всех функций представленной клавиатуры (красные надписи — это вроде ToDo, не реализовано пока):
Теперь о проблемах (пока не решённых)…
Основная проблема, похоже, в малочисленности клавиш, входящих в «дуги». Ну не получается у меня изогнуть большие пальцы на угол, бо́льший размера четырёх кнопок (примерно 35 градусов от края до края «дуги»)! Сделать дуги в два ряда тоже для меня не вариант, т. к. некомфортно гнуть большие пальцы «внутрь ладони», «ближе к ладони» (второй ряд клавиш «внутри» дуги), и второй ряд «за дугой» тоже будет некомфортен…
Возможно, будет плодотворной идея «автоматического сдвигового зонирования», когда будет сдвигаться большой палец на «дугу внутри дуги» с одновременным сдвигом «основной позиции» пальцев на один ряд вниз, не знаю, эта идея ещё не «обкатывалась» (да и вообще это уже тема для совсем другой статьи).
В то же время, нужно, чтобы в «дугах» присутствовали все «шифты» (Ctrl, Shift, Alt и Win), так как они необходимы для управления программами в «Шиндошс» и пробел.
В связи с вышеизложенным, возникают как минимум ещё две крупных проблемы (не считая мелких):
— проблема F-клавиш. То, что функциональные клавиши «присутствуют» и под правой, и под левой руками — как бэ хорошо… Но вот уже нажать F-клавишу в сочетании с Ctrl, или, не дай Бог, с Ctrl+Shift (Ctrl+Alt) — уже нехилый такой акробатический номер (по крайней мере — для меня, ну некомфортно мне жать сразу по две кнопки сразу одним большим пальцем, а если они ещё и «не подряд» стоя́т? К тому же, «родной» контроллер, «добытый» из клавиатуры-донора, похоже, «совсем плохой» в плане нажатия нескольких кнопок (а я «поленился» сразу припаять последовательно с каждым переключателем диод, после первого испытания диоды поставил только на «дуги», хотя и после этого на «дугах» далеко не все кнопки можно жать «в любых комбинациях»). Пока «отмазался» тем, что с одной стороны F-клавиши нажимаются «чисто» и с Alt, а с другой — с Shift и Ctrl, с задействованием всего одного дополнительного модификатора;
— проблема цифр. При нажатии клавиши Fn с соответствующей стороны «под пальцами» в основной позиции оказываются как раз «стрелки», а цифры — на другой руке. Если работать только на клавиатуре, двумя руками, то как бы и проблемы-то нет. Но, при попытке ввести цифру одной рукой (как это у меня сделано программой Alt_Left_Num на стандартной клавиатуре) окажется, что это невозможно…
В любом случае: тема поднята (как говорил мой друг: гвоздь забит, теперь надо вытаскивать) и нуждается в дальнейшем развитии и обдумывании. Надеюсь, обсуждение будет плодотворным.
Автор: Steve_Key