Etags 无法访问

$$我的Emacs tags 无法访问到,求指教$$


我用的原版spacemacs, 开启我的项目,创建etags:

(myblog) $ etags -R *

然后我进入我的emacs使用:

M-x visit-tags-table

访问了我的TAGS, 但是我在server.py文件里使用C-t or C-[ 都不好用, 而使用C-t 时提示:

No previous locations for find-tag invocation

我用M-x find-tag 可以直接访问TAGS,并且跳转到我定义的函数,也就是说TAGS是没有问题的。

那么问题来了:为什么我不能直接用C-t来直接跳转?( ps. 真的已经visit-tags-table我的TAGS了,难道不是载入全局TAGS功能?)

C-t 貌似绑定的是 pop-tag-mark,这个函数看起来要先 push 之后,再 pop 才有意义。

推荐你使用 etags-select 这个插件,其它的都不太好用,这个插件是神器

我看了下etags-select的wiki

发现我的emacs里只有 helm-etags-select

我觉得好像不是这个功能,

有没有etags-select的 安装和快捷键教程 在rock-spacemacs里?

这个 wiki 里面都有讲吧? 安装 package 很简单啊,直接 package-install RET etags-select

不好意思哈,之前wiki看错了,那个连接只是etags,不是etags-select。

现在已经用了etags-select, 确实很强大,但是目测无法跳转到 变量 的定义,我可以吧 \M-. 改成 C-t 么?直接修改global-set-key会和pop-tag-mark冲突么?

还有跳回功能,类是vim ctags C-t之后的C-[ , 我在 wiki-EtagsSelect 里没有看到。毕竟如果跨脚本跳跃,用buffer也挺快,但是还是想偷个懒直接快捷键跳回来。

返回我找到了,\M-*, 现在主要的问题就是跳转变量了。 (define-key key-translation-map [(control [)] [(\ meta *)]) ;; 这种写法好像无法修改快捷键,C-t还是pop的快捷键

还有一个小点,\M-? 这个类似__doc__的功能,能不能不要令开一个buffer,只让它在底层Buffer里提示,或者类似补全一样的提示,虽然我还没用到,但是觉得这个功能在写python的时候会经常用到,毕竟很多引入的包。话说C-h P 里关于ES的说明和wiki一样,好少呀。

\M-. 改成 C-t 是可以的呀,global-set-key 应该是不行,可以考虑定义 evil-normal-state-map 上面的 key binding

谢谢,用evil-normal-state-map应该是可以了