我在这里看到可以使得helm窗口在特定位置:
不过链接里的代码好像都是spacemacs自带的代码,仅依靠这些代码是无法实现这种效果的。 那么为了实现这种效果应该要怎么设置呢?
这种设置是持久的吗?或是说如果helm选中之后该窗口会消失位置会由其他窗口补充,等下次再开的时候重新在这个窗口出现?
另外还有几个关于helm的问题:
-
helm为什么要用minibuffer作为输入呢?这样的话岂不是开helm之后再做一些操作(比如
M-:
)会使得helm显示的很奇怪?使用minibuffer的优势在于哪里? -
helm-display-header-line
开启之后仅仅是复制的minibuffer的信息,为什么不把这个做成单独的输入框呢?如果想做的话,关键技术是什么? -
helm开启之后点击其他窗口在点击回helm窗口,只有在
helm-allow-mouse
开启的时候点击待选项的字符才可能重回minibuffer焦点(这也是spacemacs加入SPC w b
快捷键的原因吧),用起来很不方便。仅仅是因为作者不常用鼠标所以懒得加,还是因为这个技术实现起来难度比较大? -
如果想把helm窗口常驻通过鼠标进行切换(也就是开启
helm-follow-mode
之后进行点击的效果),但是按回车之后依然保留helm窗口,甚至同时开几个helm窗口,是不是实现起来对helm自身的修改还是比较多的?我看helm-read-pattern-maybe
函数本身还是比较大的,得到read-from-minibuffer
结果之后直接返回。要改的话是不是整个函数都要重写的样子。 -
如果你从上面几个问题大概能猜出我要做什么的话,那么对于持久性显示列表+fuzzy matching这个需求,除了helm,还有什么合适的选择吗?
几个问题大概有些奇葩。后续如果能做出之后会把我做的东西放出来,大家就会知道我为什么要做这些工作了。
Emacs新手求轻喷