Просмотр исходного кода

Merge branch '1674_syntax_highlightings'

* 1674_syntax_highlightings:
  Fixed error of opening yum *.repo files.
  unknown.syntax to something more useful
  Yacc/Bison syntax added
  added new syntax file 'filehighlight.syntax'; hah
  Syntax file for java .properties format
Slava Zanko 15 лет назад
Родитель
Сommit
ea1a2abdf6
6 измененных файлов с 541 добавлено и 2 удалено
  1. 10 1
      syntax/Syntax
  2. 90 0
      syntax/filehighlight.syntax
  3. 38 0
      syntax/properties.syntax
  4. 263 1
      syntax/unknown.syntax
  5. 0 0
      syntax/yum-repo.syntax
  6. 140 0
      syntax/yxx.syntax

+ 10 - 1
syntax/Syntax

@@ -25,6 +25,9 @@
 file [Ss]yntax$ Syntax\sHighlighting\sdefinitions ^#\ssyntax\srules\sversion\s
 include syntax.syntax
 
+file filehighlight.ini$ File\sHighlighting\sdefinitions ^#\sfile\shighlight\srules\sversion\s
+include filehighlight.syntax
+
 file ..\*\\.(e)$ Eiffel\sSource\sFile
 include eiffel.syntax
 
@@ -103,6 +106,9 @@ include j.syntax
 file ..\*\\.(java|JAVA|Java|jav|groovy|GROOVY|Groovy)$ Java\sProgram
 include java.syntax
 
+file ..\*\\.(properties|config) Java\sFile
+include properties.syntax
+
 file ..\*\\.(cs|CS)$ C\#\sProgram
 include cs.syntax
 
@@ -131,7 +137,7 @@ file ..\*\\.(spec|spec\.in)$ RPM\sSpecfile
 include spec.syntax
 
 file ..\*\\.repo$ YUM\sRepo File
-include yum.repo.syntax
+include yum-repo.syntax
 
 file ..\*\\.(awk)$ AWK\sFile
 include awk.syntax
@@ -220,5 +226,8 @@ include PKGBUILD.syntax
 file \\.install$ Arch\\spackage\\sinstall\\sscript
 include sh.syntax
 
+file ..\*\\.(y|yxx|ypp)$ Yacc/Bison\sParser
+include yxx.syntax
+
 file .\* unknown
 include unknown.syntax

+ 90 - 0
syntax/filehighlight.syntax

@@ -0,0 +1,90 @@
+# Syntax highlighting rules for file highlighting rules
+
+# Use \[\] at the end of keywords to suppress their special meaning
+
+context default
+    keyword whole black black blue
+    keyword whole red red
+    keyword whole green green
+    keyword whole brown brown
+    keyword whole blue blue black
+    keyword whole magenta magenta
+    keyword whole cyan cyan
+    keyword whole lightgray lightgray
+    keyword whole gray gray black
+    keyword whole brightred brightred
+    keyword whole brightgreen brightgreen
+    keyword whole yellow yellow
+    keyword whole brightblue brightblue black
+    keyword whole brightmagenta brightmagenta
+    keyword whole brightcyan brightcyan
+    keyword whole white white
+
+    keyword = brightcyan
+    keyword ; brightmagenta
+    keyword whole extensions yellow
+    keyword whole type yellow
+    keyword DEVICE brightred
+    keyword DIR brightred
+    keyword FILE_EXE brightred
+    keyword SPECIAL brightred
+    keyword STALE_LINK brightred
+    keyword SYMLINK brightred
+
+context linestart # \n brown
+
+context linestart [ ] white
+
+context regexp= \n lightgray
+    keyword = brightcyan
+    keyword whole regexp yellow
+
+# regexp patterns
+    keyword \\\/  brightcyan
+    keyword \\\\  brightcyan
+    keyword \\B  brightcyan
+    keyword \\b  brightcyan
+    keyword \\D  brightcyan
+    keyword \\d  brightcyan
+    keyword \\S  brightcyan
+    keyword \\s  brightcyan
+    keyword \\W  brightcyan
+    keyword \\w  brightcyan
+    keyword \\A  brightcyan
+    keyword \\Z  brightcyan
+
+    keyword \\(  brightcyan
+    keyword \\)  brightcyan
+    keyword \\[  brightcyan
+    keyword \\]  brightcyan
+    keyword \\{  brightcyan
+    keyword \\}  brightcyan
+    keyword \\$ brightcyan
+    keyword \\\+ brightcyan
+    keyword \\. brightcyan
+    keyword \\? brightcyan
+    keyword \\\* brightcyan
+    keyword \\^ brightcyan
+    keyword \\| brightcyan
+
+    keyword ( brightmagenta
+    keyword ) brightmagenta
+    keyword [ brightmagenta
+    keyword ] brightmagenta
+    keyword { brightmagenta
+    keyword } brightmagenta
+
+    keyword ?! yellow
+    keyword ?# yellow
+    keyword ?: yellow
+    keyword ?= yellow
+    keyword ?\{-imx:\}+ yellow
+
+    keyword $ yellow
+    keyword \+ yellow
+    keyword . yellow
+    keyword ? yellow
+    keyword \* yellow
+    keyword ^ yellow
+    keyword | yellow
+

+ 38 - 0
syntax/properties.syntax

@@ -0,0 +1,38 @@
+# Java properties file syntax highlighting
+# Author: Tomas Horsky <tomas@thorsky.info>
+# 
+# http://java.sun.com/j2se/1.4.2/docs/api/java/util/Properties.html#load(java.io.InputStream)
+# - Does not support escapes in keys: \ , \=, \:
+# - Additionally highlights numbers, HTML color codes (#AABBCC), some sort of "variable references" (${ref.to.other.key}), and more
+
+context default lightgray
+# Keys
+    keyword linestart \[\s\t\]\{"$%&'()\*\+,-./0123456789;<>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\}\[!"#$%&'()\*\+,-./0123456789;<>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\] cyan
+    keyword = yellow
+    keyword : yellow
+# Value continuation (first line)
+    keyword \\\n yellow
+    
+    keyword ${*} brightgreen
+    keyword \\u\{0123456789ABCDEFabcdef\}\{0123456789ABCDEFabcdef\}\{0123456789ABCDEFabcdef\}\{0123456789ABCDEFabcdef\} magenta
+    keyword whole \{-0123456789\}\[0123456789\] brightcyan
+    keyword whole #\{0123456789ABCDEFabcdef\}\[0123456789ABCDEFabcdef\] green
+    
+    keyword whole true white
+    keyword whole false white
+
+# Value continuation (rest of the lines)
+context exclusive \\\n \n lightgray
+    keyword linestart \{\s\t\}\[\s\t\] lightgray black
+    keyword \\\n yellow
+    
+    keyword ${*} brightgreen
+    keyword \\u\{0123456789ABCDEFabcdef\}\{0123456789ABCDEFabcdef\}\{0123456789ABCDEFabcdef\}\{0123456789ABCDEFabcdef\} magenta
+    keyword whole \{-0123456789\}\[0123456789\] brightcyan
+    keyword whole #\{0123456789ABCDEFabcdef\}\[0123456789ABCDEFabcdef\] green
+
+context linestart # \n brown
+    spellcheck
+
+context linestart ! \n brown
+    spellcheck

+ 263 - 1
syntax/unknown.syntax

@@ -1,2 +1,264 @@
+# Unknown syntax by Olegarch  <olegarch@mail.ru>
+# Possible most undefined files
+# GPL v2
+#
+# (c) 2003
+#
+
+
 context default
-    spellcheck
+    keyword whole 0\{xX\}\[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\] magenta
+
+
+    keyword whole pty brightblue
+    keyword whole tty brightblue
+
+    keyword whole APIC white
+    keyword whole ACPI white
+    keyword whole \{Aa\}\{Pp\}\{Mm\} white
+
+    keyword whole BIOS-\[ABCDEFHabcdefh01923456789\] white
+    keyword whole BIOS white
+
+    keyword whole EMC\[#0123456789\] white
+
+    keyword whole \[E-\]ISA green
+    keyword whole PCI green
+    keyword whole FDC green
+
+    keyword whole \{Cc\}\{Pp\}\{Uu\}\[#0123456789\] brown
+    keyword whole RAM brown
+    keyword whole SMP brown
+
+    keyword whole USB\[#0123456789\] brightgreen
+    keyword whole UHCI brightgreen
+
+    keyword whole \{Ii\}\{Rr\}\{Qq\} red
+    keyword whole \[Uu\]\{Dd\}\{Mm\}\{Aa\} red
+    keyword whole \{Pp\}\{Ii\}\{Oo\} red
+
+    keyword whole VFS brightred
+    keyword whole ATAPI brightred
+    keyword whole E\[/-\]IDE brightred
+    keyword whole IDE brightred
+    keyword whole SCSI brightred
+
+    keyword whole NET\[1234567890\] brightmagenta
+
+    keyword whole TCP cyan
+    keyword whole NVS cyan
+    keyword whole IP cyan
+    keyword whole UDP cyan
+    keyword whole ICMP cyan
+    keyword whole IGMP cyan
+    keyword whole SMTP cyan
+    keyword whole HTTP cyan
+    keyword whole FTP cyan
+    keyword whole SNMP cyan
+
+    keyword whole PPP lightgray
+    keyword whole ETH lightgray 
+
+    keyword whole ESR white
+    keyword whole MTRR white
+
+    keyword whole POSIX yellow
+    keyword whole UNIFIX yellow
+
+    keyword whole GSM brightblue
+    keyword whole GPRS brightblue
+    keyword whole CDMA brightblue
+    keyword whole NMT brightblue
+    keyword whole DAMPS brightblue
+
+
+    keyword whole \{Pp\}\{Pp\}\{Pp\}\{abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\} brightblue
+    keyword whole \{Ee\}\{Tt\}\{Hh\}\{abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\} brightgreen
+    keyword whole \{Hh\}ost green
+    keyword whole \{Nn\}ode green
+    keyword whole \{Ss\}et green
+    keyword whole \{Aa\}lias green
+    keyword whole \{Oo\}n brightgreen
+    keyword whole \{Oo\}ff brightred
+    keyword whole \{Nn\}\{Uu\}\{Ll\}\{Ll\} cyan
+    keyword whole \[0123456789\]\{KkTtMmGg\}\{Bb\} brightgreen
+
+    keyword ./ brightgreen
+    keyword ~/ brightgreen
+    keyword $(*) brightgreen
+    keyword ${*} brightgreen
+    keyword $\{Ii\}d: brightgreen
+    keyword %{*} brightmagenta
+    keyword %%{*} brightmagenta
+    keyword -- yellow
+    keyword :: yellow
+    keyword ::: yellow
+    keyword ... yellow
+    keyword & yellow
+
+    keyword \{:;8&%=\}\{()[]\} yellow green
+    keyword \[~<\]\{:;8&$%|!\}\{-=^*\}\{\*{([)]}EPQZ9#@?!\} yellow green
+    keyword [*] cyan
+    keyword \<*\> cyan
+    keyword whole @*@ cyan
+    keyword whole /dev/\[/_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\] brightblue
+    keyword whole \[-_.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\]@\[-_.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\] brightred
+    keyword whole http://\[\*:~^{}$%/#?&=-_.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\] brightred
+    keyword whole www.\[\*:~^{}$%/#?&=-_.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\] brightred
+    keyword whole ftp://\[\*@|\\()":~^{}$%/#?&=-_.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\] brightred
+    keyword whole ftp.\[\*:~^{}$%/#?&=-_.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\] brightred
+    keyword whole \[01234567890\]:\[01234567890\]:\[01234567890\] brightmagenta
+    keyword whole \[RGBrgb\]:\[01234567890abcdefhABCDEFH\]/\[01234567890abcdefhABCDEFH\]/\[01234567890abcdefhABCDEFH\] magenta
+    keyword whole \[01234567890abcdefhABCDEFH\]:\[01234567890abcdefhABCDEFH\]:\[01234567890abcdefhABCDEFH\] brightmagenta
+    keyword whole \[01234567890\]/\[01234567890\]/\[01234567890\]\[\s\t\]\[01234567890\]:\[01234567890\]:\[01234567890\] brightmagenta
+    keyword whole \[01234567890\]/\[01234567890\]/\[01234567890\]\[\s\t\]\[01234567890\]:\[01234567890\]:\[01234567890\], \[1234567890\] brightmagenta
+    keyword whole \[01234567890\]-\[01234567890\]-\[01234567890\] brightmagenta
+    keyword whole \[01234567890abcdefhABCDEFH\].\[01234567890abcdefhABCDEFH\].\[01234567890abcdefhABCDEFH\].\[01234567890abcdefhABCDEFH\]/\[01234567890abcdefhABCDEFH\].\[01234567890abcdefhABCDEFH\].\[01234567890abcdefhABCDEFH\].\[01234567890abcdefhABCDEFH\] brightblue black
+    keyword whole \[01234567890abcdefhABCDEFH\].\[01234567890abcdefhABCDEFH\].\[01234567890abcdefhABCDEFH\].\[01234567890abcdefhABCDEFH\]\{:/\}\[01234567890abcdefhABCDEFH\] brightblue black
+    keyword whole \[01234567890abcdefhABCDEFH\].\[01234567890abcdefhABCDEFH\].\[01234567890abcdefhABCDEFH\].\[01234567890abcdefhABCDEFH\] brightblue black
+    keyword > yellow
+    keyword < yellow
+    keyword \\ brightgreen
+    keyword / brightgreen
+    keyword - yellow
+    keyword \+\+ yellow
+    keyword | yellow
+    keyword \+ yellow
+    keyword \* yellow
+    keyword % yellow
+    keyword ~ yellow
+    keyword = yellow
+    keyword != yellow
+    keyword ! yellow
+    keyword ? yellow
+    keyword == yellow
+    keyword { white
+    keyword } white
+    keyword ( white
+    keyword ) white
+    keyword whole ( white
+    keyword whole ) white
+    keyword [ white
+    keyword ] white
+    keyword whole [ white
+    keyword whole ] white
+    keyword ^ brightmagenta
+    keyword , yellow
+    keyword . yellow
+    keyword : yellow
+    keyword ; brightred
+    keyword $ brightred
+    keyword " brightgreen
+    keyword ' brightmagenta
+    keyword ` brightred
+    keyword whole GNU brightblue
+    keyword whole gnu brightblue
+
+    keyword whole localhost brightred
+
+    keyword whole Jan red
+    keyword whole Feb red
+    keyword whole Mar red
+    keyword whole Apr red
+    keyword whole May red
+    keyword whole Jun red
+    keyword whole Jul red
+    keyword whole Aug red
+    keyword whole Sep red
+    keyword whole Oct red
+    keyword whole Nov red
+    keyword whole Dec red
+
+    keyword whole Mon green
+    keyword whole Tue green
+    keyword whole Wed green
+    keyword whole Thu green
+    keyword whole Fri green
+    keyword whole Sat green
+    keyword whole Sun brightred
+
+    keyword whole SIGHUP brightblue
+    keyword whole SIGINT brightblue
+    keyword whole SIGQUIT brightblue
+    keyword whole SIGILL brightblue
+    keyword whole SIGTRAP brightblue
+    keyword whole SIGIOT brightblue
+    keyword whole SIGBUS brightblue
+    keyword whole SIGFPE brightblue
+    keyword whole SIGKILL brightblue
+    keyword whole SIGUSR1 brightblue
+    keyword whole SIGSEGV brightblue
+    keyword whole SIGUSR2 brightblue
+    keyword whole SIGPIPE brightblue
+    keyword whole SIGALRM brightblue
+    keyword whole SIGTERM brightblue
+    keyword whole SIGCHLD brightblue
+    keyword whole SIGCONT brightblue
+    keyword whole SIGSTOP brightblue
+    keyword whole SIGTSTP brightblue
+    keyword whole SIGTTIN brightblue
+    keyword whole SIGTTOU brightblue
+    keyword whole SIGURG brightblue
+    keyword whole SIGXCPU brightblue
+    keyword whole SIGXFSZ brightblue
+    keyword whole SIGVTALRM brightblue
+    keyword whole SIGPROF brightblue
+    keyword whole SIGWINCH brightblue
+    keyword whole SIGIO brightblue
+    keyword whole SIGPWR brightblue
+    keyword whole SIGSYS brightblue
+# inches
+    keyword whole \[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.,_\]" brightblue
+
+context linestart # \n brown
+    keyword @*@ cyan
+    keyword whole \[-_.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\]@\[-_.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\] brightred
+    keyword whole http://\[\*:~^{}$%/#?&=-_.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\] brightred
+    keyword whole www.\[\*:~^{}$%/#?&=-_.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\] brightred
+    keyword whole ftp://\[\*:~^{}$%/#?&=-_.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\] brightred
+    keyword whole ftp.\[\*:~^{}$%/#?&=-_.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\] brightred
+    keyword whole GNU blue black
+    keyword whole gnu blue black
+
+context exclusive " " green
+    keyword /dev/\[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\] brightred
+    keyword ` brightred
+    keyword ' brightcyan
+    keyword $(*) brightgreen
+    keyword ${*} brightgreen
+    keyword %{*} brightmagenta
+    keyword %%{*} brightmagenta
+
+context exclusive ( ) white
+    keyword /dev/\[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\] brightred
+    keyword whole SIGHUP yellow
+    keyword whole SIGINT yellow
+    keyword whole SIGQUIT yellow
+    keyword whole SIGILL yellow
+    keyword whole SIGTRAP yellow
+    keyword whole SIGIOT yellow
+    keyword whole SIGBUS yellow
+    keyword whole SIGFPE yellow
+    keyword whole SIGKILL yellow
+    keyword whole SIGUSR1 yellow
+    keyword whole SIGSEGV yellow
+    keyword whole SIGUSR2 yellow
+    keyword whole SIGPIPE yellow
+    keyword whole SIGALRM yellow
+    keyword whole SIGTERM yellow
+    keyword whole SIGCHLD yellow
+    keyword whole SIGCONT yellow
+    keyword whole SIGSTOP yellow
+    keyword whole SIGTSTP yellow
+    keyword whole SIGTTIN yellow
+    keyword whole SIGTTOU yellow
+    keyword whole SIGURG yellow
+    keyword whole SIGXCPU yellow
+    keyword whole SIGXFSZ yellow
+    keyword whole SIGVTALRM yellow
+    keyword whole SIGPROF yellow
+    keyword whole SIGWINCH yellow
+    keyword whole SIGIO yellow
+    keyword whole SIGPWR yellow
+    keyword whole SIGSYS yellow
+    

+ 0 - 0
syntax/yum.repo.syntax → syntax/yum-repo.syntax


+ 140 - 0
syntax/yxx.syntax

@@ -0,0 +1,140 @@
+context default
+    keyword whole auto yellow
+    keyword whole break yellow
+    keyword whole case yellow
+    keyword whole char yellow
+    keyword whole const yellow
+    keyword whole continue yellow
+    keyword whole default yellow
+    keyword whole do yellow
+    keyword whole double yellow
+    keyword whole else yellow
+    keyword whole enum yellow
+    keyword whole extern yellow
+    keyword whole float yellow
+    keyword whole for yellow
+    keyword whole goto yellow
+    keyword whole if yellow
+    keyword whole int yellow
+    keyword whole long yellow
+    keyword whole register yellow
+    keyword whole return yellow
+    keyword whole short yellow
+    keyword whole signed yellow
+    keyword whole sizeof yellow
+    keyword whole static yellow
+    keyword whole struct yellow
+    keyword whole switch yellow
+    keyword whole typedef yellow
+    keyword whole union yellow
+    keyword whole unsigned yellow
+    keyword whole void yellow
+    keyword whole volatile yellow
+    keyword whole while yellow
+    keyword whole asm yellow
+    keyword whole catch yellow
+    keyword whole class yellow
+    keyword whole friend yellow
+    keyword whole delete yellow
+    keyword whole inline yellow
+    keyword whole new yellow
+    keyword whole operator yellow
+    keyword whole private yellow
+    keyword whole protected yellow
+    keyword whole public yellow
+    keyword whole this yellow
+    keyword whole throw yellow
+    keyword whole template yellow
+    keyword whole try yellow
+    keyword whole virtual yellow
+    keyword whole bool yellow
+    keyword whole const_cast yellow
+    keyword whole dynamic_cast yellow
+    keyword whole explicit yellow
+    keyword whole false yellow
+    keyword whole mutable yellow
+    keyword whole namespace yellow
+    keyword whole reinterpret_cast yellow
+    keyword whole static_cast yellow
+    keyword whole true yellow
+    keyword whole typeid yellow
+    keyword whole typename yellow
+    keyword whole using yellow
+    keyword whole wchar_t yellow
+    keyword whole ... yellow
+    keyword whole linestart \{\s\t\}\[\s\t\]#*\n brightmagenta
+
+    keyword whole left yellow
+    keyword whole node yellow
+    keyword whole start yellow
+    keyword whole token yellow
+
+    keyword /\* brown
+    keyword \*/ brown
+    keyword // brown
+
+    keyword '\\\{"abtnvfr\}' brightgreen
+    keyword '\\\{0123\}\{01234567\}\{01234567\}' brightgreen
+    keyword '\\'' brightgreen
+    keyword '\\\\' brightgreen
+    keyword '\\0' brightgreen
+    keyword '\{\s!"#$%&()\*\+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstuvwxyz{|}~嵗╯丰戍貝物洎悖停眾斯須號獄播噶擱藏霰匸�帊昅恘倳眑婭笫崷窙嗲睧颬睼麧緗鴇膹擨闀貘覷鏷禴矙𡜍𦶠�\}' brightgreen
+
+    keyword > yellow
+    keyword < yellow
+    keyword \+ yellow
+    keyword - yellow
+    keyword \* yellow
+    keyword / yellow
+    keyword % yellow
+    keyword = yellow
+    keyword != yellow
+    keyword == yellow
+    keyword { brightcyan
+    keyword } brightcyan
+    keyword ( brightcyan
+    keyword ) brightcyan
+    keyword [ brightcyan
+    keyword ] brightcyan
+    keyword , brightcyan
+    keyword : brightcyan
+    keyword ? brightcyan
+    keyword ; brightmagenta
+
+    keyword wholeright %{ brightcyan
+    keyword wholeright %} brightcyan
+    keyword wholeright %% brightcyan
+    keyword % yellow
+    keyword $$ yellow
+    keyword $\[0123456789\] yellow
+
+context exclusive /\* \*/ brown
+    spellcheck
+
+context exclusive // \n brown
+    spellcheck
+
+context linestart # \n brightred
+    keyword \\\n yellow
+    keyword /\**\*/ brown
+    keyword //*\n brown
+    keyword "+" red
+    keyword <+> red
+
+context " " green
+    spellcheck
+    keyword \\" brightgreen
+    keyword %% brightgreen
+    keyword %\[#0\s-\+,\]\[0123456789\*\]\[.\]\[0123456789\*\]\[L\]\{eEfgGoxX\} brightgreen
+    keyword %\[0\s-\+,\]\[0123456789\*\]\[.\]\[0123456789\*\]\[hl\]\{diuxX\} brightgreen
+    keyword %\[hl\]n brightgreen
+    keyword %\[-\]\[0123456789\*\]\[.\]\[0123456789\*\]s brightgreen
+    keyword %[*] brightgreen
+    keyword %c brightgreen
+    keyword %p brightgreen
+    keyword \\\{0123\}\{01234567\}\{01234567\} brightgreen
+    keyword \\\\ brightgreen
+    keyword \\' brightgreen
+    keyword \\\{abtnvfr\} brightgreen
+
+