【开发者自荐】键谱:一个记录、展示快捷键的本机网页应用(V3啦)

我在 github 上也和人谈到过这个问题,不过到现在还没啥新想法,就把当时的答复贴过来吧

我在写键谱时,也思考过这种多次连续按键的问题,以下是我的想法:

键谱只针对记录“组合键”,“组合键”的概念是“同时按下的多个键(+)”,对于像sublime text这样的(Ctrl+K,Ctrl+Up)我觉得应该叫“连续键(,)”(借用格斗游戏里的连续技),它恰恰契合了键盘层的理念:按下连续键的起始键(Ctrl+K)后,后续整个键盘的按键所对应的功能完全不一样了;类似的,vi 的 esc 也可以算是连续键的起始键,按完后进入命令层,后续键盘输入虽然键值不变,但是功能变了;windows 程序的菜单也可以算,Alt+F 进入“File 功能键盘层”(打开 File 菜单),然后 O 键的功能就是打开文件,没有对应功能的按键则被忽略。

这其实是应对键盘上按键不够、功能太多的两个思路,并且经常结合起来,最常用的功能用组合键——更快,其他的用连续键——按键选择余地更多,而且可以更好地组织、分层,便于整理、记忆。

对于连续键、物理键盘层(现在也有软件实现的键盘层),起始键/切换键按下后,就不用再关注这个键了,而只需要关注之后真正调用功能的组合键,因此我觉得,应该把以这个起始键开始的连续键后续的组合键都放到一个键盘层下,这个起始键应该体现在层名里,而不需要体现在键表里。

所以这是我对当初引入键盘层的思考,当然,怎么使用是别人的事了,用出花来也是可能的(已经用出花来了,小众论坛上有人用扩展键布局来画“鼠标手势分布图” :smiley:

其实,我一直有些头痛的点是,在同一层下,组合键实在太多,颜色分类就很不好搞,搞颜色分类,最好是一个键上的组合键是可以分到一类的,否则这个键的颜色就不能代表它上面的所有组合键。对于这种快捷键多得一批的应用,我个人是觉得还是要分多个层来组织。

其实还有一种,超过2个的连续键,比如 CS 里的 B43,嗯,完全不建议在当前的键谱里搞,想着就…… :joy_cat: