В Vi, если я нахожусь в середине функции, как я могу вернуться к объявлению функции?

2 ответа2

0

Обычно я использую { , что приводит меня к началу абзаца (который часто является и началом функции) одним нажатием клавиши, или иногда мне может потребоваться использовать { два или более раз, в зависимости от количества пустых строк Я в функции.

Если я использую C и ctags, то :tag functionname приведет меня к объявлению функции из любого места (Vim Book, стр.79).

0

С риском констатировать очевидное, это может зависеть от языка и стиля кодирования.  Если код написан на C или C++, и программист следовал соглашению о начале функций:

int
sum(int num1, int num2)
{

(или даже с типом возврата в той же строке, что и имя функции), а затем с отступом всех внутренних блоков, вы можете сделать ?^{ поиск.  В качестве альтернативы (и это может быть лучшим ответом), [[ кажется ярлыком для ?^{ . (]] кажется ярлыком для /^{ –– нет, не /^} .)

Даже если конвенция

int sum(int num1, int num2) {

(последовательно) вы могли бы искать ?^[a-zA-Z].*{$ . В этом отношении ?^[a-zA-Z] может быть достаточно хорошим.  Другие языки, другие соглашения о кодировании могут потребовать других ответов.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .