filetype: rpmspec

detect: 
    filename: "\\.spec$|\\.rpmspec$"

rules:
    - preproc: "\\b(Icon|ExclusiveOs|ExcludeOs):"
    - preproc: "\\b(BuildArch|BuildArchitectures|ExclusiveArch|ExcludeArch):"
    - preproc: "\\b(Conflicts|Obsoletes|Provides|Requires|Requires\\(.*\\)|Enhances|Suggests|BuildConflicts|BuildRequires|Recommends|PreReq|Supplements):"
    - preproc: "\\b(Epoch|Serial|Nosource|Nopatch):"
    - preproc: "\\b(AutoReq|AutoProv|AutoReqProv):"
    - preproc: "\\b(Copyright|License|Summary|Summary\\(.*\\)|Distribution|Vendor|Packager|Group|Source[0-9]*|Patch[0-9]*|BuildRoot|Prefix):"
    - preproc: "\\b(Name|Version|Release|Url|URL):"
    - preproc:
        start: "^(Source|Patch)"
        end: ":"
        rules: []

    - preproc: "(i386|i486|i586|i686|athlon|ia64|alpha|alphaev5|alphaev56|alphapca56|alphaev6|alphaev67|sparc|sparcv9|sparc64armv3l|armv4b|armv4lm|ips|mipsel|ppc|ppc|iseries|ppcpseries|ppc64|m68k|m68kmint|Sgi|rs6000|i370|s390x|s390|noarch)"
    - preproc: "(ifarch|ifnarch|ifos|ifnos)"
    - constant.string: "\"(\\\\.|[^\"])*\"|'(\\\\.|[^'])*'"
    - statement: "%(if|else|endif|define|global|undefine)"
    - statement: "%_?([A-Z_a-z_0-9_]*)"
    - statement:
        start: "%\\{"
        end: "\\}"
        rules: []

    - statement:
        start: "%\\{__"
        end: "\\}"
        rules: []

    - statement: "\\$(RPM_BUILD_ROOT)\\>"
    - special: "^%(build$|changelog|check$|clean$|description)"
    - special: "^%(files|install$|package|prep$)"
    - special: "^%(pre|preun|pretrans|post|postun|posttrans)"
    - special: "^%(trigger|triggerin|triggerpostun|triggerun|verifyscript)"
    - comment: "(^|[[:space:]])#([^{].*)?$"
    - constant: "^\\*.*$"
    - indent-char.whitespace: "[[:space:]]+$"
    - indent-char: "	+ +| +	+"
    - todo: "TODO:?"
