LINUX.ORG.RU

Подсветка в vim и С++

 , ,


0

3

Доброго времени суток,

Делаю базовый докер-образ на основе ubuntu, хочется хорошей подсветки в vim. И почти все работает, но именно в C++, C и Java vim не распознает названия функций как Function в hi. В monokai.vim подсветке это прописано, именно vim не может распознать имена. В py и sh он все видит и подсвечивает.

Проверено на vim и vim-gtk3 пакетах.

На арч-хосте C++ файлы распознаются и подсвечиваются правильно

Можете подсказать на что смотреть, потому что sof в основном проблемы со включением подсветки впринципе. Спасибо.

Ответ на: комментарий от hotpil

Очевидно по названию что monokai.vim - цветовая схема для подсветки синтакиса. Там же описывается то, как и какие цвета применять, в частности:

hi Function ctermfg=148 ctermbg=NONE cterm=NONE guifg=#a6e22e guibg=NONE gui=NONE

Арч при том, что на нем схема применяется правильно, в конетйнере убунту - нет, возможно это дистро/пакето зависимое.

JAkutenshi ★★
() автор топика
Ответ на: комментарий от xaizek

Ну, там есть кое-что, но не вижу ничего, связанного с распознаванием (ни регулярок, ничего такого). Подсветка докера и коньковых конфигураций, где своп и какие его файлы. В целом все.

JAkutenshi ★★
() автор топика

возможно дело не в виме, а в настройках терминала контейнера. Проверь все что с этим связано. $TERM, поменяй цвет функции, и т.д.

anonymous
()
Ответ на: комментарий от r3lgar

Вообще, TERM при том, что docker использует какую-то наркоманию с цветами. Запускаю я конетейнер нынче так:

$ docker run -it --net=host -e "TERM=xterm-256color" -e DISPLAY -v /tmp/.X11-unix <контейнер> bash -l

$TERM как раз разрешал проблему с тем, что цвета наследовались с хост-машины и цвета нормально не отображались.

JAkutenshi ★★
() автор топика
Ответ на: комментарий от mos

Спасибо за :scriptnames . На арче укромно в .vim/after/ была папка syntax с единственным cpp.vim который мне делал хорошо.

Вопрос закрыт.

JAkutenshi ★★
() автор топика

Курсор на слово, которое у тебя не подсвечивается и

:echo reverse(map(synstack(line('.'), col('.')), 'synIDattr(v:val, "name")'))
Посмотри что возвращает. Если пустой массив - значит проблема в синтаксис файле, если не пустой - значит проблема с отображением цветов (если ты уверен, что и там и там тема одинаковая).

StillSteal
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.