39 lines
1.2 KiB
Plaintext
39 lines
1.2 KiB
Plaintext
|
## Here is an example for Python.
|
||
|
|
||
|
syntax python "\.py$"
|
||
|
header "^#!.*python"
|
||
|
magic "Python script"
|
||
|
linter pyflakes
|
||
|
comment "#"
|
||
|
|
||
|
# Function definitions.
|
||
|
icolor brightblue "def [0-9A-Z_]+"
|
||
|
# Keywords.
|
||
|
color brightcyan "\<(and|as|assert|async|await|break|class|continue)\>"
|
||
|
color brightcyan "\<(def|del|elif|else|except|finally|for|from)\>"
|
||
|
color brightcyan "\<(global|if|import|in|is|lambda|nonlocal|not|or)\>"
|
||
|
color brightcyan "\<(pass|raise|return|try|while|with|yield)\>"
|
||
|
|
||
|
# These two are keywords in Python 2, but functions in Python 3,
|
||
|
# so only color them when they are followed by whitespace, assuming
|
||
|
# that print(x) is a function invocation and print (x) is a statement.
|
||
|
color brightcyan "\<(exec|print)([[:blank:]]|$)"
|
||
|
|
||
|
# Special values.
|
||
|
color brightmagenta "\<(False|None|True)\>"
|
||
|
|
||
|
# Single-quoted strings.
|
||
|
color brightgreen "'([^'\]|\\.)+'"
|
||
|
color brightgreen ""([^"\]|\\.)+""
|
||
|
# Comments.
|
||
|
color brightred "(^|[[:blank:]])#.*"
|
||
|
# Triple-quoted strings.
|
||
|
color brightgreen start="'''([^'),]|$)" end="(^|[^(\])'''"
|
||
|
color brightgreen start="\"\"\"([^"),]|$)" end="(^|[^(\])\"\"\""
|
||
|
|
||
|
# Reminders.
|
||
|
color brightwhite,yellow "(FIXME|TODO|XXX)"
|
||
|
|
||
|
# Trailing whitespace.
|
||
|
color ,green "[[:space:]]+$"
|