mirror of
https://github.com/vim/vim
synced 2025-07-15 16:51:57 +00:00
Add syntax & ftplugin for pymanifest (#12773)
This commit is contained in:
2
.github/CODEOWNERS
vendored
2
.github/CODEOWNERS
vendored
@ -189,6 +189,7 @@ runtime/ftplugin/poefilter.vim @ObserverOfTime
|
||||
runtime/ftplugin/postscr.vim @mrdubya
|
||||
runtime/ftplugin/ps1.vim @heaths
|
||||
runtime/ftplugin/ps1xml.vim @heaths
|
||||
runtime/ftplugin/pymanifest.vim @ObserverOfTime
|
||||
runtime/ftplugin/python.vim @tpict
|
||||
runtime/ftplugin/qb64.vim @dkearns
|
||||
runtime/ftplugin/r.vim @jalvesaq
|
||||
@ -439,6 +440,7 @@ runtime/syntax/prolog.vim @XVilka
|
||||
runtime/syntax/ps1.vim @heaths
|
||||
runtime/syntax/ps1xml.vim @heaths
|
||||
runtime/syntax/psl.vim @danielkho
|
||||
runtime/syntax/pymanifest.vim @ObserverOfTime
|
||||
runtime/syntax/qb64.vim @dkearns
|
||||
runtime/syntax/r.vim @jalvesaq
|
||||
runtime/syntax/racket.vim @benknoble
|
||||
|
13
runtime/ftplugin/pymanifest.vim
Normal file
13
runtime/ftplugin/pymanifest.vim
Normal file
@ -0,0 +1,13 @@
|
||||
" Vim filetype plugin
|
||||
" Language: PyPA manifest
|
||||
" Maintainer: ObserverOfTime <chronobserver@disroot.org>
|
||||
" Last Change: 2023 Aug 08
|
||||
|
||||
if exists('b:did_ftplugin')
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
setl comments=:# commentstring=#\ %s
|
||||
|
||||
let b:undo_ftplugin = 'setl com< cms<'
|
44
runtime/syntax/pymanifest.vim
Normal file
44
runtime/syntax/pymanifest.vim
Normal file
@ -0,0 +1,44 @@
|
||||
" Vim syntax file
|
||||
" Language: PyPA manifest
|
||||
" Maintainer: ObserverOfTime <chronobserver@disroot.org>
|
||||
" Filenames: MANIFEST.in
|
||||
" Last Change: 2023 Aug 12
|
||||
|
||||
if exists('b:current_syntax')
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpoptions
|
||||
set cpoptions&vim
|
||||
|
||||
syn iskeyword @,-
|
||||
|
||||
" Comments
|
||||
syn keyword pymanifestTodo contained TODO FIXME XXX
|
||||
syn match pymanifestComment /\\\@1<!#.*/ contains=pymanifestTodo
|
||||
|
||||
" Commands
|
||||
syn keyword pymanifestCommand
|
||||
\ include exclude
|
||||
\ recursive-include global-include
|
||||
\ global-include global-exclude
|
||||
\ graft prune
|
||||
|
||||
" Globs & character ranges
|
||||
syn match pymanifestGlob /\*\|\*\*\|?/
|
||||
syn match pymanifestRange /\\\@1<!\[.\{-}\]/
|
||||
|
||||
" Line break
|
||||
syn match pymanifestLinebreak /\\$\|\\\ze\s\+#/
|
||||
|
||||
hi def link pymanifestCommand Keyword
|
||||
hi def link pymanifestComment Comment
|
||||
hi def link pymanifestGlob SpecialChar
|
||||
hi def link pymanifestLinebreak SpecialKey
|
||||
hi def link pymanifestRange Special
|
||||
hi def link pymanifestTodo Todo
|
||||
|
||||
let b:current_syntax = 'pymanifest'
|
||||
|
||||
let &cpoptions = s:cpo_save
|
||||
unlet s:cpo_save
|
Reference in New Issue
Block a user