1
0
mirror of https://github.com/moparisthebest/pacman synced 2024-08-13 17:03:46 -04:00

Updated vim syntax file

Signed-off-by: Dan McGee <dan@archlinux.org>
This commit is contained in:
Alessio 'mOLOk' Bolognino 2007-05-10 02:44:07 -04:00 committed by Dan McGee
parent 5fc170ff05
commit 449ea6e259

View File

@ -2,7 +2,7 @@
" Language: PKGBUILD
" Maintainer: Alessio 'mOLOk' Bolognino <themolok at gmail.com>
" Last Change: 2007/05/08
" Version Info: PKGBUILD-0.1
" Version Info: PKGBUILD-0.2 (colorphobic)
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
@ -12,6 +12,8 @@ elseif exists("b:current_syntax")
finish
endif
let b:main_syntax = "sh"
runtime! syntax/sh.vim
" case on
syn case match
@ -21,154 +23,141 @@ syn case match
syn keyword pb_k_pkgname pkgname contained
syn match pbValidPkgname /\([[:alnum:]]\|+\|-\|_\){,32}/ contained contains=pbIllegalPkgname
syn match pbIllegalPkgname /[[:upper:]]\|[^[:alnum:]-+_=]\|=.*=\|=['"]\?.\{33,\}['"]\?/ contained
"syn match pbIllegalPkgname /=.\{33,\}/ contains=pbValidPkgname contained
"syn match pbIllegalPkgname /[^=]/ contains=pbValidPkgname contained
"syn match pbValidPkgname /=\([[:lower:][:digit:]-_+]\)\{,32\}/ contained
"syn match pbIllegalPkgname /[^=]/ contains=pbValidPkgname contained
"syn match pbValidPkgname /=\([[:digit:][:lower:]]\|+\|-\|_\)\{,32\}/ contained
syn match pbPkgnameGroup /^pkgname=.*/ contains=pbIllegalPkgname,pb_k_pkgname ",pbValidPkgname
syn match pbPkgnameGroup /^pkgname=.*/ contains=pbIllegalPkgname,pb_k_pkgname,shDoubleQuote,shSingleQuote
" pkgver
syn keyword pb_k_pkgver pkgver contained
syn match pbValidPkgver /\([[:alnum:]]\|\.\|+\|_\)/ contained contains=pbIllegalPkgver
syn match pbIllegalPkgver /[^[:alnum:]+=\.\_]\|=.*=/ contained
syn match pbPkgverGroup /^pkgver=.*/ contains=pbIllegalPkgver,pbValidPkgver,pb_k_pkgver
syn match pbPkgverGroup /^pkgver=.*/ contains=pbIllegalPkgver,pbValidPkgver,pb_k_pkgver,shDoubleQuote,shSingleQuote
" pkgrel
syn keyword pb_k_pkgrel pkgrel contained
syn match pbValidPkgrel /[[:digit:]]*/ contained contains=pbIllegalPkgver
"syn match pbIllegalPkgrel /[^[:alnum:]=]\|[[:alpha:]]/ contained
syn match pbIllegalPkgrel /[^[:digit:]=]\|=.*=/ contained
syn match pbPkgrelGroup /^pkgrel=.*/ contains=pbIllegalPkgrel,pbValidPkgrel,pb_k_pkgrel
syn match pbPkgrelGroup /^pkgrel=.*/ contains=pbIllegalPkgrel,pbValidPkgrel,pb_k_pkgrel,shDoubleQuote,shSingleQuote
" pkgdesc
syn keyword pb_k_desc pkgdesc contained
" 90 chars: 80 for description, 8 for pkgdesc and 2 for ''
syn match pbIllegalPkgdesc /.\{90,}\|=['"]\?.*['" ]\+[iI][sS] [aA]/ contained contains=pbPkgdescSign
syn match pbValidPkgdesc /[^='"]\.\{,80}/ contained contains=pbIllegalPkgdesc
syn match pbPkgdescGroup /^pkgdesc=.*/ contains=pbIllegalPkgdesc,pb_k_desc,pbValidPkgdesc
syn match pbPkgdescGroup /^pkgdesc=.*/ contains=pbIllegalPkgdesc,pb_k_desc,pbValidPkgdesc,shDoubleQuote,shSingleQuote
syn match pbPkgdescSign /[='"]/ contained
" url
syn keyword pb_k_url url contained
syn match pbValidUrl /['"]*\(https\|http\|ftp\)\:\/.*\.\+.*/ contained
syn match pbIllegalUrl /[^=]/ contained contains=pbValidUrl
"syn match pbIllegalUrl /\(https\|http\|ftp\)\:\/\/.*/ contained
syn match pbUrlGroup /^url=.*/ contains=pbValidUrl,pb_k_url,pbIllegalUrl
"syn match pbEq /=/ contained
syn match pbUrlGroup /^url=.*/ contains=pbValidUrl,pb_k_url,pbIllegalUrl,shDoubleQuote,shSingleQuote
" license
syn keyword pb_k_license license contained
syn keyword pbLicense APACHE CDDL EPL FDL GPL LGPL MPL PHP RUBY ZLIB ISC MIT BSD contained
syn match pbLicenseCustom /custom\(:[[:alnum:]]*\)*/ contained
"syn match pbValidLicense /[^=][('")]*/ contained
"syn match pbLicenseGroup /^license=.*/ contains=pb_k_license,pbLicense,pbValidLicense,pbLicenseCustom
syn match pbIllegalLicense /[^='"() ]/ contained contains=pbLicenseCustom,pbLicense
syn match pbLicenseGroup /^license=.*/ contains=pb_k_license,pbLicenseCustom,pbLicense,pbIllegalLicense
syn match pbLicenseGroup /^license=.*/ contains=pb_k_license,pbLicenseCustom,pbLicense,pbIllegalLicense,shDoubleQuote,shSingleQuote
" backup
syn keyword pb_k_backup backup contained
syn match pbValidBackup /\.\?[[:alpha:]]*\/[[:alnum:]\{\}+._$-]*]*/ contained
syn match pbBackupGroup /^backup=.*/ contains=pb_k_backup,pbValidBackup
syn match pbBackupGroup /^backup=.*/ contains=pb_k_backup,pbValidBackup,shDoubleQuote,shSingleQuote
" arch
syn keyword pb_k_arch arch contained
syn keyword pbArch i686 x86_64 ppc contained
syn match pbIllegalArch /[^='() ]/ contained contains=pbArch
syn match pbArchGroup /^arch=.*/ contains=pb_k_arch,pbArch,pbIllegalArch
syn match pbArchGroup /^arch=.*/ contains=pb_k_arch,pbArch,pbIllegalArch,shDoubleQuote,shSingleQuote
" makedepends
syn keyword pb_k_makedepends makedepends contained
syn match pbValidMakedepends /\([[:alnum:]]\|+\|-\|_\)*/ contained
"syn match pbMakedependsGroup /^makedepends=.*/ contains=pb_k_makedepends,pbValidMakedepends
syn region pbMakedependsGroup start=/^makedepends=(/ end=/)/ contains=pb_k_makedepends,pbValidMakedepends
syn region pbMakedependsGroup start=/^makedepends=(/ end=/)/ contains=pb_k_makedepends,pbValidMakedepends,shDoubleQuote,shSingleQuote
" depends
syn keyword pb_k_depends depends contained
syn match pbValidDepends /\([[:alnum:]]\|+\|-\|_\)*/ contained
"syn match pbDependsGroup /^depends=.*/ contains=pb_k_depends,pbValidDepends
syn region pbDependsGroup start=/^depends=(/ end=/)/ contains=pb_k_depends,pbValidDepends
syn region pbDependsGroup start=/^depends=(/ end=/)/ contains=pb_k_depends,pbValidDepends,shDoubleQuote,shSingleQuote
" XXX little hack to color conflicts/provides/replaces keyword even without =()
syn match pbkw /^\(conflicts\|provides\|replaces\)/ contains=pb_k_conflicts,pb_k_provides,pb_k_replaces
hi link pbkw keyword
" conflicts
"syn keyword pb_k_conflicts conflicts
syn keyword pb_k_conflicts conflicts contained
syn match pbValidConflicts /\([[:alnum:]]\|+\|-\|_\)*/ contained
"syn match pbConflictsGroup /^conflicts=.*/ contains=pb_k_conflicts,pbValidConflicts
syn region pbConflictsGroup start=/^conflicts=(/ end=/)/ contains=pb_k_conflicts,pbValidConflicts
"syn region pbConflictsGroup start=/^conflicts=(/ end=/)/ contains=pbValidConflicts
syn region pbConflictsGroup start=/^conflicts=(/ end=/)/ contains=pb_k_conflicts,pbValidConflicts,shDoubleQuote,shSingleQuote
" provides
"syn keyword pb_k_provides provides
syn keyword pb_k_provides provides contained
syn match pbValidProvides /\([[:alnum:]]\|+\|-\|_\)*/ contained
"syn match pbProvidesGroup /^provides=.*/ contains=pb_k_provides,pbValidProvides
syn region pbProvidesGroup start=/^provides=(/ end=/)/ contains=pb_k_provides,pbValidProvides
"syn region pbProvidesGroup start=/^provides=(/ end=/)/ contains=pbValidProvides
syn region pbProvidesGroup start=/^provides=(/ end=/)/ contains=pb_k_provides,pbValidProvides,shDoubleQuote,shSingleQuote
" replaces
"syn keyword pb_k_replaces replaces
syn keyword pb_k_replaces replaces contained
syn match pbValidReplaces /\([[:alnum:]]\|+\|-\|_\)*/ contained
"syn match pbReplacesGroup /^replaces=.*/ contains=pb_k_replaces,pbValidReplaces
syn region pbReplacesGroup start=/^replaces=(/ end=/)/ contains=pb_k_replaces,pbValidReplaces
"syn region pbReplacesGroup start=/^replaces=(/ end=/)/ contains=pbValidReplaces
syn region pbReplacesGroup start=/^replaces=(/ end=/)/ contains=pb_k_replaces,pbValidReplaces,shDoubleQuote,shSingleQuote
" install
" XXX remove install from bashStatement, fix strage bug
syn clear bashStatement
syn keyword bashStatement chmod clear complete du egrep expr fgrep find gnufind gnugrep grep less ls mkdir mv rm rmdir rpm sed sleep sort strip tail touch
syn keyword pb_k_install install contained
syn match pbValidInstall /\([[:alnum:]]\|\$\|+\|-\|_\)*\.install/ contained
syn match pbIllegalInstall /[^=]/ contained contains=pbValidInstall
"syn match pbInstall /\([a-z]\|+\|-\)*\.install/ contained
syn match pbInstallGroup /^install=.*/ contains=pb_k_install,pbValidInstall,pbIllegalInstall
syn match pbInstallGroup /^install=.*/ contains=pb_k_install,pbValidInstall,pbIllegalInstall,shDeref,shDoubleQuote,shSingleQuote
" source:
" XXX remove source from shStatement, fixstrange bug
syn clear shStatement
syn keyword shStatement xxx wait getopts return autoload whence printf true popd nohup enable r trap readonly fc fg kill ulimit umask disown stop pushd read history logout times local exit test pwd time eval integer suspend dirs shopt hash false newgrp bg print jobs continue functions exec help cd break unalias chdir type shift builtin let bind
" source
syn keyword pb_k_source source contained
" search for specific sf.net mirrors
syn match pbIllegalSource /\(http\|ftp\|https\).*\.\+\(dl\|download.\?\)\.\(sourceforge\|sf\).net/ contained
syn match pbSourceRemote /['"]*\(https\|http\|ftp\)\:\/\/.*[[:alnum:]"']/ contained contains=pbIllegalSource
"syn match pbSourceLocal /[[:alnum:]+._${}\/-]\+/ contained
"syn match pbSourceLocal /[[:alnum:]+._${}-]\+/ contained
syn region pbSourceGroup start=/^source=(/ end=/)/ contains=pb_k_source,pbSourceRemote
",pbSourceLocal
"syn match pbSourceGroup /^source=.*/ contains=pb_k_source,pbSourceRemote,pbSourceLocal
syn match pbIllegalSource /\(http\|ftp\|https\).*\.\+\(dl\|download.\?\)\.\(sourceforge\|sf\).net/
syn region pbSourceGroup start=/^source=(/ end=/)/ contains=pb_k_source,pbIllegalSource,shNumber,shDoubleQuote,shSingleQuote,pbDerefEmulation
syn match pbDerefEmulation /\$[{]\?[[:alnum:]_]*[}]\?/ contained
hi link pbDerefEmulation PreProc
" md5sums
syn keyword pb_k_md5sums md5sums contained
syn match pbValidMd5sums /[[:alnum:]]\{32\}/ contained
syn match pbIllegalMd5sums /[^='"()\/ ]/ contained contains=pbValidMd5sums
syn region pbMd5sumsGroup start=/^md5sums/ end=/)/ contains=pb_k_md5sums,pbValidMd5sums,pbIllegalMd5sums
syn match pbValidMd5sums /[[:alnum:]]\{32\}/ contained
syn region pbMd5sumsGroup start=/^md5sums/ end=/)/ contains=pb_k_md5sums,pbMd5Quotes,pbMd5Hash,pbIllegalMd5sums
syn match pbMd5Quotes /'.*'\|".*"/ contained contains=pbMd5Hash,pbIllegalMd5sums
syn match pbMd5Hash /[[:alnum:]]\+/ contained contains=pbValidMd5sums
hi link pbMd5Quotes Keyword
hi link pbMd5Hash Error
hi link pbValidMd5sums Number
" sha1sums
syn keyword pb_k_sha1sums sha1sums contained
syn match pbValidSha1sums /[[:alnum:]]\{40\}/ contained
syn match pbIllegalSha1sums /[^='"()\/ ]/ contained contains=pbValidSha1sums
syn region pbSha1sumsGroup start=/^sha1sums/ end=/)/ contains=pb_k_sha1sums,pbValidSha1sums,pbIllegalSha1sums
syn match pbValidSha1sums /[[:alnum:]]\{40\}/ contained
syn region pbSha1sumsGroup start=/^sha1sums/ end=/)/ contains=pb_k_sha1sums,pbSha1Quotes,pbSha1Hash,pbIllegalSha1sums
syn match pbSha1Quotes /'.*'\|".*"/ contained contains=pbSha1Hash,pbIllegalSha1sums
syn match pbSha1Hash /[[:alnum:]]\+/ contained contains=pbValidSha1sums
hi link pbSha1Quotes Keyword
hi link pbSha1Hash Error
hi link pbValidSha1sums Number
" options
syn keyword pb_k_options options contained
"syn keyword pbOptions strip docs libtool emptydirs ccache distcc makeflags force contained
syn match pbOptions /\(no\)\?\(strip\|docs\|libtool\|emptydirs\|ccache\|distcc\|makeflags\|force\)/ contained
" syn match pbOptionsNeg /\(\!\|no\)/ contained
syn match pbOptionsNeg /\!/ contained
syn match pbOptionsDeprec /no/ contained
syn region pbOptionsGroup start=/^options=(/ end=/)/ contains=pb_k_options,pbOptions,pbOptionsNeg,pbOptionsDeprec,pbIllegalOption
syn region pbOptionsGroup start=/^options=(/ end=/)/ contains=pb_k_options,pbOptions,pbOptionsNeg,pbOptionsDeprec,pbIllegalOption,shDoubleQuote,shSingleQuote
syn match pbIllegalOption /[^!"'()= ]/ contained contains=pbOptionsDeprec,pbOptions
" noextract
syn match pbNoextract /[[:alnum:]+._${}-]\+/ contained
syn keyword pb_k_noextract noextract contained
syn region pbNoextractGroup start=/^noextract=(/ end=/)/ contains=pb_k_noextract,pbNoextract
syn region pbNoextractGroup start=/^noextract=(/ end=/)/ contains=pb_k_noextract,pbNoextract,shDoubleQuote,shSingleQuote
" comments
syn keyword pb_k_maintainer Maintainer Contributor contained
"syn match pbMaintainer /:.*/ contained
syn match pbMaintainerGroup /Maintainer.*/ contains=pbMaintainer contained
syn match pbDate /[0-9]\{4}\/[0-9]\{2}\/[0-9]\{2}/ contained
@ -178,110 +167,72 @@ syn keyword pbTodo contained COMBAK FIXME TODO XXX
syn match pbComment "^#.*$" contains=@pbCommentGroup
syn match pbComment "[^0-9]#.*$" contains=@pbCommentGroup
" quote
syn region shExSingleQuote matchGroup=Error start=+\$'+ skip=+\\\\\|\\.+ end=+'+ contains=shStringSpecial contained
syn region shSingleQuote matchgroup=shOperator start=+'+ end=+'+ contains=shStringSpecial, at Spell contained
syn region shDoubleQuote matchgroup=shOperator start=+"+ skip=+\\"+ end=+"+ contains=@shDblQuoteList,shStringSpecial, at Spell contained
syn match shStringSpecial "[^[:print:]]" contained
syn match shSpecial "\\[\\\"\'`$()#]" contained
hi link pbComment Comment
hi link pbTodo Todo
hi link pbValidPkgname Special
hi link pbPkgnameGroup Normal
hi link pbIllegalPkgname Error
hi link pb_k_pkgname Keyword
hi link pb_k_pkgname pbKeywords
hi link pbValidPkgver StorageClass
hi link pbPkgverGroup Normal
hi link pbIllegalPkgver Error
hi link pb_k_pkgver Keyword
hi link pb_k_pkgver pbKeywords
hi link pbValidPkgrel Number
hi link pbPkgrelGroup Normal
hi link pbIllegalPkgrel Error
hi link pb_k_pkgrel Keyword
hi link pb_k_pkgrel pbKeywords
hi link pbValidPkgdesc Special
hi link pbPkgdescGroup Normal
hi link pbIllegalPkgdesc Error
hi link pb_k_desc Keyword
hi link pbPkgdescSign Normal
hi link pb_k_desc pbKeywords
hi link pbIllegalUrl Error
hi link pbValidUrl Comment
hi link pbUrlGroup Normal
hi link pbEq Normal
hi link pb_k_url Keyword
hi link pb_k_url pbKeywords
hi link pb_k_license Keyword
hi link pbLicense Number
hi link pbLicenseCustom Number
hi link pbLicenseGroup Normal
hi link pbValidLicense Normal
hi link pb_k_license pbKeywords
hi link pbIllegalLicense Error
hi link pbBackupGroup Normal
hi link pbValidBackup Identifier
hi link pb_k_backup Keyword
hi link pb_k_backup pbKeywords
hi link pbArchGroup Normal
hi link pb_k_arch Keyword
hi link pbArch Number
hi link pb_k_arch pbKeywords
hi link pbIllegalArch Error
hi link pbMakedependsGroup Normal
hi link pb_k_makedepends Keyword
hi link pbValidMakedepends Comment
hi link pb_k_makedepends pbKeywords
hi link pb_k_depends pbKeywords
hi link pb_k_replaces pbKeywords
hi link pb_k_conflicts pbKeywords
hi link pb_k_provides pbKeywords
hi link pbDependsGroup Normal
hi link pb_k_depends Keyword
hi link pbValidDepends StorageClass
hi link pbReplacesGroup Normal
hi link pb_k_replaces Keyword
hi link pbValidReplaces Identifier
hi link pbConflictsGroup Normal
hi link pb_k_conflicts Keyword
hi link pbValidConflicts Number
hi link pbProvidesGroup Normal
hi link pb_k_provides Keyword
hi link pbValidProvides Special
hi link pbValidInstall Normal
hi link pbIllegalInstall Error
hi link pb_k_install Keyword
hi link pb_k_install pbKeywords
"hi link pbSourceLocal Identifier
hi link pb_k_source Keyword
hi link pbSourceRemote Number
hi link pbSourceGroup Normal
hi link pb_k_source pbKeywords
hi link pbIllegalSource Error
hi link pb_k_md5sums Keyword
hi link pbMd5sumsGroup Normal
hi link pbValidMd5sums StorageClass
hi link pb_k_md5sums pbKeywords
hi link pbIllegalMd5sums Error
hi link pb_k_sha1sums Keyword
hi link pbSha1sumsGroup Normal
hi link pbValidSha1sums Number
hi link pb_k_sha1sums pbKeywords
hi link pbIllegalSha1sums Error
hi link pb_k_options Keyword
hi link pbOptions StorageClass
hi link pbOptionsNeg StorageClass
hi link pbOptionsGroup Normal
hi link pb_k_options pbKeywords
hi link pbOptionsDeprec Todo
hi link pbIllegalOption Error
hi link pb_k_noextract Keyword
hi link pbNoextract Identifier
hi link pbNoextractGroup Normal
hi link pb_k_noextract pbKeywords
hi link pbNoextract Normal
hi link pb_k_maintainer Keyword
"hi link pbMaintainer Normal
hi link pb_k_maintainer pbKeywords
hi link pbKeywords Keyword
hi link pbDate Special
syntax include @SHELL syntax/sh.vim
syntax region BUILD start=/^build()/ end=/^}/ contains=@SHELL
let b:current_syntax = "PKGBUILD"
"syntax include @SHELL syntax/sh.vim
"syntax region BUILD start=/^build()/ end=/^}/ contains=@SHELL
"let b:current_syntax = "PKGBUILD"
" vim: ft=vim