Vim: Выделите переменные С++ с помощью области?

Я хотел бы иметь переменные С++, выделенные областью. Например. переменные должны иметь разную окраску в зависимости от файла, класса, глобальной или локальной области. Возможно ли это?

UPDATE: приветствуются внешние помощники (например, скрипты ctags/clang и vim).

ОБНОВЛЕНИЕ 2: Это действительно должно быть возможно с помощью libclang. Взгляните на презентации Дуга Грегора здесь: http://llvm.org/devmtg/2010-11/ Я думаю, что никто еще этого не сделал... или?

Ответ 1

http://www.vim.org/scripts/script.php?script_id=2646

На веб-сайте script:

Этот набор сценариев предназначен для увеличения количества групп выделения, используемых Vim. Это позволяет быстрее и легче обнаруживать ошибки в коде. Используя ctags и синтаксический анализ вывода, typedefs, #defines, перечисляемые имена и т.д. Все четко выделяются разными цветами.

Есть несколько скриншотов, доступных для сравнения.

http://sites.google.com/site/abudden/contents/Vim-Scripts/ctags-highlighting

Ответ 2

Один трюк, который я видел, но не использую:

Если вы объявляете свои переменные с соответствующим префиксом g_, m_ и т.д. Вы можете использовать это, чтобы получить vim, чтобы покрасить их по-разному: