C6.31.1Key repeat delay and rate设计研究

长按字符键触发重复输入,重复速率与起始延迟是两个独立参数

别名: typematic · 按键重复 · 延迟与速率

概念解释

按住一个字符键不放,系统在起始延迟之后开始自动插入同一字符,之后按重复速率持续插入。延迟(第一次重复要等多久)和速率(之后每秒多少次)是两套独立设置,操作系统、无障碍开关、有时还有键盘固件各管一层。长按在触屏上还可能弹出变音菜单,那是另一条手势,不是桌面这条 typematic 流水线。

机制

键 down 启动定时器 Tdelay;到期后插入第二个码点,再按周期 Tperiod 插入。Tdelay 太短,本想点一下的人会在手指离键前挤出第二字符;Tdelay 太长,想用长按删掉一行的人要干等。Tperiod 决定直线移动光标或打出一串点的快慢。两者正交:可以把延迟设长、速率设快,专门照顾“确认是长按之后迅速重复”。游戏把某键改成“按住不重复、只发一次 down”,等于关掉 typematic。固件层的 repeat 若与 OS 层叠,会出现双倍插入。

怎么研究

用可记录时间戳的键盘,测量从 down 到第二个字符、以及后续字符间隔,对照系统设置里的延迟与速率。比较笔记本内建键盘、外接键盘、无障碍“筛选键”。触屏长按弹出与桌面重复要分开,不要混成一张表。被试任务应包括“只要一个字符”和“按住删除到行首”两类。改系统滑块后必须重测,因为有的机器固件仍按出厂周期插入,滑块只改了 OS 层。

边界

修饰键通常不重复(Shift 按住不应打出一串 Shift)。死键按住也不应开始组合一串变音。触屏的按键预览气泡不是重复。远程桌面会把延迟叠加上网络 RTT,本地设置不再等于体感。语音和手写没有 typematic。

怎么落地

  • 提供互相独立的延迟与速率,无障碍设置里写清单位(毫秒、每秒字符)。
  • 应用不要在自己的按键处理里再实现一套重复,以免与系统叠加。
  • 游戏或按住瞄准类操作显式关闭该键的 repeat。
  • 验证:把延迟调到最大、速率调到最快,确认“点一下”仍只有一个字符、按住后一旦开始重复就很快;两参数必须能被单独调到这个组合。

延伸

  • 同组C6.31.2 重复速率过快会在用户想要单次输入时意外产生多个字符 · C6.31.3 多键快速连按时,键盘防串扰能力不足会导致部分按键丢失未被记录 · C6.31.4 全键无冲设计允许任意组合同时按下都被正确识别,游戏与专业键盘更依赖此特性
  • 相邻C6.02 按键行程与触觉确认 · C6.16 文本输入中的撤销
  • 站内检索typematic · key repeat delay · repeat rate

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/C6.31.1