Emacs中匹配括号的命令是什么?

46

在Emacs中,匹配括号的命令是什么(与Vim中的%命令相当)?

答案:在Emacs中,匹配括号的命令是C-M-fC-M-b
5个回答

51

7
还有 C-M-uC-M-d,请参阅*在括号结构中移动*。 - Peter.O

40

C-M-f或者M-x forward-sexp命令可以向前移动到当前括号的结束处,或者到下一组括号的开始处。C-M-b或者M-x backward-sexp命令可以向后移动到当前括号的开始处,或者到下一组括号的结束处。这些命令适用于圆括号、方括号、花括号、尖括号等等,并且可以被自定义以识别其他定界符。


10

补充上一条回复,我使用C-M-n进行向前匹配,使用C-M-u进行向后匹配。在Windows键盘上,C-M对应于Esc+Ctrl


使用奇怪的快捷键组合,但我是 emacs 的新手,无论如何,这里有一个相关的有用链接 - x-yuri

3

还有一个show-paren-mode。对于导航,我认为最好使用C-M-nC-M-n


2
是的,但有时匹配的括号并不在屏幕上。这时候向前/向后sexp就非常方便了。 - Chris Conway

1

https://github.com/redguardtoo/evil-matchit

在开发 evil-matchit 之前,我阅读了 vim matchit 的代码。现在,evil-matchit 提供的功能远远超过了原始的 vim matchit。

此外,您可以轻松地扩展 evil-matchit 来支持您自己 ~/.emacs 中的任何新语言。


太棒了!看起来它还支持匹配XML中的标签,包括HTML、Python、Java、C++/C、Javascript、JSON、Perl、Latex、CMake、Org-mode、Ruby、Bash、Lua、PHP、Laravel Blade模板、Vim脚本、Emacs邮件(mesage-mode)。 - nealmcb

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接