Як я можу змусити vim показати поточний клас та метод, який я редагую


15

Хтось знає, чи можливо (чи знаєте про існуючий скрипт або плагін vim), що може створити "рядок стану", який показує ім'я поточного класу та методу (або функції), який я редагую?

Я уявляю, що він підключатиметься до синтаксичного аналізатора для філетипу поточного буфера та відображає стежку хлібних сутичок, щоб показати вам, що ви зараз редагуєте. Я не знаю достатньо добре, щоб запропонувати щось більше, але якщо вже немає хороших рішень, я можу почати вилазити на одне, тому пропозиції про те, з чого почати, теж вітаються!

Відповіді:


7

Цей скрипт розміщує ім'я поточної функції в рядку заголовка та / або рядку статусу. Він використовує ctags для створення списку тегів для поточного файлу та передбачає, що тег, що передує розташуванню курсору, є ім'ям поточної функції. Оскільки він використовує ctags, його можна налаштувати для роботи з різними мовами, навіть структурованими текстовими файлами. Він добре працює на практиці, але має деякі обмеження. Якщо нічого іншого, це може дати вам вихідну точку для злому.


6

Це спрацює, якщо встановити додатки авіакомпанії та панелі тегів . Ці два плагіни інтегруються автоматично, і ви побачите поточну функцію, відображену в рядку стану. Якщо ви хочете мати повну ієрархію об’єктів (наприклад, клас + метод), вам доведеться налаштувати це у вашому .vimrc:

let g:airline#extensions#tagbar#flags = 'f'  " show full tag hierarchy

Можливо, вам доведеться встановити файл тегів для панелі тегів, щоб визначити поточну позицію коду, якщо ви ще не використовуєте ctags. Якщо ви про це ще не знаєте, ось короткий вступ до тегів .

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.