Прокрутка средней кнопкой мыши

**Прокрутка средней кнопкой мыши**  (она же  *автоскролл* ,  *кликоскролл* ,  *middle-click autoscroll* , среди красноглазиков —  *та неведомая херня, которая постоянно вставляет левый текст вместо прокрутки* ) — древняя как говно мамонта, но до сих пор живая фича графических интерфейсов. Позволяет ленивому юзеру читать бесконечные простыни текста, не совершая лишних движений пальцами.

Тыкаешь среднюю кнопку (колёсико), на экране возникает загадочный круглый значок со стрелочками, после чего лёгким движением руки уводишь курсор вниз или вверх. Страница начинает ехать сама. Чем дальше увёл — тем быстрее летит текст, вплоть до сверхзвуковых скоростей, вызывающих эпилептический припадок и выгорание пикселей на твоём дешёвом мониторе.

## Как это начиналось

В древние времена, когда мыши имели всего 2 кнопки, а интернет состоял из 1.5 текстовых страниц, никто и не думал о прокрутке. Юзеры уныло таскали ползунок скроллбара справа или яростно долбили по клавишам  *Page Down*  и  *Page Up* . Но в 1996 году корпорация Microsoft совершила тихий переворот, выпустив мышь  *IntelliMouse*  с колесом прокрутки.

Вместе с колесом родилась и концепция третьей кнопки. Сначала разработчики софта не знали, что с ней делать. Предлагались разные варианты:

- Закрытие окон (слишком радикально).

- Вызов контекстного меню (уже занято правой кнопкой).

- Двойной клик одним нажатием (для совсем ленивых инвалидов).

В итоге победил концепт автоматической прокрутки. Юзер нажимает кнопку, расслабляет руку, и страница плавно плывёт перед глазами. Фича мгновенно прописалась в  *Internet Explorer*  версии 4 и офисном пакете  *Office 97* . С тех пор прошло уже больше 25 лет, сменились поколения процессоров, умер Flash, а этот кругляшок со стрелочками до сих пор с нами.

## Анатомия процесса

Физика автоскролла проста и беспощадна. При нажатии на колёсико система запоминает координаты клика как  *точку нулевого отсчёта*  (якорь). На этом месте рисуется круглая пиктограмма:

- Круг с точкой внутри и 2 стрелками (вверх и вниз) — если прокрутка возможна только по вертикали.

- Круг с 4 стрелками (крестовина) — если страница неприлично широкая и её можно катать ещё и влево-вправо.

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

Условно говоря:

- 5 пикселей от центра — скорость ленивой улитки. Идеально для чтения длинных статей.

- 50 пикселей — скорость испуганного зайца. Глаза уже начинают косить.

- 500 пикселей — скорость света. Страница объёмом в 3 тома  *Войны и мира*  пролетает за 0.5 секунды, превращаясь в размытое серое пятно.

## Великое противостояние

Самая лютая драма вокруг автоскролла разворачивается на стыке операционных систем. Тут у нас имеется 2 абсолютно разные философии.

### В мире Windows

Здесь автоскролл — это стандарт де-факто. Он работает везде: во всех браузерах ( *Chrome* ,  *Firefox* ,  *Edge* ,  *Opera* ), в текстовых редакторах типа  *Word* , в средах разработки и даже в некоторых PDF-читалках. Юзер Windows привык к этому поведению с детства. Для него средняя кнопка — это исключительно инструмент ленивого чтения и открытие ссылок в новой вкладке.

### В мире Linux

У красноглазых адептов пингвина своя атмосфера, уходящая корнями в древнюю оконную систему  *X11* . В Unix-подобных системах клик средней кнопкой мыши испокон веков зарезервирован под  **вставку текста из первичного буфера обмена**  ( *PRIMARY selection* ). 
Работает это так:

- Выделил мышкой любой текст на экране (он автоматически попал в первичный буфер, даже  *Ctrl+C*  нажимать не надо).

- Нажал среднюю кнопку в любом текстовом поле — текст мгновенно вставился.

Из-за этого архитектурного наследия автоскролл в Linux по умолчанию выключен почти везде. Когда виндузятник пересаживается за Linux и по привычке жмёт колёсико, чтобы пролистать длинный лог, происходит одно из двух:

- Либо не происходит вообще ничего (курсор не превращается в заветный кружок).

- Либо в случайное место страницы вставляется кусок кода, скопированный 3 часа назад, ломая к чертям текущий ввод.

В браузере  *Firefox*  под Linux эту проблему можно решить через скрытые настройки. Для этого надо:

- Ввести в адресную строку `about:config`.

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

- Найти параметр `general.autoScroll` и переключить его значение с `false` на `true`.

После этого  *Firefox*  начинает вести себя по-человечески. В браузерах на базе  *Chromium*  под Linux для этого приходится ставить специальные расширения из магазина, которые часто работают криво и глючат на тяжёлых сайтах.

### В мире macOS

У яблочников всё ещё веселее. Исторически у мышей Apple была всего 1 кнопка. Современная  *Magic Mouse*  вообще представляет собой сенсорную панель без физических кнопок и колёсика. Скроллинг там осуществляется жестами 2 пальцев. Поэтому обычный маковод при упоминании автоскролла средней кнопкой делает недоуменное лицо и советует купить трекпад за 150 долларов. Чтобы заставить эту фичу работать на macOS с обычной трёхкнопочной мышкой, приходится ставить сторонний софт вроде  *SmoothScroll*  или  *Mos* .

## Психологический портрет пользователя

Юзеров автоскролла можно разделить на 3 основные категории:

- **Профессиональный прокрастинатор** . Этот персонаж открывает длинные треды на форумах или Reddit и запускает автоскролл на минимальной скорости. Его руки полностью свободны. В одной руке у него чашка кофе, в другой — бутерброд. Он сидит, откинувшись на спинку кресла, и просто гипнотизирует плывущий по экрану текст. Если скорость скроллинга совпадает с его скоростью чтения — наступает полное состояние сатори.

- **Офисный планктон в поиске**  Ему нужно быстро просмотреть огромную таблицу Excel на 100500 строк или годовой отчёт. Крутить колесо пальцем до мозолей — лень. Он зажимает среднюю кнопку, уводит курсор в самый низ экрана и ждёт, пока перед глазами промелькнет нужный квартал.

- **Жертва случайного клика** . Самый частый тип. Юзер просто хотел закрыть вкладку или открыть ссылку в новом окне, но промахнулся по ссылке на 2 пикселя. На экране появляется пресловутый кружок, мышь слегка дёргается, и страница с дикой скоростью улетает в неизведанные глубины космоса. Юзер паникует, судорожно дёргает мышь обратно, страница летит наверх. В итоге вкладка закрывается в ярости.

## Плюсы и минусы

У данного метода навигации есть как ярые сторонники, так и ненавистники.

### Плюсы

- **Разгрузка суставов** . Постоянное кручение колёсика указательным пальцем в течение 8-часового рабочего дня может привести к синдрому запястного канала или просто к усталости сустава. Автоскролл требует всего 1 клика.

- **Идеально плавная скорость** . Можно настроить движение страницы с точностью до пикселя в секунду, чего невозможно добиться обычным кручением колеса (которое почти всегда крутится дискретно, шагами).

- **Свобода рук** . Можно читать, не прикасаясь к клавиатуре и мыши после запуска процесса.

### Минусы

- **Низкая точность** . Очень трудно мгновенно остановить прокрутку ровно на той строке, которая тебе нужна. Всегда присутствует инерция человеческой реакции.

- **Проблема случайных срабатываний** . Стоит случайно задеть колесо во время перемещения мыши — и ты уже потерял место, где читал.

- **Отсутствие поддержки** . Некоторые современные веб-интерфейсы, перегруженные скриптами и параллакс-эффектами, ломаются или начинают жутко тормозить при попытке использовать автоскролл.

## Интересные факты

- В старых версиях  *Windows*  и браузеров существовал баг: если запустить автоскролл, увести курсор за пределы окна браузера и отпустить кнопку, страница продолжала бесконечно скроллиться сама по себе. Это использовалось как костыльный способ накрутки просмотров на некоторых древних сайтах.

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

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

## См. также

- Мышь

- Юзабилити

- Linux

- Браузер