E2.20.2tag delimiter convention设计
分隔符触发规则需要明确提示,如回车或逗号
别名: 标签分隔符 · comma to tag · 回车生成标签
概念解释
打完一个词,要有一个键把它从「正在写的字符串」变成一枚标签。这个键可能是回车、逗号、空格或 Tab。人不知道规则时,会把逗号打进标签里,或按回车把整张表交出去。分隔符约定(tag delimiter convention)要求在动手前就能看见「用什么确认一枚」,并且全产品一致。它管的是如何提交一枚标签,不是词表脏不脏,也不是删一枚会不会牵连别的。
机制
槽同时承担「编辑当前词」和「确认成芯片」两种模式,中间靠分隔符切换。规则若只存在于实现者脑子里,用户会按自己在别的产品里学会的那一套:有人空格即确认,有人空格是词的一部分(「交互 设计」)。回车在表单里通常是提交,在标签槽里若也是确认,焦点还在槽内时回车会误交表。逗号在中文输入里是中文逗号,只听 ASCII 逗号会让中文用户无法确认。约定必须外化,并且与表单提交键错开或在确认后仍留在槽内。
边界
每次只打一枚、旁边另有「添加」按钮时,分隔符不是主路径,提示可以弱。从剪贴板贴入「a, b, c」时,分隔符还承担拆串,规则要同时覆盖键入和粘贴。标签合法字符若包含逗号(少见),就不能再用逗号当确认。IME 组字中的空格和回车上屏,不能当成确认。
怎么落地
- 在槽空闲时写明确认方式(「逗号或回车生成标签」),不要靠人试。
- 让回车在槽内确认标签且不提交表单,除非已经没有正在编辑的词。
- 同时接受中英文逗号;空格是否确认要按标签是否允许多词来选,并写出来。
- 验证:不看帮助,问「怎样让这个词变成一枚标签」。再分别按回车、逗号、中文逗号、空格。预期之外的键若提交了表单或把标点吃进标签,约定就还没外化。