滑鼠键,又称模拟滑鼠[1],是在图形用户界面上的功能,用户能用键盘上的按键(通常是数字键)作定点设备(主要是用作取代滑鼠)。早年在可视编辑器上能用方向键移动游标,滑鼠键起源于此。过去终端通常没有配备滑鼠,故滑鼠键是主要的定点设备。自后滑鼠变得普遍后,滑鼠键则变成辅助性质,通常在以下的情况使用:

现今的滑鼠键大多是根据X窗口系统在1984年制定、以数字键操作的标准。[2][3]

布局

 
X窗口系统上滑鼠键的默认布局
key action
Num Lock Alt⇧ Shift一起按:

激活/停用滑鼠键

8 向上移动
2 向下移动
6 向右移动
4 向左移动
7 向左上移动
9 向右上移动
3 向右下移动
1 向左下移动
/ 选择主键
* 选择修饰键
- 选择替代键
5 单击
+ 双击
0 长按按键
. 放开按键
Enter 输入键

MouseKeysAccel

 
X window system MouseKeysAccel trajectory
参数 意思
mk_delay 按下按键和开始加速之间的时间(毫秒)
mk_interval 重复运动事件之间的时间(毫秒)
mk_max_speed 最高速度
mk_time_to_max 加速至最高速度的时间
mk_curve 加速度

此5项参数都可被设置。[4]

X Window System的MouseKeysAccel决定了光标的加速度。[3]按下方向键的一瞬间,光标会移动一段距离,取决于action_delta。过了mk_delay后,假如按键未放开,光标会加速移动,直到过了前mk_time_to_max后,光标就会以mk_max_speed匀速移动。

光标移动速度以指数增长

 

mk_curve 移动
-1000 匀速移动
0 匀加速运动,速度直在线升
1000 加加速度运动,加速度直在线升

激活

在使用X Window SystemXorgXFree86类Unix系统,如LinuxBSDAIX,激活和停用滑鼠键的快捷键的非官方标准是⇧ Shift+Alt+Num Lock[3],有时没有加速度的滑鼠键可以透过⇧ Shift+Num Lock激活,这取决于窗口管理器,而且都可在配置文件修改。在Xorg下,setxkbmap可用来激活滑鼠键。[5]

setxkbmap -option keypad:pointerkeys

另外亦有程序可以重新设置滑鼠按键,如xmousekeys页面存档备份,存于互联网档案馆)和xdotool页面存档备份,存于互联网档案馆)。

macOS上可在“系统偏好设置”→“辅助使用”→“滑鼠与触控式轨迹板”激活滑鼠键,也可以按下快捷键⌥ Opt+⌘ Cmd+F5,或快速按下Touch Bar上的Touch ID 三次。[1]

Windows可在“控制面板”→“易用性中心”→“使鼠标更易于使用”→“使用键盘控制滑鼠”激活滑鼠键[6],或按下快捷键左边Alt+⇧ Shift+Num Lock[7]

参考资料

  1. ^ 1.0 1.1 使用模擬滑鼠控制指標. Apple. [2017年7月11日] (中文(繁体)). 
  2. ^ The X Keyboard Extension: Protocol Specification (PDF), 1997年11月6日 [2017年7月11日], (原始内容 (PDF)存档于2004年4月10日) 
  3. ^ 3.0 3.1 3.2 10.5 Controls for Using the Mouse from the Keyboard, The X Keyboard Extension: Library Specification (PDF), 1997年11月10日 [2017年7月11日], (原始内容 (PDF)存档于2004年12月26日) 
  4. ^ GNOME Documentation Library, Configuring a Keyboard-Based Mouse 互联网档案馆存档,存档日期2010-06-12.
  5. ^ xkeyboard-config manual page. 2012年 [2015年3月15日]. (原始内容存档于2021年2月25日). 
  6. ^ 使用滑鼠鍵移動滑鼠指標. Microsoft. [2017年7月11日]. (原始内容存档于2020年8月19日) (中文(繁体)). 
  7. ^ 協助工具的 Windows 鍵盤快速鍵. Microsoft. [2017年7月11日]. (原始内容存档于2020年7月2日) (中文(繁体)).