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, чтобы покрасить их по-разному: