I4.02.2autosave at input breakpoints设计研究

保存时机应避开输入中途

别名: 输入间隙保存 · save at pause · 避开击键 · breakpoint save

概念解释

钟走到了,不等于现在适合写盘。避开输入中途指把保存对齐到一阵输入的缝上:词与词之间、字段失焦、一次粘贴结束之后,而不是在字母还在往外冒、选区还在拖、输入法还在组字的时候插入一次写入。间隔解决的是窗口有多宽;时机解决的是这一刀会不会切进人正在做的动作。

机制

击键、拖选、组字都占着同一条前台通路:文档树、光标、组成窗口。写盘哪怕在后台线程,仍可能锁文档、重排、触发校验、把焦点拉去状态区。这些干扰落在一阵的内部,会被编成「我正在打字,界面自己动了」。落在一阵结束后的缝里,同一笔写入往往不被觉察——人本来就在换气。

缝不是随便的安静。任务有自然的断点:写完一个短语、离开一个字段、选完一块再准备下一步。在断点上插入外务,恢复成本低;在组词正中插入,工作记忆里那半个词要重新拼。保存是外务的一种。IME 组字期间文档值还不稳,此时写盘可能把拼音碎片当正文,或把组成窗口打掉。

怎么研究

中断时机的经典做法是在可分解的任务里插入同等负载的外务,比较它落在子任务内部还是子任务边界。Iqbal 与 Bailey 用心理负荷预测「现在适不适合打断」:边界上负荷低,同样的打断造成的时间损失和恼怒都更小。自动保存可以当成一种系统发起的微型打断来测。

自变量:写入对齐方式(固定节拍 / 击键后固定延迟 / 失焦 / 显式断点)、写入是否触及焦点或布局。 因变量:保存附近的输入错误、光标或组成窗口被打乱的次数、主观「被打断」评分、单位时间有效字数。

实验室里的「打一段指定文字」停顿结构比真实写作干净。要包含输入法组字和拖选,否则会把最疼的中途切漏掉。不要用「保存成功次数」代替「有没有切进人的动作」。

边界

人连续输入数分钟完全不出现缝(赶稿、速记),若死等断点,未保存窗口会超过安全预算,必须有最长等待作为托底,允许在中途写一次,但那一次应避免抢焦点、避免重排光标。对开关、下拉这种离散控件,每一次改动本身就是断点,不必再等击键间隙。协同光标和远程跟随对「现在正在输入」更敏感,本地写盘仍应让路,但远程同步可以更疏,不必和本地断点同一拍。

怎么落地

  • 默认在一阵输入停稳、字段失焦或一次粘贴结束后写;用最长等待托底,避免永远不落盘。
  • 组字未上屏时不要写正文草稿;拖选进行中不要因保存重绘而丢掉选区。
  • 写入不得抢焦点、不得把光标跳到文首、不得弹出挡输入的对话框。
  • 验证:在句子中间持续打字,保存不应让光标、选区或输入法候选消失。只在停顿或失焦后检查草稿已更新。连续打满最长等待,确认仍会落盘,但界面没有把输入焦点夺走。

延伸

  • 同组I4.02.1 频率需在数据安全与开销间取舍 · I4.02.3 保存状态需可见但不打扰
  • 相邻H1.08 草稿自动保存 · H5.02 打断成本与时机
  • 站内检索autosave breakpoint · interruption timing · IME composition

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/I4.02.2