Emacs 如何在 if else 代码块中导航花括号

10

GNU Emacs 23.1.1

我正在使用Emacs来调试代码。但是if和else块非常大,我无法在终端上显示整个代码,因为必须向下滚动许多屏幕。而且由于大多数嵌套,有很多这样的块,很难知道哪些if else块属于哪个块。

if(something)
{
 /* very big code block with nested if/elses */
}
else
{
/* very big code block with nested if/elses */
}
我想把光标放在第一个花括号上,然后以某种方式跳转到代码块的结尾。希望你能理解,非常感谢任何建议。
1个回答

20

C-M-f - 前进一个S表达式

这将把光标移动到匹配当前位置的 { 所对应的 } 处。


4
...而C-M-b会带你回去。在这种情况下,光标需要位于闭合括号之后,而对于C-M-f,则需要在开放括号上。同样适用于圆括号和方括号"[]"。 - danielpoe
有趣的是,当我按下C-M时,它会向下缩进一个新的空格。 - ant2009
抱歉,我的错误。我将M键误认为是“Alt”键而不是“m”键。也许需要再来一杯冰咖啡来保持清醒。谢谢。 - ant2009
在执行这些命令时按住Shift键会选择花括号内的文本部分。(或者也许“在先前位置设置标记”是正确的Emacs术语。)非常方便。 - Lii

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