syntax: gentoo: make it clearer that the file contains two syntaxes
parent
14bd52ced8
commit
1c05090a4a
|
@ -1,19 +1,20 @@
|
||||||
## Here is an example for Gentoo ebuilds/eclasses.
|
## Here is an example for Gentoo ebuilds/eclasses,
|
||||||
|
## and (further down) one for Portage control files.
|
||||||
|
|
||||||
syntax "ebuild" "\.e(build|class|blit)$"
|
syntax "ebuild" "\.e(build|class|blit)$"
|
||||||
comment "#"
|
comment "#"
|
||||||
|
|
||||||
## All the standard portage functions
|
## All the standard portage functions:
|
||||||
color brightgreen "(^|\<default_)src_(unpack|prepare|configure|compile|install|test)\>"
|
color brightgreen "(^|\<default_)src_(unpack|prepare|configure|compile|install|test)\>"
|
||||||
color brightgreen "^pkg_(config|nofetch|info|pretend|setup|(pre|post)(inst|rm))\>"
|
color brightgreen "^pkg_(config|nofetch|info|pretend|setup|(pre|post)(inst|rm))\>"
|
||||||
color brightgreen "\<default(_pkg_nofetch|_src_(unpack|prepare|configure|compile|test))?\>"
|
color brightgreen "\<default(_pkg_nofetch|_src_(unpack|prepare|configure|compile|test))?\>"
|
||||||
## Highlight bash related syntax
|
## Bash-related syntax:
|
||||||
color green "\<(break|case|continue|do|done|elif|else|esac|exit|fi|for|function|if|in|read|return|select|shift|then|time|until|while)\>"
|
color green "\<(break|case|continue|do|done|elif|else|esac|exit|fi|for|function|if|in|read|return|select|shift|then|time|until|while)\>"
|
||||||
color green "\<(declare|eval|exec|export|let|local)\>"
|
color green "\<(declare|eval|exec|export|let|local)\>"
|
||||||
color green "[{}():;|`$<>!=&\\]" "(\]|\[)"
|
color green "[{}():;|`$<>!=&\\]" "(\]|\[)"
|
||||||
color green "-[defhnrsuwxzL]\>"
|
color green "-[defhnrsuwxzL]\>"
|
||||||
color green "-(eq|ne|gt|lt|ge|le)\>"
|
color green "-(eq|ne|gt|lt|ge|le)\>"
|
||||||
## Highlight variables ... official portage ones in red, all others in bright red
|
## Variables... official portage ones in red, all others in bright red:
|
||||||
color brightred "\$[-0-9@*#?$!]" "\$[[:alpha:]_][[:alnum:]_]*"
|
color brightred "\$[-0-9@*#?$!]" "\$[[:alpha:]_][[:alnum:]_]*"
|
||||||
color brightred "\$\{[#!]?([-@*#?$!]|[0-9]+|[[:alpha:]_][[:alnum:]_]*)(\[([[:digit:]]|@)+\])?(([#%/]|:?[-=?+])[^}]*\}|\[|\})"
|
color brightred "\$\{[#!]?([-@*#?$!]|[0-9]+|[[:alpha:]_][[:alnum:]_]*)(\[([[:digit:]]|@)+\])?(([#%/]|:?[-=?+])[^}]*\}|\[|\})"
|
||||||
color red "\<(EAPI|ARCH|HOMEPAGE|DESCRIPTION|IUSE|SRC_URI|LICENSE|SLOT|KEYWORDS|[HPR]?DEPEND|PROVIDE|PROPERTIES|REQUIRED_USE|RESTRICT|USERLAND)\>"
|
color red "\<(EAPI|ARCH|HOMEPAGE|DESCRIPTION|IUSE|SRC_URI|LICENSE|SLOT|KEYWORDS|[HPR]?DEPEND|PROVIDE|PROPERTIES|REQUIRED_USE|RESTRICT|USERLAND)\>"
|
||||||
|
@ -22,7 +23,7 @@ color red "\<(AS|C(PP|XX)?|LD)FLAGS\>" "\<C(HOST|TARGET|BUILD)\>" "\<(MERGE_TYPE
|
||||||
color red "\<EBUILD_PHASE(_FUNC)?\>"
|
color red "\<EBUILD_PHASE(_FUNC)?\>"
|
||||||
color red "\<QA_((TEXTRELS|EXECSTACK|WX_LOAD)(_[a-zA-Z_0-9]+)?|DT_HASH|PRESTRIPPED)\>"
|
color red "\<QA_((TEXTRELS|EXECSTACK|WX_LOAD)(_[a-zA-Z_0-9]+)?|DT_HASH|PRESTRIPPED)\>"
|
||||||
color red "\<(PATCHES|(HTML_)?DOCS)\>" "\<WANT_(AUTO(CONF|MAKE)|LIBTOOL)\>" "\<AT_M4DIR\>"
|
color red "\<(PATCHES|(HTML_)?DOCS)\>" "\<WANT_(AUTO(CONF|MAKE)|LIBTOOL)\>" "\<AT_M4DIR\>"
|
||||||
## Highlight portage commands
|
## Portage commands:
|
||||||
color magenta "\<(use(_(with|enable|if_iuse)|x)?|in_iuse)\> [!a-zA-Z0-9_+ -]*" "inherit.*"
|
color magenta "\<(use(_(with|enable|if_iuse)|x)?|in_iuse)\> [!a-zA-Z0-9_+ -]*" "inherit.*"
|
||||||
color brightblue "\<e(begin|end|conf|install|make|qmake4|ant|(qa)?warn|infon?|error|log|patch(_user)?|new(group|user))\>"
|
color brightblue "\<e(begin|end|conf|install|make|qmake4|ant|(qa)?warn|infon?|error|log|patch(_user)?|new(group|user))\>"
|
||||||
color brightblue "\<e(pause|beep|mktemp|(cvs|svn)_clean|punt_cxx)\>" "\<e(aclocal|auto(reconf|header|conf|make)|libtoolize)\>"
|
color brightblue "\<e(pause|beep|mktemp|(cvs|svn)_clean|punt_cxx)\>" "\<e(aclocal|auto(reconf|header|conf|make)|libtoolize)\>"
|
||||||
|
@ -35,20 +36,21 @@ color brightblue "\<prepall(docs|info|man|strip)?\>" "\<prep(info|lib|lib\.(so|a
|
||||||
color brightblue "\<(doc|ins|exe)?into\>" "\<(f|games)(owners|perms)\>" "\<(exe|ins|dir)opts\>"
|
color brightblue "\<(doc|ins|exe)?into\>" "\<(f|games)(owners|perms)\>" "\<(exe|ins|dir)opts\>"
|
||||||
color brightblue "\<tc-get(BUILD_)?(AR|AS|CC|CPP|CXX|LD|NM|OBJCOPY|PKG_CONFIG|RANLIB)\>"
|
color brightblue "\<tc-get(BUILD_)?(AR|AS|CC|CPP|CXX|LD|NM|OBJCOPY|PKG_CONFIG|RANLIB)\>"
|
||||||
color brightblue "\<tc-(arch(-kernel)?|export|has-(tls|openmp))\>"
|
color brightblue "\<tc-(arch(-kernel)?|export|has-(tls|openmp))\>"
|
||||||
## Highlight common commands used in ebuilds
|
## Common commands used in ebuilds:
|
||||||
color blue "\<(awk|cat|cd|chmod|chown|cp|echo|env|find|e?grep|ln|make|mkdir|mv|popd|printf|pushd|rm|rmdir|sed|set|tar|touch|unset|xargs)\>"
|
color blue "\<(awk|cat|cd|chmod|chown|cp|echo|env|find|e?grep|ln|make|mkdir|mv|popd|printf|pushd|rm|rmdir|sed|set|tar|touch|unset|xargs)\>"
|
||||||
## Highlight comments (doesnt work that well)
|
## Comments (doesn't work that well):
|
||||||
color yellow "(^|[[:space:]])#.*$"
|
color yellow "(^|[[:space:]])#.*$"
|
||||||
## Highlight strings (doesnt work that well)
|
## Strings (doesn't work that well):
|
||||||
color brightyellow ""(\\.|[^\"])*"" "'(\\.|[^'])*'"
|
color brightyellow ""(\\.|[^\"])*"" "'(\\.|[^'])*'"
|
||||||
## Trailing space is bad!
|
## Trailing space is bad!
|
||||||
color ,green "[[:space:]]+$"
|
color ,green "[[:space:]]+$"
|
||||||
## Mixed whitespace is also bad.
|
## Mixed whitespace is also bad.
|
||||||
color ,green " "
|
color ,green " "
|
||||||
|
|
||||||
## Here is an example for Portage control files.
|
|
||||||
##
|
|
||||||
syntax "/etc/portage" "\.(accept_keywords|env|keywords|mask|unmask|use)(/.+)?$"
|
syntax "/etc/portage" "\.(accept_keywords|env|keywords|mask|unmask|use)(/.+)?$"
|
||||||
|
comment "#"
|
||||||
|
|
||||||
## Base text:
|
## Base text:
|
||||||
color green "^.+$"
|
color green "^.+$"
|
||||||
## Likely version and slot numbers:
|
## Likely version and slot numbers:
|
||||||
|
|
Loading…
Reference in New Issue