Vim: просмотр структуры файла - классы, методы, функции

Итак, у меня есть этот сон, верно: я делаю невероятное волшебство в PHP, в vim, и время от времени я бы хотел нажать какую-нибудь причудливую комбинацию кнопок (чем дольше, тем лучше), чтобы иметь возможность перемещаться по файлу, а не в скучном, линейном режиме, но в великолепном режиме обзора. Присмотритесь к древовидному списку классов, методам, функциям, переменным и другим чудесам кода. Переход от функции к функции в простом веселе.

Знаете ли вы, как выполнить мои желания?

Похоже на любое диалоговое окно/структуру файловой структуры в любой произвольной среде IDE. Что-нибудь?

Ответ 1

Это напоминает ACK и Ack.vim о прыжках к функциям среди многих файлов. Там также FuzzyFinder или командно-т или NERDTree для файла просмотра и Taglist для просмотра исходного кода. Вы также можете использовать :help foldmethod для сбрасывания всех функций и просмотра их в виде дерева, который расширяется. Познакомьтесь с gf и * or # чтобы прыгать между файлами и переменными.

Ответ 2

TagBar похож на вышеупомянутый TagList, по-другому, но это не так хорошо с PHP.

Этот новый плагин утверждает, что исправил проблему. Однако я его никогда не тестировал.

Ответ 3

Taglist позволяет сделать это для открытых буферов.

Ответ 4

Я использую :set foldmethod=syntax. zM сложить все; zx чтобы открыть сгиб под курсором и закрыть другие открытые складки. Плагин taglist (как уже упоминалось) будет делать больше, но складки - быстрая победа.