2015-12-02 09:14:45 +00:00
|
|
|
## Here is an example for nftables.
|
|
|
|
|
2018-02-07 10:25:46 +00:00
|
|
|
syntax nftables "\.(nft|nftables)$"
|
2015-12-02 09:14:45 +00:00
|
|
|
header "^#!.*(nft|nftables)"
|
2016-05-25 20:13:50 +00:00
|
|
|
comment "#"
|
2015-12-02 09:14:45 +00:00
|
|
|
|
|
|
|
# Objects and operations
|
|
|
|
color green "\<(chain|hook|policy|priority|ruleset|set|table|type|v?map)\>"
|
|
|
|
color green "\<(define|include)\>"
|
|
|
|
color red "\<(add|delete|flush|insert|remove|replace)\>"
|
|
|
|
|
|
|
|
# Families
|
2016-12-21 12:40:58 +00:00
|
|
|
color yellow "\<(arp|bridge|inet|ingress|ip6?|netdev)\>"
|
2015-12-02 09:14:45 +00:00
|
|
|
|
|
|
|
# Terminal statements
|
|
|
|
color red "\<(drop|reject)\>"
|
|
|
|
color brightblue "\<(accept|continue|(d|s)nat|goto|jump|masquerade|return)\>"
|
|
|
|
|
|
|
|
# Comments
|
|
|
|
color cyan "(^|[[:space:]])#.*$"
|
|
|
|
|
|
|
|
# Trailing whitespace
|
|
|
|
color ,green "[[:space:]]+$"
|
|
|
|
|
|
|
|
# Strings and others
|
|
|
|
color yellow ""(\\.|[^"])*"" "'(\\.|[^'])*'"
|
|
|
|
color green "[{}():;|`$<>!=&\\]" "(\]|\[)"
|
|
|
|
|
|
|
|
# Basic variable names
|
2016-12-21 12:40:58 +00:00
|
|
|
color brightred "(\$|@)[[:alpha:]_-][[:alnum:]_.-]*"
|