как выделить переменные файлов c / c ++ в vim - PullRequest
2 голосов
/ 26 декабря 2011

Я хочу выделить переменные в файле C / C ++. такие как:

    int num;// Highlighted  num
    char str;// Highlighted str

    struct data
    {
     int year;
     int month;
     };
     struct data *p,time;// Highlighted  p  time
     ..........

Как выделить переменные, как указано выше (num, str, p, time .....)

Я знаю, что мы можем изменить синтаксис \ c.vim для достижения этого, но как написать синтаксис?

Есть ли другое решение?

Ответы [ 2 ]

5 голосов
/ 28 декабря 2011

В общем, вам нужно сделать две вещи:

  1. Создание тегов с использованием ctags;
  2. Создать файл синтаксиса, используя полученный файл тегов.

Теперь некоторые подробности.

Существуют плагины, которые могут вам помочь. Во-первых, плагин Indexer автоматически генерирует теги для всего проекта и поддерживает их актуальность. (Я являюсь автором этого плагина, поэтому, если у вас возникли проблемы с его использованием, не стесняйтесь спрашивать меня)

А во-вторых, есть плагин TagHighlight для дополнительных подсветок переменных, перечислений, typedefs и т. Д.

1 голос
/ 26 декабря 2011

Если вы имеете в виду, как включить подсветку синтаксиса, то вам необходимо:

: синтаксис на

Если он не работает, сначала определите тип файла:

:установить тип файла?

Должно быть напечатано "cpp".Если нет, сначала установите его:

: set filetype = cpp

...