Как стать автором
Обновить

Комментарии 69

НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
⌘Q, ⌘W закрывает активное окно.
ctrl + W делает выделение вовне в Intellij, и маты программиста в браузере…
Хех, думал статья будет о vimperator )
НЛО прилетело и опубликовало эту надпись здесь
Ну вимовская раскладка не требует отказываться от функциональностей современной браузера, потому вряд ли отрастим бороды
Ну, в случае с vimperator, управлять браузером мышкой становится сложно. Я из-за этого на VimFX перешёл.
А в чем именно заключается неудобство?
Контролы все скрыты, мышкой просто некуда клацать.
Тоже сталкивался с некоторыми сложностями, но решил пойти по другому пути. Забиндил основные команды под левую руку, правую же держу на мыши.
.vimperatorrc
nnoremap t d
nnoremap e f
nnoremap E F
nnoremap f j
nnoremap d k
nnoremap s gt
nnoremap a gT
nnoremap v <C-d>
nnoremap c <C-u>
nnoremap w <C-o>
nnoremap q <C-i>

Получилось намного удобнее.
Многие до сих пор используют подобные менеджеры (Total commander, Far etc).

Некоторые. До сих пор. Не знаю даже, как в этом топике можно было сильнее задеть меня за живое. Что значит некоторые? Лучшие люди планеты это делают!!!
Возможность работы с системой с клавиатуры без использования мыши – важное требование в B2B интерфейсах.
Такая навигация может выглядеть не «секси» и требовать больше времени на обучение, но бонусы от использования значительно превышают эти минусы.

А, нет, у вас получилось. Годами я пытаюсь объяснить людям, что обучение виму (ну или емаксу) в конце концов окупится бонусами от использования, и на меня все смотрят, как на городского сумасшедшего. Потому, что им надо работать, а не всякую фигню изучать. И это программисты! А тут оказывается B2B понимает, как важно управлять с клавиатуры. Даже если это требует обучения.

Тот самый B2B, который мне объяснял, что у него с планшета как-то не так тачи работают! Это на системе, которая вообще для планшета не предназначена! Да он, кажется, про существование клавиатуры только подозревает! Да и то смутно! А уж про то, что можно учить чему-то помимо того, как выглядит система и какие кнопки там есть он вообще не представляет!

Где эти B2B, которые хотят клавиатурный интерфейс, обучение которому окупится? Где эти потенциальные пользователи вима, емакса и почтового клиента mutt? Покажите мне их!!!

Неужели это правда? Неужели они и вправду существуют?

Ну и по теме :)
Как же достичь удобства навигации без мышки в вебе?

Vimium, VimFx, vimperator etc.

Тише, тише

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

По поводу:
Vimium, VimFx, vimperator etc.

Я постарался описать в статье, чем не подходят плагины к браузерам. Можно ещё добавить, что мы думаем не про одного опытного пользователя, а всё-таки про 1000 пользователей + хотелки заказчиков никто не отменял даже если они любят клавиатуры.
Здорово встретить единомышленников :)

Симметрично.
Я постарался описать в статье, чем не подходят плагины к браузерам.

Да я в общем понимаю. Много чем не подходят. Это так, крик души был :).
Я постарался описать в статье, чем не подходят плагины к браузерам.
ниже писал про follows (luakit, vimperator), но вопрос, а может возможно такое реализовать средствами самой страницы? Т.е. как-то обратав всего один хоткей и активировав режим подсказки по ссылка и активным объектам?f
Вполне. Так же, как это делают расширения: обойти скриптом все ссылки и прицепить к ним хинты. Только зачем? Те, кто хочет клавиатурного управления, наверняка уже пользуются расширением и имеют его на всех сайтах и web-интерфейсах. Впендюривать везде свой чревато конфликтами и зоопарком, хватит с нас вездесущих кнопок «Вверх», квадратиков для открытия в новой вкладке и тому подобного бреда. Семантические легкозапоминающиеся хоткеи ещё ладно, но велосипедить универсальные хинты — уж увольте.
Отсутствие чувства юмора жить не мешает?
Если это был юмор, то вам следовало бы этот вопрос себе задавать.
НЛО прилетело и опубликовало эту надпись здесь
Это с первого взгляда так. Потому, что вы видите много опций и возможностей. У конкретного оператора есть конкретные действия, которые он выполняет постоянно. Причем делает он это в процессе заполнения информации о заказчике и говоря с ним по телефону. Чем меньше лишних действий оператор сделает, тем быстрее обслужит заказчика. В таком случае надо, чтобы можно было руки вообще запрограммировать на то что ты делаешь и вообще не отрываться на мышку.

НЛО прилетело и опубликовало эту надпись здесь
Действия повторяются, но каждое из них требует входных данных. Поэтому триггеры мимо.

Или вот про заполнение инфы, заполняете вы данные клиента, у вас форма, заполнили три поля, вдруг заказчик говорит, ой-ой, в первом поле я вас обманул, там было не ул. Ивана Пупкина, а ул. Василия Петровича. Мышью я сразу попаду в нужное поле, хот кеями опять же нужно следить, чтобы вернуться к верному.


А это вообще стандартно и по-умолчанию решается хоткеями в любой нормально сверстанной форме через Shift-tab

То есть оператору в каждый момент времени нужно держать в голове текущий стейт и схему хот кеев.


Ну не стоит все так буквально воспринимать, ведь понятно, что это всего лишь инструмент. Дальше уже вопрос того как мы им воспользуемся. Понятно, что делать так, чтобы для человека это было «не логично» или требовало бы чего-то запоминать, мы не будем.
Мышью я сразу попаду в нужное поле, хот кеями опять же нужно следить, чтобы вернуться к верному

Вы сильно, сильно утрируете.
надо разумно использовать гибридную мышино-клавиатурную модель. кому-то удобнее клавишами, кому-то мышкой, а кто-то так и вовсе «на слух» навигацией занимается. Кстати, тем, кто «на слух» скорее всего клавиатурная навигация явно удобнее мышиной будет ;)
НЛО прилетело и опубликовало эту надпись здесь
Можно, конечно, разные примеры приводить. Но проще на мой взгляд зайти в gmail и яндекс почту и нажать кнопочку вниз.
А потом зайти на мейл.ру и почувствовать разницу.

Ну и не нужно забывать о требованиях accessibility, которые присутствуют во многих странах на уровне закона.
НЛО прилетело и опубликовало эту надпись здесь
Вы не забывайте про время перевода руки с клавиатуры на мышку и обратно.

А теперь повторите 15 раз подряд. :)
НЛО прилетело и опубликовало эту надпись здесь
Мы о разном просто :) На конкретно ваш вопрос ответил ниже Compiler. Я же больше про то, что в B2B част кейс, когда оператор делает одно и то же действие.

Т.е. представьте, что вам надо каждый раз выбрать сначала именно 15-ую строку, а потом с нее переместиться на пять вверх. Вы глазами будете считать? Проще клавишами вверх-вниз отсчитать. Все это утрировано. Кейсы, на самом деле, куда более сложные.
Может :) Правда это зависит от того как мы определили, что нам 15ое письмо нужно. Возможно, если это не первые пять писем легче вызвать поиск ввести тему и нажать enter против поцелиться, поскролить, поцелиться, поскролить…
Ну и никто ведь не спорит, что иногда мышка эффективнее.
Здесь же решался вопрос на сколько быстро и просто мы можем покрыть требования по accessibility и при этом улучшить UX в ключевых местах.
Открою вам секрет
Можно не убирать палец с клавиши «↓» и просто подождать, пока фокус перескочит на 15-е письмо.
А вы к тому моменту ещё только будете палец над мышью заносить.
НЛО прилетело и опубликовало эту надпись здесь
Поддерживаю, вводил хоткеи в интерфейсе лишь для того чтобы упростить продвинутому оператору жизнь. Человек проще учится работать с мышью и визуальными элементами и лишь со временем, когда перерастает стадию обучения начинает искать способы упростить себе жизнь, ускорить процесс работы с программой. Я считаю, что нагружать пользователя хоткеями с первых секунд знакомства с программой — это не лучший способ привлечь внимание к продукту.
В этой форме разве что выбор нужного меню в дереве слева будет быстрее мышью, чем клавой, да в верхнее меню попадать. Хотя сама форма не совсем под оператора, но если получилось заточить под клаву, то честь и хвала. Если форма заточена под операторскую работу, то там мышь совсем не нужна. Когда каждый день одно и тоже, то привыкают ↑↑↓↓←→←→ AB нажимать не глядя. И сколько раз там надо Tab или Enter нажать тоже машинально выполняется (никто не смотрит на экран). Поэтому мы и новые пункты в меню добавляли только внизу (даже мышью привыкают вести ровно столько, сколько в прошлый раз) и расположение полей лишний раз не трогали, а Tab order вообще меняли только если об этом просили сами операторы.
И уж точно неудобно и медленно постоянно руки туда-сюда клава-мышь.
Я пользовался одно время Vimium-ом (на кухонном столе лежит стекло и светодиодные мыши по нему не «ездиют»)
Но забросил по двум причинам:
1. Всё больше появляется, мать их, «UI-элементов» которые в принципе не нажать с клавиатуры (ни Vimium их не видит, ни TAB-ом не добраться)
2. Обязательность английской раскладки — чтобы активировать режим. Хотя в Javascript ничто не мешает проверять нажатую клавишу по скан-коду а не коду символа. Но как на писать автору?
Всё больше появляется, мать их, «UI-элементов» которые в принципе не нажать с клавиатуры (ни Vimium их не видит, ни TAB-ом не добраться)

Вы, наверное, хотели сказать «Всё больше появляется, мать их, несознательных элементов, которые в принципе не делают страницы по веб-стандартам».
Покажите мне их!!!
Неужели это правда? Неужели они и вправду существуют?

Не существуют. Автор шутит.

Ну и по теме:
1. Есть очень важный момент, о котором автор не сказал: частое переключение с мышки на клавиатуру создает нагрузку на позвоночник.
Речь о здоровье людей. Увы, это не теория.
2. Пытаться научить пользователя в браузере работать без мыши — это романтизм. Мы усиленно рекомендовали для работы с базой данных использовать другой браузер. Чтобы люди переключались: в МФ привычный веб-стиль, а ГХ для работы с базой данных (или наоборот). Бесполезно. Не хотят и не будут.
3. С горячими клавишами аналогично: даже Esc не хотят нажимать. Только мышь. Хотя на каждой кнопке всплывает подсказка сочетания клавиш.
4. ГХ по отношению к сочетаниям клавиш ведет себя неприлично. После очередного обновления какие-то клавиши могут перестать работать.
5. Хотелось бы посмотреть на реальные страницы

Я года три назад написал похожую статью в Linux Format о нестандартной ориентации веб-браузеров. Правда, там не шла речь о
минимальном воздействии на существующий код
, скорее о специализированных контролах, ориентированных на клавиатуру при работе с базой. Насчет минимального воздействия на код автор лукавит. Html нынче не пишут, а генерят по шаблонам, и тут уж придется…
Некоторые vim-like, типа luakit, браузеры по нажатию какой-то клавиши (обычно Alt или что-то вроде) показывают рядом со всеми активным элементами интерфейса цифру-подсказку, при вводе которой данный элемент активируется. Пока, такое управление показывало себя удобнее всего. Плюс (я не пользователь vim) для браузеров как нельзя кстати вимовское разделение на командный режим и режим редактирования.
Да, это работает (например в аутлуке). Горячими клавишами сложно покрыть кейсы когда нужна именно навигация (перемещение по списку/таблице/дереву). Ну и думая о стандартных плагинах нужно помнить, что здорово если есть возможность использовать сочетания клавиш, которые использовались до внедрения нашего решения…
Пожалуйста, развивайте идею…
И добавьте возможность публикации/использования настроек для вебсайта, по типу репозитария (например как для stylish)… кто то настроил, другой отредактировал, все пользуются
Хоткеи хоткею рознь. Они удобны, когда телодвижений мало. Прыгать по дереву — ок. А вот тавигация табами или стрелками по элементам — это жесть.

Да и на примере MC: мне быстрее вбить «cd /usr/local/blablabla...» на автомате пальцами, затем ентером и стрелками лазить + использовать командную строку и, конечно же, вечные ctrl+Z и fg.
Имхо не все так однозначно.
Во-первых если полный отказ от мышки в сторону хоткеев так сильно ускоряет работу, то это скорее всего проблема не в мышке, а в том что интерфейс гавно, и надо хотя бы попробовать автоматизировать большие наборы типовых действий для начала.
Во-вторых учить кого-то пользоваться хоткеями, на пару порядков сложнее, как показывает практика, да и количество ошибок сущетсвенно возрастает.

>Пользователю сложнее сделать ошибку (нужно целиться в кнопку, а не в пиксель).
Непонятное умозаключение.
>Снижение нагрузки на глаза (многие функции можно выполнять вообще не смотря на монитор).
Еще одно непонятно умозаключение, зная наизусть коткеи вы будете смотреть зачем-то в клавиатуру? Или в потолок?

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

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

>Пользователю сложнее сделать ошибку (нужно целиться в кнопку, а не в пиксель).
Непонятное умозаключение.
Есть люди с различными нарушениями, которым тяжело руку держать ровно и при этом нажимать на кнопку мыши. Т.к. возраст пользователя веб приложений растёт (а в B2B он заметно, выше чем в открытом интернете) эта проблема становится ещё более актуальной. Ну и мне кажется это вполне очевидным, например, прилипание курсора к сетке или к объектам в графических редакторах может заметно облегчить работу.

>Снижение нагрузки на глаза (многие функции можно выполнять вообще не смотря на монитор).
Еще одно непонятно умозаключение, зная наизусть коткеи вы будете смотреть зачем-то в клавиатуру? Или в потолок?
Если мы работаем с клавиатуры, то зачастую необязательно фокусироваться на каждом элементе, чтобы взаимодействовать с ним. Чтобы увидеть какое поле сейчас активно нужно гораздо меньше напрягаться, чем для того чтобы активировать его с помощью мыши. Про «не смотря на монитор» имелось ввиду что мы можем вводить текст не смотря в то поле, где вводим текст (никто же не предлагает экранную клавиатуру для этого использовать...) поэтому глаза либо отдыхают либо могут смотреть уже на следующее поле ввода.
>Всё-таки я не говорю о полном отказе от мышки, а о том, что сейчас навигации с клавиатуры в вебе не уделяется должное внимание.
>а в B2B он заметно, выше чем в открытом интернете

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

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

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

>имелось ввиду что мы можем вводить текст не смотря в то поле, где вводим текст
Ну так то все равно нужно проверить что там такое написал, опечатки там, не та раскладка и всякое другое.

>могут смотреть уже на следующее поле ввода.
Как-то странно, пишу одно, думаю о другом.
Да, я вот совершенно не понимаю сегодняшнего огульно-фанатичного, радикального отказа от двухпанельных файловых менеджеров в пользу укармливания себя голой консолью да ls. Одно другому же совершенно не мешает. А то ведь можно далеко пойти, например, в следующей версии Теслы можно отключить возможность управления машиной любым другим образом кроме консольных команд. А тут ещё и новость несколько месяцев назад, что мейнтейнеры mc таки сдались под натиском чистых консольщиков и постепенно отходят от проекта.
Я хотел бы подискутировать. Что вы делаете двухпанельниками?

По моим ощущениям они хороши в основном для того, чтобы раскидать содержимое одной директории по нескольким другим, когда единственный способ решить куда кинуть какой файл — это посмотреть на него глазами.
две панели всё равно, что два окошка открытых сразу, только «привязанные» друг к другу. И да, одно из удобств — быстрый переброс файлов. Ещё пример — когда надо перед глазами держать сразу и каталог с нарезанными картинками и с оригинальными. Через закладки тут неудобно. в Nemo/Nautilus часто пользуюсь двухпанельным режимом. Ещё нравится, что можно легко переключаться между «одна/две панели»
Ну собственно, да. Я хотел сказать, что двухпанельники удобны, но область их применения достаточно ограничена. Область применения голой консоли куда шире.
Быстро посмотреть архив и перекинуть нужные файлы – единственное, что мне действительно нравится в mc :)
Например новичку в кабине самолёта всё кажется очень навороченным и сложным, может быть можно упростить? Консольные команды очень мощны, давайте их и здесь применим, панельки лишние, это же всего-то чиселки, какая разница в пискелях они или просто число в терминале. В общем MongoDB is web-scale. Однако же, человек остаётся человеком, чтобы охватить больше событий и фактов в единицу времени, ему нужен dashboard. Собственно, в кабине самолёта и находится тот самый dashboard, который для опытных пилотов в общем интуитивен, «как дома». Они конечно различаются от модели к модели, но нет самолёта без приборной панели. Файловый менеджер – это тоже dashboard, «как дома». Консоль – безусловно гораздо шире, но я и не говорил что файловый менеджер и консоль взаимоисключаемы. Они живут вместе, но выкинуть файловый менеджер по неким соображениям фанатизма или по соображениям ложной оптимизации а-ля «давайте всем детям ампутируем аппендикс» – это чересчур.
Не по соображениям фанатизма, а потому, что область применения у него узка. Подходит в основном для задач, в которых надо просматривать дерево файлов, структура которого неизвестна в поисках файла, название которого неизвестно, да и вообще на него надо глазами посмотреть. Это, правда только одна панель. Вторая панель нужна, чтобы копировать туда найденные файлы. Для таких задач запускаем из консоли файловый менеджер и вперёд :)

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

Ну если я делаю в ФС все операции в консоли быстрее чем через mc (к примеру), почему мне его не выкинуть?
А что если сделать так, что сайт можно просматривать как через Total Commander?
Ходишь по каталогам, просматриваешь, копируешь себе или в закладки, комментируешь.
В общем подогнать под концепцию TC.
Получится сервер с доступом по ftp.
Но надо чтобы еще страница была динамической и открывалась бы прям внутри этого TC
Странно — в статье не нашел ссылку на саму библиотеку «Mouseless»…
Да, она пока только для внутреннего пользования, к сожалению.
Планируем её развивать и выложить что-то более живое с примерами…
Тогда хотя бы какие-то данные об этом предоставьте, мол «еще два месяца старательной доработки и будем всем желающим счастье» :)
Пришлось внимательно комменты перечитать, чтобы убедиться что а) Это не я слепой а и правда никаких ссылок нет, б) Об этом уже спросили и я не сделаю дубль.
По теме же — развивайте библиотеку! Выглядит вкусно и полезно. Что касается холиваров насчет «мышка/клава» бред какой-то. Каждому удобно то, что удобно. Такое ощущение, что часть людей которые участвуют в этих спорах совершенно забывают о том, что им никто ничего не навязывает.
У вас есть потребность в такой библиотеке и вы её создаете и развиваете — это прекрасно! Я уверен что найдутся люди которым это интересно, и кто с удовольствием будет использовать данную либу. Для интерфейсов — самое то.
Есть еще достаточно удобный vimb. При нажатии определнного хоткея он подсвечивает на странице все области с которыми можно осуществить действие за которое отвечает хоткей, и проставляет возле каждой из них номер, давая пользователю возможность выбрать, все так же, при помощи клавиатуры интересующую. Действительно, очень удобно.
Выглядит вот так
image
Его упоминали и выше. В статье попытался описать почему нам не хватает одних только хоткеев. Простая нумерация не устраивает ещё и потому что одни и те же действия на разных страницах могут иметь разные хоткеи (в зависимости от кол-ва ссылок) не говоря уже о семантике этих хоткеев.
Этот не упоминали, извиняюсь, но смысл тот же :)
Да-да, и в опере… ну ясное дело. Собственно поэтому там в прошедшем времени написано.
В любом случае когда мы говорим о производительности, а не о формальной возможности навигироваться без мыши такие решения всё-равно не подходят т.к. они не учитывают бизнес кейсы.
Думал, речь пойдёт о тач-интерфейсах, где эффекты onmouseover не работают.
Использую большой компьютер с клавиатурой только для разработки софта и некоторых игр, остальное время сижу с телефона.
На мой взгляд, идея навигации клавиатурой прикольная, но устаревшая, как Norton Сommander.
> Такая навигация может выглядеть не «секси» и требовать больше времени на обучение, но бонусы от использования значительно превышают эти минусы

Вы так просто и безапелляционно говорите «бонусы от использования значительно превышают эти минусы», а стоило мне вроде бы даже с пруфами сказать (здесь же на Хабре), что командная строка удобнее, чем менеджеры вроде windows explorer, или Thunar (который в Xfce) — говном закидали.

UPD: inb4 активно использую zsh или Far Manager в зависимости от текущей ОС.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий