目的

学习emacs 中搜索和替换字符串的方法

使用find-grep-dired

在指定的目录中批量替换字符串的操作流程

EmacsWiki: Dired Search And Replace

例如:在文件夹/dirA下替换str1为str2

operation: M+x —> find-grep-dired —> str1 —-> t —-> Q —-> str1 —> str2 —> 逐个确认是否替换;

替换完成后保存替换: Ctrl + x –> s

notice: ^ 逆向搜索,只能在本文件中进行,无法跨文件

doom 下,快捷键绑定

1
2
3
;;绑定快捷键
(map! :leader
      :desc "搜索替换文本" "sg" #'find-grep-dired) ;; 这个快捷键是SPC s g

全文替换

一字字替换:query-replace

正则替换: replace-regexp

搜索

文件名搜索

find-dired

find-grep-dired 递归所有子目录

grep 在当前目录中查找指定的 regexp

文本搜索替换

grep-find 显示包含字段的行,递归子目录