Я сказал бы самую известную игру программирования было, базовые войны . Я не знаю, можно ли все еще найти активные "кольца", хотя было много, когда я попробовал его некоторое время назад (4 или 5 лет).
Похоже, вам может понадобиться что-то вроде:
autocmd FileType html,xml highlight OverLength ctermbg=red ctermfg=white guibg=#592929
autocmd FileType html,xml match OverLength /\%81v.*/
Похоже, что у меня все равно работает: -)
Проблема с использованием сопоставления для такой задачи заключается в том, что оно является локальным для активного окна, а не для редактируемого буфера. Я бы попробовал что-нибудь вроде следующих строк:
highlight OverLength ctermbg=red ctermfg=white guibg=#592929
fun! UpdateMatch()
if &ft !~ '^\%(html\|xml\)$'
match OverLength /\%81v.*/
else
match NONE
endif
endfun
autocmd BufEnter,BufWinEnter * call UpdateMatch()
По сути, вы хотите запускать каждый раз, когда буфер в текущем окне изменяется. На этом этапе вы оцениваете, какой тип файла имеет буфер и настраиваете, должно ли совпадение быть активным или нет.
Если вы также хотите поддержать редактирование безымянного буфера и затем установить его тип файла (путем сохранения или ручной настройки & ft), даже FileType следует добавить в список.