color-rg服务器中使用失败

服务器centos7,不能联网,emacs不支持JSON,自行将配置及下载包一起放入,显示信息如下: 感觉应该不是配置问题,因为在虚拟机CentOS7中可以正常工作

确认服务器上有rg么

确认有,使用consult-ripgrep和rg都正常

应该是你配置问题,emacs -Q 对比测试一下吧。

感谢回复!我的配置和安装包和虚拟机是一样的。是不是找不到Rg路径所致?或者add path不成功?环境变量没设置好?

emacs -Q先对比下,看看论坛回复框里的内容。

不要搞一堆配置去测试,那是撞大运。

大概率和 rg 的这个 issue 相关

你给 rg 的参数 "!node_modules" 里的 ! 需要 escape,或者直接用 single quote,不然有可能会触发 bash (以及 zsh, csh/tcsh,从报错是 node_modules: Event not found 来看题主用的可能是 tcsh) 的 history expansion

compilation-start 的话必然会用 shell 解释参数,我觉得改用 ' 是最合理的解决方法。

@wangbo Use single-quote instead double-quote. · manateelazycat/color-rg@a239d8d · GitHub

我推送了一个补丁, 你更新试一下?

非常感谢您的支持!刚拿到就更新了,问题依旧,最近项目忙,今天详细测试下: 我的测试方法:color-rg.el主文件,使用emacs-Q,没有出现任何错误信息;打开debug调试,调用color-rg search symbol in project,显示信息如下,与之前的信息一致

最好能够给我最小重现的项目文件, 这样我好修复。

目前没法重现, 只能盲修。

给点调试思路:

首先,在 interactive lisp buffer 里

(setq color-rg-search-ignore-rules nil)

看能不能使用。

其次,你贴 backtrace 对我们定位问题没有帮助,需要贴 *Compilation buffer*的内容

1 个赞

多谢,使用这条语句,问题得到解决! (setq color-rg-search-ignore-rules nil)

1 个赞

我测试了一下,tcsh 的话哪怕用单引号也会触发展开。而用反斜杠的话,在 ksh 上就会出问题。

看来最好办法还是用户自己定义参数。不过至少这个 commit 能处理 bash 这样大部分人的情况。

1 个赞

感谢大佬指点