Каково групповое имя vim тега ‘ ?>’ тег в XML-файле?

#xml #vim #color-scheme

#xml #vim #цветовая схема

Вопрос:

Я создаю свою собственную цветовую схему и хотел бы настроить тег из XML-файлов.

 <?xml version="1.0" encoding="UTF-8"?>
  

Но я не могу найти имя groupname.

Кто-нибудь это знает?

Ответ №1:

Согласно xml.vim, элементы синтаксиса xml и группы Vim являются:

   -------> xmlProcessingDelim: Comment
 | 
 |     ----------> xmlProcessing: Type
 |    |
 |    |          --> xmlString: String
 |    |         |
 v    v         v
<?xml version="1.0"?>
  

Что-то в вашей цветовой схеме вроде:

 hi Comment guifg=#999999
  

Может быть достигнут желаемый результат раскраски <? ?>

Ответ №2:

Я заглянул в syntax / xml.vim, и там есть область под названием xmlProcessing, которая может быть тем, что вы ищете? Затем это сопоставляется с группой ‘Type’.

Ответ №3:

Чтобы получить все имена всех групп, которые влияют на выделение символа под курсором, используйте

 echo 'Normal '.join(map(synstack(line('.'), col('.')), 'synIDattr(v:val, "name")'))
  

Это будет повторять что-то вроде этого:

 Normal helpHyperTextEntry helpStar
  

(это для тегов star in в файлах справки).

Возможно, вы захотите использовать

 echo 'Normal '.join(map(synstack(line('.'), col('.')), 'synIDattr(synIDtrans(v:val), "name")'))
  

также. Дополнительная информация на :h synstack() и :h synIDtrans() .

После того, как вы нашли имя желаемой группы, вы можете указать что-то вроде

 hi xmlProcessingDelim ctermbg=Yellow
  

в ~/.vim/после/синтаксиса/xml.vim.