突然 yasnippet 的键位全部失效

yasnippet 的键位突然就这么无缘无故的失效了,tab expand 完全失效,检查了一下 yas-minor-mode 的 map,键位全部不存在了,好奇怪啊。而且 yas-minor-mode 打开关闭都不管用。

我对 emacs 是又爱又恨啊,最恨的就是这种无缘无故的灵异事件,没有任何信息可以用来 debug

1 个赞

奇怪的是 tab 补全 snippet 突然就不能用了,但是 M-/ 还能用。算了先凑合吧。

你是输入完全了以后就不能用tab expand了嘛,可以用我这套方案。 就是每个snippet key后面加->,这样输入完全也可以用tab补全。

1 个赞

->是指 tab 吗?

很灵异的是,我今天之前都是用 tab 补全,天天都在用,然后今天更新完 yasnippet 之后就不行了,然后我把 yasnippet 版本滚回去也不行 :joy:

我的意思是本来col(comment line)的缩写是col,我把它改成col->,这样输完col可以用tab继续补全了。

没有必要吧,在 company 补全菜单的话直接回车就行了吧?还是我又理解错了?

Edit: 不过你确实提醒我了,在 company-backends 中加入 company-yasnippet 也不失为一种办法。spacemacs 下的 elisp-mode 默认没有开启 company-yasnippet 后端。

Edit2:不只是 emacs-lisp-mode,好像 spacemacs 中的大部分编程 mode 默认都没有开启 company-yasnippet,这是为什么呢?

这是之前看别人的配置看到的方法,你加了Company yasnippet后输完col就啥都不显示了,也无法用tab补全,你可以自己再定义快捷键进行expand,但是麻烦,我说的是解决这个问题的………

好像答非所问了……

你完全可以自己加到prog-mode-hook里