12 votes

Emacs -- C/C++ sauter au début du bloc contenant

Lors de l'édition de fichiers C ou C++ dans emacs, j'aimerais être en mesure d'aller au début du bloc contenant le code. Je m'attendais à trouver une fonction c-beginning-of-block, mais hélas, aucune telle fonction n'existe (à ma connaissance). Par exemple, je pourrais être en train de modifier le code C suivant :

void myFunction()
{
  if (something) { //<--- Je veux sauter jusqu'à cette accolade!
    // faire beaucoup de choses
    if (stuff) {
      // des trucs
    }
    // plus de choses
    // ...

    // Je veux placer mon curseur quelque part sur cette ligne <---
    // (n'importe où juste à l'extérieur du if suivant) et appeler c-beginning-of-block
    // et sauter jusqu'à l'accolade marquée ci-dessus (en sautant les déclarations "soeurs")
    if (pizza_is_good) {
      // faire quelque chose
      // attends, où suis-je?
    }
    // beaucoup plus de choses
    // ...
    if (i_love_pizza) {
      // manger de la pizza
    }
  }
}

Je serais très surpris si cela ne faisait pas déjà partie de emacs, je ne peux tout simplement pas le trouver nulle part...

fortran-mode a fortran-beginning-of-block

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

15voto

Larry Woods Points 96

Essayez backward-up-list, liée par défaut à C-M-u.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X