有可能,有一个回答我的是: 一个是键绑定,一个是绑定键。我没理解,我理解两者是一样,实现目标是一样的,就像 lsp-mode eglot 配置原理和一些是不一样,但都是 lsp 代码补全。主要是有十几个人一直在给我说不一样,却没一个人回我什么不一样,就是叫我看这看那,我要不看也不会配置了呀。
好吧,目前公司都没用 git ,所以那部分也没去配置。
我也经常干这种伸手问某个插件是什么作用的事情,但要是别人两句话解释了一下还没明白的话,就不追问了,自己能解决的不该花别人太多时间。不追问怎么办呢?readme啃一遍,肯定知道了;readme看了也不知道,那就“我的配置暂时够用了/这个插件我暂时不需要”。
我可不是伸手党,你看前面聊天内容,两个插件我都用过,你所说的 readme 也都看过,也都配置过。到目前你们所解释的内容我都知道,只是每个人的理解不一样,举个例子就像 Angular 与React 在你们眼里他就不是一样的,因为很多技术原理不一样。而在我这里却理解成了一样的,解决的问题是一致的。
既然你吃了一个鸡蛋觉得很好,那又何苦非得见一面生了那个蛋的母鸡呢
https://zhidao.baidu.com/question/434582708.html
原句出自这里,是不是怼人,我不知道,视读者心境而定。
你到底在扯什么
我提的遗憾至于你们那么多恨意?
你解决了问题,就不要试图了解里面的细节。
把所有实现细节都暴露给用户的设计是坏设计。
你吼辣么大声干什么?
这又算是你自己的阅读理解。我寻思我打了那么多字,起码的尊重也该有吧,我又没说你是伸手党。
我是看前面一个怼了你立刻就接着怼人,尊重感谢你的人也不会在感谢了吧。两个其实对会用,本来也没什么,只是大家众口一词比较疑惑是不是自己理解错了之类的。
祝你身体健康,生活愉快
好了就这样吧,网上过嘴瘾,搞这些小心态没意思。
以 大家有没试过按 ctrl 按到手指痛? - #18,来自 twlz0ne 为例。
用 hydra 包装 C-n/p
,来减少下/上翻页的按键次数:
原始按键翻页:
C-n
C-n
C-n
...
C-n
hydra 按键翻页:
C-n
n
n
...
n
使用 hydra 相当于进入了一个临时 mode 或 state,此时不在需要再按前缀键
[ origin state ] [ hydra state ]
| |
| |
| C-n |
| ----------------> |
| page-down |--.
| | | n ;; page-down
| |<-'
| |--.
| | | n ;; page-down
| |<-'
... ...
| |--.
| | | q ;; exit hydra
| <---------------- |<-'
| |
| |
v v
而 which-key 是把已经存在的绑定「分层」展示出来,比如定义了一系列按键:
key: func:
------- ---------
C-x a func-a
C-x b b func-bb
C-x b n func-bn
C-x b p func-bp
在你按下 C-x
的时候提示:
a -> func-a
b -> prefix ;; 注意这里
继续按 b 的时候提示:
b -> func-bb
n -> func-bn
p -> func-bp
接着喊 b/n/p 执行,并关闭提示窗口。
从按键提示上看,hydra 和 which-key 是有一点点类似,但本质上不同:
- hyrda 可用来减少重复「前缀」按键,也具备提示下一步操作的功能
- which-key 仅用来提示下一步操作
多谢,自己用的 evil,然后水平限制很多功能还没有用到,少数的就写成了函数。
hydra只有用户用hydra定义的的键才会提示,which-key就只有提示功能,所有快捷键都会提示。你可以考虑用hydra实现提示所有快捷键,这样你就知道这什么区别了。hydra的提示就是一个附送品,hydra目标就不是来提示的,而是一种快捷键策略,就好像evil
。所以说啊,实现的目标都是说叫快捷键提示
,这根本就不对。
你是手机回的吧:grin:
一个是自动发现并提示快捷键,一个需要配置想干嘛就干嘛,目标是不一样的。楼主用 evil 没有发现异同点吧
hydra
就是九头蛇,哈哈哈
一个用于快捷键提示,一个用于改快捷键。这俩根本就不是一类东西
跟 hydra
类似的应该是 which-key+keymap
hydra
更灵活可以实现更强的功能,但是需要手写
keymap
是 Emacs 内置的,通用一些,加上 which-key
就是懒人版的 hydra
了。