Как отключить подсветку синтаксиса для новых окон vim без имени файла или типа файла? - PullRequest
0 голосов
/ 23 ноября 2018

После того как я установил тему 'artesanal' для vim и включил подсветку синтаксиса, каждое окно vim имеет подсветку синтаксиса, включая новые пустые окна [No Name], без имени или типа файла.Мне интересно, знает ли кто-нибудь из вас, как сохранить подсветку синтаксиса для каждого файла с расширением, но отключить его для любого файла без имени или расширения файла.Example of syntax highlighting on no file extension

Ответы [ 2 ]

0 голосов
/ 23 ноября 2018

Этого не должно быть.Я не знаю artesanal (а "тема" - неопределенный термин в Vim; у него есть схемы цветов , плагины типов файлов и синтаксические сценарии ; я надеюсь, что это не полный дистрибутив Vim, такой как spf-13 и Janus , который соблазняет вас быстрой установкой и настройками "из коробки", новы платите цену с повышенной сложностью (вам нужно понимать как схему загрузки Vim во время выполнения, так и произвольные соглашения о распределении) и негибкость (распределение может сделать некоторые вещи проще, а другие очень сложными)).

Похоже, синтаксис активен даже для простых файлов.Обычно синтаксис определяется типом файла , поэтому сначала проверьте :verbose setlocal filetype?.Если это возвращает значение, вам нужно посмотреть на обнаружение :help filetypes.

Если это пустое значение, возможно, что-то непосредственно устанавливает 'syntax'.Вы можете проверить таким же образом: :verbose setlocal syntax?.

Теперь, если это также пусто и :syntax list не показывает что-то, выделение может также исходить от команд :match или :call matchadd();:call clearmatches() удалил бы это тогда.(И вам все равно нужно будет найти источник, который определяет эти совпадения.)

0 голосов
/ 23 ноября 2018

Вы можете проверить, установлен ли тип файла

if &filetype != ""
  syntax enable
endif
...