Emacs正则有没有类似于Vim的"magic mode"


#1

从Vim转Spacemacs中,新手问题,想问一下emacs中有没有类似于Vim中的magic mode。

Vim中,如果这么写正则

:s/\vSOMETHING(.*)/\1

开头的\v称为magic,表示后面()直接理解为正则的group,这样子就不用敲\(\)的反斜杠了,很方便。但貌似evil mode默认不支持,想请问emacs有没有类似的东西,谢谢。


#2
(defvar evil-ex-search-vim-style-regexp)
(setq evil-ex-search-vim-style-regexp t)

在evil-mode启动前设置

evil可以处理这些vim正则特有关键字,我没有用过vim,不知道是不是完全实现了


#3

不熟悉 Vim 和 Evil,Emacs 正则表达式没有模式的概念,至于你的问题,一个简单的办法是绑定括号,让其自动输入 \(


#4

谢谢。还不太会看elisp,才开始用,等我会了慢慢研究


#5

哈哈,我在Spacemacs的Gitter上找到答案了。谢谢两位的回答。

  (setq evil-ex-search-vim-style-regexp t)
  (setq evil-search-module 'evil-search)
  (setq evil-magic 'very-magic)