Как работать в интернете без мыши
Согласно статистике, одним из наиболее часто заменяемых периферийных устройств персонального компьютера является мышь. Кроме того, у большинства моделей материнских плат сохранились разъемы PS/2, сиреневый – для клавиатуры, зеленый – для мыши. При отключении устройства из этого разъема и его повторном включении, в противовес USB, требуется перезагрузка операционной системы. Можно ли работать с компьютером без мыши, к примеру, его перезапустить или выключить? Да, можно.
Для использования персонального компьютера без мыши имеется несколько основных способов:
- работа с комбинациями клавиш (сочетания клавиш, «горячие» клавиши, «ускорители»);
- запуск эмулятора мыши с клавиатуры;
- использование «тач-панели» или «скролл-болла»;
- использование обработчика команд (для Windows 95 – 7), или «PowerShell» (для Windows 8 – 10);
- использование дополнительного программного обеспечения (программных оболочек, коммандеров, shell).
Используем Chrome без мыши
После перехода на Хром с Оперы мне не хватало одной вещи: использования браузера без мыши — передвижения по странице, переход по ссылкам и прочее. Часто, когда таскаю ноутбук, бывает необходимость работать без мыши. Увы, тачпаду на моем x350 далеко до «яблочного», поэтому становилось очень неудобно. В Опере такая возможность была доступна без плагинов путем указания горячих клавиш в системном меню. В качестве неравноценной замены использовал плагин Hotkeys.
Он позволял передвигаться по странице, вкладкам, истории, но нельзя было «бегать» по ссылкам, заголовкам.
И неожиданно наступило счастье — был найден плагин Key Binder, который, вносит в браузер многорежимный Vim-подобный подход к работе с браузером. На деле оказалось весьма удобное, многофункциональное, настраиваемое дополнение.
После установки плагин предлагает нам пройти маленький курс обучения на английском языке, в результате которого мы узнаем, что работа с клавиатурой ведется в 3х режимах, которые отображаются в панели:
B: режим навигации и управление формами
I: режим работы в текстовых полях
H: режим выделения и копирования текста
Режим навигации и управление формами
Этот режим включается по умолчанию или включается из других нажатием на Escape
Перемещение
Мы можем перемещаться по странице стандартным vim-способом: j-вниз на 10px, h-Вверх, k-влево, l-вправо. Можно до конца во все четыре стороны.
Ссылки и формы
Для перехода по ссылкам, нажатиям на кнопки и разные элементы форм есть универсальная клавиша «a» — которая выводит около всех видимых на экране активных элементов уникальные двух буквенные сочетания, напечатав которые производится действие. При этом сочетания удобны при использовании десяти пальцевого метода печати: ff, fj, fk, dk — то есть мизинцем нажимаем «a» и дальше указательными или средними пальцами добиваем команду.
Этот инновационный для меня подход понравился больше чем, в Опере, когда двумя клавишами мы передвигались по всем подряд ссылкам.
Для выпадающих списков — сверху нам выводятся все пункты с теми же двумя буквами
Для списков где можно выбрать несколько пунктов мы используем пробел.
Есть еще одна интересная возможность: Команда «A», которая позволяет переходить по ссылкам в виде текста (без тега A)
Строка адреса
При нажатии на «o» Открывается собственная строка адреса. Работает поиск в реальном времени. Перемещение между пунктами осуществляется с помощью Tab. Однако не хватает дополнительного поиска внутри сайта по Tab.
Режим работы в текстовых полях
В этот режим можно перейти либо с помощью уже знакомой клавиши «a», либо сочетанием g+i. Мы можем перемещаться между смежными текстовыми полями двойными последовательным нажатием сочетаний клавиш ctrl-x + ctrl+; и ctrl-x + ctrl -p
Самое интересное начинается в другом — можно работать с текстом без стрелок на клавиатуре: перемещаться, копировать/удалять строки/слова/буквы различными сочетаниями клавиш.
По документации здесь есть режим поиска, но у меня он почему-то не работал…
Режим выделения и копирования текста
После нажатия на «s», нам как и в режиме «a» выводятся сочетания клавиш ко всем абзацам и значимым элементам для быстрого перехода. Далее нажав «v» мы фиксируем первую точку для выделения текста и перемещая клавишами навигации (hjkl) мы выделяем нужный кусок. В конце у нас есть 3 варианта:
«v» — сбросить выделения для новой попытки
«y» — скопировать текст в буфер обмена
«o» — вставить текст в собственную строку адреса
Для выхода мы нажимаем Escape
Редактирование настроек
В настройках помимо просмотра всех стандартных клавиш, разработчик предоставил возможность редактирования всех клавиш в своеобразной консоли.
Сам формат простой:
bind/ubind <режимы> <клавиша> <назначаемая команда>
Сами клавиши указываются в формате <[клавиша модифактор-] клавиша>.
Можно использовать сочетания пары клавиш.
Для ctrl используется формат <c->, для alt — <m->.
Например:
bind b j [tab.scroll top:+50] говорит, что при на клавишу j в режиме перемещения мы сдвигаем окно на 50px (когда по-умолчанию всего 10).
bind i <c-z> [input.undo] — назначаем на ctrl-z отмену последнего действия в режиме редактирования текста
Так же можно задавать индивидуальные настройки и горячие клавиши для страниц по url.
Использование дополнительного программного обеспечения
Программные оболочки являются наследием эпохи дисковой операционной системы (DOS, MS-DOS). По сути, это графический интерфейс для обработчика команд. В современных системах в нем можно работать, как используя мышь, так и без нее. Рассмотрим основные возможности на примере «FAR Manager».
Шаг 1. Скачайте и установите программу на компьютер, следуя инструкции установщика.
Шаг 2. Запустите приложение с использованием соответствующего ярлыка.
На заметку! Для удобства программный интерфейс разделен на две части. Эти половины независимы друг от друга. В каждой из них Вы можете открыть собственную директорию и производить копирование, или сравнение файлов.
Шаг 2. Для раскрытия определенной директории на текущем жестком диске используйте кнопки навигации (стрелки дополнительной клавиатуры) и кнопкой «Ввод».
Важно! В каждой директории первым в списке идет символ «..», который соответствует выходу в каталог уровня выше, чем текущий. Например, на картинке изображен каталог «C:Program Files (x86)Far». По нажатию на символ «..» Вы попадете в каталог «C:Program Files (x86)». По повторному нажатию – в каталог «C:».
Шаг 3. Для смены диска в левой части экрана воспользуйтесь комбинацией «Alt+F1», в правой – «Alt+F2».
На заметку! Цифры в нижней части интерфейса соответствуют порядковому номеру функциональных клавиш (от «F1» до «F10») и описывают действие по комбинации «Alt+функциональная клавиша». Существуют русифицированные оболочки, но, на всякий случай, дадим описание действия ускорителей и горячих клавиш:
Шаг 4. Для выделения нескольких файлов/папок следует выделить нужную строку, зажать кнопку «Shift» и перейти на соседнюю строку. Наименование выделенного элемента изменяет свой цвет на желтый.
Важно! Программы, подобные FAR Manager существуют для каждой операционной системы, например, Commander для MAC, midnight commander для систем на базе Linux, Volkov commander для DOS и Windows. Создаются они по одному принципу, даже функциональное значение клавиш одинаково для всех.
Web без мышки
Наверное, все при взгляде на этот экран мысленно переносят обе руки на клавиатуру. Да, тут можно было навигироваться без мышки и это было быстро и хорошо! Многие до сих пор используют подобные менеджеры (Total commander, Far etc).
С другой стороны, почти на всех современных сайтах, порталах и решениях, построенных для веба, пользователь вынужден постоянно отрывать руки от клавиатуры, целиться мышкой в кнопку/иконку/поле, а затем опять возвращать руки на клавиатуру для ввода текста.
Как же достичь удобства навигации без мышки в вебе?
Большая часть продуктов, которые разрабатывает и внедряет наша компания, выходит на конечного пользователя. Операторы колл-центров, инженеры, менеджеры – все они работают с пользовательским интерфейсом «для внутреннего использования» – B2B интерфейсами. Возможность работы с системой с клавиатуры без использования мыши – важное требование в B2B интерфейсах. Почему?
- В первую очередь – скорость работы. Пользователю не нужно изменять положение рук и переключаться на мышку, напротив, у него есть мгновенный доступ к функциям.
- Пользователю сложнее сделать ошибку (нужно целиться в кнопку, а не в пиксель).
- Поддержка людей с ограниченными возможностями.
- Снижение нагрузки на глаза (многие функции можно выполнять вообще не смотря на монитор).
Такая навигация может выглядеть не «секси» и требовать больше времени на обучение, но бонусы от использования значительно превышают эти минусы.
Итак, задача
- с минимумом усилий позволить использовать весь функционал наших решений без мыши
- иметь возможность быстро адаптировать любые новые страницы для использования без мыши
- иметь возможность тонкой настройки навигации по АРМам для увеличения эффективности работы всех пользователей
- все это с минимальным воздействием на существующий код
Анализируем
- табуляция (tab)
- хоткеи (hotkeys)
- пространственная навигация (spatial)
- каретка (caret)
Табуляция
Табуляция — переход между элементами интерфейса с помощью клавиши tab (shift+tab).
- + поддержка по умолчанию во всех популярных браузерах
- - всего два направления (+shift)
- - ограниченные возможности конфигурации (ring).
Горячие клавиши
Горячие клавиши (в просторечии хоткеи) — сочетание клавиш, которое вызывает определённую функцию. Это позволяет упростить доступ к основным функциям системы. Всё больше сайтов начинают использовать хоткеи на свои страницах для доступа к самым востребованным функциям, среди них: Habrahabr, яндекс, гугл почта и другие. Но что делать, если функций много, и на каждой странице разные? Просто невозможно будет запомнить все хоткеи, а значит, использование не будет эффективным. Так же есть проблема контекста: когда на странице несколько таблиц и несколько кнопок save, например.
- + мгновенный вызов любой функции
- - требует обучения (запоминания сочетаний клавиш)
- - при большом количестве функций сложно запомнить сочетания (особенно если несколько страниц как у нас)
- + не нужно менять существующий код
- - только браузер Firefox
- - несколько кнопок save
- - никакой семантики, такие хоткеи сложно запомнить
- - на разных страницах одни и те же действия могут иметь разные хоткеи
Пространственная навигация
Когда элементы на веб страницах стали позиционировать с помощью css, навигация табом перестала справляться со своей задачей: курсор перескакивал по элементам дизайна в порядке их объявления в html документе, а не в том, в каком их видит пользователь. Тогда некоторые браузеры (Firefox, Opera) реализовали пространственную навигацию. Они позволяли пользователям использовать сочетания shift+стрелки для перемещения между элементами дизайна, причём следующий элемент определялся исходя из его фактического расположения на экране.
- + позволяет навигироваться по незнакомому интерфейсу
- + поддержка OOB в некоторых браузерах
- - поддержка не во всех браузерах
- - там, где поддержка есть, она включается опционально
- - нет стандарта сочетаний клавиш для переходов
Перемещение каретки
Особенность этого подхода в том, что курсор пользователя перемещается не только по элементам форм и ссылкам, а по всему содержимому страницы (как в ворде). Перемещаться можно, как и в пространственном подходе, в четырёх направлениях.
- + позволяет выделять, копировать фрагменты текста
- - сфокусирован на контенте, а не элементах управления
- - медленнее, чем пространственная навигация
Вышеприведенные решения as is нам не подходят из-за отсутствия поддержки во всех браузерах, в них отсутствует возможность тонкой настройки для конкретных страниц, а также хотелось бы, чтобы и хоткеи и пространственная навигация настраивались единообразно в одном месте.
Представляем Mouseless
Ключевыми особенностями Mouseless являются:
- простая конфигурация для всех страниц приложения, используя CSS селекторы
- работа во всех браузерах
- возможность тонкой настройки
- не конфликтует с существующими решениями
- хоткеи и пространственная навигация в одном флаконе
Принцип работы Mouseless
На рисунке показано разделение на блоки и подблоки.
Конфигурация каждого блока представляет из себя json объект, json объекты для всех блоков образуют конфигурацию страницы.
Пространственная навигация в данном случае является частным случаем хоткеев. Сводим к минимуму кол-во обязательных параметров конфигурации, базовая поддержка должна быть доступна с минимумом действий. Простейшая конфигурация:
На реальных кейсах расширяем базовую библиотеку:
- кольца. Чтобы навигироваться по списку вновь и вновь по кругу, нужно в блок добавить параметр ring: true
- элементы блока, получающие фокус по умолчанию: возможность указать элемент, который первым получает фокус при попадании в блок defaultChildIndex:2
- поддержка пользовательских функций: можно установить свою собственную функцию, которая будет вызвана по нажатию клавиш. new MouselessAction()
- работа с диалоговыми окнами (попапами): модальные окна работают в отдельном контексте, их конфигурация осуществляется независимо от основной
- сохранение/восстановление фокуса применяется в основном совместно с модальными окнами для приведения фокуса в состояние до открытия окна
- наследование ncKeyAction'ов, поддержка глобальных хоткеев: например, на странице есть несколько таблиц, у каждой кнопка save. Хотим, чтобы в любой ячейке таблицы можно было выполнить сохранение по хоткею (частный случай — глобальные хоткеи). Т.е. ncKeyAction, назначенные в родительском блоке, будут работать во всех дочерних:
Конфигурация блока на примере NavigationTree (раскрывающее дерево):
Теперь можно ходить по дереву стрелками вверх-вниз, открывать-закрывать ветки влево-вправо. Функции openNavTreeNode/closeNavTreeNode были написаны до внедрения Mouseless (были опубликованы как api к дереву).
Таким образом, даже в этом случае не пришлось писать новый код, обходимся простой конфигурацией.
CSS легко заменяется под любую тему, достаточно описать правила для подсветки активируемых элементов и активного. Можно добавить свои, более сложные, для конкретных блоков или элементов.
Итого
Внедрив Mouseless в наши решения мы получили библиотеку, которая позволяет обеспечить быструю базовую поддержку навигации с клавиатуры, с одной стороны, и глубокую настройку для достижения максимальной эффективности и удобства использования, с другой.
Работа в этом направлении не закончена, будем продолжать, ждём реакцию сообщества.
Использование «тач-панели» или «скролл-болла»
«Тач-панель» – устройство для работы с курсором. Самым ярким представителем использования «тач-панели» является смартфон, или планшетный компьютер, которые, собственно, и являются этим устройством. Водя пальцем по экрану, Вы можете управлять курсором. Данный способ работы без мыши подходит некоторым моделям ноутбуков и моноблоков.
Важно! Не стоит путать «тач-панель» и «тач-пад». «Тач-пад» является отдельным от экрана устройством-манипулятором. «Тач-панель» – встроена в монитор.
На некоторых современных моделях клавиатур присутствует аналог мыши – «скролл-болл». Он представляет собой утопленный в корпусе подвижный шар. Водя по нему ладонью, Вы можете передвигать курсор по экрану монитора. Эмуляция щелчка мыши производится посредством нажатия на шар, либо по использованию специальных кнопок, имитирующих кнопки мыши.
Запуск эмулятора мыши
Важно! Это именно тот случай, когда нужно использовать модификаторы в левой части клавиатуры.
Шаг 2. В окне запроса, используя кнопки навигации (стрелки «вправо» и «влево») выделите кнопку «Да» и нажмите «Ввод».
Шаг 3. После подтверждения запуска службы, в «трее» должна появиться иконка мыши. Теперь Вы сможете управлять указателем с помощью кнопок на цифровой клавиатуре.
Значения кнопок приведены в таблице.
Клавиша | Действие |
---|---|
1 | Движение по диагонали вниз |
2 | Движение вниз |
3 | Движение по диагонали вниз вправо |
4 | Движение вправо |
5 | Одинарный щелчок |
6 | Движение влево |
7 | Движение по диагонали вверх влево |
8 | Движение вверх |
9 | Движение по диагонали вверх вправо |
/ | Включение режима левой кнопки мыши |
- | Включение режима правой кнопки мыши |
* | Переключение режима кнопки мыши в обоих направлениях |
+ | Двойной щелчок |
Использование обработчика команд
Обработчик команд – наследство эпохи дисковой операционной системы (DOS, MS-DOS), когда у ОС персональных компьютеров не было пользовательского интерфейса. Работы происходила путем последовательного набора команд.
Шаг 2. Используйте заранее заданные ключи для управления компьютером.
Список основных команд для работы с операционной системой представлен в таблице.
Команда | Результат выполнения |
---|---|
cd (chdir) | Смена директории |
cls | Обнуление интерфейса интерпретатора |
copy | Копирование файла/папки |
del | Перемещение файла/папки в корзину |
dir | Просмотр содержимого директории |
erase | Удаление файла/папки без посредства корзины |
exit | Закрытие командной строки |
help | Вызов справки |
ipconfig | Вывод данных о настройке сетевого адаптера |
logoff | Выход из активного пользователя (завершение сеанса) |
md | Создание новой директории |
move | Перемещение файла/папки в другую директорию |
ren | Изменение имени файла/папки |
shutdown | В зависимости от использованного ключа – перезагрузка, завершение работы Windows, либо выход из активного пользователя (завершение сеанса) |
systeminfo | Представление данных о системе |
Важно! Помощь по каждой из команд (синтаксис, правила последовательности, ключи) доступны по вводу запроса следующего вида: «[ключ команды] help» (например, shutdown help). Обратите внимание на регистры написания ключей. Собственно ключевые фразы на восприимчивы к регистру, а имена файлов/папок – восприимчивы.
Зачем нужна мышь, если есть клавиатура?
Слепой метод печати
Начнём с классики жанра, это фундамент. Хотя Вы можете поспорить о важности слепой печати для программиста, но если Вы смотрите на клавиатуру, чтобы найти нужную букву, то все остальные пункты данной статьи для вас будут бессмысленными (или нет).
Для программиста не критична скорость печати, потому что большую часть времени мы думаем, а печатаем совсем немного (относительно копирайтеров, например). Нам важно уметь находить клавиши с закрытыми глазами.
Все помнят Соло… Шахиджаняна… И лично у меня этот тренажёр отбил всё желание научиться печатать. В общем, курс неплохой, но подача и мелочи убивают весь энтузиазм. Поэтому его лучше опасаться.
-
– хороший тренажер, куча режимов. Я выбрал его; – есть куча уроков, но сделан не так приятно, как предыдущий. Ещё есть рекламные баннеры для тех, кто хочет похудеть; – занимательная вещь. Соревнования с другими людьми (в реальном времени) в скорости печати; предложил сервис typing.io — для тренировки печатания исходного кода. Меня он немного напряг, потому что код я пишу не последовательно.
Этот список можно продолжать очень долго, если хотите ещё, гуглите. Главное запомнить, что нас интересует английская раскладка, конечно, если Вы не программируете в 1C.
Но если печатные тренажеры заставили Вас разбить клавиатуру, есть другой способ. leventov вспомнил про Легкий способ научиться слепому десятипальцевому набору.
Многие слышали про редактор Vim, но не многие пробовали в нём работать, а ещё меньше работают. Это и не мудрено, Vim не из тех штук, которую можно взять и сразу пользоваться. К нему нужно привыкать через боль и унижение, потому что в первое время производительность существенно упадёт. Но оставим сам Vim для тру-линуксоидов. Лично меня интересует его философия. В Vim пишут клавиатурой, а не мышкой. Другими словами, Vimway — это минимизация телодвижений для достижения результата.
Для популярных редакторов и IDE есть плагины, позволяющие прикоснуться к святыне. Sublime Text из коробки имеет такой плагин, называется Vintage Mode (по ссылке инструкция).
В IDE от JetBrains можно установить официальный плагин IdeaVim.
Суть такова: есть два режима – Insert Mode и Command Mode. В первом мы печатаем как обычно, а во втором курсор изменяется и появляется возможность использоваться заветные команды, которые экономят кучу времени. Например, перемещение курсора осуществляется клавишами H(<-), J(?), K(?), L(->). То есть вам не надо тянуться к стрелкам, чтобы подвинуть курсор. Руки всегда остаются над одной и той же областью клавиатуры.
Лучше один раз увидеть:
С первого взгляда это может показаться сложным, но по мере привыкания Вы поймёте всю прелесть Vimway. Обычно команды в плагинах соответствуют оригиналу, поэтому гуглите команды Vim’a или ставьте на рабочий стол такие обои. И, как говорилось выше, важно клацать по кнопки вслепую. Со временем это дойдёт до автоматизма.
Я теперь крутой?
Определенно, да. Но хотелось бы рассказать про ещё одну крутую штуку. Несмотря на всю функциональность Vim’а, иногда надоедает руками «ездить» по коду. Хочется быстро переместиться в нужное место, а не переходить к строке и догонять курсор к нужному атрибуту. Порхать по коду нам поможет следующая приблуда:
- Sublime Text – EasyMotion;
- В IDE от JetBrains мне попадались два похожих плагина это AceJump и QuickJump. Первый мне нравится больше, потому что в первую очередь биндит переходы на буквы, а не на цифры. А у второго больше функционал.
Опять же лучше увидеть, как это работает:
Заключение
Помимо всего выше сказанного, стоит отметить о важности изучении среды, в которой Вы работаете. Современные IDE дают невероятный функционал и кучу горячих клавиш, от которых порой голова идёт кругом, но оно того стоит. Освобождается пространство, занимаемое панелями кнопок и деревьями каталогов, повышается продуктивность. Так же обратите внимание на полноэкранный режим (он есть практически во всех редакторах), даёт невероятное погружение и концентрацию.
Можно было бы упомянуть о Zen Conding/Emmet, но это узкоспециализированная штука для веб-разработчиков, поэтому опустим.
Заключение
Мы рассмотрели пять техник работы с персональным компьютером без мыши. Все методики можно назвать кроссплатформенными, то есть работающими на операционных системах разных производителей, с несущественными различиями. Старайтесь научиться работать со станциями в любых условиях и режимах – это существенно помогает во время форс-мажорных обстоятельств.
Работа с ускорителями
Условно горячие клавиши можно разделить на следующие группы:
- Локальная группа (в активном окне программного обеспечения).
- Глобальная программная группа (в любом окне программного обеспечения).
- Глобальная группа операционной системы.
Описания сочетаний и результатов из выполнения первых двух групп определяются конкретным программным обеспечением. Например, сочетание клавиш «Ctrl+N» в окне браузера Google Chrome создаст новую вкладку, а в игре «TES4» – перейти в режим скрытности и использовать активное заклинание. Для каждого продукта могут быть использованы собственные сочетания, узнать которые можно в справках о программе, либо руководствах.
В статье рассмотрим глобальную группу операционной системы. Прежде всего, стоит упомянуть о клавишах-модификаторах. Обычно, это нижний левый угол клавиатуры, куда входят «Shift», «Ctrl», «Win», «Alt». Практически все операции производятся с помощью указанных кнопок.
Основные сочетания для работы с системой приведены в таблице.
Важно! При использовании клавиш-модификаторов помните, что они продублированы в правой части клавиатуры, однако некоторые комбинации клавиш срабатывают только при использовании левых.
Читайте также: