Saturday, August 2, 2014

В поисках идеальной клавиатуры 3. Аккорды.

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



Это третья статья про клавиатуру.
Все статьи этой темы собраны тут: http://0x8d.blogspot.com/search/label/Klava

Мои почти полугодовые опыты с разными компоновками джойстико-клавиатур привели меня к мысли, что удобную и быструю клавиатуру таким способом не сделать.
  • Джойстик засунутый под ладонь заставляет двигаться всю руку, существенно замедляя набор.
  • Джойстик размещенный под каждым пальцем заставляет пальцы двигаться во всех направлениях,  что неестественно, и потому приводит к быстрой усталости и множественным ошибкам набора.
Оказалось, что пальцы любят двигаться вдоль своей оси. Сгибаться и разгибаться. При этом основное усилие они развивают на сгибании (Сюрприз :-).

Но мне все-таки хотелось чтобы на моей клвиатуре было по одной клавише на палец. Потому, что я по-прежнему считаю, что основные ошибки при наборе текста возникают из-за того, что пальцы не попадают по клавишам (ваш К.О.).

Пробема в том, что у нас всего десять пальцев, а символов на стандартной  клавиатуре около ста, и всем символам пальцев не хватит.

Решение есть: пусть каждый символ вводится аккордом - одновременным нажатием нескольких кнопок.




Не все символы одинаковые. В английском языке самые распространенные символы - AOTEISNH. Их будем вводить нажатием одной кнопки.
Следующие по распространенности символы PRLVBD  можно вводить нажатием двух расположенных рядом кнопок. И так далее.
Самые редко используемые буквы вводятся одновременным нажатием четырех кнопок.

При проектировании аккордной раскладки я сформулировал следующие принципы:
  • использовать ровно 10 клавиш.
  • должны вводиться все символы стандартной клавиатуры - алфавитно-цифровые, функциональные, клавиши навигации, регистровые,
  • непосредственно аккорд одного символа не должен задействовать одновременно две руки, но в переключении режимов, shift-alt-control это допустимо.
  • исключаются комбинации, которые неудобно нажимать.
  • никаких тяжелых модальных состояний (режимы работы сохраняются, пока удерживается клавиша).
Перебрав множество вариантов, я получил  такую раскладку:
Исходное состояние - алфавитный режим.

Четыре пальца правой руки (мизинец, безымянный, средний, указательный) вводят половину символов алфавита. четыре пальца левой руки отвечают за другую половину алфавита.
Примеры:
  • однократное нажатие среднего пальца левой руки вводит символ 'a'
  • одновременное нажатие среднего и указательного  - 'r'
  • чтобы ввести 'z' нужно нажать безымянным, мизинцем и указательным правой руки (самая редко использующаяся буква, самый сложный аккорд)
Цифровой режим.
Задействована только левая рука.
Удерживается кнопка под большим пальцем, остальные четыре пальца вводят цифры и символы, которые бывают слева на обычной клавиатуре.
Если просто нажать и отпустить большой пелец, введется цифра '0'.

Режим знаков препинания и скобок.
Задействована только правая рука.
Как и в цифровом режиме, при нажатом большом пальце, четыре остальных пальца вводят знаки препинания, скобки и разные символы, которые находятся в правой части обычной клавиатуры.
Сама кнопка большого пальца (если ее нажать и отпустить отдельно) вводит символ пробела.

Есть еще режим функциональных клавиш.

Они вводятся как цифры, левой рукой, но держать нажатым нужно большой палец правой руки.

И наконец стрелочный режим - задействована правая рука

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

Регистровые клавиши - shift, control, alt, windows.
Мне совсем не хотелось бы добавлять для них еще один ряд клавиш. Да это и не нужно:
Пусть указательные пальцы - левый и правый - будут отвечать за shift.
Например безымянный палец левой руки вводит символ "s".
Если нужна заглавная "S", удерживая  нажатым указательный палец правой руки, нажимаем кнопку мизинцем левой руки.
Таким образом для правой половины клавиатуры левая половина служит регистровыми кнопками, и наоборот.

Еще пример: просто нажав средним пальцем левой руки, мы получим символ "а". А если при этом удерживать кнопку средним пальцем правой руки, мы получим ctrl+a. Никогда еще ввод ctrl/shift/alt/win-комбинаций не был таким простым.

Proof of concept
Первый вариант аккордной клавиатуры был сделан из предыдущей джойстиковой простым изменением прошивки контроллера. Как говорит Сатору Ивата please take a look.
В этом видео:
  • последовательно вводятся символы EAIS.
  • аккордом из двух кнопок вводится символ R
  • из трех кнопок - W
  • потом вводится слово ELSE
  • и слово LEVEL
  • затем в цифровом режиме вводятся ряд цифр.
(извиняюсь за качество, снимал на ботинок)



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

No comments:

Post a Comment