3

У меня проблема в том, что когда я открываю программы SAS (файлы .sas) в Vim, цвета выглядят очень некрасиво (смесь белого и черного фона и т.д.).

Пример здесь: Вот как выглядит vim при открытии файла SAS (setf=sas)

Вот как выглядит vim при открытии файла SAS (setf = sas)

Моя цветовая схема Келера.

Я попытался изменить цветовую схему, но потом это происходит:

Когда я запускаю:colo delek, vim выглядит следующим образом.Подсветка синтаксиса, кажется, исчезла.

Поэтому я запускаю :setf sas , и подсветка синтаксиса появляется снова с правильными цветами.

Поэтому я запускаю:setf sas, и подсветка синтаксиса появляется снова с правильными цветами.

Я не уверен, в чем заключается основная проблема: это может быть проблемой в colorcheme 'koehler', однако, поскольку подсветка синтаксиса просто исчезает, когда я меняю цветовую схему, это может быть скорее проблемой при обнаружении filytype.

Как это исправить?

Могу ли я как-то настроить vim для использования другой схемы цветов для определенного типа файла? (например, используйте deletek для файлов .sas?)

Обновление 2015-05-15: По- видимому , проблема возникает только в gvim, а не в Vim, запущенном в терминале. У меня есть скриншот, как он выглядит, когда я открываю файл .sas в Vim из терминала: https://imgur.com/EQguEst

Обновление 2016-01-15:

Проблема была исправлена путем редактирования sas.vim и изменения всех постоянных определений цвета на HiLinks:

HiLink sComment Comment
HiLink sCard    String
HiLink sDate_Time   Special
HiLink sKeyword Structure
HiLink sFmtInfmt    Special
HiLink sString  String
HiLink sText    String
HiLink sNumber  Number
HiLink sProc    Structure
HiLink sSection Structure
HiLink mDefine  Define
HiLink mKeyword Structure
HiLink mReference   Structure
HiLink mSection Structure
HiLink mText    String

1 ответ1

3

Объясняя это поведение

Подсветка синтаксиса предназначена для изменения цветовой схемы. Подсветка синтаксиса SAS по умолчанию предназначена для изменения нормальной цветовой схемы, как я использую, и тогда она подходит для отображения data виде синего на белом. На обратной видео схеме, как у koehler , это не так.

Когда вы меняете цветовую схему на нормальную, vim отбрасывает подсветку синтаксиса, поскольку она может быть несовместима с недавно выбранной цветовой схемой.

Вы можете решить это

создавая собственную подсветку синтаксиса для SAS в обратном видео. Чтобы сделать это, отредактируйте файл sas.vim (в моей системе Windows в C:\Program Files (x84)\vim74\syntax), установив для всех guibg значение Black , guifg=Blue guifg=LightBlue и применяя аналогичные изменения, пока он не будет выглядеть хорошо

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .