occur mode

若只是需要在Emacs所打开的buffer中查询某字段,则occur命令一个对GNU grep的很好的替代.

  • occur命令

    M-x occur会让你输入一个正则表达式,然后在 当前buffer 中进行内容匹配,在Occur Output buffer中显示匹配正则表达式的行,并对匹配部分进行加亮处理.

    M-x multi-occur会让你选择要在哪些buffer中进行内容匹配

    M-x multi-occur-in-matching-buffers会在buffer name符合某正则的buffer中进行内容匹配

    M-x occur-rename-buffer 对默认的*Occur* outputbuffer进行重命名,命名规则为*Occur:匹配的文件名列表,用/分隔*

  • occur-mode的子命令

    • r命令重命名*occur output* buffer

    • g命令重现做一次正则匹配查询

    • M-g M-n / M-g M-p 遍历*occur output* buffer中匹配行的原所在文件位置

    • C-c C-f 开启Next-Error-Follow minor mode

      在开启Next-Error-Follow minor mode后,可用使用M-n和M-p来代替M-g M-n / M-g M-p

    • q命令退出*occur output* buffer

  • 让occur命令作用于某个major mode的所有buffer中

    (eval-when-compile                                                    (require 'cl))                                                      (defun get-buffers-matching-mode (mode)                               "Returns a list of buffers where their major-mode is equal to MODE" (let ((buffer-mode-matches '()))                                    (dolist (buf (buffer-list))                                        (with-current-buffer buf                                         (if (eq mode major-mode)                                       (add-to-list 'buffer-mode-matches buf))))                  buffer-mode-matches))                                              (defun multi-occur-in-this-mode ()                                    "Show all lines matching REGEXP in buffers with this major mode."   (interactive)                                                       (multi-occur                                                        (get-buffers-matching-mode major-mode)                             (car (occur-read-primary-args))))                                  ;; global key for `multi-occur-in-this-mode' - you should change this.
    (global-set-key (kbd "C-<f2>") 'multi-occur-in-this-mode)

转载于:https://blog.51cto.com/darksun/1416934

emacs之occur mode笔记相关推荐

  1. 云原生之使用Docker部署开源Leanote蚂蚁笔记

    云原生之使用Docker部署开源Leanote蚂蚁笔记 一.Leanote蚂蚁笔记介绍 1.Leanote简介 2.Leanote功能 二.本次实践介绍 1. 本次实践简介 2. 本地环境规划 三.检 ...

  2. linux挂载磁盘分区,Linux 新磁盘分区与挂载

    1.查看未分区的盘 2.新建分区 3.格式化分区(/dev/sdb1) 4.查看磁盘uuid [root@web-node1 ~]# blkid /dev/vdb1 /dev/vdb1: UUID=& ...

  3. 洛谷日报 2020年3月前索引

    2020 2019 2018 感觉洛谷日报全是干货!!!先记下来再说 2020 年洛谷日报索引 3 月 #260[dove]Church 编码(和 Lambda 演算) https://www.luo ...

  4. 洛谷日报索引(2020、2019、2018)

    历年洛谷日报索引 2020 2019 2018 感觉洛谷日报全是干货!!!先记下来再说 2020 年洛谷日报索引 3 月 #260[dove]Church 编码(和 Lambda 演算) https: ...

  5. [转载]洛谷日报索引

    2019年 6月 #183[朝田诗乃]你以为莫队只能离线?莫队的在线化改造 https://shoko.blog.luogu.org/moqueue #182[Heartlessly ]常用距离算法详 ...

  6. Submit Text2 插件下载列表 20151104 及离线安装方法

    说在前头: 因为公司网络问题,没有办法正常连接https://sublime.wbond.net/repositories.json,而且就算我自己发布这个json站点,依然报CA证书错误而无法获取下 ...

  7. emacs 新手笔记(四) —— 使用 dired 完成一些简单的文件和目录操作

    ilocker:关注 Android 安全(新入行,0基础) QQ: 2597294287 据说熟悉了 dired,就可以在 emacs 下轻松管理文件和目录了,甚至不再需要 shell 和桌面操作. ...

  8. 用emacs做笔记_3种用于记笔记的Emacs模式

    用emacs做笔记 无论您从事什么工作,都不可避免地需要记笔记. 通常,不止几个. 如果您在当今时代像许多人一样,可以使用数字方式记笔记. 开源爱好者有多种选择可以记下他们的电子格式的想法,思想和研究 ...

  9. Emacs之正则查多字符串(occur)

    Emacs 正则表达式语法 以下是经常使用的模式: Pattern Matches . 除换行("\n")以外的所有字符 \. 一个点 [0-9]+ 一个或多个数字 [^0-9]+ ...

最新文章

  1. FALCON组装参数学习
  2. ASP.Net面向对象思想
  3. 1.65亿人次扫码登记的背后,是TBase的秒级返回
  4. 单片机按键防抖程序_这些单片机按键设计方案,请拿好,不谢!
  5. LeetCode 318. 最大单词长度乘积(位运算)
  6. 栈溢出笔记1.8 字符串问题
  7. CSS兼容IE/Firefox要点
  8. 将输入流读取成String后返回
  9. MySQL 基准测试(sysbench)工具安装时提示 automake 1.10.x (aclocal) wasn‘t found, exiting
  10. fastjson转换包含date类型属性的对象时报错com.alibaba.fastjson.JSONException: For input string 解决方法
  11. 从实践应用中催生课题,通过课题研究促进应用
  12. php_eol为什么没有换行,PHP PHP_EOL 换行符
  13. 结构方程模型(SEM)理论篇 (SEM 1)
  14. 如何成为一个区块链开发人员_关于成为远程开发人员的思考
  15. 跟着Nature学作图:最强“ 颠覆性 ”技术,您确定不学学?助力发Nature顶刊!...
  16. python内置容器--元组,字典与集合
  17. 小米手机用什么耳机音质好?发烧级音质蓝牙耳机推荐
  18. 吊打 CLIP 平均10个点,Meta 多模态通用模型 FLAVA真香啊
  19. JavaScript图片轮播图
  20. 风火之旅 需要的信息保存

热门文章

  1. 大小端判断及相互转化
  2. WEB标准 基础(一) 到底是什么?
  3. mac os x 10.7下配置svn服务器
  4. RobotStudio机器人运行路径的创建与仿真
  5. mysql安全模式什么意思_mysql安全模式指的是什么意思
  6. python接口封装_Python 接口测试之接口关键字封装
  7. shell脚本中数组的使用_Shell脚本中的数组
  8. 二维叉乘求三角形面积_角形
  9. python集合_Python集
  10. Python Shutil模块