我看了一下应该不行。为什么你们都可以同时开呢,我都没想明白你们怎么配的
其实没有少。citre-ace-peek 的功能完全覆盖 citre-peek 了,另外还能做到类似「在写函数参数的时候直接 peek 函数定义」 的功能。恰恰说明 @seagle0128 仔细读过文档并且跟着操作了。
我看了一下应该不行。为什么你们都可以同时开呢,我都没想明白你们怎么配的
其实没有少。citre-ace-peek 的功能完全覆盖 citre-peek 了,另外还能做到类似「在写函数参数的时候直接 peek 函数定义」 的功能。恰恰说明 @seagle0128 仔细读过文档并且跟着操作了。
我是自己配置同时开的,没有利用Seagle那里的。自己配置就当作两个独立的package就好了。citre-ace-peek 在调用时还需要再输入一些字符定位,我看直接citre-peek 当下cursor的位置,在我这里就很好了。
求分享同时用两个后端的配置,我来抄抄
多谢回复,我是利用universal ctags生成的tags文件,我还奇怪为啥是大写的TAGS。我看下我的配置是不是哪里不小心用到了什么。
这个其实可以用 citre-tags-file-alist
做到,但需要对每个项目都改一下这个变量。
我想知道如果用统一的目录存 tags file 的话,怎么确定哪个工程是用哪个 tags file 呢?用工程目录来命名它吗?
感觉这套东西对 Citre 结构的侵入性有点大。如果我要做类似功能的话,我会在运行创建 tags 文件的向导过后,让 Citre 记住这个工程对应的是这个 tags 文件。但这个向导本身也要在项目根目录里面写一个文件。
按一下 recenter
就好
懒猫大神,我就是纯粹把lsp 和citre 当作两个独立package配置,然后在python项目里,看起来彼此没有什么影响。这是我配置citre的地方,其实抄了seagle的配置方式; lsp就是另一个独立的文件。
我觉得不用搞那么复杂哇,我给你一个思路哈:
通过cache目录下文件名自身的md5 ctags文件名作为 “自解释” 的字典,这样你就不用在代码里面去维护字典和做字典查询的工作。
应该不用改太多。
M-l j
: Jump to the definition.这个快捷键能否改成单按键? 按两下不是很方便哇。
这个思路不错,谢谢!这样我们总共就有三套寻找 tags file 的方案了 我需要考虑下怎么在向导里理顺它们
按一下的快捷键基本都被 Emacs 自己占完了,考虑到要一边开着 peek window 一边编辑,移动之外的功能我都放在 M-l
下面了。你可以定制一下 citre-peek-keymap
。
这应该是etags.el的锅。(Windows下TAGS、tags不分)
如果把tags
文件改名为.tags
(也是citre支持的),就不会有这个提示了。
这也行!那这个事也要在文档里提一下。
你在 Windows 上体验怎样? 我之前收到过一个在 Windows 上补全会卡的报告。
你确定两个可以同时补全吗?
我是Nox(eglot变种)和citre同时启用的,Nox总是会先补全,citre不生效。
多谢提醒,我其实目前只是利用citre作为查看代码的工具。我刚测试了下写的时候,补全应该只是从lsp出来的,我之前没有注意到这两个在这里会冲突。
多谢提醒,我修改名字后,果然就好了。这个etags.el 难道是自动在project里面会查看有无tags,然后调用?能不能关闭呢? 我其实还没找到为什么etag在这里发挥了作用。。。
你可能用了 projectile 然后碰上了这个问题:Tips when work with projectile · Issue #63 · universal-ctags/citre · GitHub
因为 LSP (lsp-mode, eglot, nox) 和 citre 都是用的 company-capf 后端,应该是冲突的,补全只能从lsp里面过来。