命令面板让用户通过搜索找到并执行操作。设计时要区分“打开一个对象”和“修改当前对象”,说明命令的作用范围、所需参数与不可执行的原因;涉及归档、发送等后果时,再进入明确确认,不能把回车选中搜索结果等同于立即执行。
以项目管理工具搜索“归档”为例,可以在墨刀中制作命令查找与确认的交互原型,同时呈现当前项目、候选动作和执行后的去向。熟练用户省下的是找菜单的步骤,不应省掉对目标与后果的理解。

先判断用户是在找内容,还是找操作
搜索“季度计划”通常是在找一个项目;搜索“归档项目”是在找一个动作。两类结果可以出现在同一入口,但应有名称、分组或图标等清楚区别。否则用户本想打开已归档的项目,却可能误触“归档当前项目”。
VS Code的界面说明展示了通过命令面板查找命令及显示快捷键的方式。它可作为可发现性参考;业务系统仍应根据对象、权限和后果设计自己的执行流程,不必复制编辑器的所有模式。
本例把结果分为“项目”和“操作”。项目结果展示名称与所属空间,操作结果使用动词开头,并在可能误解时写出对象,例如“归档当前项目:春季发布”。搜索排名再准确,也不能代替这一层含义区分。
用命令登记表约束名称与上下文
| 命令 | 作用范围 | 所需条件 | 选中后的行为 |
|---|---|---|---|
| 打开项目 | 选中的项目 | 拥有查看权限 | 导航到项目首页 |
| 新建工单 | 当前项目 | 有创建权限 | 打开新建表单 |
| 归档当前项目 | 当前项目及其可编辑状态 | 有归档权限,项目尚未归档 | 展示对象及影响,再确认 |
| 移动工单 | 已明确选择的工单 | 有移动权限,有可用目标 | 选择目标项目后提交 |
登记表还可以记录同义词和用户常用叫法,例如“封存”是否应找到“归档”。显示名称保持一致,检索别名可以更宽容;不要为了匹配更多关键词,把一条命令写成一串近义词。
没有当前项目时,“归档当前项目”就没有明确对象。可以不显示,也可以禁用并解释“先打开一个项目”;选择哪种方式取决于用户是否需要发现这项功能。无权限的敏感操作则还要考虑是否允许披露,不能把全部后台能力都列出来。
缺少参数时进入下一步,不要猜一个默认对象
用户选“移动工单”后,面板应继续询问目标项目,保留清楚的步骤与返回路径。目标为空、没有访问权限或与当前项目相同,都需要反馈。这里的搜索是在补充命令参数,不能因为排在第一位就自动认定目标。
若参数较多或者需要比较大量信息,转到完整表单可能更合适。命令面板适合短而连续的任务,不必成为装下所有复杂操作的微型应用。返回上一层时保留已有输入,并清楚显示回到命令列表还是取消整个动作。
执行前再核对一次当前对象
用户打开面板后,后台项目状态可能改变,或者他通过其他方式切换了项目。点击归档时应以明确的项目标识核对权限与最新状态,不应从此刻视觉上激活的页面猜目标。确认层显示项目名称、所属空间与主要影响,有助于用户发现选错。
执行过程中防止重复提交,并在成功后说明结果。项目归档后不能继续编辑时,界面应更新对应状态;执行失败则保留命令上下文,给出能继续的路径。不要关掉面板、清空全部输入,只留下一个一闪而过的错误提示。
常用排序与最近使用可以提高效率,但危险操作不应仅因为最近执行过就成为默认立即提交项。回车通常先确认当前候选,是否还需要第二次确认由动作风险决定。
键盘是完整路径,不只是打开面板的快捷键
面板应提供可见入口,快捷键只是另一种调用方式。打开后焦点进入搜索框,方向键浏览候选,回车确认,Esc按约定返回上一步或关闭;关闭后回到合理的原触发位置。存在多层参数时,不能让同一个Esc有时返回、有时清空全部而没有规律。
中文输入期间的回车首先可能是在确认候选文字,不应误触命令。键盘范围与冲突可延伸阅读产品快捷键的设计规则;弹层焦点、可见焦点和退出路径则与键盘导航和焦点管理一起交付。
拿同一个词走完三种任务
评审时搜索“归档”:先打开一个已归档项目,再归档当前项目,最后尝试在无归档权限时查找操作。观察结果分组是否清楚、当前对象有没有变、确认是否讲明影响。再加入一次无结果、一次操作失败和一次中文输入,能比单独看面板展开图发现更多问题。
命令面板不应让功能变得更加隐蔽。它应与页面原有菜单保持同一套命令含义,让新用户按界面完成任务,也让熟练用户通过搜索走得更直接。