2014-07-10 21:05:51 -07:00
|
|
|
" Vim syntax support file
|
2023-08-13 05:25:10 -07:00
|
|
|
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
|
|
|
" Last Change: 2023 Aug 10
|
|
|
|
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
2014-07-10 21:05:51 -07:00
|
|
|
|
|
|
|
" This file is used for ":syntax on".
|
|
|
|
" It installs the autocommands and starts highlighting for all buffers.
|
|
|
|
|
|
|
|
if !has("syntax")
|
|
|
|
finish
|
|
|
|
endif
|
|
|
|
|
|
|
|
" If Syntax highlighting appears to be on already, turn it off first, so that
|
|
|
|
" any leftovers are cleared.
|
|
|
|
if exists("syntax_on") || exists("syntax_manual")
|
|
|
|
so <sfile>:p:h/nosyntax.vim
|
|
|
|
endif
|
|
|
|
|
|
|
|
" Load the Syntax autocommands and set the default methods for highlighting.
|
|
|
|
runtime syntax/synload.vim
|
|
|
|
|
|
|
|
" Load the FileType autocommands if not done yet.
|
|
|
|
if exists("did_load_filetypes")
|
|
|
|
let s:did_ft = 1
|
|
|
|
else
|
|
|
|
filetype on
|
|
|
|
let s:did_ft = 0
|
|
|
|
endif
|
|
|
|
|
|
|
|
" Set up the connection between FileType and Syntax autocommands.
|
2022-09-05 06:52:27 -07:00
|
|
|
" This makes the syntax automatically set when the file type is detected
|
|
|
|
" unless treesitter highlighting is enabled.
|
2022-08-22 22:03:00 -07:00
|
|
|
" Avoid an error when 'verbose' is set and <amatch> expansion fails.
|
2014-07-10 21:05:51 -07:00
|
|
|
augroup syntaxset
|
2022-09-05 06:52:27 -07:00
|
|
|
au! FileType * if !exists('b:ts_highlight') | 0verbose exe "set syntax=" . expand("<amatch>") | endif
|
2014-07-10 21:05:51 -07:00
|
|
|
augroup END
|
|
|
|
|
|
|
|
" Execute the syntax autocommands for the each buffer.
|
|
|
|
" If the filetype wasn't detected yet, do that now.
|
|
|
|
" Always do the syntaxset autocommands, for buffers where the 'filetype'
|
|
|
|
" already was set manually (e.g., help buffers).
|
|
|
|
doautoall syntaxset FileType
|
|
|
|
if !s:did_ft
|
|
|
|
doautoall filetypedetect BufRead
|
|
|
|
endif
|