blob: 26bdf797e0d69106347a0bd71efbc8df5a862aa6 [file] [log] [blame]
ObserverOfTime2f339aa2023-08-13 11:26:20 +03001" Vim syntax file
2" Language: PyPA manifest
3" Maintainer: ObserverOfTime <chronobserver@disroot.org>
4" Filenames: MANIFEST.in
5" Last Change: 2023 Aug 12
6
7if exists('b:current_syntax')
8 finish
9endif
10
11let s:cpo_save = &cpoptions
12set cpoptions&vim
13
14syn iskeyword @,-
15
16" Comments
17syn keyword pymanifestTodo contained TODO FIXME XXX
18syn match pymanifestComment /\\\@1<!#.*/ contains=pymanifestTodo
19
20" Commands
21syn keyword pymanifestCommand
22 \ include exclude
Viktor Szépe3fc7a7e2023-08-23 21:20:00 +020023 \ recursive-include recursive-exclude
ObserverOfTime2f339aa2023-08-13 11:26:20 +030024 \ global-include global-exclude
25 \ graft prune
26
27" Globs & character ranges
28syn match pymanifestGlob /\*\|\*\*\|?/
29syn match pymanifestRange /\\\@1<!\[.\{-}\]/
30
31" Line break
32syn match pymanifestLinebreak /\\$\|\\\ze\s\+#/
33
34hi def link pymanifestCommand Keyword
35hi def link pymanifestComment Comment
36hi def link pymanifestGlob SpecialChar
37hi def link pymanifestLinebreak SpecialKey
38hi def link pymanifestRange Special
39hi def link pymanifestTodo Todo
40
41let b:current_syntax = 'pymanifest'
42
43let &cpoptions = s:cpo_save
44unlet s:cpo_save