基于 ripgrep 的代码搜索和重构工具


#62

Windows 代码页 问题。

启用win10的全局utf-8选项,虽然这是一个实验性选项,但我使用了一段时间了,除了少部分旧软件内置菜单和显示编码非unicode所以无法正常显示外,使用体验非常好。

windows 下无法进行中文搜索问(其实 日文 韩文 乃至法语等其他拉丁脚本也一样)其实不是emacs编码设置问题,而是emacs对subprocess的命令编码无论你如何设置,在传输到cmdproxy shell 的时候都会转换到你的 locale code page,通常对于中文用户就是gbk编码,因此 rg ag等默认接受utf-8参数的工具接到的是乱码,当然搜索不到。具体bug可以看这个mailing-list https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00406.html

启用后 添加如下片段到你的 启动配置中:

(when (and (eq system-type 'windows-nt)
           (eq w32-ansi-code-page 65001))
  (setq w32-system-coding-system 'utf-8)
  (define-coding-system-alias 'cp65001 'utf-8))

Windows 下emacs,Google translate插件安装之后,翻译的buffer为乱码。该怎么设置。
#63

小文件用swiper,大文件和目录用rg


#65

color-rg 能不能对 rg工具 增加参数的搜索? 比如 我实际用rg搜索的时候,会使用 -T, --type-not参数来 忽略某种文件类型, color-rg 有 可以设置这种参数的功能吗? 或者说 emacs下怎么实现这种功能?


#66

C-h f color-rg-build-command

你可以改一下这个函数


#67

感谢 确实有这个功能,能不能 举个例子怎么使用color-rg-build-command这个函数,我不会lisp


#68

你把括号去掉 他就是python了

如果你想用 --type-not

只需要在 (list “–heading”) 后面加一行

(list “–type-not” “asm” “–type-not” “awk”)

然后 C-x C-s 保存

再然后 M-x eval-buffer

再然后 你就能去github提issue了


#69

但是你这样不是灵活的啊,我想有可以灵活设置的功能。


#70

那样啊

你可以 M-x info C-s elisp 回车 回车

只需要找 list 和 defcustom 相关的 就行了


#71

你可以先搜索再过滤文件,看keymap


#72

这里可以有def-custom

可以是个list 也可以是个function


#73

你需要的功能是有现成的。直接在 color-rg buffer里面使用大写C。绑定到的函数是 color-rg-customized-search。就可以手动输入命令啦。你想传什么给rg都可以。