view runtime/syntax/deb822sources.vim @ 33767:4913b4f5a133 v9.0.2104

patch 9.0.2104: wast filetype should be replaced by wat filetype Commit: https://github.com/vim/vim/commit/bc8f79d36a456054ed29f46585830af6d71f57c8 Author: rhysd <lin90162@yahoo.co.jp> Date: Tue Nov 14 16:46:07 2023 +0100 patch 9.0.2104: wast filetype should be replaced by wat filetype Problem: wast filetype should be replaced by wat filetype Solution: start using the official wat filetype name runtime: rename `wast` filetype to `wat` (Wasm text format) The problem is the name of the current filetype wast. When the plugin was initially created, the file extension for Wasm text format was not fixed and .wast was more popular. However, recently .wat became the official file extension for WebAssembly text (WAT) format and .wast is now a file extension for the unofficial WAST format, which is a superset of .wat for the convenience to describe the Wasm specification conformance tests. https://webassembly.js.org/docs/contrib-wat-vs-wast.html However for now, let's keep using the `wat` filetype even for the .wast extension, so that we at least do not lose the filetype settings and syntax highlighting. This can be adjusted later, if it turns out to have a separate need for. closes: #13533 Signed-off-by: rhysd <lin90162@yahoo.co.jp> Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Tue, 14 Nov 2023 17:15:03 +0100
parents c6d5af39dc7f
children f8951966ef0c
line wrap: on
line source

" Vim syntax file
" Language:     Debian deb822-format source list file
" Maintainer:   Debian Vim Maintainers
" Last Change: 2023 May 25
" URL: https://salsa.debian.org/vim-team/vim-debian/blob/main/syntax/deb822sources.vim

" Standard syntax initialization
if exists('b:current_syntax')
  finish
endif

" case insensitive
syn case ignore

" Comments are matched from the first character of a line to the end-of-line
syn region deb822sourcesComment start="^#" end="$"

" A bunch of useful keywords
syn match deb822sourcesType               /\(deb-src\|deb\)/
syn match deb822sourcesFreeComponent      /\(main\|universe\)/
syn match deb822sourcesNonFreeComponent   /\(contrib\|non-free-firmware\|non-free\|restricted\|multiverse\)/

" Include Debian versioning information
runtime! syntax/shared/debversions.vim

exe 'syn match deb822sourcesSupportedSuites contained + *\([[:alnum:]_./]*\)\<\('. join(g:debSharedSupportedVersions, '\|'). '\)\>\([-[:alnum:]_./]*\)+'
exe 'syn match deb822sourcesUnsupportedSuites contained + *\([[:alnum:]_./]*\)\<\('. join(g:debSharedUnsupportedVersions, '\|'). '\)\>\([-[:alnum:]_./]*\)+'

unlet g:debSharedSupportedVersions
unlet g:debSharedUnsupportedVersions

syn region deb822sourcesSuites start="\(^Suites: *\)\@<=" end="$" contains=deb822sourcesSupportedSuites,deb822sourcesUnsupportedSuites oneline

syn keyword deb822sourcesForce contained force
syn keyword deb822sourcesYesNo contained yes no

" Match uri's
syn match deb822sourcesUri            '\(https\?://\|ftp://\|[rs]sh://\|debtorrent://\|\(cdrom\|copy\|file\):\)[^' 	<>"]\+'

syn match deb822sourcesEntryField            "^\%(Types\|URIs\|Suites\|Components\): *"
syn match deb822sourcesOptionField           "^\%(Signed-By\|Check-Valid-Until\|Valid-Until-Min\|Valid-Until-Max\|Date-Max-Future\|InRelease-Path\): *"
syn match deb822sourcesMultiValueOptionField "^\%(Architectures\|Languages\|Targets\)\%(-Add\|-Remove\)\?: *"

syn region deb822sourcesStrictField matchgroup=deb822sourcesBooleanOptionField start="^\%(PDiffs\|Allow-Insecure\|Allow-Weak\|Allow-Downgrade-To-Insecure\|Trusted\|Check-Date\): *" end="$" contains=deb822sourcesYesNo oneline
syn region deb822sourcesStrictField matchgroup=deb822sourcesForceBooleanOptionField start="^\%(By-Hash\): *" end="$" contains=deb822sourcesForce,deb822sourcesYesNo oneline

hi def link deb822sourcesComment                 Comment
hi def link deb822sourcesEntryField              Keyword
hi def link deb822sourcesOptionField             Special
hi def link deb822sourcesMultiValueOptionField   Special
hi def link deb822sourcesBooleanOptionField      Special
hi def link deb822sourcesForceBooleanOptionField Special
hi def link deb822sourcesStrictField             Error
hi def link deb822sourcesType                    Identifier
hi def link deb822sourcesFreeComponent           Identifier
hi def link deb822sourcesNonFreeComponent        Identifier
hi def link deb822sourcesForce                   Identifier
hi def link deb822sourcesYesNo                   Identifier
hi def link deb822sourcesUri                     Constant
hi def link deb822sourcesSupportedSuites         Type
hi def link deb822sourcesUnsupportedSuites       WarningMsg

let b:current_syntax = 'deb822sources'