Выбар ўнутранага аб'ёму-самае ў C/C ++

Я хацеў бы мець магчымасць адзначыць бягучы аб'ём блока. Іншымі словамі, улічваючы некаторы кавалак кода, як:

...
if (1) {
  ...
}
...

Калі мае курсоры сядзелі недзе ўнутры, калі-цела, гэта будзе азначаць, што вобласць коды. Я мяркую, што хуткае і бруднае рашэнне было б проста праверыць сцэнар для папярэдняй фігурнай дужкі і выбраць усё, што паміж ім і яго матчам.

Калі няма існуючай каманды для гэтага, будзе хто-небудзь ведае, як гэта ажыццявіць?

2

2 адказы

Тое, як я хацеў бы зрабіць гэта: M-C-і M-C-SPC : першыя крокі ўверх спісу і другі выбірае наступны Sexp.

1
дададзена

альбо M-й нацэнка DEFUN або з маркіровачных функцыяй ( C-М-ч у маёй ўсталёўцы) рабіць тое, што вы хочаце ці што?

Калі няма, пашырэнне-вобласць іншы вельмі добры варыянт ( дэманстрацыйнае відэа можна знайсці тут ). З гэтым пакетам усталяваны (ён даступны праз MELPA), вы можаце выкарыстоўваць каманду э/разгортванне-вобласць , каб разгарнуць выбраную вобласць сэнсавымі адзінкамі. Ён не можа выбраць вобласць, якую вы хочаце на першы выклік, але паўторныя выклікі, безумоўна, атрымаць, што вы хочаце. Гэты пакет з'яўляецца дзіўным, і будзе працаваць разумна з мноствам розных рэжымаў (гэта значыць, тое, што лічыцца «семантычны блок» будзе адрознівацца ад рэжыму ў рэжым).

1
дададзена