EmacsでCまたはC++ファイルを編集しているときに、コードの含むブロックの先頭に移動できるようにしたいと思います。私はc-beginning-of-block関数を見つけることを期待していましたが、残念ながら、そのような関数は存在しません(私の知る限り)。たとえば、次の醜いCコードを編集している可能性があります。
void myFunction()
{
if (something) { //<--- I want to jump to this brace!
// do lots of stuff
if (stuff) {
// stuff
}
// more stuff
// ...
// I want to put my cursor somewhere on this line <---
// (anywhere just outside the following if) and call c-beginning-of-block
// and jump to the brace marked above (skipping "sibling" statements)
if (pizza_is_good) {
// do something
// wait, where am I?
}
// way more stuff
// ...
if (i_love_pizza) {
// eat pizza
}
}
}
これがまだemacsの一部ではない場合、私は非常に驚きます、私はそれをどこにも見つけることができません...
fortranモードにはfortran-beginning-of-block
promela-modeにはpromela-find-start-of-containing-block
backward-up-list
を試してください。デフォルトでは、 C-M-u。