emacs - C / C ++ pula para o início do bloco contendo

10

Ao editar arquivos C ou C ++ no emacs, eu gostaria de poder ir para o início do contendo bloco de código. Eu estava esperando encontrar uma função c-begin-of-block, mas, infelizmente, não existe tal função (que eu saiba). Por exemplo, eu poderia estar editando o seguinte código C feio:

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
    }
  }
}

Eu ficaria muito surpreso se isso já não faz parte do emacs, mas não consigo encontrá-lo em lugar algum ...

o modo fortran tem fortran-beginning-of-block

promela-mode tem promela-find-start-of-containing-block

    
por mgalgs 22.03.2011 / 19:49

1 resposta

12

Teste backward-up-list , ligado por padrão a C-M-u .

    
por 22.03.2011 / 23:08

Tags