Клавиши мыши — это функция некоторых графических пользовательских интерфейсов , которая использует клавиатуру (особенно цифровую клавиатуру ) в качестве указывающего устройства (обычно заменяющего мышь ). Ее корни уходят в ранние дни визуальных редакторов , когда навигация по строкам и столбцам управлялась клавишами со стрелками . Сегодня клавиши мыши обычно относятся к раскладке цифровой клавиатуры, стандартизированной с появлением X Window System в 1984 году. [1] [2]
Исторически MouseKeys поддерживали программы с графическим интерфейсом, когда многие терминалы не имели выделенного указывающего устройства . Поскольку указывающие устройства стали повсеместными, использование клавиш мыши сузилось до ситуаций, когда указывающее устройство отсутствовало, было непригодно или неудобно. Такие ситуации могут возникать из-за следующего:
В 1987 году Macintosh Operating System 4.2 Easy Access обеспечил поддержку MouseKeys для всех приложений. Easy Access можно было (де)активировать, нажав клавишу пять раз. [ необходима цитата ]⇧ Shift
К началу 2020-х годов, когда графические планшеты станут более распространенными, перед включением MouseKeys может потребоваться изменение конфигурации. [ необходима цитата ]
Элемент управления MouseKeysAccel системы X Window применяет действие (обычно перемещение курсора) многократно, пока клавиша направления {1,2,3,4,6,7,8,9} остается нажатой. [3] Когда клавиша нажата, немедленно применяется action_delta . Если клавиша остается нажатой дольше, чем mk_delay миллисекунд, какое-либо действие применяется каждые mk_interval миллисекунд, пока клавиша не будет отпущена. Если клавиша остается нажатой после того, как было применено более mk_time_to_max действий, action_delta, увеличенное mk_max_speed раз, применяется каждые mk_interval миллисекунд.
Первые действия mk_time_to_max увеличиваются плавно по экспоненте.
Эти пять параметров можно настраивать. [4]
В системах X Window Systems X.Org и XFree86, используемых в Unix-подобных системах, таких как Linux , BSD и AIX , MouseKeys (и MouseKeysAccel), когда они доступны, номинально (де)активируются с помощью ++ . [5] MouseKeys без ускорения (также известный как режим плоттера) иногда доступен с помощью + . Это номинально не зависит от используемого оконного менеджера , но может быть переопределено или даже сделано недоступным с помощью файла конфигурации .Alt⇧ ShiftNum Lock⇧ ShiftNum Lock
Перед включением может потребоваться изменить конфигурацию системы. Утилиту setxkbmap можно использовать для изменения конфигурации в Xorg: [6]
setxkbmap -option keypad:pointerkeys
Существуют также различные утилиты, обеспечивающие более точное управление с помощью настраиваемых пользователем сочетаний клавиш, такие как xmousekeys и xdotool.
Начиная с KDE 5 , MouseKeys включается и настраивается с помощью systemsetting5 [7] (Оборудование → Устройства ввода → Мышь → Навигация с помощью клавиатуры)
Функция MouseKeys для macOS от Apple Inc. включается и настраивается через специальные возможности [8] ([apple] → Системные настройки → Специальные возможности → Мышь и трекпад).
Microsoft изменила метод включения между Windows 2000 , [9] Windows XP (добавлено диагональное перемещение курсора и MouseKeysAccel), [10] и Windows Vista . [11]
Замена клавиш мыши на цифровую клавиатуру выполняется следующим образом:
Ввод текста (с цифровой клавиатурой) эквивалентен нажатию выбранной кнопки. По умолчанию выбранная кнопка является основной (номинально под указательным пальцем , левая кнопка для большинства правшей и правая кнопка для большинства левшей). Ввод текста (с цифровой клавиатурой) выбирает альтернативную кнопку (номинально под безымянным пальцем , правая кнопка для большинства правшей и левая кнопка для большинства левшей). Ввод текста (с цифровой клавиатурой) выбирает кнопку-модификатор (номинально под средним пальцем , средняя кнопка 3-кнопочной мыши). Ввод текста (с цифровой клавиатурой) выбирает основную кнопку. Выбор остается в силе до тех пор, пока не будет выбрана другая кнопка.5-*/
Назначение левой/средней/правой кнопки на первичную/модификатор/альтернативную, альтернативную/модификатор/первичную или что-то еще можно задать многими способами. Некоторые мыши имеют переключатель, который меняет назначение правой и левой клавиш. Во многих BIOS ноутбуков есть настройка для назначения кнопок мыши. Во многих оконных менеджерах есть настройка, которая переставляет назначение. В протоколе ядра X Window System перестановка может быть применена с помощью xmodmap.
За исключением , все остальные цифровые клавиши цифровой клавиатуры используются для перемещения указателя на экране. Например, переместит указатель вверх, а переместит его по диагонали вниз влево.581