diff --git a/cmd/micro/bindings.go b/cmd/micro/bindings.go index 9c813f06..7bc2251d 100644 --- a/cmd/micro/bindings.go +++ b/cmd/micro/bindings.go @@ -414,8 +414,8 @@ func DefaultBindings() map[string]string { "CtrlV": "Paste", "CtrlA": "SelectAll", "CtrlT": "AddTab", - "CtrlRightSq": "PreviousTab", - "CtrlBackslash": "NextTab", + "Alt,": "PreviousTab", + "Alt.": "NextTab", "Home": "StartOfLine", "End": "EndOfLine", "CtrlHome": "CursorStart", @@ -444,6 +444,7 @@ func DefaultBindings() map[string]string { // Integration with file managers "F1": "ToggleHelp", "F2": "Save", + "F3": "Find", "F4": "Quit", "F7": "Find", "F10": "Quit", diff --git a/runtime/colorschemes/atom-dark-tc.micro b/runtime/colorschemes/atom-dark-tc.micro index 9ff37a3d..510a52af 100644 --- a/runtime/colorschemes/atom-dark-tc.micro +++ b/runtime/colorschemes/atom-dark-tc.micro @@ -12,6 +12,7 @@ color-link underlined "#D33682,#1D1F21" color-link error "bold #FF4444,#1D1F21" color-link todo "bold #FF8844,#1D1F21" color-link statusline "#1D1F21,#C5C8C6" +color-link tabbar "#1D1F21,#C5C8C6" color-link indent-char "#505050,#1D1F21" color-link line-number "#656866,#232526" color-link current-line-number "#656866,#1D1F21" @@ -19,3 +20,7 @@ color-link gutter-error "#FF4444,#1D1F21" color-link gutter-warning "#EEEE77,#1D1F21" color-link cursor-line "#2D2F31" color-link color-column "#2D2F31" +#No extended types (bool in C, etc.) +color-link type.extended "default" +#Plain brackets +color-link symbol.brackets "default" \ No newline at end of file diff --git a/runtime/colorschemes/bubblegum.micro b/runtime/colorschemes/bubblegum.micro index cc1ceb4e..2df4155e 100644 --- a/runtime/colorschemes/bubblegum.micro +++ b/runtime/colorschemes/bubblegum.micro @@ -12,10 +12,13 @@ color-link special "167,231" color-link error "231, 160" color-link underlined "underline 241,231" color-link todo "246,231" - color-link statusline "241,254" +color-link tabbar "241,254" color-link gutter-error "197,231" color-link gutter-warning "134,231" color-link line-number "246,254" color-link cursor-line "254" color-link color-column "254" +#No extended types (bool in C, &c.) and plain brackets +color-link type.extended "default" +color-link symbol.brackets "default" \ No newline at end of file diff --git a/runtime/colorschemes/cmc-16.micro b/runtime/colorschemes/cmc-16.micro new file mode 100644 index 00000000..45cc500b --- /dev/null +++ b/runtime/colorschemes/cmc-16.micro @@ -0,0 +1,38 @@ +#CaptainMcClellan's personal color scheme. +#16 colour version. +color-link comment "bold black" +color-link constant "cyan" +color-link constant.bool "bold cyan" +color-link constant.bool.true "bold green" +color-link constant.bool.false "bold red" +color-link constant.string "yellow" +color-link constant.string.url "underline blue, white" +#color-link constant.number "constant" +color-link constant.specialChar "bold magenta" +color-link identifier "bold red" +color-link identifier.macro "bold red" +color-link identifier.var "bold blue" +#color-link identifier.class "bold green" +color-link identifier.class "bold white" +color-link statement "bold yellow" +color-link symbol "red" +color-link symbol.brackets "blue" +color-link symbol.tag "bold blue" +color-link preproc "bold cyan" +color-link type "green" +color-link type.keyword "bold green" +color-link special "magenta" +color-link ignore "default" +color-link error "bold ,brightred" +color-link todo "underline black,brightyellow" +color-link indent-char ",brightgreen" +color-link line-number "green" +color-link line-number.scrollbar "green" +color-link statusline "white,blue" +color-link tabbar "white,blue" +color-link current-line-number "red" +color-link current-line-number.scroller "red" +color-link gutter-error ",red" +color-link gutter-warning "red" +color-link color-column "cyan" +color-link underlined.url "underline blue, white" diff --git a/runtime/colorschemes/cmc-paper.micro b/runtime/colorschemes/cmc-paper.micro new file mode 100644 index 00000000..b2c4ef2a --- /dev/null +++ b/runtime/colorschemes/cmc-paper.micro @@ -0,0 +1,37 @@ +#CaptainMcClellan's personal color scheme. +#Paper version +color-link default "black,white" +color-link comment "bold black" +color-link constant "cyan" +color-link constant.bool "bold cyan" +color-link constant.bool.true "bold green" +color-link constant.bool.false "bold red" +color-link constant.string "bold yellow" +color-link constant.string.url "underline blue, white" +color-link constant.number "constant" +color-link constant.specialChar "bold magenta" +color-link identifier "bold red" +color-link identifier.macro "bold red" +color-link identifier.var "bold blue" +color-link identifier.class "bold green" +color-link preproc "bold cyan" +color-link statement "bold yellow" +color-link symbol "red" +color-link symbol.brackets "blue" +color-link type "green" +color-link type.keyword "bold green" +color-link special "magenta" +color-link ignore "default" +color-link error ",brightred" +color-link todo "black,brightyellow" +color-link indent-char ",brightgreen" +color-link line-number "green" +color-link line-number.scrollbar "green" +color-link statusline "white,blue" +color-link tabbar "white,blue" +color-link current-line-number "red" +color-link current-line-number.scroller "red" +color-link gutter-error ",red" +color-link gutter-warning "red" +color-link color-column "cyan" +color-link underlined.url "underline blue, white" \ No newline at end of file diff --git a/runtime/colorschemes/cmc-tc.micro b/runtime/colorschemes/cmc-tc.micro new file mode 100644 index 00000000..38710e55 --- /dev/null +++ b/runtime/colorschemes/cmc-tc.micro @@ -0,0 +1,36 @@ +#CaptainMcClellan's personal colour scheme. +#Full colour edition. +color-link default "#aaaaaa,#1e2124" +color-link comment "bold #555555" +color-link constant "#008888" +#color-link constant.string "#888800" +color-link constant.string "#a85700" +color-link constant.specialChar "bold #ccccff" +color-link identifier "bold #e34234" +color-link identifier.macro "bold #e34234" +color-link identifier.var "bold #5757ff" +color-link identifier.class "bold #ffffff" +color-link statement "bold #ffff55" +color-link symbol "#722f37" +color-link symbol.brackets "#4169e1" +color-link symbol.tag "#5757ff" +color-link preproc "bold #55ffff" +color-link type "#3eb489" +color-link type.keyword "bold #bdecb6" +color-link special "#b57edc" +color-link ignore "default" +color-link error "bold ,#e34234" +color-link todo "bold underline #888888,#f26522" +color-link indent-char ",#bdecb6" +color-link line-number "#bdecb6,#36393e" +color-link line-number.scrollbar "#3eb489" +color-link statusline "#aaaaaa,#8a496b" +color-link tabbar "#aaaaaa,#8a496b" +color-link current-line-number "bold #e34234,#424549" +color-link current-line-number.scroller "red" +color-link gutter-error ",#e34234" +color-link gutter-warning "#e34234" +color-link color-column "#f26522" +color-link constant.bool "bold #55ffff" +color-link constant.bool.true "bold #85ff85" +color-link constant.bool.false "bold #ff8585" \ No newline at end of file diff --git a/runtime/colorschemes/codeblocks-paper.micro b/runtime/colorschemes/codeblocks-paper.micro new file mode 100644 index 00000000..196b63ef --- /dev/null +++ b/runtime/colorschemes/codeblocks-paper.micro @@ -0,0 +1,25 @@ +#A colorscheme based on Code::Blocks IDE +#but with a white background. +color-link default "black,white" +color-link comment "bold black" +color-link constant "blue" +color-link constant.number "bold magenta" +color-link constant.string "bold blue" +color-link identifier "black" +color-link preproc "green" +color-link statement "blue" +color-link symbol "red" +color-link symbol.brackets "blue" +color-link type "blue" +color-link special "magenta" +color-link ignore "default" +color-link error "bold white,brightred" +color-link todo "bold black,brightyellow" +color-link indent-char "bold black" +color-link line-number "black,white" +color-link statusline "white,red" +color-link tabbar "white,red" +color-link current-line-number "red,black" +color-link gutter-error ",red" +color-link gutter-warning "red" +color-link color-column "black" \ No newline at end of file diff --git a/runtime/colorschemes/codeblocks.micro b/runtime/colorschemes/codeblocks.micro new file mode 100644 index 00000000..2decea78 --- /dev/null +++ b/runtime/colorschemes/codeblocks.micro @@ -0,0 +1,23 @@ +#Theme based on Code::Blocks IDE's default syntax highlighting. +color-link comment "bold black" +color-link constant "blue" +color-link constant.string "bold blue" +color-link constant.number "bold magenta" +color-link identifier "default" +color-link preproc "green" +color-link statement "blue" +color-link symbol "red" +color-link symbol.brackets "blue" +color-link type "blue" +color-link special "magenta" +color-link ignore "default" +color-link error ",brightred" +color-link todo "bold black,brightyellow" +color-link indent-char "bold black" +color-link line-number "black,white" +color-link statusline "white,red" +color-link tabbar "white,red" +color-link current-line-number "red" +color-link gutter-error ",red" +color-link gutter-warning "red" +color-link color-column "white" \ No newline at end of file diff --git a/runtime/colorschemes/default.micro b/runtime/colorschemes/default.micro index 66e391b8..1e5bf74b 100644 --- a/runtime/colorschemes/default.micro +++ b/runtime/colorschemes/default.micro @@ -14,6 +14,7 @@ color-link underlined "#D33682,#282828" color-link error "bold #CB4B16,#282828" color-link todo "bold #D33682,#282828" color-link statusline "#282828,#F8F8F2" +color-link tabbar "#282828,#f8f8f2" color-link indent-char "#505050,#282828" color-link line-number "#AAAAAA,#323232" color-link current-line-number "#AAAAAA,#282828" @@ -21,3 +22,6 @@ color-link gutter-error "#CB4B16,#282828" color-link gutter-warning "#E6DB74,#282828" color-link cursor-line "#323232" color-link color-column "#323232" +#No extended types; plain brackets +color-link type.extended "default" +color-link symbol.brackets "default" diff --git a/runtime/colorschemes/flamepoint-tc.micro b/runtime/colorschemes/flamepoint-tc.micro new file mode 100644 index 00000000..45ce2228 --- /dev/null +++ b/runtime/colorschemes/flamepoint-tc.micro @@ -0,0 +1,30 @@ +#Flamepoint theme +#By CaptainMcClellan +color-link default "" +color-link comment "" +color-link constant "" +color-link constant.bool "" +color-link constant.bool.true "" +color-link constant.bool.false "" +color-link constant.number "" +color-link constant.specialChar "" +color-link constant.string "" +color-link constant.string.url "underline" +color-link identifier "" +color-link identifier.var "" +color-link preproc "" +color-link special "" +color-link statement "" +color-link symbol "" +color-link symbol.brackets "" +color-link symbol.tag "" +color-link type "" +color-link type.keyword "" +color-link error "" +color-link todo "" +color-link cursor-line "" +color-link statusline "" +color-link tabbar "" +color-link color-column "" +color-link gutter-error "" +color-link gutter-warning "" diff --git a/runtime/colorschemes/funky-cactus-tc.micro b/runtime/colorschemes/funky-cactus-tc.micro new file mode 100644 index 00000000..b5587460 --- /dev/null +++ b/runtime/colorschemes/funky-cactus-tc.micro @@ -0,0 +1 @@ +#Funky Cactus theme in true colour. diff --git a/runtime/colorschemes/funky-cactus.micro b/runtime/colorschemes/funky-cactus.micro new file mode 100644 index 00000000..5703d838 --- /dev/null +++ b/runtime/colorschemes/funky-cactus.micro @@ -0,0 +1,33 @@ +#Funky Cactus theme +color-link comment "bold black" +color-link constant "cyan" +color-link constant.bool "bold cyan" +color-link constant.bool.true "bold green" +color-link constant.bool.false "bold red" +color-link constant.string "yellow" +color-link constant.number "constant" +color-link constant.specialChar "bold magenta" +color-link identifier "bold red" +color-link identifier.macro "bold red" +color-link identifier.var "bold blue" +color-link identifier.class "bold green" +color-link preproc "bold cyan" +color-link statement "bold yellow" +color-link symbol "red" +color-link symbol.brackets "blue" +color-link type "green" +color-link type.keyword "bold green" +color-link special "magenta" +color-link ignore "default" +color-link error "bold ,brightred" +color-link todo "underline ,brightyellow" +color-link indent-char "bold ,brightgreen" +color-link line-number "green" +color-link line-number.scrollbar "green" +color-link statusline "black,green" +color-link tabbar "black,magenta" +color-link current-line-number "bold magenta" +color-link current-line-number.scroller "red" +color-link gutter-error ",red" +color-link gutter-warning "red" +color-link color-column "bold green" diff --git a/runtime/colorschemes/gameboy-tc.micro b/runtime/colorschemes/gameboy-tc.micro new file mode 100644 index 00000000..a71c7f23 --- /dev/null +++ b/runtime/colorschemes/gameboy-tc.micro @@ -0,0 +1,23 @@ +#Gameboy theme +color-link default "#3f3f3f,#bfc180" +color-link comment "#7d7343" +color-link constant "#7d7343" +color-link identifier "#ddde7d" +color-link preproc "#ddde7d,#7d7343" +color-link special "#7d7343" +color-link statement "#7d7343" +color-link symbol "#7d7343" +color-link type "#7d7343" +color-link error "#ddde7d,#7d7343" +color-link todo "#7d7343,#ddde7d" +color-link statusline "#ddde7d,#7d7343" +color-link tabbar "#ddde7d,#7d7343" +color-link color-column "#7d7343" +color-link line-number "#ddde7d,#7d7343" +color-link current-line-number "#3f3f3f,#bfc180" +color-link gutter-error "#ddde7d,#7d7343" +color-link gutter-warning "default" +#3f3f3f +#7d7343 +#bfc180 +#ddde76 \ No newline at end of file diff --git a/runtime/colorschemes/geany-alt-tc.micro b/runtime/colorschemes/geany-alt-tc.micro new file mode 100644 index 00000000..6b2198d2 --- /dev/null +++ b/runtime/colorschemes/geany-alt-tc.micro @@ -0,0 +1,21 @@ +#Geany Alternate theme +color-link default "#000000,#fefefe" +color-link comment "#808080" +color-link constant "default" +color-link constant.bool "#003030" +color-link constant.number "#300008" +color-link constant.string "#008000" +color-link identifier "default" +color-link preproc "#bbbb77" +color-link special "#003030" +color-link statement "#003030" +color-link symbol "#300008" +color-link symbol.tag "bold #4e9d71" +color-link type "#003030" +color-link error "#a52a2a" +color-link todo "#ffa500" +color-link line-number "#000000,#d0d0d0" +color-link current-line-number "#000000,#d0d0d0" +color-link color-column "#c2ebc2" +color-link cursor-line "#f0f0f0" +color-link type.extended "default" \ No newline at end of file diff --git a/runtime/colorschemes/geany.micro b/runtime/colorschemes/geany.micro new file mode 100644 index 00000000..fdb26b66 --- /dev/null +++ b/runtime/colorschemes/geany.micro @@ -0,0 +1,23 @@ +#Geany +color-link comment "red" +color-link constant "default" +color-link constant.number +color-link constant.string "bold yellow" +color-link identifier "default" +color-link preproc "cyan" +color-link special "blue" +color-link statement "blue" +color-link symbol "default" +color-link symbol.tag "bold blue" +color-link type "blue" +color-link type.extended "default" +color-link error "red" +color-link todo "bold cyan" +color-link indent-char "bold black" +color-link line-number "" +color-link current-line-number "" +color-link statusline "black,white" +color-link tabbar "black,white" +color-link color-column "bold geren" +color-link gutter-error ",red" +color-link gutter-warning "red" \ No newline at end of file diff --git a/runtime/colorschemes/github-tc.micro b/runtime/colorschemes/github-tc.micro new file mode 100644 index 00000000..2d49d438 --- /dev/null +++ b/runtime/colorschemes/github-tc.micro @@ -0,0 +1,24 @@ +#True color theme based on Github's syntax highlighting. +#Warning, this is based on how it rendered in my Firefox! +#Yours may look different. +color-link comment "bold #969896" +color-link constant "#0086B9" +color-link constant.number "#0086B9" +color-link constant.specialChar "bold #1836BD" +color-link constant.string "bold #1836BD" +color-link constant.bool "#0086B9" +color-link identifier "#A71D5D" +color-link preproc "bold #A71D5D" +color-link special "#A71D5D" +color-link statement "#A71D5D" +color-link symbol "default" +color-link type "#A71D5D" +color-link error "bold ,#E34234" +color-link todo "white" +color-link indent-char "default" +color-link line-number "bold #969896" +color-link current-line-number "bold #969896" +color-link gutter-error "bold ,#E34234" +color-link gutter-warning "bold #f26522" +color-link statusline "bold #c8c9cb,#24292e" +color-link tabbar "bold #c8c9cb,#24292e" \ No newline at end of file diff --git a/runtime/colorschemes/github.micro b/runtime/colorschemes/github.micro new file mode 100644 index 00000000..603daede --- /dev/null +++ b/runtime/colorschemes/github.micro @@ -0,0 +1,24 @@ +#Theme based on Github's syntax highlighting. +color-link comment "bold black" +color-link constant "cyan" +color-link constant.number "cyan" +color-link constant.specialChar "bold blue" +color-link constant.string "bold blue" +color-link constant.bool "cyan" +color-link identifier "magenta" +color-link preproc "bold magenta" +color-link special "magenta" +color-link statement "magenta" +color-link symbol "default" +color-link type "magenta" +color-link error "bold ,brightred" +color-link todo "white" +color-link indent-char "default" +color-link line-number "bold black" +color-link current-line-number "bold black" +color-link gutter-error ",red" +color-link gutter-warning "bold yellow" +color-link statusline "bold white,black" +color-link tabbar "bold white,black" +#Plain brackets. +#color-link symbol.brackets "default" \ No newline at end of file diff --git a/runtime/colorschemes/gruvbox-tc.micro b/runtime/colorschemes/gruvbox-tc.micro index 2e2f97b3..64312e2a 100644 --- a/runtime/colorschemes/gruvbox-tc.micro +++ b/runtime/colorschemes/gruvbox-tc.micro @@ -17,3 +17,5 @@ color-link line-number "#665c54,#282828" color-link current-line-number "#665c54,#3c3836" color-link cursor-line "#3c3836" color-link color-column "#79740e" +color-link statusline "#ebdbb2,#665c54" +color-link tabbar "#ebdbb2,#665c54" diff --git a/runtime/colorschemes/gruvbox.micro b/runtime/colorschemes/gruvbox.micro index e2e4c1cf..d4877d83 100644 --- a/runtime/colorschemes/gruvbox.micro +++ b/runtime/colorschemes/gruvbox.micro @@ -15,3 +15,5 @@ color-link line-number "243,237" color-link current-line-number "172,237" color-link cursor-line "237" color-link color-column "237" +color-link statusline "223,237" +color-link tabbar "223,237" \ No newline at end of file diff --git a/runtime/colorschemes/mc.micro b/runtime/colorschemes/mc.micro new file mode 100644 index 00000000..f04f7a55 --- /dev/null +++ b/runtime/colorschemes/mc.micro @@ -0,0 +1,27 @@ +#Midnight Commander inspired theme. +color-link default "white,blue" +color-link comment "bold black" +color-link constant "bold white" +color-link constant.string "bold yellow" +color-link identifier "bold red" +color-link statement "bold cyan" +color-link symbol "white" +color-link symbol.brackets "white" +color-link symbol.tag "bold green" +color-link preproc "black,cyan" +color-link type "green" +color-link special "magenta" +color-link ignore "default" +color-link error ",brightred" +color-link todo ",brightyellow" +color-link indent-char ",cyan" +color-link line-number "green" +color-link line-number.scrollbar "white" +color-link statusline "black,cyan" +color-link tabbar "black,cyan" +color-link current-line-number "black,cyan" +color-link current-line-number.scroller "cyan" +color-link cursor-line "black,cyan" +color-link gutter-error ",red" +color-link gutter-warning "red" +color-link color-column "cyan" \ No newline at end of file diff --git a/runtime/colorschemes/monochrome-paper.micro b/runtime/colorschemes/monochrome-paper.micro new file mode 100644 index 00000000..e7a95e94 --- /dev/null +++ b/runtime/colorschemes/monochrome-paper.micro @@ -0,0 +1,5 @@ +#Monochrome Paper theme. +#Edit your files on a white background without colors. +color-link default "black,white" +color-link statusline "white,black" +color-link tabbar "white,black" \ No newline at end of file diff --git a/runtime/colorschemes/monochrome.micro b/runtime/colorschemes/monochrome.micro new file mode 100644 index 00000000..c38de3fb --- /dev/null +++ b/runtime/colorschemes/monochrome.micro @@ -0,0 +1,3 @@ +#Monochrome +#This makes micro use only the terminal's default +# foreground and background colours. \ No newline at end of file diff --git a/runtime/colorschemes/monokai.micro b/runtime/colorschemes/monokai.micro index 9a716ee2..84dca676 100644 --- a/runtime/colorschemes/monokai.micro +++ b/runtime/colorschemes/monokai.micro @@ -13,6 +13,7 @@ color-link underlined "#D33682,#282828" color-link error "bold #CB4B16,#282828" color-link todo "bold #D33682,#282828" color-link statusline "#282828,#F8F8F2" +color-link tabbar "#282828,#F8F8F2" color-link indent-char "#505050,#282828" color-link line-number "#AAAAAA,#323232" color-link current-line-number "#AAAAAA,#282828" @@ -20,3 +21,6 @@ color-link gutter-error "#CB4B16,#282828" color-link gutter-warning "#E6DB74,#282828" color-link cursor-line "#323232" color-link color-column "#323232" +#No extended types; Plain brackets. +color-link type.extended "default" +color-link symbol.brackets "default" \ No newline at end of file diff --git a/runtime/colorschemes/nano.micro b/runtime/colorschemes/nano.micro new file mode 100644 index 00000000..80ef0e4f --- /dev/null +++ b/runtime/colorschemes/nano.micro @@ -0,0 +1,30 @@ +#Colorscheme styled after default Debian nano. +color-link comment "bold blue" +color-link comment.bright "cyan" +color-link constant "red" +color-link constant.bool "yellow" +color-link constant.bool.true "bold green" +color-link constant.bool.false "bold red" +color-link constant.number "default" +color-link constant.specialChar "bold magenta" +color-link constant.string "bold yellow" +color-link identifier "bold blue" +color-link identifier.macro "bold red" +color-link statement "bold green" +color-link symbol "green" +#color-link symbol.tag "blue" +color-link preproc "brightcyan" +color-link type "green" +color-link special "magenta" +color-link ignore "default" +color-link error "white,black" +color-link todo "bold cyan" +color-link indent-char ",green" +color-link line-number "default" +color-link current-line-number "default" +color-link gutter-error ",white" +color-link gutter-warning "white" +color-link cursor-line "default" +color-link color-column "white" +#No extended types ( bool in C ); Plain brackets +color-link type.extended "default" diff --git a/runtime/colorschemes/nes-tc.micro b/runtime/colorschemes/nes-tc.micro new file mode 100644 index 00000000..471edd7a --- /dev/null +++ b/runtime/colorschemes/nes-tc.micro @@ -0,0 +1,30 @@ +#NES +#A color theme only using NES pallette colours +color-link default "" +color-link comment "" +color-link constant "" +color-link constant.bool "" +color-link constant.bool.true "" +color-link constant.bool.false "" +color-link constant.number "" +color-link constant.specialChar "" +color-link constant.string "" +color-link constant.string.url "underline" +color-link identifier "" +color-link identifier.var "" +color-link preproc "" +color-link special "" +color-link statement "" +color-link symbol "" +color-link symbol.brackets "" +color-link symbol.tag "" +color-link type "" +color-link type.keyword "" +color-link error "" +color-link todo "" +color-link cursor-line "" +color-link statusline "" +color-link tabbar "" +color-link color-column "" +color-link gutter-error "" +color-link gutter-warning "" diff --git a/runtime/colorschemes/paper-tc.micro b/runtime/colorschemes/paper-tc.micro new file mode 100644 index 00000000..d70fdcaf --- /dev/null +++ b/runtime/colorschemes/paper-tc.micro @@ -0,0 +1,22 @@ +#Paper theme, true color edition +#Edit on an *actual* white background! +color-link default "#000000,#efefef" +color-link comment "" +color-link constant "" +color-link constant.string "" +color-link constant.string.url "underline #0000dd" +color-link identifier "" +color-link identifier.var "" +color-link special "" +color-link statement "" +color-link symbol "" +color-link symbol.brackets "" +color-link symbol.tag "" +color-link type "" +color-link statusline "" +color-link tabbar "" +color-link error "" +color-link todo "" +color-link color-column "" +color-link gutter-error "" +color-link gutter-warning "" \ No newline at end of file diff --git a/runtime/colorschemes/paper.micro b/runtime/colorschemes/paper.micro new file mode 100644 index 00000000..d83154ba --- /dev/null +++ b/runtime/colorschemes/paper.micro @@ -0,0 +1,29 @@ +#Paper theme, Edit on a white background. +color-link default "black,white" +color-link comment "bold black" +color-link constant "cyan" +color-link constant.string "bold green" +color-link identifier "blue" +color-link identifier.macro "bold red" +color-link identifier.var "bold blue" +color-link identifier.class "bold green" +color-link statement "green" +color-link symbol "red" +color-link symbol.brackets "default" +color-link symbol.tag "bold blue" +color-link preproc "bold cyan" +color-link type "green" +color-link special "magenta" +color-link ignore "default" +color-link error ",brightred" +color-link todo ",brightyellow" +color-link indent-char ",brightgreen" +color-link line-number "black" +color-link line-number.scrollbar "green" +color-link statusline "white,black" +color-link tabbar "white,black" +color-link current-line-number "blue" +color-link current-line-number.scroller "red" +color-link gutter-error ",red" +color-link gutter-warning "red" +color-link color-column "black" \ No newline at end of file diff --git a/runtime/colorschemes/simple.micro b/runtime/colorschemes/simple.micro index a330f57e..d34d7719 100644 --- a/runtime/colorschemes/simple.micro +++ b/runtime/colorschemes/simple.micro @@ -14,5 +14,10 @@ color-link line-number "yellow" color-link current-line-number "red" color-link gutter-error ",red" color-link gutter-warning "red" -color-link cursor-line "white" +#Cursor line causes readability issues. Disabled for now. +#color-link cursor-line "white,black" color-link color-column "white" +#No extended types. (bool in C) +color-link type.extended "default" +#No bracket highlighting. +color-link symbol.brackets "default" \ No newline at end of file diff --git a/runtime/colorschemes/solarized-tc.micro b/runtime/colorschemes/solarized-tc.micro index 624f7a2d..ede33dfa 100644 --- a/runtime/colorschemes/solarized-tc.micro +++ b/runtime/colorschemes/solarized-tc.micro @@ -11,6 +11,7 @@ color-link underlined "#D33682,#002833" color-link error "bold #CB4B16,#002833" color-link todo "bold #D33682,#002833" color-link statusline "#003541,#839496" +color-link tabbar "#003541,#839496" color-link indent-char "#586E75,#002833" color-link line-number "#586E75,#003541" color-link current-line-number "#586E75,#002833" @@ -18,3 +19,5 @@ color-link gutter-error "#003541,#CB4B16" color-link gutter-warning "#CB4B16,#002833" color-link cursor-line "#003541" color-link color-column "#003541" +color-link type.extended "default" +color-link symbol.brackets "default" \ No newline at end of file diff --git a/runtime/colorschemes/solarized.micro b/runtime/colorschemes/solarized.micro index e86eff6c..32e740a0 100644 --- a/runtime/colorschemes/solarized.micro +++ b/runtime/colorschemes/solarized.micro @@ -1,19 +1,22 @@ -color-link comment "brightgreen" +color-link comment "bold brightgreen" color-link constant "cyan" color-link identifier "blue" color-link statement "green" color-link symbol "green" -color-link preproc "brightred" +color-link preproc "bold brightred" color-link type "yellow" color-link special "red" color-link underlined "magenta" color-link error "bold brightred" color-link todo "bold magenta" color-link statusline "black,brightblue" +color-link tabbar "black,brightblue" color-link indent-char "black" -color-link line-number "brightgreen,black" -color-link current-line-number "brightgreen,default" +color-link line-number "bold brightgreen,black" +color-link current-line-number "bold brightgreen,default" color-link gutter-error "black,brightred" color-link gutter-warning "brightred,default" color-link cursor-line "black" color-link color-column "black" +color-link type.extended "default" +color-link symbol.brackets "default" \ No newline at end of file diff --git a/runtime/colorschemes/symbian-tc.micro b/runtime/colorschemes/symbian-tc.micro new file mode 100644 index 00000000..08e694e2 --- /dev/null +++ b/runtime/colorschemes/symbian-tc.micro @@ -0,0 +1,23 @@ +#Symbian +color-link default "#000000,#ff8a00" +color-link comment "#8c0000" +color-link constant "#8c0000" +color-link identifier "#ffff8c" +color-link preproc "#ffff8c,#8c0000" +color-link special "#8c0000" +color-link statement "#8c0000" +color-link symbol "#8c0000" +color-link type "#8c0000" +color-link error "#ffff8c,#8c0000" +color-link todo "#8c0000,#ffff8c" +color-link statusline "#ffff8c,#8c0000" +color-link tabbar "#ffff8c,#8c0000" +color-link color-column "#8c0000" +color-link line-number "#ffff8c,#8c0000" +color-link current-line-number "#000000,#ff8a00" +color-link gutter-error "#ffff8c,#8c0000" +color-link gutter-warning "default" +#000000 +#8c0000 +#ff8a00 +#ffff8c \ No newline at end of file diff --git a/runtime/colorschemes/zenburn.micro b/runtime/colorschemes/zenburn.micro index e8e68007..9cbd6240 100644 --- a/runtime/colorschemes/zenburn.micro +++ b/runtime/colorschemes/zenburn.micro @@ -13,6 +13,7 @@ color-link underlined "188,237" color-link error "115,236" color-link todo "bold 254,237" color-link statusline "186,236" +color-link tabbar "186,236" color-link indent-char "238,237" color-link line-number "248,238" color-link gutter-error "237,174" diff --git a/runtime/help/colors.md b/runtime/help/colors.md index 196b6ca9..4c48370e 100644 --- a/runtime/help/colors.md +++ b/runtime/help/colors.md @@ -12,6 +12,11 @@ Micro comes with a number of colorschemes by default. Here is the list: * simple: this is the simplest colorscheme. It uses 16 colors which are set by your terminal +* mc: A 16-color theme based on the look and feel of GNU Midnight Commander. + This will look great used in conjunction with Midnight Commander. + +* nano: A 16-color theme loosely based on GNU nano's syntax highlighting. + * monokai: this is the monokai colorscheme; you may recognize it as Sublime Text's default colorscheme. It requires true color to look perfect, but the 256 color approximation looks very good as well. @@ -29,15 +34,47 @@ Micro comes with a number of colorschemes by default. Here is the list: * atom-dark-tc: this colorscheme is based off of Atom's "dark" colorscheme. It requires true color to look good. +* cmc-16: A very nice 16-color theme. Written by contributor CaptainMcClellan + (Collin Warren.) Licensed under the same license as the rest of the themes. + +* cmc-paper: Basically cmc-16, but on a white background. ( Actually light grey on most + ANSI (16-color) terminals.) + +* cmc-tc: A true colour variant of the cmc theme. + It requires true color to look its best. Use cmc-16 if your terminal doesn't support true color. + +* codeblocks: A colorscheme based on the Code::Blocks IDE's default syntax highlighting. + +* codeblocks-paper: Same as codeblocks, but on a white background. ( Actually light grey. ) + +* github-tc: A colorscheme based on Github's syntax highlighting. Requires true color to look its best. + +* paper-tc: A nice minimalist theme with a light background, good for editing documents on. + Requires true color to look its best. Not to be confused with `-paper` suffixed themes. + +* geany: Colorscheme + +* geany-alt-tc: Based on an alternate theme bundled with geany. + +* flamepoint-tc: A fire inspired, high intensity true color theme written by CaptainMcClellan. + As with all the other `-tc` suffixed themes, it looks its best on a + To enable one of these colorschemes just press CtrlE in micro and type `set colorscheme solarized`. -(or whichever one you choose). +(or whichever one you choose). You can also use `set colorscheme monochrome` if you'd prefer +to have just the terminal's default foreground and background colors. +Note: This provides no syntax highlighting! + +See `help gimmickcolors` for a list of some true colour themes that are more +just for fun than for serious use. ( Though feel free if you want! ) --- +### Creating a Colorscheme + Micro's colorschemes are also extremely simple to create. The default ones can be found [here](https://github.com/zyedidia/micro/tree/master/runtime/colorschemes). -They are only about 18 lines in total. +They are only about 18-30 lines in total. Basically to create the colorscheme you need to link highlight groups with actual colors. This is done using the `color-link` command. @@ -84,7 +121,8 @@ If the user's terminal supports true color, then you can also specify colors exa their hex codes. If the terminal is not true color but micro is told to use a true color colorscheme it will attempt to map the colors to the available 256 colors. -Generally colorschemes which require true color terminals to look good are marked with a `-tc` suffix. +Generally colorschemes which require true color terminals to look good are marked with a `-tc` suffix +and colorschemes which supply a white background are marked with a `-paper` suffix. --- @@ -103,6 +141,7 @@ Here is a list of the colorscheme groups that you can use: * error * todo * statusline (color of the statusline) +* tabbar ( color of the tabbar that lists open files.) * indent-char (color of the character which indicates tabs if the option is enabled) * line-number * gutter-error @@ -110,13 +149,57 @@ Here is a list of the colorscheme groups that you can use: * cursor-line * current-line-number * color-column +* ignore -Colorschemes can be placed in the `~/.config/micro/colorschemes` directory to be used. +Colorschemes must be placed in the `~/.config/micro/colorschemes` directory to be used. + +--- + +In addition to the main colorscheme groups, there are subgroups that you can +specify by adding `.subgroup` to the group. If you're creating your own +custom syntax files, you can make use of your own subgroups. + +If micro can't match the subgroup, it'll default to the root group, so +it's safe and recommended to use subgroups in your custom syntax files. + +For example if `constant.string` is found in your colorscheme, micro will +use that for highlighting strings. If it's not found, it will use constant +instead. Micro tries to match the largest set of groups it can find in the +colorscheme definitions, so if, for examle `constant.bool.true` is found then +micro will use that. If `constant.bool.true` is not found but `constant.bool` +is found micro will use `constant.bool`. If not, it uses `constant`. + +Here's a list of subgroups used in micro's built-in syntax files. + +* comment.bright ( Some filetypes have distinctions between types of comments.) +* constant.bool +* constant.bool.true +* constant.bool.false +* constant.number +* constant.specialChar +* constant.string +* constant.string.url +* identifier.class ( Also used for functions. ) +* identifier.macro +* identifier.var +* symbol.brackets ( {}()[] and sometimes <> ) +* symbol.operator ( Color operator symbols differently. ) +* symbol.tag ( For html tags, among other things.) +* type.keyword ( If you want a special highlight for keywords like `private` ) + +In the future, plugins may also be able to use color groups for styling. ### Syntax files The syntax files specify how to highlight certain languages. +Micro's builtin syntax highlighting tries very hard to be sane, sensible +and provide ample coverage of the meaningful elements of a language. Micro has +syntax files built int for over 100 languages now. However, there may be +situations where you find Micro's highlighting to be insufficient or not to +your liking. Good news is you can create syntax files (.micro extension), place them in +`~/.config/micro/syntax` and Micro will use those instead. + The first statement in a syntax file will probably the syntax statement. This tells micro what language the syntax file is for and how to detect a file in that language. @@ -156,3 +239,7 @@ Note that this regex only matches the current line. Here is an example for multi ``` color comment start="/\*" end="\*/" ``` + +Note: The format of syntax files will be changing with the view refactor. +If this help file still retains this note but the syntax files are yaml +please open an issue. diff --git a/runtime/help/defaultkeys.md b/runtime/help/defaultkeys.md new file mode 100644 index 00000000..5df54e24 --- /dev/null +++ b/runtime/help/defaultkeys.md @@ -0,0 +1,141 @@ +#Default Keys + +Below are simple charts of the default hotkeys and their functions. +For more information about binding custom hotkeys or changing +default bindings, please run `>help keybindings` + +Please remember that *all* keys here are rebindable! +If you don't like it, you can change it! + +(We are not responsible for you forgetting what you bind keys to. + Do not open an issue because you forgot your keybindings.) + +#Power user ++--------+---------------------------------------------------------+ +| Ctrl+E | Switch to the micro command prompt to run a command. | +| | (See `>help commands` for a list of commands. ) | ++--------+---------------------------------------------------------+ +| Ctrl+B | Run shell commands in micro's current working directory.| ++--------+---------------------------------------------------------+ + +#Navigation + ++--------+---------------------------------------------------------+ +| Key | Description of function | +|--------+---------------------------------------------------------+ +| Arrows | Move the cursor around your current document. | +| | (Yes this is rebindable to the vim keys if you want.) | ++--------+---------------------------------------------------------+ +| Shift+ | Move and select text. | +| Arrows | | ++--------+---------------------------------------------------------+ +| Home | Move to the beginning of the current line. (Naturally.) | ++--------+---------------------------------------------------------+ +| End | Move to the end of the current line. | ++--------+---------------------------------------------------------+ +| PageUp | Move cursor up lines quickly. | ++--------+---------------------------------------------------------+ +| PageDn | Move cursor down lines quickly. | ++--------+---------------------------------------------------------+ +| Ctrl+L | Jump to line in current file. ( Prompts for line # ) | ++--------+---------------------------------------------------------+ +| Ctrl+W | Move between splits open in current tab. | +| | (See vsplit and hsplit in `>help commands`) | ++--------+---------------------------------------------------------+ +| Ctrl+T | Open a new tab. | ++--------+---------------------------------------------------------+ +| Alt+, | Move to the previous tab in the tablist. | +| | (This works like moving between file buffers in nano) | ++--------+---------------------------------------------------------+ +| Alt+. | Move to the next tab in the tablist. | ++--------+---------------------------------------------------------+ + +#Find Operations + ++--------+---------------------------------------------------------+ +| Ctrl+F | Find text in current file. ( Prompts for text to find.) | ++--------+---------------------------------------------------------+ +| Ctrl+N | Find next instance of current search in current file. | ++--------+---------------------------------------------------------+ +| Ctrl+P | Find prev instance of current search in current file. | ++--------+---------------------------------------------------------+ + +#File Operations + ++--------+---------------------------------------------------------+ +| Ctrl+Q | Close current file. ( Quits micro if last file open. ) | ++--------+---------------------------------------------------------+ +| Ctrl+O | Open a file. ( Prompts you to input filename. ) | ++--------+---------------------------------------------------------+ +| Ctrl+S | Save current file. | ++--------+---------------------------------------------------------+ + +#Text operations + ++--------+---------------------------------------------------------+ +| Ctrl+A | Select all text in current file. | ++--------+---------------------------------------------------------+ +| Ctrl+X | Cut selected text. | ++--------+---------------------------------------------------------+ +| Ctrl+C | Copy selected text. | ++--------+---------------------------------------------------------+ +| Ctrl+V | Paste selected text. | ++--------+---------------------------------------------------------+ +| Ctrl+K | Cut current line. ( Can then be pasted with Ctrl+V) | ++--------+---------------------------------------------------------+ +| Ctrl+D | Duplicate current line. | ++--------+---------------------------------------------------------+ +| Ctrl+Z | Undo actions. | ++--------+---------------------------------------------------------+ +| Ctrl+Y | Redo actions. | ++--------+---------------------------------------------------------+ + +#Other ++--------+---------------------------------------------------------+ +| Ctrl+G | Open the help file. | ++--------+---------------------------------------------------------+ +| Ctrl+H | Alternate backspace. | +| | (Some old terminals don't support the Backspace key .) | ++--------+---------------------------------------------------------+ +| Ctrl+R | Toggle the line number ruler. ( On the lefthand side.) | ++--------+---------------------------------------------------------+ + +#Emacs style actions + ++--------+---------------------------------------------------------+ +| Alt+F | Move to the end of the next word. (To the next space.) | ++--------+---------------------------------------------------------+ +| Alt+B | Move to the beginning of the previous word. | ++--------+---------------------------------------------------------+ +| Alt+A | Alternate Home key. ( Move to beginning of line. ) | ++--------+---------------------------------------------------------+ +| Alt+E | Alternate End key. ( Move to the end of line.) | ++--------+---------------------------------------------------------+ +| Alt+P | Move cursor up. ( Same as up key. ) | ++--------+---------------------------------------------------------+ +| Alt+N | Move cursor down. ( Same as down key. ) | ++--------+---------------------------------------------------------+ + +#Function keys. + +Warning! The function keys may not work in all terminals! ++--------+---------------------------------------------------------+ +| F1 | Open help. | ++--------+---------------------------------------------------------+ +| F2 | Save current file. | ++--------+---------------------------------------------------------+ +| F3 | Find in current file. ( Same as Ctrl+F ) | ++--------+---------------------------------------------------------+ +| F4 | Close current file. (Quit if only file.) | ++--------+---------------------------------------------------------+ +| F7 | Find in current file. (Same as Ctrl+F) | ++--------+---------------------------------------------------------+ +| F10 | Close current file. | ++--------+---------------------------------------------------------+ + +#Macros + +Micro supports the use of keyboard macros. Simply press Ctrl+U to +begin recording a macro and press Ctrl+U to stop recording. + +Press Ctrl+J to run your recorded macro. \ No newline at end of file diff --git a/runtime/help/gimmickcolors.md b/runtime/help/gimmickcolors.md new file mode 100644 index 00000000..334a8c09 --- /dev/null +++ b/runtime/help/gimmickcolors.md @@ -0,0 +1,14 @@ +# Gimmick colors + +We have included a few colorschemes that are for fun: + +* funky-cactus: I don't know why I made this. (Written by CaptainMcClellan) +* gameboy-tc: Colorscheme based on the olive green original Gameboy! +* nes-tc: A colorscheme and syntax highlighting using only colors in the + Nintendo Entertainment System color palette. +* symbian-tc: Colorscheme based on SymbOS's GUI. +* matrix: Pretend it's 1981 with a colorscheme based on a monochrome + IBM 5151. ( Does not include the ghosting and trailing. ) + +Check the plugin repo periodically for gimmick-color extension packs +and genuine additional themes. \ No newline at end of file diff --git a/runtime/help/help.md b/runtime/help/help.md index 22792ee7..65fff96b 100644 --- a/runtime/help/help.md +++ b/runtime/help/help.md @@ -1,5 +1,6 @@ # Micro help text +Thank you for downloading and using micro. Micro is a terminal-based text editor that aims to be easy to use and intuitive, while also taking advantage of the full capabilities of modern terminals. @@ -12,9 +13,11 @@ See the next section for more information about documentation and help. Press CtrlQ to quit, and CtrlS to save. Press CtrlE to start typing commands and you can see which commands are available by pressing tab, or by viewing the help topic `> help commands`. When I write `> ...` I mean press -CtrlE and then type whatever is there. +CtrlE and then type whatever is there. -Move the cursor around with the mouse or the arrow keys. +Move the cursor around with the mouse or the arrow keys. Type `>help defaultkeys` to +get a quick, easy overview of the default hotkeys and what they do. For more info +on rebinding keys, see type `>help keybindings` If the colorscheme doesn't look good, you can change it with `> set colorscheme ...`. You can press tab to see the available colorschemes, or see more information with @@ -34,6 +37,7 @@ Here are the possible help topics that you can read: * tutorial: A brief tutorial which gives an overview of all the other help topics * keybindings: Gives a full list of the default keybindings as well as how to rebind them +* defaultkeys: Gives a more straight-forward list of the hotkey commands and what they do. * commands: Gives a list of all the commands and what they do * options: Gives a list of all the options you can customize * plugins: Explains how micro's plugin system works and how to create your own plugins diff --git a/runtime/help/keybindings.md b/runtime/help/keybindings.md index ee9d1f11..70246e1a 100644 --- a/runtime/help/keybindings.md +++ b/runtime/help/keybindings.md @@ -1,89 +1,15 @@ # Keybindings -Here are the default keybindings in json format. You can rebind them to your liking, following the same format. +Micro has a plethora of hotkeys that make it easy and powerful to use and all +hotkeys are fully customizable to your liking. +Custom keybindings are stored internally in micro if changed with the `>bind` command or +you can also be added in the file `~/.config/micro/bindings.json` as discussed below. +For a list of the default keybindings in the json format used by micro, please see +the end of this file. For a more user-friendly list with explanations of what the default +hotkeys are and what they do, please see `>help defaultkeys` -```json -{ - "Up": "CursorUp", - "Down": "CursorDown", - "Right": "CursorRight", - "Left": "CursorLeft", - "ShiftUp": "SelectUp", - "ShiftDown": "SelectDown", - "ShiftLeft": "SelectLeft", - "ShiftRight": "SelectRight", - "AltLeft": "WordLeft", - "AltRight": "WordRight", - "AltShiftRight": "SelectWordRight", - "AltShiftLeft": "SelectWordLeft", - "AltUp": "MoveLinesUp", - "AltDown": "MoveLinesDown", - "CtrlLeft": "StartOfLine", - "CtrlRight": "EndOfLine", - "CtrlShiftLeft": "SelectToStartOfLine", - "CtrlShiftRight": "SelectToEndOfLine", - "CtrlUp": "CursorStart", - "CtrlDown": "CursorEnd", - "CtrlShiftUp": "SelectToStart", - "CtrlShiftDown": "SelectToEnd", - "Enter": "InsertNewline", - "Space": "InsertSpace", - "CtrlH": "Backspace", - "Backspace": "Backspace", - "Alt-CtrlH": "DeleteWordLeft", - "Alt-Backspace": "DeleteWordLeft", - "Tab": "IndentSelection,InsertTab", - "Backtab": "OutdentSelection", - "CtrlO": "OpenFile", - "CtrlS": "Save", - "CtrlF": "Find", - "CtrlN": "FindNext", - "CtrlP": "FindPrevious", - "CtrlZ": "Undo", - "CtrlY": "Redo", - "CtrlC": "Copy", - "CtrlX": "Cut", - "CtrlK": "CutLine", - "CtrlD": "DuplicateLine", - "CtrlV": "Paste", - "CtrlA": "SelectAll", - "CtrlT": "AddTab", - "CtrlRightSq": "PreviousTab", - "CtrlBackslash": "NextTab", - "Home": "StartOfLine", - "End": "EndOfLine", - "CtrlHome": "CursorStart", - "CtrlEnd": "CursorEnd", - "PageUp": "CursorPageUp", - "PageDown": "CursorPageDown", - "CtrlG": "ToggleHelp", - "CtrlR": "ToggleRuler", - "CtrlL": "JumpLine", - "Delete": "Delete", - "CtrlB": "ShellMode", - "CtrlQ": "Quit", - "CtrlE": "CommandMode", - "CtrlW": "NextSplit", - "CtrlU": "ToggleMacro", - "CtrlJ": "PlayMacro", - - // Emacs-style keybindings - "Alt-f": "WordRight", - "Alt-b": "WordLeft", - "Alt-a": "StartOfLine", - "Alt-e": "EndOfLine", - "Alt-p": "CursorUp", - "Alt-n": "CursorDown", - - // Integration with file managers - "F1": "ToggleHelp", - "F2": "Save", - "F4": "Quit", - "F7": "Find", - "F10": "Quit", - "Esc": "Escape", -} -``` +If `~/.config/micro/bindings.json` does not exist, you can simply create it. +Micro will know what to do with it. You can use the alt keys + arrows to move word by word. Ctrl left and right move the cursor to the start and end of the line, and @@ -106,6 +32,9 @@ following in the `bindings.json` file. } ``` +In addition to editing your `~/.config/micro/bindings.json`, you can run +`>bind ` For a list of bindable actions, see below. + You can also chain commands when rebinding. For example, if you want Alt-s to save and quit you can bind it like so: @@ -332,6 +261,93 @@ Escape Enter ``` +# Default keybinding configuration. + +```json +{ + "Up": "CursorUp", + "Down": "CursorDown", + "Right": "CursorRight", + "Left": "CursorLeft", + "ShiftUp": "SelectUp", + "ShiftDown": "SelectDown", + "ShiftLeft": "SelectLeft", + "ShiftRight": "SelectRight", + "AltLeft": "WordLeft", + "AltRight": "WordRight", + "AltShiftRight": "SelectWordRight", + "AltShiftLeft": "SelectWordLeft", + "AltUp": "MoveLinesUp", + "AltDown": "MoveLinesDown", + "CtrlLeft": "StartOfLine", + "CtrlRight": "EndOfLine", + "CtrlShiftLeft": "SelectToStartOfLine", + "CtrlShiftRight": "SelectToEndOfLine", + "CtrlUp": "CursorStart", + "CtrlDown": "CursorEnd", + "CtrlShiftUp": "SelectToStart", + "CtrlShiftDown": "SelectToEnd", + "Enter": "InsertNewline", + "Space": "InsertSpace", + "CtrlH": "Backspace", + "Backspace": "Backspace", + "Alt-CtrlH": "DeleteWordLeft", + "Alt-Backspace": "DeleteWordLeft", + "Tab": "IndentSelection,InsertTab", + "Backtab": "OutdentSelection", + "CtrlO": "OpenFile", + "CtrlS": "Save", + "CtrlF": "Find", + "CtrlN": "FindNext", + "CtrlP": "FindPrevious", + "CtrlZ": "Undo", + "CtrlY": "Redo", + "CtrlC": "Copy", + "CtrlX": "Cut", + "CtrlK": "CutLine", + "CtrlD": "DuplicateLine", + "CtrlV": "Paste", + "CtrlA": "SelectAll", + "CtrlT": "AddTab", + "Alt,": "PreviousTab", + "Alt.": "NextTab", + "Home": "StartOfLine", + "End": "EndOfLine", + "CtrlHome": "CursorStart", + "CtrlEnd": "CursorEnd", + "PageUp": "CursorPageUp", + "PageDown": "CursorPageDown", + "CtrlG": "ToggleHelp", + "CtrlR": "ToggleRuler", + "CtrlL": "JumpLine", + "Delete": "Delete", + "CtrlB": "ShellMode", + "CtrlQ": "Quit", + "CtrlE": "CommandMode", + "CtrlW": "NextSplit", + "CtrlU": "ToggleMacro", + "CtrlJ": "PlayMacro", + + // Emacs-style keybindings + "Alt-f": "WordRight", + "Alt-b": "WordLeft", + "Alt-a": "StartOfLine", + "Alt-e": "EndOfLine", + "Alt-p": "CursorUp", + "Alt-n": "CursorDown", + + // Integration with file managers + "F1": "ToggleHelp", + "F2": "Save", + "F3": "Find", + "F4": "Quit", + "F7": "Find", + "F10": "Quit", + "Esc": "Escape", +} +``` + +#Final notes Note: On some old terminal emulators and on Windows machines, `CtrlH` should be used for backspace. diff --git a/runtime/syntax/Dockerfile.micro b/runtime/syntax/Dockerfile.micro index 7bc9fa95..fad54921 100644 --- a/runtime/syntax/Dockerfile.micro +++ b/runtime/syntax/Dockerfile.micro @@ -2,16 +2,16 @@ syntax "dockerfile" "Dockerfile[^/]*$" "\.dockerfile$" ## Keywords -color keyword (i) "^(FROM|MAINTAINER|RUN|CMD|LABEL|EXPOSE|ENV|ADD|COPY|ENTRYPOINT|VOLUME|USER|WORKDIR|ONBUILD|ARG|HEALTHCHECK|STOPSIGNAL|SHELL)[[:space:]]" +color statement "^(FROM|MAINTAINER|RUN|CMD|LABEL|EXPOSE|ENV|ADD|COPY|ENTRYPOINT|VOLUME|USER|WORKDIR|ONBUILD|ARG|HEALTHCHECK|STOPSIGNAL|SHELL)[[:space:]]" ## Brackets & parenthesis -color statement "(\(|\)|\[|\])" +color symbol.brackets "(\(|\)|\[|\])" ## Double ampersand color special "&&" ## Comments -color comment (i) "^[[:space:]]*#.*$" +color comment "^[[:space:]]*#.*$" ## Strings, single-quoted color constant.string "'([^']|(\\'))*'" "%[qw]\{[^}]*\}" "%[qw]\([^)]*\)" "%[qw]<[^>]*>" "%[qw]\[[^]]*\]" "%[qw]\$[^$]*\$" "%[qw]\^[^^]*\^" "%[qw]![^!]*!" diff --git a/runtime/syntax/LICENSE b/runtime/syntax/LICENSE index 4358692f..6b67a2b9 100644 --- a/runtime/syntax/LICENSE +++ b/runtime/syntax/LICENSE @@ -1,5 +1,5 @@ micro syntax files - Copyright (C) 2016+ Zachary Yedidia et al. + Copyright (C) 2016+ Zachary Yedidia, Collin Warren, et al. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by diff --git a/runtime/syntax/README.md b/runtime/syntax/README.md index 2987b283..14243150 100644 --- a/runtime/syntax/README.md +++ b/runtime/syntax/README.md @@ -11,8 +11,7 @@ Micro syntax files are almost identical to Nano's, except for some key differenc # Using with colorschemes -Not all of these files have been converted to use micro's colorscheme feature. Most of them just hardcode the colors, which -can be problematic depending on the colorscheme you use. +Not all of these files have been converted to use micro's colorscheme feature. Most of them just hardcode the colors, which can be problematic depending on the colorscheme you use. Here is a list of the files that have been converted to properly use colorschemes: diff --git a/runtime/syntax/apacheconf.micro b/runtime/syntax/apacheconf.micro index d95d15b9..6c64ffd0 100644 --- a/runtime/syntax/apacheconf.micro +++ b/runtime/syntax/apacheconf.micro @@ -1,44 +1,44 @@ # Apache files syntax "apacheconf" "httpd\.conf|mime\.types|vhosts\.d\\*|\.htaccess" -color yellow ".+" -color brightcyan "(AcceptMutex|AcceptPathInfo|AccessFileName|Action|AddAlt|AddAltByEncoding|AddAltByType|AddCharset|AddDefaultCharset|AddDescription|AddEncoding)" -color brightcyan "(AddHandler|AddIcon|AddIconByEncoding|AddIconByType|AddInputFilter|AddLanguage|AddModuleInfo|AddOutputFilter|AddOutputFilterByType|AddType|Alias|AliasMatch)" -color brightcyan "(Allow|AllowCONNECT|AllowEncodedSlashes|AllowOverride|Anonymous|Anonymous_Authoritative|Anonymous_LogEmail|Anonymous_MustGiveEmail|Anonymous_NoUserID)" -color brightcyan "(Anonymous_VerifyEmail|AssignUserID|AuthAuthoritative|AuthDBMAuthoritative|AuthDBMGroupFile|AuthDBMType|AuthDBMUserFile|AuthDigestAlgorithm)" -color brightcyan "(AuthDigestDomain|AuthDigestFile|AuthDigestGroupFile|AuthDigestNcCheck|AuthDigestNonceFormat|AuthDigestNonceLifetime|AuthDigestQop|AuthDigestShmemSize)" -color brightcyan "(AuthGroupFile|AuthLDAPAuthoritative|AuthLDAPBindDN|AuthLDAPBindPassword|AuthLDAPCharsetConfig|AuthLDAPCompareDNOnServer|AuthLDAPDereferenceAliases)" -color brightcyan "(AuthLDAPEnabled|AuthLDAPFrontPageHack|AuthLDAPGroupAttribute|AuthLDAPGroupAttributeIsDN|AuthLDAPRemoteUserIsDN|AuthLDAPUrl|AuthName|AuthType|AuthUserFile)" -color brightcyan "(BrowserMatch|BrowserMatchNoCase|BS2000Account|BufferedLogs|CacheDefaultExpire|CacheDirLength|CacheDirLevels|CacheDisable|CacheEnable|CacheExpiryCheck)" -color brightcyan "(CacheFile|CacheForceCompletion|CacheGcClean|CacheGcDaily|CacheGcInterval|CacheGcMemUsage|CacheGcUnused|CacheIgnoreCacheControl|CacheIgnoreHeaders)" -color brightcyan "(CacheIgnoreNoLastMod|CacheLastModifiedFactor|CacheMaxExpire|CacheMaxFileSize|CacheMinFileSize|CacheNegotiatedDocs|CacheRoot|CacheSize|CacheTimeMargin)" -color brightcyan "(CGIMapExtension|CharsetDefault|CharsetOptions|CharsetSourceEnc|CheckSpelling|ChildPerUserID|ContentDigest|CookieDomain|CookieExpires|CookieLog|CookieName)" -color brightcyan "(CookieStyle|CookieTracking|CoreDumpDirectory|CustomLog|Dav|DavDepthInfinity|DavLockDB|DavMinTimeout|DefaultIcon|DefaultLanguage|DefaultType)" -color brightcyan "(DeflateBufferSize|DeflateCompressionLevel|DeflateFilterNote|DeflateMemLevel|DeflateWindowSize|Deny|Directory|DirectoryIndex|DirectoryMatch|DirectorySlash)" -color brightcyan "(DocumentRoot|DumpIOInput|DumpIOOutput|EnableExceptionHook|EnableMMAP|EnableSendfile|ErrorDocument|ErrorLog|Example|ExpiresActive|ExpiresByType)" -color brightcyan "(ExpiresDefault|ExtendedStatus|ExtFilterDefine|ExtFilterOptions|FileETag|Files|FilesMatch|ForceLanguagePriority|ForceType|ForensicLog|Group|Header)" -color brightcyan "(HeaderName|HostnameLookups|IdentityCheck|IfDefine|IfModule|IfVersion|ImapBase|ImapDefault|ImapMenu|Include|IndexIgnore|IndexOptions|IndexOrderDefault)" -color brightcyan "(ISAPIAppendLogToErrors|ISAPIAppendLogToQuery|ISAPICacheFile|ISAPIFakeAsync|ISAPILogNotSupported|ISAPIReadAheadBuffer|KeepAlive|KeepAliveTimeout)" -color brightcyan "(LanguagePriority|LDAPCacheEntries|LDAPCacheTTL|LDAPConnectionTimeout|LDAPOpCacheEntries|LDAPOpCacheTTL|LDAPSharedCacheFile|LDAPSharedCacheSize)" -color brightcyan "(LDAPTrustedCA|LDAPTrustedCAType|Limit|LimitExcept|LimitInternalRecursion|LimitRequestBody|LimitRequestFields|LimitRequestFieldSize|LimitRequestLine)" -color brightcyan "(LimitXMLRequestBody|Listen|ListenBackLog|LoadFile|LoadModule|Location|LocationMatch|LockFile|LogFormat|LogLevel|MaxClients|MaxKeepAliveRequests)" -color brightcyan "(MaxMemFree|MaxRequestsPerChild|MaxRequestsPerThread|MaxSpareServers|MaxSpareThreads|MaxThreads|MaxThreadsPerChild|MCacheMaxObjectCount|MCacheMaxObjectSize)" -color brightcyan "(MCacheMaxStreamingBuffer|MCacheMinObjectSize|MCacheRemovalAlgorithm|MCacheSize|MetaDir|MetaFiles|MetaSuffix|MimeMagicFile|MinSpareServers|MinSpareThreads)" -color brightcyan "(MMapFile|ModMimeUsePathInfo|MultiviewsMatch|NameVirtualHost|NoProxy|NumServers|NWSSLTrustedCerts|NWSSLUpgradeable|Options|Order|PassEnv|PidFile)" -color brightcyan "(ProtocolEcho|Proxy|ProxyBadHeader|ProxyBlock|ProxyDomain|ProxyErrorOverride|ProxyIOBufferSize|ProxyMatch|ProxyMaxForwards|ProxyPass|ProxyPassReverse)" -color brightcyan "(ProxyPreserveHost|ProxyReceiveBufferSize|ProxyRemote|ProxyRemoteMatch|ProxyRequests|ProxyTimeout|ProxyVia|ReadmeName|Redirect|RedirectMatch)" -color brightcyan "(RedirectPermanent|RedirectTemp|RemoveCharset|RemoveEncoding|RemoveHandler|RemoveInputFilter|RemoveLanguage|RemoveOutputFilter|RemoveType|RequestHeader)" -color brightcyan "(Require|RewriteBase|RewriteCond|RewriteEngine|RewriteLock|RewriteLog|RewriteLogLevel|RewriteMap|RewriteOptions|RewriteRule|RLimitCPU|RLimitMEM|RLimitNPROC)" -color brightcyan "(Satisfy|ScoreBoardFile|Script|ScriptAlias|ScriptAliasMatch|ScriptInterpreterSource|ScriptLog|ScriptLogBuffer|ScriptLogLength|ScriptSock|SecureListen)" -color brightcyan "(SendBufferSize|ServerAdmin|ServerAlias|ServerLimit|ServerName|ServerPath|ServerRoot|ServerSignature|ServerTokens|SetEnv|SetEnvIf|SetEnvIfNoCase|SetHandler)" -color brightcyan "(SetInputFilter|SetOutputFilter|SSIEndTag|SSIErrorMsg|SSIStartTag|SSITimeFormat|SSIUndefinedEcho|SSLCACertificateFile|SSLCACertificatePath)" -color brightcyan "(SSLCARevocationFile|SSLCARevocationPath|SSLCertificateChainFile|SSLCertificateFile|SSLCertificateKeyFile|SSLCipherSuite|SSLEngine|SSLMutex|SSLOptions)" -color brightcyan "(SSLPassPhraseDialog|SSLProtocol|SSLProxyCACertificateFile|SSLProxyCACertificatePath|SSLProxyCARevocationFile|SSLProxyCARevocationPath|SSLProxyCipherSuite)" -color brightcyan "(SSLProxyEngine|SSLProxyMachineCertificateFile|SSLProxyMachineCertificatePath|SSLProxyProtocol|SSLProxyVerify|SSLProxyVerifyDepth|SSLRandomSeed|SSLRequire)" -color brightcyan "(SSLRequireSSL|SSLSessionCache|SSLSessionCacheTimeout|SSLUserName|SSLVerifyClient|SSLVerifyDepth|StartServers|StartThreads|SuexecUserGroup|ThreadLimit)" -color brightcyan "(ThreadsPerChild|ThreadStackSize|TimeOut|TraceEnable|TransferLog|TypesConfig|UnsetEnv|UseCanonicalName|User|UserDir|VirtualDocumentRoot)" -color brightcyan "(VirtualDocumentRootIP|VirtualHost|VirtualScriptAlias|VirtualScriptAliasIP|Win32DisableAcceptEx|XBitHack)" -color yellow "<[^>]+>" -color brightcyan ")" -color green "\"(\\.|[^\"])*\"" -color white "#.*" +color special ".+" +color identifier "(AcceptMutex|AcceptPathInfo|AccessFileName|Action|AddAlt|AddAltByEncoding|AddAltByType|AddCharset|AddDefaultCharset|AddDescription|AddEncoding)" +color identifier "(AddHandler|AddIcon|AddIconByEncoding|AddIconByType|AddInputFilter|AddLanguage|AddModuleInfo|AddOutputFilter|AddOutputFilterByType|AddType|Alias|AliasMatch)" +color identifier "(Allow|AllowCONNECT|AllowEncodedSlashes|AllowOverride|Anonymous|Anonymous_Authoritative|Anonymous_LogEmail|Anonymous_MustGiveEmail|Anonymous_NoUserID)" +color identifier "(Anonymous_VerifyEmail|AssignUserID|AuthAuthoritative|AuthDBMAuthoritative|AuthDBMGroupFile|AuthDBMType|AuthDBMUserFile|AuthDigestAlgorithm)" +color identifier "(AuthDigestDomain|AuthDigestFile|AuthDigestGroupFile|AuthDigestNcCheck|AuthDigestNonceFormat|AuthDigestNonceLifetime|AuthDigestQop|AuthDigestShmemSize)" +color identifier "(AuthGroupFile|AuthLDAPAuthoritative|AuthLDAPBindDN|AuthLDAPBindPassword|AuthLDAPCharsetConfig|AuthLDAPCompareDNOnServer|AuthLDAPDereferenceAliases)" +color identifier "(AuthLDAPEnabled|AuthLDAPFrontPageHack|AuthLDAPGroupAttribute|AuthLDAPGroupAttributeIsDN|AuthLDAPRemoteUserIsDN|AuthLDAPUrl|AuthName|AuthType|AuthUserFile)" +color identifier "(BrowserMatch|BrowserMatchNoCase|BS2000Account|BufferedLogs|CacheDefaultExpire|CacheDirLength|CacheDirLevels|CacheDisable|CacheEnable|CacheExpiryCheck)" +color identifier "(CacheFile|CacheForceCompletion|CacheGcClean|CacheGcDaily|CacheGcInterval|CacheGcMemUsage|CacheGcUnused|CacheIgnoreCacheControl|CacheIgnoreHeaders)" +color identifier "(CacheIgnoreNoLastMod|CacheLastModifiedFactor|CacheMaxExpire|CacheMaxFileSize|CacheMinFileSize|CacheNegotiatedDocs|CacheRoot|CacheSize|CacheTimeMargin)" +color identifier "(CGIMapExtension|CharsetDefault|CharsetOptions|CharsetSourceEnc|CheckSpelling|ChildPerUserID|ContentDigest|CookieDomain|CookieExpires|CookieLog|CookieName)" +color identifier "(CookieStyle|CookieTracking|CoreDumpDirectory|CustomLog|Dav|DavDepthInfinity|DavLockDB|DavMinTimeout|DefaultIcon|DefaultLanguage|DefaultType)" +color identifier "(DeflateBufferSize|DeflateCompressionLevel|DeflateFilterNote|DeflateMemLevel|DeflateWindowSize|Deny|Directory|DirectoryIndex|DirectoryMatch|DirectorySlash)" +color identifier "(DocumentRoot|DumpIOInput|DumpIOOutput|EnableExceptionHook|EnableMMAP|EnableSendfile|ErrorDocument|ErrorLog|Example|ExpiresActive|ExpiresByType)" +color identifier "(ExpiresDefault|ExtendedStatus|ExtFilterDefine|ExtFilterOptions|FileETag|Files|FilesMatch|ForceLanguagePriority|ForceType|ForensicLog|Group|Header)" +color identifier "(HeaderName|HostnameLookups|IdentityCheck|IfDefine|IfModule|IfVersion|ImapBase|ImapDefault|ImapMenu|Include|IndexIgnore|IndexOptions|IndexOrderDefault)" +color identifier "(ISAPIAppendLogToErrors|ISAPIAppendLogToQuery|ISAPICacheFile|ISAPIFakeAsync|ISAPILogNotSupported|ISAPIReadAheadBuffer|KeepAlive|KeepAliveTimeout)" +color identifier "(LanguagePriority|LDAPCacheEntries|LDAPCacheTTL|LDAPConnectionTimeout|LDAPOpCacheEntries|LDAPOpCacheTTL|LDAPSharedCacheFile|LDAPSharedCacheSize)" +color identifier "(LDAPTrustedCA|LDAPTrustedCAType|Limit|LimitExcept|LimitInternalRecursion|LimitRequestBody|LimitRequestFields|LimitRequestFieldSize|LimitRequestLine)" +color identifier "(LimitXMLRequestBody|Listen|ListenBackLog|LoadFile|LoadModule|Location|LocationMatch|LockFile|LogFormat|LogLevel|MaxClients|MaxKeepAliveRequests)" +color identifier "(MaxMemFree|MaxRequestsPerChild|MaxRequestsPerThread|MaxSpareServers|MaxSpareThreads|MaxThreads|MaxThreadsPerChild|MCacheMaxObjectCount|MCacheMaxObjectSize)" +color identifier "(MCacheMaxStreamingBuffer|MCacheMinObjectSize|MCacheRemovalAlgorithm|MCacheSize|MetaDir|MetaFiles|MetaSuffix|MimeMagicFile|MinSpareServers|MinSpareThreads)" +color identifier "(MMapFile|ModMimeUsePathInfo|MultiviewsMatch|NameVirtualHost|NoProxy|NumServers|NWSSLTrustedCerts|NWSSLUpgradeable|Options|Order|PassEnv|PidFile)" +color identifier "(ProtocolEcho|Proxy|ProxyBadHeader|ProxyBlock|ProxyDomain|ProxyErrorOverride|ProxyIOBufferSize|ProxyMatch|ProxyMaxForwards|ProxyPass|ProxyPassReverse)" +color identifier "(ProxyPreserveHost|ProxyReceiveBufferSize|ProxyRemote|ProxyRemoteMatch|ProxyRequests|ProxyTimeout|ProxyVia|ReadmeName|Redirect|RedirectMatch)" +color identifier "(RedirectPermanent|RedirectTemp|RemoveCharset|RemoveEncoding|RemoveHandler|RemoveInputFilter|RemoveLanguage|RemoveOutputFilter|RemoveType|RequestHeader)" +color identifier "(Require|RewriteBase|RewriteCond|RewriteEngine|RewriteLock|RewriteLog|RewriteLogLevel|RewriteMap|RewriteOptions|RewriteRule|RLimitCPU|RLimitMEM|RLimitNPROC)" +color identifier "(Satisfy|ScoreBoardFile|Script|ScriptAlias|ScriptAliasMatch|ScriptInterpreterSource|ScriptLog|ScriptLogBuffer|ScriptLogLength|ScriptSock|SecureListen)" +color identifier "(SendBufferSize|ServerAdmin|ServerAlias|ServerLimit|ServerName|ServerPath|ServerRoot|ServerSignature|ServerTokens|SetEnv|SetEnvIf|SetEnvIfNoCase|SetHandler)" +color identifier "(SetInputFilter|SetOutputFilter|SSIEndTag|SSIErrorMsg|SSIStartTag|SSITimeFormat|SSIUndefinedEcho|SSLCACertificateFile|SSLCACertificatePath)" +color identifier "(SSLCARevocationFile|SSLCARevocationPath|SSLCertificateChainFile|SSLCertificateFile|SSLCertificateKeyFile|SSLCipherSuite|SSLEngine|SSLMutex|SSLOptions)" +color identifier "(SSLPassPhraseDialog|SSLProtocol|SSLProxyCACertificateFile|SSLProxyCACertificatePath|SSLProxyCARevocationFile|SSLProxyCARevocationPath|SSLProxyCipherSuite)" +color identifier "(SSLProxyEngine|SSLProxyMachineCertificateFile|SSLProxyMachineCertificatePath|SSLProxyProtocol|SSLProxyVerify|SSLProxyVerifyDepth|SSLRandomSeed|SSLRequire)" +color identifier "(SSLRequireSSL|SSLSessionCache|SSLSessionCacheTimeout|SSLUserName|SSLVerifyClient|SSLVerifyDepth|StartServers|StartThreads|SuexecUserGroup|ThreadLimit)" +color identifier "(ThreadsPerChild|ThreadStackSize|TimeOut|TraceEnable|TransferLog|TypesConfig|UnsetEnv|UseCanonicalName|User|UserDir|VirtualDocumentRoot)" +color identifier "(VirtualDocumentRootIP|VirtualHost|VirtualScriptAlias|VirtualScriptAliasIP|Win32DisableAcceptEx|XBitHack)" +color symbol.tag "<[^>]+>" +color identifier ")" +color constant.string "\"(\\.|[^\"])*\"" +color comment "#.*" diff --git a/runtime/syntax/arduino.micro b/runtime/syntax/arduino.micro index 08303b38..647e43c8 100644 --- a/runtime/syntax/arduino.micro +++ b/runtime/syntax/arduino.micro @@ -29,88 +29,88 @@ syntax "ino" "\.?ino$" ## -color brightred "\<[A-Z_][0-9A-Z_]+\>" +color identifier.macro "\b[A-Z_][0-9A-Z_]+\b" ## -color green "\<((s?size)|((u_?)?int(8|16|32|64|ptr)))_t\>" +color type "\b((s?size)|((u_?)?int(8|16|32|64|ptr)))_t\b" ## Constants -green (i) "\<(HIGH|LOW|INPUT|OUTPUT)\>" +color constant "\b(HIGH|LOW|INPUT|OUTPUT)\b" ## Serial Print -red (i) "\<(DEC|BIN|HEX|OCT|BYTE)\>" +color identifier.macro "\b(DEC|BIN|HEX|OCT|BYTE)\b" ## PI Constants -green (i) "\<(PI|HALF_PI|TWO_PI)\>" +color constant "\b(PI|HALF_PI|TWO_PI)\b" ## ShiftOut -green (i) "\<(LSBFIRST|MSBFIRST)\>" +color constant "\b(LSBFIRST|MSBFIRST)\b" ## Attach Interrupt -green (i) "\<(CHANGE|FALLING|RISING)\>" +color constant "\b(CHANGE|FALLING|RISING)\b" ## Analog Reference -green (i) "\<(DEFAULT|EXTERNAL|INTERNAL|INTERNAL1V1|INTERNAL2V56)\>" +color constant "\b(DEFAULT|EXTERNAL|INTERNAL|INTERNAL1V1|INTERNAL2V56)\b" ## === FUNCTIONS === ## ## Data Types -color green "\<(boolean|byte|char|float|int|long|word)\>" +color type "\b(boolean|byte|char|float|int|long|word)\b" ## Control Structions -color brightyellow "\<(case|class|default|do|double|else|false|for|if|new|null|private|protected|public|short|signed|static|String|switch|this|throw|try|true|unsigned|void|while)\>" -color magenta "\<(goto|continue|break|return)\>" +color statement "\b(case|class|default|do|double|else|false|for|if|new|null|private|protected|public|short|signed|static|String|switch|this|throw|try|true|unsigned|void|while)\b" +color special "\b(goto|continue|break|return)\b" ## Math -color brightyellow "\<(abs|acos|asin|atan|atan2|ceil|constrain|cos|degrees|exp|floor|log|map|max|min|radians|random|randomSeed|round|sin|sq|sqrt|tan)\>" +color statement "\b(abs|acos|asin|atan|atan2|ceil|constrain|cos|degrees|exp|floor|log|map|max|min|radians|random|randomSeed|round|sin|sq|sqrt|tan)\b" ## Bits & Bytes -color brightyellow "\<(bitRead|bitWrite|bitSet|bitClear|bit|highByte|lowByte)\>" +color statement "\b(bitRead|bitWrite|bitSet|bitClear|bit|highByte|lowByte)\b" ## Analog I/O -color brightyellow "\<(analogReference|analogRead|analogWrite)\>" +color statement "\b(analogReference|analogRead|analogWrite)\b" ## External Interrupts -color brightyellow "\<(attachInterrupt|detachInterrupt)\>" +color statement "\b(attachInterrupt|detachInterrupt)\b" ## Time -color brightyellow "\<(delay|delayMicroseconds|millis|micros)\>" +color statement "\b(delay|delayMicroseconds|millis|micros)\b" ## Digital I/O -color brightyellow "\<(pinMode|digitalWrite|digitalRead)\>" +color statement "\b(pinMode|digitalWrite|digitalRead)\b" ## Interrupts -color brightyellow "\<(interrupts|noInterrupts)\>" +color statement "\b(interrupts|noInterrupts)\b" ## Advanced I/O -color brightyellow "\<(noTone|pulseIn|shiftIn|shiftOut|tone)\>" +color statement "\b(noTone|pulseIn|shiftIn|shiftOut|tone)\b" ## Serial -color magenta "\<(Serial|Serial1|Serial2|Serial3|begin|end|peek|read|print|println|available|flush)\>" +color special "b<(Serial|Serial1|Serial2|Serial3|begin|end|peek|read|print|println|available|flush)\b" ## Structure -color brightyellow "\<(setup|loop)\>" +color statement "\b(setup|loop)\b" ## -color brightcyan "^[[:space:]]*#[[:space:]]*(define|include(_next)?|(un|ifn?)def|endif|el(if|se)|if|warning|error|pragma)" +color preproc "^[[:space:]]*#[[:space:]]*(define|include(_next)?|(un|ifn?)def|endif|el(if|se)|if|warning|error|pragma)" ## -color brightmagenta "'([^']|(\\["'abfnrtv\\]))'" "'\\(([0-3]?[0-7]{1,2}))'" "'\\x[0-9A-Fa-f]{1,2}'" +color constant.specialChar "'([^']|(\\["'abfnrtv\\]))'" "'\\(([0-3]?[0-7]{1,2}))'" "'\\x[0-9A-Fa-f]{1,2}'" ## GCC builtins -color cyan "__attribute__[[:space:]]*\(\([^)]*\)\)" "__(aligned|asm|builtin|hidden|inline|packed|restrict|section|typeof|weak)__" +color preproc "__attribute__[[:space:]]*\(\([^)]*\)\)" "__(aligned|asm|builtin|hidden|inline|packed|restrict|section|typeof|weak)__" ## String highlighting. You will in general want your comments and ## strings to come last, because syntax highlighting rules will be ## applied in the order they are read in. -color brightyellow "<[^= ]*>" ""(\\.|[^"])*"" +color constant.string "<[^= ]*>" ""(\\.|[^"])*"" ## This string is VERY resource intensive! -color brightyellow start=""(\\.|[^"])*\\[[:space:]]*$" end="^(\\.|[^"])*"" +color constant.string start=""(\\.|[^"])*\\[[:space:]]*$" end="^(\\.|[^"])*"" ## Comments -color brightblue "//.*" -color brightblue start="/\*" end="\*/" +color comment "//.*" +color comment start="/\*" end="\*/" ## Trailing whitespace -color ,green "[[:space:]]+$" +color indent-char.whitespace "[[:space:]]+$" diff --git a/runtime/syntax/asciidoc.micro b/runtime/syntax/asciidoc.micro index de486edd..7ea4f9dd 100644 --- a/runtime/syntax/asciidoc.micro +++ b/runtime/syntax/asciidoc.micro @@ -1,47 +1,47 @@ syntax "asciidoc" "\.(asc|asciidoc|adoc)$" # main header -color red "^====+$" +color preproc "^====+$" # h1 -color red "^==[[:space:]].*$" -color red "^----+$" +color statement "^==[[:space:]].*$" +color statement "^----+$" # h2 -color magenta "^===[[:space:]].*$" -color magenta "^~~~~+$" +color symbol "^===[[:space:]].*$" +color symbol "^~~~~+$" # h4 -color green "^====[[:space:]].*$" -color green "^\^\^\^\^+$" +color type "^====[[:space:]].*$" +color type "^\^\^\^\^+$" # h5 -color brightblue "^=====[[:space:]].*$" -color brightblue "^\+\+\+\++$" +color constant "^=====[[:space:]].*$" +color constant "^\+\+\+\++$" # attributes -color brightgreen ":.*:" -color brightred "\{[a-z0-9]*\}" -color red "\\\{[a-z0-9]*\}" -color red "\+\+\+\{[a-z0-9]*\}\+\+\+" +color type.keyword ":.*:" +color identifier.macro "\{[a-z0-9]*\}" +color identifier "\\\{[a-z0-9]*\}" +color identifier "\+\+\+\{[a-z0-9]*\}\+\+\+" # Paragraph Title -color yellow "^\..*$" +color statement "^\..*$" # source -color magenta "^\[(source,.+|NOTE|TIP|IMPORTANT|WARNING|CAUTION)\]" +color identifier "^\[(source,.+|NOTE|TIP|IMPORTANT|WARNING|CAUTION)\]" # Other markup -color yellow ".*[[:space:]]\+$" -color yellow "_[^_]+_" -color yellow "\*[^\*]+\*" -color yellow "\+[^\+]+\+" -color yellow "`[^`]+`" -color yellow "\^[^\^]+\^" -color yellow "~[^~]+~" -color yellow "'[^']+'" +color constant.string ".*[[:space:]]\+$" +color constant.string "_[^_]+_" +color constant.string "\*[^\*]+\*" +color constant.string "\+[^\+]+\+" +color constant.string "`[^`]+`" +color constant.string "\^[^\^]+\^" +color constant.string "~[^~]+~" +color constant.string "'[^']+'" -color cyan "`{1,2}[^']+'{1,2}" +color constant "`{1,2}[^']+'{1,2}" # bullets -color brightmagenta "^[[:space:]]*[\*\.-]{1,5}[[:space:]]" +color symbol "^[[:space:]]*[\*\.-]{1,5}[[:space:]]" # anchors -color brightwhite "\[\[.*\]\]" -color brightwhite "<<.*>>" +color bold default "\[\[.*\]\]" +color bold default "<<.*>>" diff --git a/runtime/syntax/awk.micro b/runtime/syntax/awk.micro index b41861b5..2f97c76e 100644 --- a/runtime/syntax/awk.micro +++ b/runtime/syntax/awk.micro @@ -1,25 +1,25 @@ syntax "awk" "\.awk$" header "^#!.*bin/(env +)?awk( |$)" -color brightyellow "\$[A-Za-z0-9_!@#$*?-]+" -color brightyellow "\<(ARGC|ARGIND|ARGV|BINMODE|CONVFMT|ENVIRON|ERRNO|FIELDWIDTHS)\>" -color brightyellow "\<(FILENAME|FNR|FS|IGNORECASE|LINT|NF|NR|OFMT|OFS|ORS)\>" -color brightyellow "\<(PROCINFO|RS|RT|RSTART|RLENGTH|SUBSEP|TEXTDOMAIN)\>" -color brightblue "\<(function|extension|BEGIN|END)\>" -color red "[-+*/%^|!=&<>?;:]|\\|\[|\]" -color cyan "\<(for|if|while|do|else|in|delete|exit)\>" -color cyan "\<(break|continue|return)\>" -color brightblue "\<(close|getline|next|nextfile|print|printf|system|fflush)\>" -color brightblue "\<(atan2|cos|exp|int|log|rand|sin|sqrt|srand)\>" -color brightblue "\<(asort|asorti|gensub|gsub|index|length|match)\>" -color brightblue "\<(split|sprintf|strtonum|sub|substr|tolower|toupper)\>" -color brightblue "\<(mktime|strftime|systime)\>" -color brightblue "\<(and|compl|lshift|or|rshift|xor)\>" -color brightblue "\<(bindtextdomain|dcgettext|dcngettext)\>" -color magenta "/.*[^\\]/" -color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" -color magenta "\\." -color brightblack "(^|[[:space:]])#([^{].*)?$" -color brightwhite,cyan "TODO:?" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color preproc "\$[A-Za-z0-9_!@#$*?-]+" +color preproc "\b(ARGC|ARGIND|ARGV|BINMODE|CONVFMT|ENVIRON|ERRNO|FIELDWIDTHS)\b" +color preproc "\b(FILENAME|FNR|FS|IGNORECASE|LINT|NF|NR|OFMT|OFS|ORS)\b" +color preproc "\b(PROCINFO|RS|RT|RSTART|RLENGTH|SUBSEP|TEXTDOMAIN)\b" +color identifier.class "\b(function|extension|BEGIN|END)\b" +color symbol.operator "[-+*/%^|!=&<>?;:]|\\|\[|\]" +color statement "\b(for|if|while|do|else|in|delete|exit)\b" +color special "\b(break|continue|return)\b" +color statement "\b(close|getline|next|nextfile|print|printf|system|fflush)\b" +color statement "\b(atan2|cos|exp|int|log|rand|sin|sqrt|srand)\b" +color statement "\b(asort|asorti|gensub|gsub|index|length|match)\b" +color statement "\b(split|sprintf|strtonum|sub|substr|tolower|toupper)\b" +color statement "\b(mktime|strftime|systime)\b" +color statement "\b(and|compl|lshift|or|rshift|xor)\b" +color statement "\b(bindtextdomain|dcgettext|dcngettext)\b" +color special "/.*[^\\]/" +color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'" +color constant.specialChar "\\." +color comment "(^|[[:space:]])#([^{].*)?$" +color todo "TODO:?" +color indent-char. "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/c++.micro b/runtime/syntax/c++.micro index bcf1e929..1ea8e2ca 100644 --- a/runtime/syntax/c++.micro +++ b/runtime/syntax/c++.micro @@ -16,13 +16,13 @@ color constant "'([^'\\]|(\\["'abfnrtv\\]))'" "'\\(([0-3]?[0-7]{1,2}))'" "'\\x[0 color statement "__attribute__[[:space:]]*\(\([^)]*\)\)" "__(aligned|asm|builtin|hidden|inline|packed|restrict|section|typeof|weak)__" #Operator Color -color statement "[.:;,+*|=!\%]" "<" ">" "/" "-" "&" +color symbol.operator "[.:;,+*|=!\%]" "<" ">" "/" "-" "&" #Parenthetical Color -# color magenta "[(){}]" "\[" "\]" +color symbol.brackets "[(){}]" "\[" "\]" color constant.number "\b[0-9]+\b" "\b0x[0-9A-Fa-f]+\b" -color constant.number "\b(true|false)\b" "NULL" +color constant.bool "\b(true|false)\b" "NULL" ## ## String highlighting. You will in general want your brightblacks and @@ -38,4 +38,4 @@ color comment "//.*" color comment start="/\*" end="\*/" ## Trailing whitespace -#color ,green "[[:space:]]+$" +color indent-char.whitespace "[[:space:]]+$" diff --git a/runtime/syntax/c.micro b/runtime/syntax/c.micro index 6ffd2281..f06e7bda 100644 --- a/runtime/syntax/c.micro +++ b/runtime/syntax/c.micro @@ -4,10 +4,11 @@ syntax "c" "\.(c|C)$" "\.(h|H)$" "\.ii?$" "\.(def)$" color identifier "\b[A-Z_][0-9A-Z_]+\b" color type "\b(float|double|char|int|short|long|sizeof|enum|void|static|const|struct|union|typedef|extern|(un)?signed|inline)\b" color type "\b((s?size)|((u_?)?int(8|16|32|64|ptr)))_t\b" +color type.extended "\b(bool)\b" color statement "\b(typename|mutable|volatile|register|explicit)\b" color statement "\b(for|if|while|do|else|case|default|switch)\b" color statement "\b(try|throw|catch|operator|new|delete)\b" -color statement "\b(goto|continue|break|return)\b" +color special "\b(goto|continue|break|return)\b" color preproc "^[[:space:]]*#[[:space:]]*(define|pragma|include|(un|ifn?)def|endif|el(if|se)|if|warning|error)" color constant "'([^'\\]|(\\["'abfnrtv\\]))'" "'\\(([0-3]?[0-7]{1,2}))'" "'\\x[0-9A-Fa-f]{1,2}'" @@ -16,11 +17,14 @@ color constant "'([^'\\]|(\\["'abfnrtv\\]))'" "'\\(([0-3]?[0-7]{1,2}))'" "'\\x[0 color statement "__attribute__[[:space:]]*\(\([^)]*\)\)" "__(aligned|asm|builtin|hidden|inline|packed|restrict|section|typeof|weak)__" #Operator Color -color statement "[.:;,+*|=!\%]" "<" ">" "/" "-" "&" +color symbol.operator "[.:;,+*|=!\%]" "<" ">" "/" "-" "&" #Parenthetical Color -# color magenta "[(){}]" "\[" "\]" +color symbol.brackets "[(){}]" "\[" "\]" +#Includes +color constant.string "<.+?>" +#Integers color constant.number "\b[0-9]+\b" "\b0x[0-9A-Fa-f]+\b" color constant.number "NULL" @@ -38,4 +42,4 @@ color comment "//.*" color comment start="/\*" end="\*/" ## Trailing whitespace -#color ,green "[[:space:]]+$" +color indent-char.whitespace "[[:space:]]+$" diff --git a/runtime/syntax/caddyfile.micro b/runtime/syntax/caddyfile.micro index 253bf992..99296792 100644 --- a/runtime/syntax/caddyfile.micro +++ b/runtime/syntax/caddyfile.micro @@ -9,5 +9,5 @@ color preproc "\{(\w+|\$\w+|%\w+%)\}" color comment "#.*" # extra and trailing spaces -color ,red "([[:space:]]{2,}|\t){$" -color ,red "[[:space:]]+$" +color indent-char "([[:space:]]{2,}|\t){$" +color indent-char "[[:space:]]+$" diff --git a/runtime/syntax/cmake.micro b/runtime/syntax/cmake.micro index 3392410b..3f726ccb 100644 --- a/runtime/syntax/cmake.micro +++ b/runtime/syntax/cmake.micro @@ -2,22 +2,22 @@ ## syntax "cmake" "(CMakeLists\.txt|\.cmake)$" -green (i) "^[[:space:]]*[A-Z0-9_]+" -brightyellow (i) "^[[:space:]]*(include|include_directories|include_external_msproject)\>" +color identifier.var "^[[:space:]]*[A-Z0-9_]+" +color preproc "^[[:space:]]*(include|include_directories|include_external_msproject)\>" -brightgreen (i) "^[[:space:]]*\<((else|end)?if|else|(end)?while|(end)?foreach|break)\>" -color brightgreen "\<(COPY|NOT|COMMAND|PROPERTY|POLICY|TARGET|EXISTS|IS_(DIRECTORY|ABSOLUTE)|DEFINED)\>[[:space:]]" -color brightgreen "[[:space:]]\<(OR|AND|IS_NEWER_THAN|MATCHES|(STR|VERSION_)?(LESS|GREATER|EQUAL))\>[[:space:]]" +color statement "^[[:space:]]*\<((else|end)?if|else|(end)?while|(end)?foreach|break)\>" +color statement "\<(COPY|NOT|COMMAND|PROPERTY|POLICY|TARGET|EXISTS|IS_(DIRECTORY|ABSOLUTE)|DEFINED)\>[[:space:]]" +color statement "[[:space:]]\<(OR|AND|IS_NEWER_THAN|MATCHES|(STR|VERSION_)?(LESS|GREATER|EQUAL))\>[[:space:]]" -brightred (i) "^[[:space:]]*\<((end)?(function|macro)|return)" +color special "^[[:space:]]*\<((end)?(function|macro)|return)" #String Color -color cyan "['][^']*[^\\][']" "[']{3}.*[^\\][']{3}" -color cyan "["][^"]*[^\\]["]" "["]{3}.*[^\\]["]{3}" +color constant.string "['][^']*[^\\][']" "[']{3}.*[^\\][']{3}" +color constant.string "["][^"]*[^\\]["]" "["]{3}.*[^\\]["]{3}" -brightred (i) start="\$(\{|ENV\{)" end="\}" -color magenta "\<(APPLE|UNIX|WIN32|CYGWIN|BORLAND|MINGW|MSVC(_IDE|60|71|80|90)?)\>" +color preproc start="\$(\{|ENV\{)" end="\}" +color identifier.macro "\<(APPLE|UNIX|WIN32|CYGWIN|BORLAND|MINGW|MSVC(_IDE|60|71|80|90)?)\>" -brightblue (i) "^([[:space:]]*)?#.*" -brightblue (i) "[[:space:]]#.*" +color comment "^([[:space:]]*)?#.*" +color comment "[[:space:]]#.*" diff --git a/runtime/syntax/coffeescript.micro b/runtime/syntax/coffeescript.micro index cf75b6c1..e46421b5 100644 --- a/runtime/syntax/coffeescript.micro +++ b/runtime/syntax/coffeescript.micro @@ -1,16 +1,16 @@ syntax "coffeescript" "\.coffee$" header "^#!.*/(env +)?coffee" -color red "[!&|=/*+-<>]|\<(and|or|is|isnt|not)\>" -color brightblue "[A-Za-z_][A-Za-z0-9_]*:[[:space:]]*(->|\()" "->" -color brightblue "[()]" -color cyan "\<(for|of|continue|break|isnt|null|unless|this|else|if|return)\>" -color cyan "\<(try|catch|finally|throw|new|delete|typeof|in|instanceof)\>" -color cyan "\<(debugger|switch|while|do|class|extends|super)\>" -color cyan "\<(undefined|then|unless|until|loop|of|by|when)\>" -color brightcyan "\<(true|false|yes|no|on|off)\>" -color brightyellow "@[A-Za-z0-9_]*" -color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" -color brightblack "(^|[[:space:]])#([^{].*)?$" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color symbol.operator "[!&|=/*+-<>]|\<(and|or|is|isnt|not)\>" +color identifier.class "[A-Za-z_][A-Za-z0-9_]*:[[:space:]]*(->|\()" "->" +color symbol.brackets "[()]" +color statement "\<(for|of|continue|break|isnt|null|unless|this|else|if|return)\>" +color statement "\<(try|catch|finally|throw|new|delete|typeof|in|instanceof)\>" +color statement "\<(debugger|switch|while|do|class|extends|super)\>" +color statement "\<(undefined|then|unless|until|loop|of|by|when)\>" +color constant.bool "\<(true|false|yes|no|on|off)\>" +color identifier "@[A-Za-z0-9_]*" +color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'" +color comment "(^|[[:space:]])#([^{].*)?$" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/conf.micro b/runtime/syntax/conf.micro index b3b9c761..48655828 100644 --- a/runtime/syntax/conf.micro +++ b/runtime/syntax/conf.micro @@ -1,10 +1,12 @@ ## Here is an example for nanorc files. ## +#Needs cleanup/extension? + syntax "conf" "\.c[o]?nf$" ## Possible errors and parameters ## Strings -color constant.string (i) ""(\\.|[^"])*"" +color constant.string ""(\\.|[^"])*"" ## Comments -color comment (i) "^[[:space:]]*#.*$" -color comment (i) "^[[:space:]]*##.*$" +color comment "^[[:space:]]*#.*$" +color comment "^[[:space:]]*##.*$" diff --git a/runtime/syntax/conky.micro b/runtime/syntax/conky.micro index 6150c4fc..b190e770 100644 --- a/runtime/syntax/conky.micro +++ b/runtime/syntax/conky.micro @@ -5,14 +5,14 @@ syntax "conky" "(\.*conkyrc.*$|conky.conf)" ## Configuration items -color green "\<(alignment|append_file|background|border_inner_margin|border_outer_margin|border_width|color0|color1|color2|color3|color4|color5|color6|color7|color8|color9|colorN|cpu_avg_samples|default_bar_height|default_bar_width|default_color|default_gauge_height|default_gauge_width|default_graph_height|default_graph_width|default_outline_color|default_shade_color|diskio_avg_samples|display|double_buffer|draw_borders|draw_graph_borders|draw_outline|draw_shades|extra_newline|font|format_human_readable|gap_x|gap_y|http_refresh|if_up_strictness|imap|imlib_cache_flush_interval|imlib_cache_size|lua_draw_hook_post|lua_draw_hook_pre|lua_load|lua_shutdown_hook|lua_startup_hook|mail_spool|max_port_monitor_connections|max_text_width|max_user_text|maximum_width|minimum_height|minimum_width|mpd_host|mpd_password|mpd_port|music_player_interval|mysql_host|mysql_port|mysql_user|mysql_password|mysql_db|net_avg_samples|no_buffers|nvidia_display|out_to_console|out_to_http|out_to_ncurses|out_to_stderr|out_to_x|override_utf8_locale|overwrite_file|own_window|own_window_class|own_window_colour|own_window_hints|own_window_title|own_window_transparent|own_window_type|pad_percents|pop3|sensor_device|short_units|show_graph_range|show_graph_scale|stippled_borders|temperature_unit|template|template0|template1|template2|template3|template4|template5|template6|template7|template8|template9|text|text_buffer_size|times_in_seconds|top_cpu_separate|top_name_width|total_run_times|update_interval|update_interval_on_battery|uppercase|use_spacer|use_xft|xftalpha|xftfont)\>" +color type "\b(alignment|append_file|background|border_inner_margin|border_outer_margin|border_width|color0|color1|color2|color3|color4|color5|color6|color7|color8|color9|colorN|cpu_avg_samples|default_bar_height|default_bar_width|default_color|default_gauge_height|default_gauge_width|default_graph_height|default_graph_width|default_outline_color|default_shade_color|diskio_avg_samples|display|double_buffer|draw_borders|draw_graph_borders|draw_outline|draw_shades|extra_newline|font|format_human_readable|gap_x|gap_y|http_refresh|if_up_strictness|imap|imlib_cache_flush_interval|imlib_cache_size|lua_draw_hook_post|lua_draw_hook_pre|lua_load|lua_shutdown_hook|lua_startup_hook|mail_spool|max_port_monitor_connections|max_text_width|max_user_text|maximum_width|minimum_height|minimum_width|mpd_host|mpd_password|mpd_port|music_player_interval|mysql_host|mysql_port|mysql_user|mysql_password|mysql_db|net_avg_samples|no_buffers|nvidia_display|out_to_console|out_to_http|out_to_ncurses|out_to_stderr|out_to_x|override_utf8_locale|overwrite_file|own_window|own_window_class|own_window_colour|own_window_hints|own_window_title|own_window_transparent|own_window_type|pad_percents|pop3|sensor_device|short_units|show_graph_range|show_graph_scale|stippled_borders|temperature_unit|template|template0|template1|template2|template3|template4|template5|template6|template7|template8|template9|text|text_buffer_size|times_in_seconds|top_cpu_separate|top_name_width|total_run_times|update_interval|update_interval_on_battery|uppercase|use_spacer|use_xft|xftalpha|xftfont)\b" ## Configuration item constants -color yellow "\<(above|below|bottom_left|bottom_right|bottom_middle|desktop|dock|no|none|normal|override|skip_pager|skip_taskbar|sticky|top_left|top_right|top_middle|middle_left|middle_right|middle_middle|undecorated|yes)\>" +color statement "\b(above|below|bottom_left|bottom_right|bottom_middle|desktop|dock|no|none|normal|override|skip_pager|skip_taskbar|sticky|top_left|top_right|top_middle|middle_left|middle_right|middle_middle|undecorated|yes)\b" ## Variables -color brightblue "\<(acpiacadapter|acpifan|acpitemp|addr|addrs|alignc|alignr|apcupsd|apcupsd_cable|apcupsd_charge|apcupsd_lastxfer|apcupsd_linev|apcupsd_load|apcupsd_loadbar|apcupsd_loadgauge|apcupsd_loadgraph|apcupsd_model|apcupsd_name|apcupsd_status|apcupsd_temp|apcupsd_timeleft|apcupsd_upsmode|apm_adapter|apm_battery_life|apm_battery_time|audacious_bar|audacious_bitrate|audacious_channels|audacious_filename|audacious_frequency|audacious_length|audacious_length_seconds|audacious_main_volume|audacious_playlist_length|audacious_playlist_position|audacious_position|audacious_position_seconds|audacious_status|audacious_title|battery|battery_bar|battery_percent|battery_short|battery_time|blink|bmpx_album|bmpx_artist|bmpx_bitrate|bmpx_title|bmpx_track|bmpx_uri|buffers|cached|cmdline_to_pid|color|color0|color1|color2|color3|color4|color5|color6|color7|color8|color9|combine|conky_build_arch|conky_build_date|conky_version|cpu|cpubar|cpugauge|cpugraph|curl|desktop|desktop_name|desktop_number|disk_protect|diskio|diskio_read|diskio_write|diskiograph|diskiograph_read|diskiograph_write|distribution|downspeed|downspeedf|downspeedgraph|draft_mails|else|endif|entropy_avail|entropy_bar|entropy_perc|entropy_poolsize|eval|eve|exec|execbar|execgauge|execgraph|execi|execibar|execigauge|execigraph|execp|execpi|flagged_mails|font|format_time|forwarded_mails|freq|freq_g|fs_bar|fs_bar_free|fs_free|fs_free_perc|fs_size|fs_type|fs_used|fs_used_perc|goto|gw_iface|gw_ip|hddtemp|head|hr|hwmon|i2c|i8k_ac_status|i8k_bios|i8k_buttons_status|i8k_cpu_temp|i8k_left_fan_rpm|i8k_left_fan_status|i8k_right_fan_rpm|i8k_right_fan_status|i8k_serial|i8k_version|ibm_brightness|ibm_fan|ibm_temps|ibm_volume|ical|iconv_start|iconv_stop|if_empty|if_existing|if_gw|if_match|if_mixer_mute|if_mounted|if_mpd_playing|if_running|if_smapi_bat_installed|if_up|if_updatenr|if_xmms2_connected|image|imap_messages|imap_unseen|ioscheduler|irc|kernel|laptop_mode|lines|loadavg|loadgraph|lua|lua_bar|lua_gauge|lua_graph|lua_parse|machine|mails|mboxscan|mem|memwithbuffers|membar|memwithbuffersbar|memeasyfree|memfree|memgauge|memgraph|memmax|memperc|mixer|mixerbar|mixerl|mixerlbar|mixerr|mixerrbar|moc_album|moc_artist|moc_bitrate|moc_curtime|moc_file|moc_rate|moc_song|moc_state|moc_timeleft|moc_title|moc_totaltime|monitor|monitor_number|mpd_album|mpd_artist|mpd_bar|mpd_bitrate|mpd_elapsed|mpd_file|mpd_length|mpd_name|mpd_percent|mpd_random|mpd_repeat|mpd_smart|mpd_status|mpd_title|mpd_track|mpd_vol|mysql|nameserver|new_mails|nodename|nodename_short|no_update|nvidia|obsd_product|obsd_sensors_fan|obsd_sensors_temp|obsd_sensors_volt|obsd_vendor|offset|outlinecolor|pb_battery|pid_chroot|pid_cmdline|pid_cwd|pid_environ|pid_environ_list|pid_exe|pid_nice|pid_openfiles|pid_parent|pid_priority|pid_state|pid_state_short|pid_stderr|pid_stdin|pid_stdout|pid_threads|pid_thread_list|pid_time_kernelmode|pid_time_usermode|pid_time|pid_uid|pid_euid|pid_suid|pid_fsuid|pid_gid|pid_egid|pid_sgid|pid_fsgid|pid_read|pid_vmpeak|pid_vmsize|pid_vmlck|pid_vmhwm|pid_vmrss|pid_vmdata|pid_vmstk|pid_vmexe|pid_vmlib|pid_vmpte|pid_write|platform|pop3_unseen|pop3_used|processes|read_tcp|read_udp|replied_mails|rss|running_processes|running_threads|scroll|seen_mails|shadecolor|smapi|smapi_bat_bar|smapi_bat_perc|smapi_bat_power|smapi_bat_temp|sony_fanspeed|stippled_hr|stock|swap|swapbar|swapfree|swapmax|swapperc|sysname|tab|tail|tcp_ping|tcp_portmon|template0|template1|template2|template3|template4|template5|template6|template7|template8|template9|texeci|texecpi|threads|time|to_bytes|top|top_io|top_mem|top_time|totaldown|totalup|trashed_mails|tztime|gid_name|uid_name|unflagged_mails|unforwarded_mails|unreplied_mails|unseen_mails|updates|upspeed|upspeedf|upspeedgraph|uptime|uptime_short|user_names|user_number|user_terms|user_times|user_time|utime|voffset|voltage_mv|voltage_v|weather|wireless_ap|wireless_bitrate|wireless_essid|wireless_link_bar|wireless_link_qual|wireless_link_qual_max|wireless_link_qual_perc|wireless_mode|words|xmms2_album|xmms2_artist|xmms2_bar|xmms2_bitrate|xmms2_comment|xmms2_date|xmms2_duration|xmms2_elapsed|xmms2_genre|xmms2_id|xmms2_percent|xmms2_playlist|xmms2_size|xmms2_smart|xmms2_status|xmms2_timesplayed|xmms2_title|xmms2_tracknr|xmms2_url)\>" +color preproc "\b(acpiacadapter|acpifan|acpitemp|addr|addrs|alignc|alignr|apcupsd|apcupsd_cable|apcupsd_charge|apcupsd_lastxfer|apcupsd_linev|apcupsd_load|apcupsd_loadbar|apcupsd_loadgauge|apcupsd_loadgraph|apcupsd_model|apcupsd_name|apcupsd_status|apcupsd_temp|apcupsd_timeleft|apcupsd_upsmode|apm_adapter|apm_battery_life|apm_battery_time|audacious_bar|audacious_bitrate|audacious_channels|audacious_filename|audacious_frequency|audacious_length|audacious_length_seconds|audacious_main_volume|audacious_playlist_length|audacious_playlist_position|audacious_position|audacious_position_seconds|audacious_status|audacious_title|battery|battery_bar|battery_percent|battery_short|battery_time|blink|bmpx_album|bmpx_artist|bmpx_bitrate|bmpx_title|bmpx_track|bmpx_uri|buffers|cached|cmdline_to_pid|color|color0|color1|color2|color3|color4|color5|color6|color7|color8|color9|combine|conky_build_arch|conky_build_date|conky_version|cpu|cpubar|cpugauge|cpugraph|curl|desktop|desktop_name|desktop_number|disk_protect|diskio|diskio_read|diskio_write|diskiograph|diskiograph_read|diskiograph_write|distribution|downspeed|downspeedf|downspeedgraph|draft_mails|else|endif|entropy_avail|entropy_bar|entropy_perc|entropy_poolsize|eval|eve|exec|execbar|execgauge|execgraph|execi|execibar|execigauge|execigraph|execp|execpi|flagged_mails|font|format_time|forwarded_mails|freq|freq_g|fs_bar|fs_bar_free|fs_free|fs_free_perc|fs_size|fs_type|fs_used|fs_used_perc|goto|gw_iface|gw_ip|hddtemp|head|hr|hwmon|i2c|i8k_ac_status|i8k_bios|i8k_buttons_status|i8k_cpu_temp|i8k_left_fan_rpm|i8k_left_fan_status|i8k_right_fan_rpm|i8k_right_fan_status|i8k_serial|i8k_version|ibm_brightness|ibm_fan|ibm_temps|ibm_volume|ical|iconv_start|iconv_stop|if_empty|if_existing|if_gw|if_match|if_mixer_mute|if_mounted|if_mpd_playing|if_running|if_smapi_bat_installed|if_up|if_updatenr|if_xmms2_connected|image|imap_messages|imap_unseen|ioscheduler|irc|kernel|laptop_mode|lines|loadavg|loadgraph|lua|lua_bar|lua_gauge|lua_graph|lua_parse|machine|mails|mboxscan|mem|memwithbuffers|membar|memwithbuffersbar|memeasyfree|memfree|memgauge|memgraph|memmax|memperc|mixer|mixerbar|mixerl|mixerlbar|mixerr|mixerrbar|moc_album|moc_artist|moc_bitrate|moc_curtime|moc_file|moc_rate|moc_song|moc_state|moc_timeleft|moc_title|moc_totaltime|monitor|monitor_number|mpd_album|mpd_artist|mpd_bar|mpd_bitrate|mpd_elapsed|mpd_file|mpd_length|mpd_name|mpd_percent|mpd_random|mpd_repeat|mpd_smart|mpd_status|mpd_title|mpd_track|mpd_vol|mysql|nameserver|new_mails|nodename|nodename_short|no_update|nvidia|obsd_product|obsd_sensors_fan|obsd_sensors_temp|obsd_sensors_volt|obsd_vendor|offset|outlinecolor|pb_battery|pid_chroot|pid_cmdline|pid_cwd|pid_environ|pid_environ_list|pid_exe|pid_nice|pid_openfiles|pid_parent|pid_priority|pid_state|pid_state_short|pid_stderr|pid_stdin|pid_stdout|pid_threads|pid_thread_list|pid_time_kernelmode|pid_time_usermode|pid_time|pid_uid|pid_euid|pid_suid|pid_fsuid|pid_gid|pid_egid|pid_sgid|pid_fsgid|pid_read|pid_vmpeak|pid_vmsize|pid_vmlck|pid_vmhwm|pid_vmrss|pid_vmdata|pid_vmstk|pid_vmexe|pid_vmlib|pid_vmpte|pid_write|platform|pop3_unseen|pop3_used|processes|read_tcp|read_udp|replied_mails|rss|running_processes|running_threads|scroll|seen_mails|shadecolor|smapi|smapi_bat_bar|smapi_bat_perc|smapi_bat_power|smapi_bat_temp|sony_fanspeed|stippled_hr|stock|swap|swapbar|swapfree|swapmax|swapperc|sysname|tab|tail|tcp_ping|tcp_portmon|template0|template1|template2|template3|template4|template5|template6|template7|template8|template9|texeci|texecpi|threads|time|to_bytes|top|top_io|top_mem|top_time|totaldown|totalup|trashed_mails|tztime|gid_name|uid_name|unflagged_mails|unforwarded_mails|unreplied_mails|unseen_mails|updates|upspeed|upspeedf|upspeedgraph|uptime|uptime_short|user_names|user_number|user_terms|user_times|user_time|utime|voffset|voltage_mv|voltage_v|weather|wireless_ap|wireless_bitrate|wireless_essid|wireless_link_bar|wireless_link_qual|wireless_link_qual_max|wireless_link_qual_perc|wireless_mode|words|xmms2_album|xmms2_artist|xmms2_bar|xmms2_bitrate|xmms2_comment|xmms2_date|xmms2_duration|xmms2_elapsed|xmms2_genre|xmms2_id|xmms2_percent|xmms2_playlist|xmms2_size|xmms2_smart|xmms2_status|xmms2_timesplayed|xmms2_title|xmms2_tracknr|xmms2_url)\b" -color brightblue "\$\{?[0-9A-Z_!@#$*?-]+\}?" -color cyan "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|!|=|&|\|)" -color brightred "^TEXT$" +color identifier.var "\$\{?[0-9A-Z_!@#$*?-]+\}?" +color symbol.operator "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|!|=|&|\|)" +color constant.macro "^TEXT$" diff --git a/runtime/syntax/crystal.micro b/runtime/syntax/crystal.micro index a10f66d3..1ee7aede 100644 --- a/runtime/syntax/crystal.micro +++ b/runtime/syntax/crystal.micro @@ -9,7 +9,7 @@ color statement "\b(BEGIN|END|abstract|alias|and|begin|break|case|class|def|defi color constant "(\$|@|@@)?\b[A-Z]+[0-9A-Z_a-z]*" color constant.number "\b[0-9]+\b" ## Crystal "symbols" -color constant (i) "([ ]|^):[0-9A-Z_]+\b" +color constant "([ ]|^):[0-9A-Z_]+\b" ## Some unique things we want to stand out color constant "\b(__FILE__|__LINE__)\b" ## Regular expressions diff --git a/runtime/syntax/csharp.micro b/runtime/syntax/csharp.micro index 8c25d1da..d98b8438 100644 --- a/runtime/syntax/csharp.micro +++ b/runtime/syntax/csharp.micro @@ -1,26 +1,26 @@ syntax "c#" "\.cs$" # Class -color brightmagenta "class +[A-Za-z0-9]+ *((:) +[A-Za-z0-9.]+)?" +color identifier.class "class +[A-Za-z0-9]+ *((:) +[A-Za-z0-9.]+)?" # Annotation -color magenta "@[A-Za-z]+" +color identifier.var "@[A-Za-z]+" -color brightblue "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[()]" -color green "\<(bool|byte|sbyte|char|decimal|double|float|IntPtr|int|uint|long|ulong|object|short|ushort|string|base|this|var|void)\>" -color cyan "\<(alias|as|case|catch|checked|default|do|dynamic|else|finally|fixed|for|foreach|goto|if|is|lock|new|null|return|switch|throw|try|unchecked|while)\>" -color cyan "\<(abstract|async|class|const|delegate|enum|event|explicit|extern|get|implicit|in|internal|interface|namespace|operator|out|override|params|partial|private|protected|public|readonly|ref|sealed|set|sizeof|stackalloc|static|struct|typeof|unsafe|using|value|virtual|volatile|yield)\>" +color identifier "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[()]" +color type "\<(bool|byte|sbyte|char|decimal|double|float|IntPtr|int|uint|long|ulong|object|short|ushort|string|base|this|var|void)\>" +color statement "\<(alias|as|case|catch|checked|default|do|dynamic|else|finally|fixed|for|foreach|goto|if|is|lock|new|null|return|switch|throw|try|unchecked|while)\>" +color statement "\<(abstract|async|class|const|delegate|enum|event|explicit|extern|get|implicit|in|internal|interface|namespace|operator|out|override|params|partial|private|protected|public|readonly|ref|sealed|set|sizeof|stackalloc|static|struct|typeof|unsafe|using|value|virtual|volatile|yield)\>" # LINQ-only keywords (ones that cannot be used outside of a LINQ query - lots others can) -color cyan "\<(from|where|select|group|info|orderby|join|let|in|on|equals|by|ascending|descending)\>" -color brightred "\<(break|continue)\>" -color brightcyan "\<(true|false)\>" -color red "[-+/*=<>?:!~%&|]" -color blue "\<([0-9._]+|0x[A-Fa-f0-9_]+|0b[0-1_]+)[FL]?\>" -color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" -color magenta "\\([btnfr]|'|\"|\\)" -color magenta "\\u[A-Fa-f0-9]{4}" -color brightblack "(^|[[:space:]])//.*" -color brightblack start="/\*" end="\*/" -color brightwhite,cyan "TODO:?" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color statement "\<(from|where|select|group|info|orderby|join|let|in|on|equals|by|ascending|descending)\>" +color special "\<(break|continue)\>" +color constant "\<(true|false)\>" +color symbol "[-+/*=<>?:!~%&|]" +color constant.number "\<([0-9._]+|0x[A-Fa-f0-9_]+|0b[0-1_]+)[FL]?\>" +color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'" +color constant.specialChar "\\([btnfr]|'|\"|\\)" +color constant.specialChar "\\u[A-Fa-f0-9]{4}" +color comment "(^|[[:space:]])//.*" +color comment start="/\*" end="\*/" +color todo "TODO:?" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/css.micro b/runtime/syntax/css.micro index 0db42ca5..2ba8a40b 100644 --- a/runtime/syntax/css.micro +++ b/runtime/syntax/css.micro @@ -1,8 +1,9 @@ syntax "css" "\.(css|scss)$" # Classes and IDs -color statement (i) "." -color normal start="\{" end="\}" +color statement "." +color default start="\{" end="\}" +color symbol.brackets "\{|\}" # css commands color type "(align-content|align-items|alignment-baseline|align-self|all|animation|animation-delay|animation-direction|animation-duration|animation-fill-mode|animation-iteration-count|animation-name|animation-play-state|animation-timing-function|appearance|azimuth|backface-visibility|background|background-attachment|background-blend-mode|background-clip|background-color|background-image|background-origin|background-position|background-repeat|background-size|baseline-shift|bookmark-label|bookmark-level|bookmark-state|border|border-bottom|border-bottom-color|border-bottom-left-radius|border-bottom-right-radius|border-bottom-style|border-bottom-width|border-boundary|border-collapse|border-color|border-image|border-image-outset|border-image-repeat|border-image-slice|border-image-source|border-image-width|border-left|border-left-color|border-left-style|border-left-width|border-radius|border-right|border-right-color|border-right-style|border-right-width|border-spacing|border-style|border-top|border-top-color|border-top-left-radius|border-top-right-radius|border-top-style|border-top-width|border-width|bottom|box-decoration-break|box-shadow|box-sizing|box-snap|box-suppress|break-after|break-before|break-inside|caption-side|caret|caret-animation|caret-color|caret-shape|chains|clear|clip|clip-path|clip-rule|color|color-interpolation-filters|column-count|column-fill|column-gap|column-rule|column-rule-color|column-rule-style|column-rule-width|columns|column-span|column-width|content|continue|counter-increment|counter-reset|counter-set|cue|cue-after|cue-before|cursor|direction|display|dominant-baseline|elevation|empty-cells|filter|flex|flex-basis|flex-direction|flex-flow|flex-grow|flex-shrink|flex-wrap|float|float-defer|float-offset|float-reference|flood-color|flood-opacity|flow|flow-from|flow-into|font|font-family|font-feature-settings|font-kerning|font-language-override|font-size|font-size-adjust|font-stretch|font-style|font-synthesis|font-variant|font-variant-alternates|font-variant-caps|font-variant-east-asian|font-variant-ligatures|font-variant-numeric|font-variant-position|font-weight|footnote-display|footnote-policy|glyph-orientation-vertical|grid|grid-area|grid-auto-columns|grid-auto-flow|grid-auto-rows|grid-column|grid-column-end|grid-column-gap|grid-column-start|grid-gap|grid-row|grid-row-end|grid-row-gap|grid-row-start|grid-template|grid-template-areas|grid-template-columns|grid-template-rows|hanging-punctuation|height|hyphenate-character|hyphenate-limit-chars|hyphenate-limit-last|hyphenate-limit-lines|hyphenate-limit-zone|hyphens|image-orientation|image-rendering|image-resolution|initial-letter|initial-letter-align|initial-letter-wrap|isolation|justify-content|justify-items|justify-self|left|letter-spacing|lighting-color|line-break|line-grid|line-height|line-snap|list-style|list-style-image|list-style-position|list-style-type|margin|margin-bottom|margin-left|margin-right|margin-top|marker|marker-end|marker-knockout-left|marker-knockout-right|marker-mid|marker-pattern|marker-segment|marker-side|marker-start|marquee-direction|marquee-loop|marquee-speed|marquee-style|mask|mask-border|mask-border-mode|mask-border-outset|mask-border-repeat|mask-border-slice|mask-border-source|mask-border-width|mask-clip|mask-composite|mask-image|mask-mode|mask-origin|mask-position|mask-repeat|mask-size|mask-type|max-height|max-lines|max-width|min-height|min-width|mix-blend-mode|motion|motion-offset|motion-path|motion-rotation|nav-down|nav-left|nav-right|nav-up|object-fit|object-position|offset-after|offset-before|offset-end|offset-start|opacity|order|orphans|outline|outline-color|outline-offset|outline-style|outline-width|overflow|overflow-style|overflow-wrap|overflow-x|overflow-y|padding|padding-bottom|padding-left|padding-right|padding-top|page|page-break-after|page-break-before|page-break-inside|pause|pause-after|pause-before|perspective|perspective-origin|pitch|pitch-range|play-during|polar-anchor|polar-angle|polar-distance|polar-origin|position|presentation-level|quotes|region-fragment|resize|rest|rest-after|rest-before|richness|right|rotation|rotation-point|ruby-align|ruby-merge|ruby-position|running|scroll-behavior|scroll-snap-align|scroll-snap-margin|scroll-snap-margin-block|scroll-snap-margin-block-end|scroll-snap-margin-block-start|scroll-snap-margin-bottom|scroll-snap-margin-inline|scroll-snap-margin-inline-end|scroll-snap-margin-inline-start|scroll-snap-margin-left|scroll-snap-margin-right|scroll-snap-margin-top|scroll-snap-padding|scroll-snap-padding-block|scroll-snap-padding-block-end|scroll-snap-padding-block-start|scroll-snap-padding-bottom|scroll-snap-padding-inline|scroll-snap-padding-inline-end|scroll-snap-padding-inline-start|scroll-snap-padding-left|scroll-snap-padding-right|scroll-snap-padding-top|scroll-snap-type|shape-image-threshold|shape-inside|shape-margin|shape-outside|size|speak|speak-as|speak-header|speak-numeral|speak-punctuation|speech-rate|stress|string-set|stroke|stroke-alignment|stroke-dashadjust|stroke-dasharray|stroke-dashcorner|stroke-dashoffset|stroke-linecap|stroke-linejoin|stroke-miterlimit|stroke-opacity|stroke-width|table-layout|tab-size|text-align|text-align-all|text-align-last|text-combine-upright|text-decoration|text-decoration-color|text-decoration-line|text-decoration-skip|text-decoration-style|text-emphasis|text-emphasis-color|text-emphasis-position|text-emphasis-style|text-indent|text-justify|text-orientation|text-overflow|text-shadow|text-space-collapse|text-space-trim|text-spacing|text-transform|text-underline-position|text-wrap|top|transform|transform-box|transform-origin|transform-style|transition|transition-delay|transition-duration|transition-property|transition-timing-function|unicode-bidi|user-select|vertical-align|visibility|voice-balance|voice-duration|voice-family|voice-pitch|voice-range|voice-rate|voice-stress|voice-volume|volume|white-space|widows|width|will-change|word-break|word-spacing|word-wrap|wrap-after|wrap-before|wrap-flow|wrap-inside|wrap-through|writing-mode|z-index):" diff --git a/runtime/syntax/cython.micro b/runtime/syntax/cython.micro index c5448440..71374c8f 100644 --- a/runtime/syntax/cython.micro +++ b/runtime/syntax/cython.micro @@ -1,30 +1,30 @@ ## Cython nanorc, based off of Python nanorc. ## syntax "cython" "\.pyx$" "\.pxd$" "\.pyi$" -brightred (i) "def [ 0-9A-Z_]+" -brightred (i) "cpdef [0-9A-Z_]+\(.*\):" -brightred (i) "cdef cppclass [ 0-9A-Z_]+\(.*\):" +color preproc "def [ 0-9A-Z_]+" +color preproc "cpdef [0-9A-Z_]+\(.*\):" +color preproc "cdef cppclass [ 0-9A-Z_]+\(.*\):" # Python Keyword Color -color green "\<(and|as|assert|class|def|DEF|del|elif|ELIF|else|ELSE|except|exec|finally|for|from|global|if|IF|import|in|is|lambda|map|not|or|pass|print|raise|try|while|with|yield)\>" -color brightmagenta "\<(continue|break|return)\>" +color statement "\<(and|as|assert|class|def|DEF|del|elif|ELIF|else|ELSE|except|exec|finally|for|from|global|if|IF|import|in|is|lambda|map|not|or|pass|print|raise|try|while|with|yield)\>" +color special "\<(continue|break|return)\>" # Cython Keyword Color -color green "\<(cdef|cimport|cpdef|cppclass|ctypedef|extern|include|namespace|property|struct)\>" -color red "\<(bint|char|double|int|public|void|unsigned)\>" +color identifier.macro "\<(cdef|cimport|cpdef|cppclass|ctypedef|extern|include|namespace|property|struct)\>" +color type "\<(bint|char|double|int|public|void|unsigned)\>" #Operator Color -color yellow "[.:;,+*|=!\%]" "<" ">" "/" "-" "&" +color symbol "[.:;,+*|=!\%]" "<" ">" "/" "-" "&" #Parenthetical Color -color magenta "[(){}]" "\[" "\]" +color symbol.brackets "[(){}]" "\[" "\]" #String Color -color cyan "['][^']*[^\\][']" "[']{3}.*[^\\][']{3}" -color cyan "["][^"]*[^\\]["]" "["]{3}.*[^\\]["]{3}" -color cyan start=""""[^"]" end=""""" start="'''[^']" end="'''" +color constant.string "['][^']*[^\\][']" "[']{3}.*[^\\][']{3}" +color constant.string "["][^"]*[^\\]["]" "["]{3}.*[^\\]["]{3}" +color constant.string start=""""[^"]" end=""""" start="'''[^']" end="'''" # Comment Color -color brightblue "#.*$" +color comment "#.*$" diff --git a/runtime/syntax/dart.micro b/runtime/syntax/dart.micro index b7493905..5a61905d 100644 --- a/runtime/syntax/dart.micro +++ b/runtime/syntax/dart.micro @@ -7,10 +7,10 @@ color identifier "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[(]" color statement "\b(break|case|catch|continue|default|else|finally)\b" color statement "\b(for|function|get|if|in|as|is|new|return|set|switch|final|await|async|sync)\b" color statement "\b(switch|this|throw|try|var|void|while|with|import|library|part|const|export)\b" -color constant "\b(true|false|null)\b" +color constant.bool "\b(true|false|null)\b" color type "\b(List|String)\b" color type "\b(int|num|double|bool)\b" -color statement "[-+/*=<>!~%?:&|]" +color symbol.operator "[-+/*=<>!~%?:&|]" color constant "/[^*]([^/]|(\\/))*[^\\]/[gim]*" color constant "\\[0-7][0-7]?[0-7]?|\\x[0-9a-fA-F]+|\\[bfnrt'"\?\\]" color comment "(^|[[:space:]])//.*" diff --git a/runtime/syntax/dot.micro b/runtime/syntax/dot.micro index ae4f4b05..be8c6321 100644 --- a/runtime/syntax/dot.micro +++ b/runtime/syntax/dot.micro @@ -1,8 +1,8 @@ syntax "dot" "\.(dot|gv)$" -color cyan "\<(digraph|edge|graph|node|subgraph)\>" -color magenta "\<(arrowhead|arrowsize|arrowtail|bgcolor|center|color|constraint|decorateP|dir|distortion|fillcolor|fontcolor|fontname|fontsize|headclip|headlabel|height|labelangle|labeldistance|labelfontcolor|labelfontname|labelfontsize|label|layers|layer|margin|mclimit|minlen|name|nodesep|nslimit|ordering|orientation|pagedir|page|peripheries|port_label_distance|rankdir|ranksep|rank|ratio|regular|rotate|samehead|sametail|shapefile|shape|sides|size|skew|style|tailclip|taillabel|URL|weight|width)\>" -color red "=|->|--" -color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" -color brightblack "(^|[[:space:]])//.*" -color brightblack start="/\*" end="\*/" +color type "\<(digraph|edge|graph|node|subgraph)\>" +color statement "\<(arrowhead|arrowsize|arrowtail|bgcolor|center|color|constraint|decorateP|dir|distortion|fillcolor|fontcolor|fontname|fontsize|headclip|headlabel|height|labelangle|labeldistance|labelfontcolor|labelfontname|labelfontsize|label|layers|layer|margin|mclimit|minlen|name|nodesep|nslimit|ordering|orientation|pagedir|page|peripheries|port_label_distance|rankdir|ranksep|rank|ratio|regular|rotate|samehead|sametail|shapefile|shape|sides|size|skew|style|tailclip|taillabel|URL|weight|width)\>" +color symbol "=|->|--" +color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'" +color comment "(^|[[:space:]])//.*" +color comment start="/\*" end="\*/" diff --git a/runtime/syntax/erb.micro b/runtime/syntax/erb.micro index d9818912..7acc5842 100644 --- a/runtime/syntax/erb.micro +++ b/runtime/syntax/erb.micro @@ -5,20 +5,20 @@ ## https://github.com/geomic/ERB-And-More-Code-Highlighting-for-nano syntax "erb" "\.erb$" "\.rhtml$" -color blue start="<" end=">" -color white start="<%" end="%>" +color symbol.brackets start="<" end=">" +color default start="<%" end="%>" color red "&[^;[[:space:]]]*;" -color yellow "\<(BEGIN|END|alias|and|begin|break|case|class|def|defined\?|do|else|elsif|end|ensure|false|for|if|in|module|next|nil|not|or|redo|rescue|retry|return|self|super|then|true|undef|unless|until|when|while|yield)\>" -color brightblue "(\$|@|@@)?\<[A-Z]+[0-9A-Z_a-z]*" -magenta (i) "([ ]|^):[0-9A-Z_]+\>" -color brightyellow "\<(__FILE__|__LINE__)\>" +color statement "\<(BEGIN|END|alias|and|begin|break|case|class|def|defined\?|do|else|elsif|end|ensure|false|for|if|in|module|next|nil|not|or|redo|rescue|retry|return|self|super|then|true|undef|unless|until|when|while|yield)\>" +color identifier.var "(\$|@|@@)?\<[A-Z]+[0-9A-Z_a-z]*" +color magenta "(?i)([ ]|^):[0-9A-Z_]+\>" +color identifier.macro "\<(__FILE__|__LINE__)\>" color brightmagenta "!/([^/]|(\\/))*/[iomx]*" "%r\{([^}]|(\\}))*\}[iomx]*" color brightblue "`[^`]*`" "%x\{[^}]*\}" -color green ""([^"]|(\\"))*"" "%[QW]?\{[^}]*\}" "%[QW]?\([^)]*\)" "%[QW]?<[^>]*>" "%[QW]?\[[^]]*\]" "%[QW]?\$[^$]*\$" "%[QW]?\^[^^]*\^" "%[QW]?![^!]*!" +color constant.string ""([^"]|(\\"))*"" "%[QW]?\{[^}]*\}" "%[QW]?\([^)]*\)" "%[QW]?<[^>]*>" "%[QW]?\[[^]]*\]" "%[QW]?\$[^$]*\$" "%[QW]?\^[^^]*\^" "%[QW]?![^!]*!" color brightgreen "#\{[^}]*\}" color green "'([^']|(\\'))*'" "%[qw]\{[^}]*\}" "%[qw]\([^)]*\)" "%[qw]<[^>]*>" "%[qw]\[[^]]*\]" "%[qw]\$[^$]*\$" "%[qw]\^[^^]*\^" "%[qw]![^!]*!" -color cyan "#[^{].*$" "#$" -color brightcyan "##[^{].*$" "##$" -color green start="<<-?'?EOT'?" end="^EOT" -color brightcyan "(XXX|TODO|FIXME|\?\?\?)" +color comment "#[^{].*$" "#$" +color comment.bright "##[^{].*$" "##$" +color identifier.macro start="<<-?'?EOT'?" end="^EOT" +color todo "(XXX|TODO|FIXME|\?\?\?)" diff --git a/runtime/syntax/fish.micro b/runtime/syntax/fish.micro index f953d7ea..dc882cdf 100644 --- a/runtime/syntax/fish.micro +++ b/runtime/syntax/fish.micro @@ -2,11 +2,11 @@ syntax "fish" "\.fish$" header "^#!.*/(env +)?fish( |$)" # Numbers -color constant "\b[0-9]+\b" +color constant.number "\b[0-9]+\b" # Conditionals and control flow color statement "\b(and|begin|break|case|continue|else|end|for|function|if|in|not|or|return|select|shift|switch|while)\b" -color special "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|^|!|=|&|\|)" +color symbol "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|^|!|=|&|\|)" # Fish commands color type "\b(bg|bind|block|breakpoint|builtin|cd|count|command|commandline|complete|dirh|dirs|echo|emit|eval|exec|exit|fg|fish|fish_config|fish_ident|fish_pager|fish_prompt|fish_right_prompt|fish_update_completions|fishd|funced|funcsave|functions|help|history|jobs|math|mimedb|nextd|open|popd|prevd|psub|pushd|pwd|random|read|set|set_color|source|status|string|trap|type|ulimit|umask|vared)\b" @@ -24,11 +24,11 @@ color statement "\ -[a-z]+" # Strings color constant.string ""(\\.|[^"])*"" color constant.string "'(\\.|[^'])*'" -color special """ -color special "'" +color constant.specialChar """ +color constant.specialChar "'" # Variables -color identifier (i) "\$\{?[0-9A-Z_!@#$*?-]+\}?" +color identifier "\$\{?[0-9A-Za-z_!@#$*?-]+\}?" # Comments & TODOs color comment "(^|[[:space:]])#.*$" diff --git a/runtime/syntax/fortran.micro b/runtime/syntax/fortran.micro index 8ab25c69..04ac6144 100644 --- a/runtime/syntax/fortran.micro +++ b/runtime/syntax/fortran.micro @@ -2,50 +2,50 @@ syntax "fortran" "\.([Ff]|[Ff]90|[Ff]95|[Ff][Oo][Rr])$" -#color red "\<[A-Z_]a[0-9A-Z_]+\>" -color red "\<[0-9]+\>" +#color red "\b[A-Z_]a[0-9A-Z_]+\b" +color constant.number "\b[0-9]+\b" -green (i) "\<(action|advance|all|allocatable|allocated|any|apostrophe)\>" -green (i) "\<(append|asis|assign|assignment|associated|character|common)\>" -green (i) "\<(complex|data|default|delim|dimension|double precision)\>" -green (i) "\<(elemental|epsilon|external|file|fmt|form|format|huge)\>" -green (i) "\<(implicit|include|index|inquire|integer|intent|interface)\>" -green (i) "\<(intrinsic|iostat|kind|logical|module|none|null|only)\>" -green (i) "\<(operator|optional|pack|parameter|pointer|position|private)\>" -green (i) "\<(program|public|real|recl|recursive|selected_int_kind)\>" -green (i) "\<(selected_real_kind|subroutine|status)\>" +color type "(?i)\b(action|advance|all|allocatable|allocated|any|apostrophe)\b" +color type "(?i)\b(append|asis|assign|assignment|associated|character|common)\b" +color type "(?i)\b(complex|data|default|delim|dimension|double precision)\b" +color type "(?i)\b(elemental|epsilon|external|file|fmt|form|format|huge)\b" +color type "(?i)\b(implicit|include|index|inquire|integer|intent|interface)\b" +color type "(?i)\b(intrinsic|iostat|kind|logical|module|none|null|only)\\b" +color type "(?i)\b(operator|optional|pack|parameter|pointer|position|private)\b" +color type "(?i)\b(program|public|real|recl|recursive|selected_int_kind)\b" +color type "(?i)\b(selected_real_kind|subroutine|status)\b" -cyan (i) "\<(abs|achar|adjustl|adjustr|allocate|bit_size|call|char)\>" -cyan (i) "\<(close|contains|count|cpu_time|cshift|date_and_time)\>" -cyan (i) "\<(deallocate|digits|dot_product|eor|eoshift|function|iachar)\>" -cyan (i) "\<(iand|ibclr|ibits|ibset|ichar|ieor|iolength|ior|ishft|ishftc)\>" -cyan (i) "\<(lbound|len|len_trim|matmul|maxexponent|maxloc|maxval|merge)\>" -cyan (i) "\<(minexponent|minloc|minval|mvbits|namelist|nearest|nullify)\>" -cyan (i) "\<(open|pad|present|print|product|pure|quote|radix)\>" -cyan (i) "\<(random_number|random_seed|range|read|readwrite|replace)\>" -cyan (i) "\<(reshape|rewind|save|scan|sequence|shape|sign|size|spacing)\>" -cyan (i) "\<(spread|sum|system_clock|target|transfer|transpose|trim)\>" -cyan (i) "\<(ubound|unpack|verify|write|tiny|type|use|yes)\>" +color constant "(?i)\b(abs|achar|adjustl|adjustr|allocate|bit_size|call|char)\b" +color constant "(?i)\b(close|contains|count|cpu_time|cshift|date_and_time)\b" +color constant "(?i)\b(deallocate|digits|dot_product|eor|eoshift|function|iachar)\b" +color constant "(?i)\b(iand|ibclr|ibits|ibset|ichar|ieor|iolength|ior|ishft|ishftc)\b" +color constant "(?i)\b(lbound|len|len_trim|matmul|maxexponent|maxloc|maxval|merge)\b" +color constant "(?i)\b(minexponent|minloc|minval|mvbits|namelist|nearest|nullify)\b" +color constant "(?i)\b(open|pad|present|print|product|pure|quote|radix)\b" +color constant "(?i)\b(random_number|random_seed|range|read|readwrite|replace)\b" +color constant "(?i)\b(reshape|rewind|save|scan|sequence|shape|sign|size|spacing)\b" +color constant "(?i)\b(spread|sum|system_clock|target|transfer|transpose|trim)\b" +color constant "(?i)\b(ubound|unpack|verify|write|tiny|type|use|yes)\b" -yellow (i) "\<(.and.|case|do|else|else?if|else?where|end|end?do|end?if)\>" -yellow (i) "\<(end?select|.eqv.|forall|if|lge|lgt|lle|llt|.neqv.|.not.)\>" -yellow (i) "\<(.or.|repeat|select case|then|where|while)\>" +color statement "(?i)\b(.and.|case|do|else|else?if|else?where|end|end?do|end?if)\b" +color statement "(?i)\b(end?select|.eqv.|forall|if|lge|lgt|lle|llt|.neqv.|.not.)\b" +color statement "(?i)\b(.or.|repeat|select case|then|where|while)\b" -magenta (i) "\<(continue|cycle|exit|go?to|result|return)\>" +color special "(?i)\b(continue|cycle|exit|go?to|result|return)\b" #Operator Color -color yellow "[.:;,+*|=!\%]" "<" ">" "/" "-" "&" +color symbol.operator "[.:;,+*|=!\%]" "\b" "\b" "/" "-" "&" #Parenthetical Color -color magenta "[(){}]" "\[" "\]" +color symbol.bracket "[(){}]" "\[" "\]" # Add preprocessor commands. -color brightcyan "^[[:space:]]*#[[:space:]]*(define|include|(un|ifn?)def|endif|el(if|se)|if|warning|error)" +color preproc "^[[:space:]]*#[[:space:]]*(define|include|(un|ifn?)def|endif|el(if|se)|if|warning|error)" ## String highlighting. -cyan (i) "<[^= ]*>" ""(\\.|[^"])*"" -cyan (i) "<[^= ]*>" "'(\\.|[^"])*'" +color constant.string "\b[^= ]*\b" ""(\\.|[^"])*"" +color constant.string "\b[^= ]*\b" "'(\\.|[^"])*'" ## Comment highlighting -brightred (i) "!.*$" "(^[Cc]| [Cc]) .*$" +color comment "!.*$" "(^[Cc]| [Cc]) .*$" diff --git a/runtime/syntax/gdscript.micro b/runtime/syntax/gdscript.micro index ed9f4b1e..70e4a61a 100644 --- a/runtime/syntax/gdscript.micro +++ b/runtime/syntax/gdscript.micro @@ -18,7 +18,7 @@ color identifier "func [a-zA-Z_0-9]+" color statement "\b(and|as|assert|break|breakpoint|class|const|continue|elif|else|export|extends|for|func|if|in|map|not|onready|or|pass|return|signal|var|while|yield)\b" ## decorators -color brightgreen "@.*[(]" +color special "@.*[(]" ## operators color statement "[.:;,+*|=!\%@]" "<" ">" "/" "-" "&" diff --git a/runtime/syntax/gentoo-etc-portage.micro b/runtime/syntax/gentoo-etc-portage.micro index 33a59a17..ee99bc8c 100644 --- a/runtime/syntax/gentoo-etc-portage.micro +++ b/runtime/syntax/gentoo-etc-portage.micro @@ -2,18 +2,18 @@ ## syntax "etc-portage" "\.(keywords|mask|unmask|use)$" ## Base text: -color green "^.+$" +color default "^.+$" ## Use flags: -color brightred "[[:space:]]+\+?[a-zA-Z0-9_-]+" -color brightblue "[[:space:]]+-[a-zA-Z0-9_-]+" +color constant.bool.false "[[:space:]]+\+?[a-zA-Z0-9_-]+" +color constant.bool.true "[[:space:]]+-[a-zA-Z0-9_-]+" ## Likely version numbers: -color magenta "-[[:digit:]].*([[:space:]]|$)" +color special "-[[:digit:]].*([[:space:]]|$)" ## Accepted arches: -color white "[~-]?\<(alpha|amd64|arm|hppa|ia64|mips|ppc|ppc64|s390|sh|sparc|x86|x86-fbsd)\>" -color white "[[:space:]][~-]?\*" +color identifier.class "[~-]?\b(alpha|amd64|arm|hppa|ia64|mips|ppc|ppc64|s390|sh|sparc|x86|x86-fbsd)\b" +color identifier.class "[[:space:]][~-]?\*" ## Categories: -color cyan "^[[:space:]]*.*/" +color statement "^[[:space:]]*.*/" ## Masking regulators: -color brightmagenta "^[[:space:]]*(=|~|<|<=|=<|>|>=|=>)" +color symbol "^[[:space:]]*(=|~|<|<=|=<|>|>=|=>)" ## Comments: -color yellow "#.*$" +color comment "#.*$" diff --git a/runtime/syntax/git-commit.micro b/runtime/syntax/git-commit.micro index 033356b5..8485bdd1 100644 --- a/runtime/syntax/git-commit.micro +++ b/runtime/syntax/git-commit.micro @@ -14,20 +14,20 @@ color ignore ".*" color comment "^#.*" # Files changes -color keyword "#[[:space:]](deleted|modified|new file|renamed):[[:space:]].*" -color keyword "#[[:space:]]deleted:" -color keyword "#[[:space:]]modified:" -color keyword "#[[:space:]]new file:" -color keyword "#[[:space:]]renamed:" +color statement "#[[:space:]](deleted|modified|new file|renamed):[[:space:]].*" +color statement "#[[:space:]]deleted:" +color statement "#[[:space:]]modified:" +color statement "#[[:space:]]new file:" +color statement "#[[:space:]]renamed:" # Untracked filenames color error "^# [^/?*:;{}\\]+\.[^/?*:;{}\\]+$" -color keyword "^#[[:space:]]Changes.*[:]" -color keyword "^#[[:space:]]Your branch and '[^']+" -color keyword "^#[[:space:]]Your branch and '" -color keyword "^#[[:space:]]On branch [^ ]+" -color keyword "^#[[:space:]]On branch" +color statement "^#[[:space:]]Changes.*[:]" +color statement "^#[[:space:]]Your branch and '[^']+" +color statement "^#[[:space:]]Your branch and '" +color statement "^#[[:space:]]On branch [^ ]+" +color statement "^#[[:space:]]On branch" # Recolor hash symbols diff --git a/runtime/syntax/git-config.micro b/runtime/syntax/git-config.micro index 74cb7065..473202b2 100644 --- a/runtime/syntax/git-config.micro +++ b/runtime/syntax/git-config.micro @@ -1,7 +1,7 @@ syntax "git-config" "git(config|modules)$|\.git/config$" -color constant "\<(true|false)\>" -color keyword "^[[:space:]]*[^=]*=" +color constant.bool "\<(true|false)\>" +color statement "^[[:space:]]*[^=]*=" color constant "^[[:space:]]*\[.*\]$" -color constant ""(\\.|[^"])*"|'(\\.|[^'])*'" +color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'" color comment "(^|[[:space:]])#([^{].*)?$" diff --git a/runtime/syntax/git-rebase-todo.micro b/runtime/syntax/git-rebase-todo.micro index 2de39a4b..de71cf1a 100644 --- a/runtime/syntax/git-rebase-todo.micro +++ b/runtime/syntax/git-rebase-todo.micro @@ -8,18 +8,18 @@ color ignore ".*" color comment "^#.*" # Rebase commands -color keyword "^(e|edit) [0-9a-f]{7,40}" -color keyword "^# (e, edit)" -color keyword "^(f|fixup) [0-9a-f]{7,40}" -color keyword "^# (f, fixup)" -color keyword "^(p|pick) [0-9a-f]{7,40}" -color keyword "^# (p, pick)" -color keyword "^(r|reword) [0-9a-f]{7,40}" -color keyword "^# (r, reword)" -color keyword "^(s|squash) [0-9a-f]{7,40}" -color keyword "^# (s, squash)" -color keyword "^(x|exec) [^ ]+ [0-9a-f]{7,40}" -color keyword "^# (x, exec)" +color statement "^(e|edit) [0-9a-f]{7,40}" +color statement "^# (e, edit)" +color statement "^(f|fixup) [0-9a-f]{7,40}" +color statement "^# (f, fixup)" +color statement "^(p|pick) [0-9a-f]{7,40}" +color statement "^# (p, pick)" +color statement "^(r|reword) [0-9a-f]{7,40}" +color statement "^# (r, reword)" +color statement "^(s|squash) [0-9a-f]{7,40}" +color statement "^# (s, squash)" +color statement "^(x|exec) [^ ]+ [0-9a-f]{7,40}" +color statement "^# (x, exec)" # Recolor hash symbols color special "#" diff --git a/runtime/syntax/glsl.micro b/runtime/syntax/glsl.micro index 6da26393..652dc4aa 100644 --- a/runtime/syntax/glsl.micro +++ b/runtime/syntax/glsl.micro @@ -1,15 +1,15 @@ syntax "glsl" "\.(frag|vert|fp|vp|glsl)$" -color brightblue "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[()]" -color green "\<(void|bool|bvec2|bvec3|bvec4|int|ivec2|ivec3|ivec4|float|vec2|vec3|vec4|mat2|mat3|mat4|struct|sampler1D|sampler2D|sampler3D|samplerCUBE|sampler1DShadow|sampler2DShadow)\>" -color green "\" -color cyan "\<(const|attribute|varying|uniform|in|out|inout|if|else|return|discard|while|for|do)\>" -color brightred "\<(break|continue)\>" -color brightcyan "\<(true|false)\>" -color red "[-+/*=<>?:!~%&|^]" -color blue "\<([0-9]+|0x[0-9a-fA-F]*)\>" -color brightblack "(^|[[:space:]])//.*" -color brightblack start="/\*" end="\*/" -color brightwhite,cyan "TODO:?" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color identifier.class "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[()]" +color type "\<(void|bool|bvec2|bvec3|bvec4|int|ivec2|ivec3|ivec4|float|vec2|vec3|vec4|mat2|mat3|mat4|struct|sampler1D|sampler2D|sampler3D|samplerCUBE|sampler1DShadow|sampler2DShadow)\>" +color identifier "\" +color statement "\<(const|attribute|varying|uniform|in|out|inout|if|else|return|discard|while|for|do)\>" +color special "\<(break|continue)\>" +color constant.bool "\<(true|false)\>" +color symbol.operator "[-+/*=<>?:!~%&|^]" +color constant.number "\<([0-9]+|0x[0-9a-fA-F]*)\>" +color comment "(^|[[:space:]])//.*" +color comment start="/\*" end="\*/" +color todo "TODO:?" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/go.micro b/runtime/syntax/go.micro index be5faf70..8e74822e 100644 --- a/runtime/syntax/go.micro +++ b/runtime/syntax/go.micro @@ -1,23 +1,29 @@ syntax "go" "\.go$" +##This file may need cleanup. + # Conditionals and control flow -color statement "\b(break|case|continue|default|else|for|go|goto|if|range|return|switch)\b" -color statement "\b(package|import|const|var|type|struct|func|go|defer|iota)\b" -color statement "[-+/*=<>!~%&|^]|:=" +color special "\b(break|case|continue|default|go|goto|range|return)\b" +color statement "\b(else|for|if|switch)\b" +color preproc "\b(package|import|const|var|type|struct|func|go|defer|iota)\b" +color symbol.operator "[-+/*=<>!~%&|^]|:=" # Types color special "[a-zA-Z0-9]*\(" -color brightyellow "(,|\.)" +color symbol "(,|\.)" color type "\b(u?int(8|16|32|64)?|float(32|64)|complex(64|128))\b" color type "\b(uintptr|byte|rune|string|interface|bool|map|chan|error)\b" -color constant "\b(true|false|nil)\b" +##I'm... not sure, but aren't structs a type? +color type "\b(struct)\b" +color constant.bool "\b(true|false|nil)\b" # Brackets -color statement "(\{|\})" -color statement "(\(|\))" -color statement "(\[|\])" -color statement "!" -color statement "," +color symbol.brackets "(\{|\})" +color symbol.brackets "(\(|\))" +color symbol.brackets "(\[|\])" +##Redundant?? +#color symbol.operator "!" +#color symbol.operator "," # Numbers and strings color constant.number "\b([0-9]+|0x[0-9a-fA-F]*)\b|'.'" diff --git a/runtime/syntax/golo.micro b/runtime/syntax/golo.micro index de73d63c..db546ee0 100644 --- a/runtime/syntax/golo.micro +++ b/runtime/syntax/golo.micro @@ -5,40 +5,40 @@ color type "\b(struct|DynamicObject|union|AdapterFabric|Adapter|DynamicVariable| color type "\b(list|set|array|vector|tuple|map)\b" color type "\b(Ok|Error|Empty|None|Some|Option|Result|Result.ok|Result.fail|Result.error|Result.empty|Optional.empty|Optional.of)\b" -color statement "\b(augment|pimp)\b" -color statement "\b(interfaces|implements|extends|overrides|maker|newInstance)\b" -color statement "\b(isEmpty|isNone|isPresent|isSome|iterator|flattened|toList|flatMap|`and|orElseGet|`or|toResult|apply|either)\b" -color statement "\b(result|option|trying|raising|nullify|catching)\b" -color statement "\b(promise|setFuture|failedFuture|all|any)\b" -color statement "\b(initialize|initializeWithinThread|start|future|fallbackTo|onSet|onFail|cancel|enqueue)\b" -color statement "\b(println|print|raise|readln|readPassword|secureReadPassword|requireNotNull|require|newTypedArray|range|reversedRange|mapEntry|asInterfaceInstance|asFunctionalInterface|isClosure|fileToText|textToFile|fileExists|currentDir|sleep|uuid|isArray|arrayTypeOf|charValue|intValue|longValue|doubleValue|floatValue|removeByIndex|box)\b" -color statement "\b(likelySupported|reset|bold|underscore|blink|reverse_video|concealed|fg_black|fg_red|fg_green|fg_yellow|fg_blue|fg_magenta|fg_cyan|fg_white|bg_black|bg_red|bg_green|bg_yellow|bg_blue|bg_magenta|bg_cyan|bg_white|cursor_position|cursor_save_position|cursor_restore_position|cursor_up|cursor_down|cursor_forward|cursor_backward|erase_display|erase_line)\b" -color statement "\b(emptyList|cons|lazyList|fromIter|generator|repeat|iterate)\b" -color statement "\b(asLazyList|foldl|foldr|take|takeWhile|drop|dropWhile|subList)\b" -color statement "\b(import)\b" -color statement "\b(module)\b" -color statement "\b(JSON)\b" -color statement "\b(stringify|parse|toJSON|toDynamicObject|updateFromJSON)\b" -color statement "\b(newInstance|define|getKey|getValue|properties|fallback)\b" -color statement "\b(times|upTo|downTo)\b" -color statement "\b(format|toInt|toInteger|toDouble|toFloat|toLong)\b" -color statement "\b(head|tail|isEmpty|reduce|each|count|exists)\b" -color statement "\b(newWithSameType|destruct|append|add|addIfAbsent|prepend|insert|last|unmodifiableView|find|filter|map|join|reverse|reversed|order|ordered|removeAt|include|exclude|remove|delete|has|contains|getOrElse|toArray)\b" -color statement "\b(add|addTo|succ|pred|mul|neg|sub|rsub|div|rdiv|mod|rmod|pow|rpow|str|lt|gt|eq|ne|ge|le|`and|`or|`not|xor|even|odd|contains|isEmpty|`is|`isnt|`oftype|`orIfNull|fst|snd|getitem|setitem|getter|id|const|False|True|Null|curry|uncurry|unary|spreader|varargs|swapArgs|swapCurry|swapCouple|swap|invokeWith|pipe|compose|io|andThen|until|recur|cond)\b" -color statement "\b(toUpperCase|equals|startsWith)\b" +color identifier.class "\b(augment|pimp)\b" +color identifier.class "\b(interfaces|implements|extends|overrides|maker|newInstance)\b" +color identifier.class "\b(isEmpty|isNone|isPresent|isSome|iterator|flattened|toList|flatMap|`and|orElseGet|`or|toResult|apply|either)\b" +color identifier.class "\b(result|option|trying|raising|nullify|catching)\b" +color identifier.class "\b(promise|setFuture|failedFuture|all|any)\b" +color identifier.class "\b(initialize|initializeWithinThread|start|future|fallbackTo|onSet|onFail|cancel|enqueue)\b" +color identifier.class "\b(println|print|raise|readln|readPassword|secureReadPassword|requireNotNull|require|newTypedArray|range|reversedRange|mapEntry|asInterfaceInstance|asFunctionalInterface|isClosure|fileToText|textToFile|fileExists|currentDir|sleep|uuid|isArray|arrayTypeOf|charValue|intValue|longValue|doubleValue|floatValue|removeByIndex|box)\b" +color identifier.class "\b(likelySupported|reset|bold|underscore|blink|reverse_video|concealed|fg_black|fg_red|fg_green|fg_yellow|fg_blue|fg_magenta|fg_cyan|fg_white|bg_black|bg_red|bg_green|bg_yellow|bg_blue|bg_magenta|bg_cyan|bg_white|cursor_position|cursor_save_position|cursor_restore_position|cursor_up|cursor_down|cursor_forward|cursor_backward|erase_display|erase_line)\b" +color identifier.class "\b(emptyList|cons|lazyList|fromIter|generator|repeat|iterate)\b" +color identifier.class "\b(asLazyList|foldl|foldr|take|takeWhile|drop|dropWhile|subList)\b" +color identifier.class "\b(import)\b" +color identifier.class "\b(module)\b" +color identifier.class "\b(JSON)\b" +color identifier.class "\b(stringify|parse|toJSON|toDynamicObject|updateFromJSON)\b" +color identifier.class "\b(newInstance|define|getKey|getValue|properties|fallback)\b" +color identifier.class "\b(times|upTo|downTo)\b" +color identifier.class "\b(format|toInt|toInteger|toDouble|toFloat|toLong)\b" +color identifier.class "\b(head|tail|isEmpty|reduce|each|count|exists)\b" +color identifier.class "\b(newWithSameType|destruct|append|add|addIfAbsent|prepend|insert|last|unmodifiableView|find|filter|map|join|reverse|reversed|order|ordered|removeAt|include|exclude|remove|delete|has|contains|getOrElse|toArray)\b" +color identifier.class "\b(add|addTo|succ|pred|mul|neg|sub|rsub|div|rdiv|mod|rmod|pow|rpow|str|lt|gt|eq|ne|ge|le|`and|`or|`not|xor|even|odd|contains|isEmpty|`is|`isnt|`oftype|`orIfNull|fst|snd|getitem|setitem|getter|id|const|False|True|Null|curry|uncurry|unary|spreader|varargs|swapArgs|swapCurry|swapCouple|swap|invokeWith|pipe|compose|io|andThen|until|recur|cond)\b" +color identifier.class "\b(toUpperCase|equals|startsWith)\b" -color preproc "\b(if|else|then|when|case|match|otherwise)\b" -color preproc "\b(with|break|continue|return)\b" +color statement "\b(if|else|then|when|case|match|otherwise)\b" +color special "\b(with|break|continue|return)\b" color error "\b(try|catch|finally|throw)\b" color identifier "\b(super|this|let|var|local)\b" -color special "[(){}]" "\[" "\]" -color preproc "\b(for|while|foreach|in)\b" +color symbol.brackets "[(){}]" "\[" "\]" +color statement "\b(for|while|foreach|in)\b" color constant "\b(and|in|is|not|or|isnt|orIfNull)\b" -color constant "\b(true|false)\b" +color constant.bool "\b(true|false)\b" color constant "\b(null|undefined)\b" -color statement "[-+/*=<>!~%&|^]|:=" +color symbol.brackets "[-+/*=<>!~%&|^]|:=" color constant.number "\b([0-9]+|0x[0-9a-fA-F]*)\b|'.'" color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'" diff --git a/runtime/syntax/groff.micro b/runtime/syntax/groff.micro index 02b82b8e..77e71fc1 100644 --- a/runtime/syntax/groff.micro +++ b/runtime/syntax/groff.micro @@ -2,23 +2,23 @@ ## syntax "groff" "\.m[ems]$" "\.rof" "\.tmac$" "^tmac." ## The argument of .ds or .nr -color cyan "^\.(ds|nr) [^[[:space:]]]*" +color statement "^\.(ds|nr) [^[[:space:]]]*" ## Single character escapes -color brightmagenta "\\." +color constant.specialChar "\\." ## Highlight the argument of \f or \s in the same color -color brightmagenta "\\f." "\\f\(.." "\\s(\+|\-)?[0-9]" +color constant.specialChar "\\f." "\\f\(.." "\\s(\+|\-)?[0-9]" ## Newlines -color cyan "(\\|\\\\)n(.|\(..)" -color cyan start="(\\|\\\\)n\[" end="]" +color constant "(\\|\\\\)n(.|\(..)" +color constant start="(\\|\\\\)n\[" end="]" ## Requests -color brightgreen "^\.[[:space:]]*[^[[:space:]]]*" +color type "^\.[[:space:]]*[^[[:space:]]]*" ## Comments -color yellow "^\.\\".*$" +color comment "^\.\\".*$" ## Strings -color green "(\\|\\\\)\*(.|\(..)" -color green start="(\\|\\\\)\*\[" end="]" +color constant.string "(\\|\\\\)\*(.|\(..)" +color constant.string start="(\\|\\\\)\*\[" end="]" ## Characters -color brightred "\\\(.." -color brightred start="\\\[" end="]" +color constant.specialChar "\\\(.." +color constant.specialChar start="\\\[" end="]" ## Macro arguments -color brightcyan "\\\\\$[1-9]" +color identifier.macro "\\\\\$[1-9]" diff --git a/runtime/syntax/haml.micro b/runtime/syntax/haml.micro index 9d8ab6f9..1c39f8ed 100644 --- a/runtime/syntax/haml.micro +++ b/runtime/syntax/haml.micro @@ -1,16 +1,16 @@ syntax "haml" "\.haml$" -color cyan "-|=" -color white "->|=>" -cyan (i) "([ ]|^)%[0-9A-Z_]+\>" -magenta (i) ":[0-9A-Z_]+\>" -yellow (i) "\.[A-Z_]+\>" +color symbol "-|=" +color default "->|=>" +color constant "([ ]|^)%[0-9A-Za-z_]+>" +color special ":[0-9A-Za-z_]+>" +color type "\.[A-Za-z_]+>" ## Double quote & single quote -color green ""([^"]|(\\"))*"" "%[QW]?\{[^}]*\}" "%[QW]?\([^)]*\)" "%[QW]?<[^>]*>" "%[QW]?\$[^$]*\$" "%[QW]?\^[^^]*\^" "%[QW]?![^!]*!" -color green "'([^']|(\\'))*'" "%[qw]\{[^}]*\}" "%[qw]\([^)]*\)" "%[qw]<[^>]*>" "%[qw]\[[^]]*\]" "%[qw]\$[^$]*\$" "%[qw]\^[^^]*\^" "%[qw]![^!]*!" +color constant.string ""([^"]|(\\"))*"" "%[QW]?\{[^}]*\}" "%[QW]?\([^)]*\)" "%[QW]?<[^>]*>" "%[QW]?\$[^$]*\$" "%[QW]?\^[^^]*\^" "%[QW]?![^!]*!" +color constant.string "'([^']|(\\'))*'" "%[qw]\{[^}]*\}" "%[qw]\([^)]*\)" "%[qw]<[^>]*>" "%[qw]\[[^]]*\]" "%[qw]\$[^$]*\$" "%[qw]\^[^^]*\^" "%[qw]![^!]*!" ## Vars -color brightgreen "#\{[^}]*\}" -color brightblue "(@|@@)[0-9A-Z_a-z]+" +color identifier "#\{[^}]*\}" +color identifier.var "(@|@@)[0-9A-Z_a-z]+" ## Comments -color brightcyan "#[^{].*$" "#$" +color comment "#[^{].*$" "#$" diff --git a/runtime/syntax/haskell.micro b/runtime/syntax/haskell.micro index 8c6bdf0e..cb9ea88c 100644 --- a/runtime/syntax/haskell.micro +++ b/runtime/syntax/haskell.micro @@ -1,31 +1,32 @@ syntax "haskell" "\.hs$" ## Keywords -color red "[ ](as|case|of|class|data|default|deriving|do|forall|foreign|hiding|if|then|else|import|infix|infixl|infixr|instance|let|in|mdo|module|newtype|qualified|type|where)[ ]" -color red "(^data|^foreign|^import|^infix|^infixl|^infixr|^instance|^module|^newtype|^type)[ ]" -color red "[ ](as$|case$|of$|class$|data$|default$|deriving$|do$|forall$|foreign$|hiding$|if$|then$|else$|import$|infix$|infixl$|infixr$|instance$|let$|in$|mdo$|module$|newtype$|qualified$|type$|where$)" +color statement "[ ](as|case|of|class|data|default|deriving|do|forall|foreign|hiding|if|then|else|import|infix|infixl|infixr|instance|let|in|mdo|module|newtype|qualified|type|where)[ ]" +color statement "(^data|^foreign|^import|^infix|^infixl|^infixr|^instance|^module|^newtype|^type)[ ]" +color statement "[ ](as$|case$|of$|class$|data$|default$|deriving$|do$|forall$|foreign$|hiding$|if$|then$|else$|import$|infix$|infixl$|infixr$|instance$|let$|in$|mdo$|module$|newtype$|qualified$|type$|where$)" ## Various symbols -color cyan "(\||@|!|:|_|~|=|\\|;|\(\)|,|\[|\]|\{|\})" +color symbol "(\||@|!|:|_|~|=|\\|;|\(\)|,|\[|\]|\{|\})" ## Operators -color magenta "(==|/=|&&|\|\||<|>|<=|>=)" +color symbol.operator "(==|/=|&&|\|\||<|>|<=|>=)" ## Various symbols -color cyan "(->|<-)" -color magenta "\.|\$" +color special "(->|<-)" +color symbol "\.|\$" ## Data constructors -color magenta "(True|False|Nothing|Just|Left|Right|LT|EQ|GT)" +color constant.bool "\b(True|False)\b" +color constant "(Nothing|Just|Left|Right|LT|EQ|GT)" ## Data classes -color magenta "[ ](Read|Show|Enum|Eq|Ord|Data|Bounded|Typeable|Num|Real|Fractional|Integral|RealFrac|Floating|RealFloat|Monad|MonadPlus|Functor)" +color identifier.class "[ ](Read|Show|Enum|Eq|Ord|Data|Bounded|Typeable|Num|Real|Fractional|Integral|RealFrac|Floating|RealFloat|Monad|MonadPlus|Functor)" ## Strings -color yellow ""[^\"]*"" +color constant.string ""[^\"]*"" ## Comments -color green "--.*" -color green start="\{-" end="-\}" +color comment "--.*" +color comment start="\{-" end="-\}" -color brightred "undefined" +color identifier.micro "undefined" diff --git a/runtime/syntax/html.micro b/runtime/syntax/html.micro index 00b60f2a..251e59fa 100644 --- a/runtime/syntax/html.micro +++ b/runtime/syntax/html.micro @@ -1,7 +1,14 @@ ## Here is a short improved example for HTML. -## +## syntax "html" "\.htm[l]?$" -color identifier "<.*?>" +color symbol "<|>" +color symbol.tag "<[^!].*?>" +color symbol "[:=]" color special "&[^;[[:space:]]]*;" -color constant ""[^"]*"|qq\|.*\|" +color constant.string ""[^"]*"|qq\|.*\|" color statement "(alt|bgcolor|height|href|label|longdesc|name|onclick|onfocus|onload|onmouseover|size|span|src|style|target|type|value|width)=" +color constant.string.url "(ft(p|ps)|htt(p|ps)|git|chrome)://[^ ]+" +color comment "" +color preproc "" +# Bad possible work around for region-less regions. +#color default start=">" end="<" \ No newline at end of file diff --git a/runtime/syntax/inputrc.micro b/runtime/syntax/inputrc.micro index c0b8f6e4..2c5bfaaf 100644 --- a/runtime/syntax/inputrc.micro +++ b/runtime/syntax/inputrc.micro @@ -1,10 +1,10 @@ syntax "inputrc" "inputrc$" -color red "\<(off|none)\>" -color green "\" -color brightblue "\" -color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" -color magenta "\\.?" -color brightblack "(^|[[:space:]])#([^{].*)?$" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color constant.bool.false "\<(off|none)\>" +color constant.bool.true "\" +color preproc "\" +color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'" +color constant.specialChar "\\.?" +color comment "(^|[[:space:]])#([^{].*)?$" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/java.micro b/runtime/syntax/java.micro index 0dd8d5d0..91c86033 100644 --- a/runtime/syntax/java.micro +++ b/runtime/syntax/java.micro @@ -5,7 +5,7 @@ color type "\b(boolean|byte|char|double|float|int|long|new|short|this|transient| color statement "\b(break|case|catch|continue|default|do|else|finally|for|if|return|switch|throw|try|while)\b" color type "\b(abstract|class|extends|final|implements|import|instanceof|interface|native|package|private|protected|public|static|strictfp|super|synchronized|throws|volatile)\b" color constant.string ""[^"]*"" -color constant "\b(true|false|null)\b" +color constant.bool "\b(true|false|null)\b" color constant.number "\b[0-9]+\b" color comment "//.*" color comment start="/\*" end="\*/" diff --git a/runtime/syntax/javascript.micro b/runtime/syntax/javascript.micro index cec6a1ab..9462be0b 100644 --- a/runtime/syntax/javascript.micro +++ b/runtime/syntax/javascript.micro @@ -7,11 +7,11 @@ color identifier "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[(]" color statement "\b(break|case|catch|continue|default|delete|do|else|finally)\b" color statement "\b(for|function|get|if|in|instanceof|new|return|set|switch)\b" color statement "\b(switch|this|throw|try|typeof|var|void|while|with)\b" -color constant "\b(null|undefined|NaN)\b" -color constant "\b(true|false)\b" +color constant.bool "\b(null|undefined|NaN)\b" +color constant.bool "\b(true|false)\b" color type "\b(Array|Boolean|Date|Enumerator|Error|Function|Math)\b" color type "\b(Number|Object|RegExp|String)\b" -color statement "[-+/*=<>!~%?:&|]" +color symbol.operator "[-+/*=<>!~%?:&|]" color constant "/[^*]([^/]|(\\/))*[^\\]/[gim]*" color constant "\\[0-7][0-7]?[0-7]?|\\x[0-9a-fA-F]+|\\[bfnrt'"\?\\]" color comment "(^|[[:space:]])//.*" diff --git a/runtime/syntax/json.micro b/runtime/syntax/json.micro index 3ef298e0..a59cbf79 100644 --- a/runtime/syntax/json.micro +++ b/runtime/syntax/json.micro @@ -4,10 +4,11 @@ header "^\{$" color constant.number "\b[-+]?([1-9][0-9]*|0[0-7]*|0x[0-9a-fA-F]+)([uU][lL]?|[lL][uU]?)?\b" color constant.number "\b[-+]?([0-9]+\.[0-9]*|[0-9]*\.[0-9]+)([EePp][+-]?[0-9]+)?[fFlL]?" color constant.number "\b[-+]?([0-9]+[EePp][+-]?[0-9]+)[fFlL]?" -color constant "\b(null)\b" -color constant "\b(true|false)\b" +color constant.bool "\b(null)\b" +color constant.bool.true "\b(true)\b" +color constant.bool.false "\b(false)\b" color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'" color statement "\"(\\"|[^"])*\"[[:space:]]*:" "'(\'|[^'])*'[[:space:]]*:" color constant "\\u[0-9a-fA-F]{4}|\\[bfnrt'"/\\]" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/keymap.micro b/runtime/syntax/keymap.micro index bd89707a..9ad1a2d2 100644 --- a/runtime/syntax/keymap.micro +++ b/runtime/syntax/keymap.micro @@ -1,10 +1,10 @@ syntax "keymap" "\.(k|key)?map$|Xmodmap$" -color cyan "\<(add|clear|compose|keycode|keymaps|keysym|remove|string)\>" -color cyan "\<(control|alt|shift)\>" -color blue "\<[0-9]+\>" -color red "=" -color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" -color brightblack "^!.*$" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color statement "\<(add|clear|compose|keycode|keymaps|keysym|remove|string)\>" +color statement "\<(control|alt|shift)\>" +color constant.number "\<[0-9]+\>" +color symbol "=" +color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'" +color comment "^!.*$" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/kickstart.micro b/runtime/syntax/kickstart.micro index 3f745539..529239e0 100644 --- a/runtime/syntax/kickstart.micro +++ b/runtime/syntax/kickstart.micro @@ -1,15 +1,15 @@ syntax "kickstart" "\.ks$" "\.kickstart$" -color brightmagenta "%[a-z]+" -color cyan "^[[:space:]]*(install|cdrom|text|graphical|volgroup|logvol|reboot|timezone|lang|keyboard|authconfig|firstboot|rootpw|user|firewall|selinux|repo|part|partition|clearpart|bootloader)" -color cyan "--(name|mirrorlist|baseurl|utc)(=|\>)" -color brightyellow "\$(releasever|basearch)\>" +color special "%[a-z]+" +color statement "^[[:space:]]*(install|cdrom|text|graphical|volgroup|logvol|reboot|timezone|lang|keyboard|authconfig|firstboot|rootpw|user|firewall|selinux|repo|part|partition|clearpart|bootloader)" +color constant "--(name|mirrorlist|baseurl|utc)(=|\>)" +color statement "\$(releasever|basearch)\>" # Packages and groups color brightblack "^@[A-Za-z][A-Za-z-]*" color brightred "^-@[a-zA-Z0-9*-]+" color red "^-[a-zA-Z0-9*-]+" -color brightblack "(^|[[:space:]])#([^{].*)?$" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color comment "(^|[[:space:]])#([^{].*)?$" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/ledger.micro b/runtime/syntax/ledger.micro index 18fbb7a9..5021ba66 100644 --- a/runtime/syntax/ledger.micro +++ b/runtime/syntax/ledger.micro @@ -1,10 +1,10 @@ syntax "ledger" "(^|\.|/)ledger|ldgr|beancount|bnct$" -color brightmagenta "^([0-9]{4}(/|-)[0-9]{2}(/|-)[0-9]{2}|[=~]) .*" -color blue "^[0-9]{4}(/|-)[0-9]{2}(/|-)[0-9]{2}" -color brightyellow "^~ .*" -color brightblue "^= .*" -color cyan "^[[:space:]]+(![[:space:]]+)?\(?[A-Za-z ]+(:[A-Za-z ]+)*\)?" -color cyan "^[[:space:]]+(![[:space:]]+)?\(?[A-Za-z_-]+(:[A-Za-z_-]+)*\)?" -color red "[*!]" -color brightblack "^[[:space:]]*;.*" +color special "^([0-9]{4}(/|-)[0-9]{2}(/|-)[0-9]{2}|[=~]) .*" +color constant "^[0-9]{4}(/|-)[0-9]{2}(/|-)[0-9]{2}" +color statement "^~ .*" +color identifier.var "^= .*" +color identifier "^[[:space:]]+(![[:space:]]+)?\(?[A-Za-z ]+(:[A-Za-z ]+)*\)?" +color identifier "^[[:space:]]+(![[:space:]]+)?\(?[A-Za-z_-]+(:[A-Za-z_-]+)*\)?" +color symbol "[*!]" +color comment "^[[:space:]]*;.*" diff --git a/runtime/syntax/lfe.micro b/runtime/syntax/lfe.micro index 3aa61b51..f254c984 100644 --- a/runtime/syntax/lfe.micro +++ b/runtime/syntax/lfe.micro @@ -9,7 +9,7 @@ color type "defun|define-syntax|define|defmacro|defmodule|export" # Dirty base cases stolen from the generic lisp syntax color constant "\ [A-Za-z][A-Za-z0-9_-]+\ " -color statement "\(([-+*/<>]|<=|>=)|'" +color symbol.operator "\(([-+*/<>]|<=|>=)|'" color constant.number "\<[0-9]+\>" color constant.string "\"(\\.|[^"])*\"" color special "['|`][A-Za-z][A-Za-z0-9_-]+" @@ -17,5 +17,5 @@ color constant.string "\\.?" color comment "(^|[[:space:]]);.*" # Some warning colors because our indents are wrong. -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/lilypond.micro b/runtime/syntax/lilypond.micro index 2ade2ce6..40c73fb6 100644 --- a/runtime/syntax/lilypond.micro +++ b/runtime/syntax/lilypond.micro @@ -4,7 +4,7 @@ color constant.number "\d+" color identifier "[[:space:]](staff|spacing|signature|routine|notes|handler|corrected|beams|arpeggios|Volta_engraver|Voice|Vertical_align_engraver|Vaticana_ligature_engraver|VaticanaVoice|VaticanaStaff|Tweak_engraver|Tuplet_engraver|Trill_spanner_engraver|Timing_translator|Time_signature_performer|Time_signature_engraver|Tie_performer|Tie_engraver|Text_spanner_engraver|Text_engraver|Tempo_performer|Tab_tie_follow_engraver|Tab_staff_symbol_engraver|Tab_note_heads_engraver|TabVoice|TabStaff|System_start_delimiter_engraver|Stem_engraver|Stanza_number_engraver|Stanza_number_align_engraver|Staff_symbol_engraver|Staff_performer|Staff_collecting_engraver|StaffGroup|Staff|Spanner_break_forbid_engraver|Span_bar_stub_engraver|Span_bar_engraver|Span_arpeggio_engraver|Spacing_engraver|Slur_performer|Slur_engraver|Slash_repeat_engraver|Separating_line_group_engraver|Script_row_engraver|Script_engraver|Script_column_engraver|Score|Rhythmic_column_engraver|RhythmicStaff|Rest_engraver|Rest_collision_engraver|Repeat_tie_engraver|Repeat_acknowledge_engraver|Pure_from_neighbor_engraver|Pitched_trill_engraver|Pitch_squash_engraver|Piano_pedal_performer|Piano_pedal_engraver|Piano_pedal_align_engraver|PianoStaff|Phrasing_slur_engraver|PetrucciVoice|PetrucciStaff|Percent_repeat_engraver|Part_combine_engraver|Parenthesis_engraver|Paper_column_engraver|Output_property_engraver|Ottava_spanner_engraver|OneStaff|NullVoice|Note_spacing_engraver|Note_performer|Note_name_engraver|Note_heads_engraver|Note_head_line_engraver|NoteName\|NoteHead|New_fingering_engraver|Multi_measure_rest_engraver|Midi_control_function_performer|Metronome_mark_engraver|Mensural_ligature_engraver|MensuralVoice|MensuralStaff|Mark_engraver|Lyrics|Lyric_performer|Lyric_engraver|Ligature_bracket_engraver|Ledger_line_engraver|Laissez_vibrer_engraver|Kievan_ligature_engraver|KievanVoice|KievanStaff|Key_performer|Key_engraver|Keep_alive_together_engraver|Instrument_switch_engraver|Instrument_name_engraver|Hyphen_engraver|Grob_pq_engraver|GregorianTranscriptionVoice|GregorianTranscriptionStaff|GrandStaff|Grace_spacing_engraver|Grace_engraver|Grace_beam_engraver|Grace_auto_beam_engraver|Global|Glissando_engraver|Fretboard_engraver|FretBoards|Forbid_line_break_engraver|Footnote_engraver|Font_size_engraver|Fingering_engraver|Fingering_column_engraver|Figured_bass_position_engraver|Figured_bass_engraver|FiguredBass|Extender_engraver|Episema_engraver|Dynamics|Dynamic_performer|Dynamic_engraver|Dynamic_align_engraver|Drum_notes_engraver|Drum_note_performer|DrumVoice|DrumStaff|Double_percent_repeat_engraver|Dots_engraver|Dot_column_engraver|Devnull|Default_bar_line_engraver|Custos_engraver|Cue_clef_engraver|CueVoice|Control_track_performer|Concurrent_hairpin_engraver|Collision_engraver|Cluster_spanner_engraver|Clef_engraver|Chord_tremolo_engraver|Chord_name_engraver|ChordNames|ChoirStaff|Breathing_sign_engraver|Break_align_engraver|Bend_engraver|Beam_performer|Beam_engraver|Beam_collision_engraver|Bar_number_engraver|Bar_engraver|Axis_group_engraver|Auto_beam_engraver|Arpeggio_engraver|Accidental_engraver|Score)[[:space:]]" color statement "[-_^]?\\[-A-Za-z_]+" color preproc "\b(((gisis|gis|geses|ges|g|fisis|fis|feses|fes|f|eisis|eis|eeses|ees|e|disis|dis|deses|des|d|cisis|cis|ceses|ces|c|bisis|bis|beses|bes|b|aisis|ais|aeses|aes|a)[,']*[?!]?)|s|r|R|q)(128|64|32|16|8|4|2|1|\\breve|\\longa|\\maxima)?([^\\\w]|_|\b)" -color special "[(){}<>]" "\[" "\]" +color symbol.brackets "[(){}<>]" "\[" "\]" color constant.string "\".*\"" color comment start="%{" end="%}" color comment "%.*$" diff --git a/runtime/syntax/lisp.micro b/runtime/syntax/lisp.micro index 7f4c8911..6f91e46a 100644 --- a/runtime/syntax/lisp.micro +++ b/runtime/syntax/lisp.micro @@ -1,13 +1,13 @@ syntax "lisp" "(emacs|zile)$" "\.(el|li?sp|scm|ss)$" -color brightblue "\([a-z-]+" -color red "\(([-+*/<>]|<=|>=)|'" -color blue "\<[0-9]+\>" -cyan (i) "\" -color brightcyan "\<[tT]\>" -color yellow "\"(\\.|[^"])*\"" -color magenta "'[A-Za-z][A-Za-z0-9_-]+" -color magenta "\\.?" -color brightblack "(^|[[:space:]]);.*" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color default "\([a-z-]+" +color symbol "\(([-+*/<>]|<=|>=)|'" +color constant.number "\b[0-9]+b>" +color special "\bnil\b" +color brightcyan "\b[tT]b>" +color constant.string "\"(\\.|[^"])*\"" +color constant.specialChar "'[A-Za-z][A-Za-z0-9_-]+" +color constant.specialChar "\\.?" +color comment "(^|[[:space:]]);.*" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/lua.micro b/runtime/syntax/lua.micro index 3e93951d..2e112cfa 100644 --- a/runtime/syntax/lua.micro +++ b/runtime/syntax/lua.micro @@ -40,7 +40,7 @@ color identifier "bit32\.\b(arshift|band|bnot|bor|btest|bxor|extract|replace|lro color identifier "\:\b(close|flush|lines|read|seek|setvbuf|write)\b" # false, nil, true -color constant "\b(false|nil|true)\b" +color constant.bool "\b(false|nil|true)\b" # External files color statement "(\b(dofile|require|include)|%q|%!|%Q|%r|%x)\b" diff --git a/runtime/syntax/mail.micro b/runtime/syntax/mail.micro index 8d704b97..c7b63489 100644 --- a/runtime/syntax/mail.micro +++ b/runtime/syntax/mail.micro @@ -1,7 +1,7 @@ syntax "mail" "(.*/mutt-.*|\.eml)$" header "^From .* \d+:\d+:\d+ \d+" -color yellow "^From .*" +color constant "^From .*" color identifier "^[^[:space:]]+:" color preproc "^List-(Id|Archive|Subscribe|Unsubscribe|Post|Help):" color constant "^(To|From):" diff --git a/runtime/syntax/makefile.micro b/runtime/syntax/makefile.micro index e0ac6ecf..5b3ed674 100644 --- a/runtime/syntax/makefile.micro +++ b/runtime/syntax/makefile.micro @@ -2,9 +2,9 @@ syntax "makefile" "([Mm]akefile|\.ma?k)$" header "^#!.*/(env +)?[bg]?make( |$)" color preproc "\<(ifeq|ifdef|ifneq|ifndef|else|endif)\>" -color statement "^(export|include|override)\>" -color operator "^[^:= ]+:" -color operator "[=,%]" "\+=|\?=|:=|&&|\|\|" +color preproc "^(export|include|override)\>" +color symbol.operator "^[^:= ]+:" +color symbol.operator "[=,%]" "\+=|\?=|:=|&&|\|\|" color statement "\$\((abspath|addprefix|addsuffix|and|basename|call|dir)[[:space:]]" color statement "\$\((error|eval|filter|filter-out|findstring|firstword)[[:space:]]" color statement "\$\((flavor|foreach|if|info|join|lastword|notdir|or)[[:space:]]" @@ -12,7 +12,7 @@ color statement "\$\((origin|patsubst|realpath|shell|sort|strip|suffix)[[:space: color statement "\$\((value|warning|wildcard|word|wordlist|words)[[:space:]]" color identifier "^.+:" color identifier "[()$]" -color constant ""(\\.|[^"])*"|'(\\.|[^'])*'" +color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'" color identifier "\$+(\{[^} ]+\}|\([^) ]+\))" color identifier "\$[@^<*?%|+]|\$\([@^<*?%+-][DF]\)" color identifier "\$\$|\\.?" diff --git a/runtime/syntax/markdown.micro b/runtime/syntax/markdown.micro index 71c35ad1..03cfd0e5 100644 --- a/runtime/syntax/markdown.micro +++ b/runtime/syntax/markdown.micro @@ -1,31 +1,31 @@ syntax "markdown" "\.(md|mkd|mkdn|markdown)$" # Tables (Github extension) -color type ".*[ :]\|[ :].*" +color preproc ".*[ :]\|[ :].*" # quotes -color statement "^>.*" +color constant.string "^>.*" # Emphasis color type "(^|[[:space:]])(_[^ ][^_]*_|\*[^ ][^*]*\*)" # Strong emphasis -color type "(^|[[:space:]])(__[^ ][^_]*__|\*\*[^ ][^*]*\*\*)" +color type.keyword "(^|[[:space:]])(__[^ ][^_]*__|\*\*[^ ][^*]*\*\*)" # strike-through color type "(^|[[:space:]])~~[^ ][^~]*~~" # horizontal rules -color special "^(---+|===+|___+|\*\*\*+)\s*$" +color symbol "^(---+|\+---+|===+|\+===+|___+|\*\*\*+|\+\*\*\*+)\s*$" # headlines -color special "^#{1,6}.*" +color statement "^#{1,6}.*" # lists color identifier "^[[:space:]]*[\*+-] |^[[:space:]]*[0-9]+\. " # misc -color preproc "\(([CcRr]|[Tt][Mm])\)" "\.{3}" "(^|[[:space:]])\-\-($|[[:space:]])" +color preproc "\b([CcRr]|[Tt][Mm])\b" "\.{3}" "(^|[[:space:]])\-\-($|[[:space:]])" # links color constant "\[[^]]+\]" @@ -35,10 +35,10 @@ color constant "\[([^][]|\[[^]]*\])*\]\([^)]+\)" color underlined "!\[[^][]*\](\([^)]+\)|\[[^]]+\])" # urls -color underlined "https?://[^ )>]+" +color underlined.url "https?://[^ )>]+" # code color special "`.*?`|^ {4}[^-+*].*" # code blocks -color special "^```$" +color symbol "^```$" diff --git a/runtime/syntax/micro.micro b/runtime/syntax/micro.micro index 481b3104..c52e0020 100644 --- a/runtime/syntax/micro.micro +++ b/runtime/syntax/micro.micro @@ -3,11 +3,11 @@ syntax "micro" "\.(micro)$" color statement "\b(syntax|color(-link)?)\b" color statement "\b(start=|end=)\b" -color identifier "\b(default|comment|symbol|identifier|constant(.string(.char)?|.number)?|statement|preproc|type|special|underlined|error|todo|statusline|indent-char|(current-)?line-number|gutter-error|gutter-warning|cursor-line|color-column)\b" +color identifier "\b(default|comment|symbol|identifier|constant(.string(.char)?|.specialChar|.number)?|statement|preproc|type|special|underlined|error|todo|statusline|indent-char|(current-)?line-number|gutter-error|gutter-warning|cursor-line|color-column|tabbar)\b" color constant.number "\b(|h|A|0x)+[0-9]+(|h|A)+\b" color constant.number "\b0x[0-9 a-f A-F]+\b" color comment "#.*$" color constant.string ""(\\.|[^"])*"" -color constant.number "#[0-9 A-F a-f]+" +color constant.number "#[0-9 A-F a-f]{1,6}" diff --git a/runtime/syntax/mpdconf.micro b/runtime/syntax/mpdconf.micro index 2c5517bc..57b6f839 100644 --- a/runtime/syntax/mpdconf.micro +++ b/runtime/syntax/mpdconf.micro @@ -1,9 +1,9 @@ syntax "mpd" "mpd\.conf$" -color cyan "\<(user|group|bind_to_address|host|port|plugin|name|type)\>" -color cyan "\<((music|playlist)_directory|(db|log|state|pid|sticker)_file)\>" -color brightmagenta "^(input|audio_output|decoder)[[:space:]]*\{|\}" -color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" -color brightblack "(^|[[:space:]])#([^{].*)?$" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color statement "\<(user|group|bind_to_address|host|port|plugin|name|type)\>" +color statement "\<((music|playlist)_directory|(db|log|state|pid|sticker)_file)\>" +color special "^(input|audio_output|decoder)[[:space:]]*\{|\}" +color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'" +color comment "(^|[[:space:]])#([^{].*)?$" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/nanorc.micro b/runtime/syntax/nanorc.micro index bea6411a..262d07bc 100644 --- a/runtime/syntax/nanorc.micro +++ b/runtime/syntax/nanorc.micro @@ -2,16 +2,18 @@ ## syntax "nanorc" "\.?nanorc$" ## Possible errors and parameters -brightwhite (i) "^[[:space:]]*((un)?set|include|syntax|i?color).*$" +color default "(?i)^[[:space:]]*((un)?set|include|syntax|i?color).*$" ## Keywords -brightgreen (i) "^[[:space:]]*(set|unset)[[:space:]]+(autoindent|backup|backupdir|backwards|boldtext|brackets|casesensitive|const|cut|fill|historylog|matchbrackets|morespace|mouse|multibuffer|noconvert|nofollow|nohelp|nonewlines|nowrap|operatingdir|preserve|punct)\>" "^[[:space:]]*(set|unset)[[:space:]]+(quickblank|quotestr|rebinddelete|rebindkeypad|regexp|smarthome|smooth|speller|suspend|tabsize|tabstospaces|tempfile|undo|view|whitespace|wordbounds)\>" -green (i) "^[[:space:]]*(set|unset|include|syntax|header)\>" +color type "(?i)^[[:space:]]*(set|unset)[[:space:]]+(autoindent|backup|backupdir|backwards|boldtext|brackets|casesensitive|const|cut|fill|historylog|matchbrackets|morespace|mouse|multibuffer|noconvert|nofollow|nohelp|nonewlines|nowrap|operatingdir|preserve|punct)\>" "^[[:space:]]*(set|unset)[[:space:]]+(quickblank|quotestr|rebinddelete|rebindkeypad|regexp|smarthome|smooth|speller|suspend|tabsize|tabstospaces|tempfile|undo|view|whitespace|wordbounds)\b" +color preproc "(?i)^[[:space:]]*(set|unset|include|syntax|header)\b" +color constant.bool.true "(?i)(set)\b" +color constant.bool.false "(?i)(unset)\b" ## Colors -yellow (i) "^[[:space:]]*i?color[[:space:]]*(bright)?(white|black|red|blue|green|yellow|magenta|cyan)?(,(white|black|red|blue|green|yellow|magenta|cyan))?\>" -magenta (i) "^[[:space:]]*i?color\>" "\<(start|end)=" +color identifier "(?i)^[[:space:]]*(i)?color[[:space:]]*(bright)?(white|black|red|blue|green|yellow|magenta|cyan)?(,(white|black|red|blue|green|yellow|magenta|cyan))?\b" +color special "(?i)^[[:space:]]*(i)?color\b" "\b(start|end)=" ## Strings -white (i) ""(\\.|[^"])*"" +color constant.string ""(\\.|[^"])*"" ## Comments -brightblue (i) "^[[:space:]]*#.*$" -cyan (i) "^[[:space:]]*##.*$" +color comment "^[[:space:]]*#.*$" +color comment.bright "^[[:space:]]*##.*$" diff --git a/runtime/syntax/nginx.micro b/runtime/syntax/nginx.micro index 66148b31..fba87824 100644 --- a/runtime/syntax/nginx.micro +++ b/runtime/syntax/nginx.micro @@ -1,13 +1,13 @@ syntax "nginx" "nginx.*\.conf$" "\.nginx$" header "^(server|upstream)[a-z ]*\{$" -color brightmagenta "\<(events|server|http|location|upstream)[[:space:]]*\{" -color cyan "(^|[[:space:]{;])(access_log|add_after_body|add_before_body|add_header|addition_types|aio|alias|allow|ancient_browser|ancient_browser_value|auth_basic|auth_basic_user_file|autoindex|autoindex_exact_size|autoindex_localtime|break|charset|charset_map|charset_types|chunked_transfer_encoding|client_body_buffer_size|client_body_in_file_only|client_body_in_single_buffer|client_body_temp_path|client_body_timeout|client_header_buffer_size|client_header_timeout|client_max_body_size|connection_pool_size|create_full_put_path|daemon|dav_access|dav_methods|default_type|deny|directio|directio_alignment|disable_symlinks|empty_gif|env|error_log|error_page|expires|fastcgi_buffer_size|fastcgi_buffers|fastcgi_busy_buffers_size|fastcgi_cache|fastcgi_cache_bypass|fastcgi_cache_key|fastcgi_cache_lock|fastcgi_cache_lock_timeout|fastcgi_cache_min_uses|fastcgi_cache_path|fastcgi_cache_use_stale|fastcgi_cache_valid|fastcgi_connect_timeout|fastcgi_hide_header|fastcgi_ignore_client_abort|fastcgi_ignore_headers|fastcgi_index|fastcgi_intercept_errors|fastcgi_keep_conn|fastcgi_max_temp_file_size|fastcgi_next_upstream|fastcgi_no_cache|fastcgi_param|fastcgi_pass|fastcgi_pass_header|fastcgi_read_timeout|fastcgi_send_timeout|fastcgi_split_path_info|fastcgi_store|fastcgi_store_access|fastcgi_temp_file_write_size|fastcgi_temp_path|flv|geo|geoip_city|geoip_country|gzip|gzip_buffers|gzip_comp_level|gzip_disable|gzip_http_version|gzip_min_length|gzip_proxied|gzip_static|gzip_types|gzip_vary|if|if_modified_since|ignore_invalid_headers|image_filter|image_filter_buffer|image_filter_jpeg_quality|image_filter_sharpen|image_filter_transparency|include|index|internal|ip_hash|keepalive|keepalive_disable|keepalive_requests|keepalive_timeout|large_client_header_buffers|limit_conn|limit_conn_log_level|limit_conn_zone|limit_except|limit_rate|limit_rate_after|limit_req|limit_req_log_level|limit_req_zone|limit_zone|lingering_close|lingering_time|lingering_timeout|listen|location|log_format|log_not_found|log_subrequest|map|map_hash_bucket_size|map_hash_max_size|master_process|max_ranges|memcached_buffer_size|memcached_connect_timeout|memcached_next_upstream|memcached_pass|memcached_read_timeout|memcached_send_timeout|merge_slashes|min_delete_depth|modern_browser|modern_browser_value|mp4|mp4_buffer_size|mp4_max_buffer_size|msie_padding|msie_refresh|open_file_cache|open_file_cache_errors|open_file_cache_min_uses|open_file_cache_valid|open_log_file_cache|optimize_server_names|override_charset|pcre_jit|perl|perl_modules|perl_require|perl_set|pid|port_in_redirect|postpone_output|proxy_buffer_size|proxy_buffering|proxy_buffers|proxy_busy_buffers_size|proxy_cache|proxy_cache_bypass|proxy_cache_key|proxy_cache_lock|proxy_cache_lock_timeout|proxy_cache_min_uses|proxy_cache_path|proxy_cache_use_stale|proxy_cache_valid|proxy_connect_timeout|proxy_cookie_domain|proxy_cookie_path|proxy_hide_header|proxy_http_version|proxy_ignore_client_abort|proxy_ignore_headers|proxy_intercept_errors|proxy_max_temp_file_size|proxy_next_upstream|proxy_no_cache|proxy_pass|proxy_pass_header|proxy_read_timeout|proxy_redirect|proxy_send_timeout|proxy_set_header|proxy_ssl_session_reuse|proxy_store|proxy_store_access|proxy_temp_file_write_size|proxy_temp_path|random_index|read_ahead|real_ip_header|recursive_error_pages|request_pool_size|reset_timedout_connection|resolver|resolver_timeout|return|rewrite|root|satisfy|satisfy_any|secure_link_secret|send_lowat|send_timeout|sendfile|sendfile_max_chunk|server|server|server_name|server_name_in_redirect|server_names_hash_bucket_size|server_names_hash_max_size|server_tokens|set|set_real_ip_from|source_charset|split_clients|ssi|ssi_silent_errors|ssi_types|ssl|ssl_certificate|ssl_certificate_key|ssl_ciphers|ssl_client_certificate|ssl_crl|ssl_dhparam|ssl_engine|ssl_prefer_server_ciphers|ssl_protocols|ssl_session_cache|ssl_session_timeout|ssl_verify_client|ssl_verify_depth|sub_filter|sub_filter_once|sub_filter_types|tcp_nodelay|tcp_nopush|timer_resolution|try_files|types|types_hash_bucket_size|types_hash_max_size|underscores_in_headers|uninitialized_variable_warn|upstream|user|userid|userid_domain|userid_expires|userid_name|userid_p3p|userid_path|userid_service|valid_referers|variables_hash_bucket_size|variables_hash_max_size|worker_priority|worker_processes|worker_rlimit_core|worker_rlimit_nofile|working_directory|xml_entities|xslt_stylesheet|xslt_types)([[:space:]]|$)" -color brightcyan "\<(on|off)\>" -color brightyellow "\$[A-Za-z][A-Za-z0-9_]*" -color red "[*]" -color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" -color yellow start="'$" end="';$" -color brightblack "(^|[[:space:]])#([^{].*)?$" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color preproc "\b(events|server|http|location|upstream)[[:space:]]*\{" +color statement "(^|[[:space:]{;])(access_log|add_after_body|add_before_body|add_header|addition_types|aio|alias|allow|ancient_browser|ancient_browser_value|auth_basic|auth_basic_user_file|autoindex|autoindex_exact_size|autoindex_localtime|break|charset|charset_map|charset_types|chunked_transfer_encoding|client_body_buffer_size|client_body_in_file_only|client_body_in_single_buffer|client_body_temp_path|client_body_timeout|client_header_buffer_size|client_header_timeout|client_max_body_size|connection_pool_size|create_full_put_path|daemon|dav_access|dav_methods|default_type|deny|directio|directio_alignment|disable_symlinks|empty_gif|env|error_log|error_page|expires|fastcgi_buffer_size|fastcgi_buffers|fastcgi_busy_buffers_size|fastcgi_cache|fastcgi_cache_bypass|fastcgi_cache_key|fastcgi_cache_lock|fastcgi_cache_lock_timeout|fastcgi_cache_min_uses|fastcgi_cache_path|fastcgi_cache_use_stale|fastcgi_cache_valid|fastcgi_connect_timeout|fastcgi_hide_header|fastcgi_ignore_client_abort|fastcgi_ignore_headers|fastcgi_index|fastcgi_intercept_errors|fastcgi_keep_conn|fastcgi_max_temp_file_size|fastcgi_next_upstream|fastcgi_no_cache|fastcgi_param|fastcgi_pass|fastcgi_pass_header|fastcgi_read_timeout|fastcgi_send_timeout|fastcgi_split_path_info|fastcgi_store|fastcgi_store_access|fastcgi_temp_file_write_size|fastcgi_temp_path|flv|geo|geoip_city|geoip_country|gzip|gzip_buffers|gzip_comp_level|gzip_disable|gzip_http_version|gzip_min_length|gzip_proxied|gzip_static|gzip_types|gzip_vary|if|if_modified_since|ignore_invalid_headers|image_filter|image_filter_buffer|image_filter_jpeg_quality|image_filter_sharpen|image_filter_transparency|include|index|internal|ip_hash|keepalive|keepalive_disable|keepalive_requests|keepalive_timeout|large_client_header_buffers|limit_conn|limit_conn_log_level|limit_conn_zone|limit_except|limit_rate|limit_rate_after|limit_req|limit_req_log_level|limit_req_zone|limit_zone|lingering_close|lingering_time|lingering_timeout|listen|location|log_format|log_not_found|log_subrequest|map|map_hash_bucket_size|map_hash_max_size|master_process|max_ranges|memcached_buffer_size|memcached_connect_timeout|memcached_next_upstream|memcached_pass|memcached_read_timeout|memcached_send_timeout|merge_slashes|min_delete_depth|modern_browser|modern_browser_value|mp4|mp4_buffer_size|mp4_max_buffer_size|msie_padding|msie_refresh|open_file_cache|open_file_cache_errors|open_file_cache_min_uses|open_file_cache_valid|open_log_file_cache|optimize_server_names|override_charset|pcre_jit|perl|perl_modules|perl_require|perl_set|pid|port_in_redirect|postpone_output|proxy_buffer_size|proxy_buffering|proxy_buffers|proxy_busy_buffers_size|proxy_cache|proxy_cache_bypass|proxy_cache_key|proxy_cache_lock|proxy_cache_lock_timeout|proxy_cache_min_uses|proxy_cache_path|proxy_cache_use_stale|proxy_cache_valid|proxy_connect_timeout|proxy_cookie_domain|proxy_cookie_path|proxy_hide_header|proxy_http_version|proxy_ignore_client_abort|proxy_ignore_headers|proxy_intercept_errors|proxy_max_temp_file_size|proxy_next_upstream|proxy_no_cache|proxy_pass|proxy_pass_header|proxy_read_timeout|proxy_redirect|proxy_send_timeout|proxy_set_header|proxy_ssl_session_reuse|proxy_store|proxy_store_access|proxy_temp_file_write_size|proxy_temp_path|random_index|read_ahead|real_ip_header|recursive_error_pages|request_pool_size|reset_timedout_connection|resolver|resolver_timeout|return|rewrite|root|satisfy|satisfy_any|secure_link_secret|send_lowat|send_timeout|sendfile|sendfile_max_chunk|server|server|server_name|server_name_in_redirect|server_names_hash_bucket_size|server_names_hash_max_size|server_tokens|set|set_real_ip_from|source_charset|split_clients|ssi|ssi_silent_errors|ssi_types|ssl|ssl_certificate|ssl_certificate_key|ssl_ciphers|ssl_client_certificate|ssl_crl|ssl_dhparam|ssl_engine|ssl_prefer_server_ciphers|ssl_protocols|ssl_session_cache|ssl_session_timeout|ssl_verify_client|ssl_verify_depth|sub_filter|sub_filter_once|sub_filter_types|tcp_nodelay|tcp_nopush|timer_resolution|try_files|types|types_hash_bucket_size|types_hash_max_size|underscores_in_headers|uninitialized_variable_warn|upstream|user|userid|userid_domain|userid_expires|userid_name|userid_p3p|userid_path|userid_service|valid_referers|variables_hash_bucket_size|variables_hash_max_size|worker_priority|worker_processes|worker_rlimit_core|worker_rlimit_nofile|working_directory|xml_entities|xslt_stylesheet|xslt_types)([[:space:]]|$)" +color constant.bool "\<(on|off)\>" +color identifier "\$[A-Za-z][A-Za-z0-9_]*" +color symbol "[*]" +color constant-string ""(\\.|[^"])*"|'(\\.|[^'])*'" +color constant.string start="'$" end="';$" +color comment "(^|[[:space:]])#([^{].*)?$" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/nim.micro b/runtime/syntax/nim.micro index 3e90c5f5..80bcda94 100644 --- a/runtime/syntax/nim.micro +++ b/runtime/syntax/nim.micro @@ -4,7 +4,7 @@ color preproc "[\{\|]\b(atom|lit|sym|ident|call|lvalue|sideeffect|nosideeffect|p color statement "\b(addr|and|as|asm|atomic|bind|block|break|case|cast|concept|const|continue|converter|defer|discard|distinct|div|do|elif|else|end|enum|except|export|finally|for|from|func|generic|if|import|in|include|interface|is|isnot|iterator|let|macro|method|mixin|mod|nil|not|notin|object|of|or|out|proc|ptr|raise|ref|return|shl|shr|static|template|try|tuple|type|using|var|when|while|with|without|xor|yield)\b" color statement "\b(deprecated|noSideEffect|constructor|destructor|override|procvar|compileTime|noReturn|acyclic|final|shallow|pure|asmNoStackFrame|error|fatal|warning|hint|line|linearScanEnd|computedGoto|unroll|immediate|checks|boundsChecks|overflowChecks|nilChecks|assertations|warnings|hints|optimization|patterns|callconv|push|pop|global|pragma|experimental|bitsize|volatile|noDecl|header|incompleteStruct|compile|link|passC|passL|emit|importc|importcpp|importobjc|codegenDecl|injectStmt|intdefine|strdefine|varargs|exportc|extern|bycopy|byref|union|packed|unchecked|dynlib|cdecl|thread|gcsafe|threadvar|guard|locks|compileTime)\b" -color statement "[=\+\-\*/<>@\$~&%\|!\?\^\.:\\]+" +color symbol.operator "[=\+\-\*/<>@\$~&%\|!\?\^\.:\\]+" color special "\{\." "\.\}" "\[\." "\.\]" "\(\." "\.\)" ";" "," "`" diff --git a/runtime/syntax/objc.micro b/runtime/syntax/objc.micro index b97d660c..3d0402ce 100644 --- a/runtime/syntax/objc.micro +++ b/runtime/syntax/objc.micro @@ -21,7 +21,7 @@ color preproc "__[A-Z0-9_]*__" color special "^[[:space:]]*[#|@][[:space:]]*(import|include)[[:space:]]*[\"|<].*\/?[>|\"][[:space:]]*$" -color statement "[.:;,+*|=!\%\[\]]" "<" ">" "/" "-" "&" +color symbol.operator "[.:;,+*|=!\%\[\]]" "<" ">" "/" "-" "&" color constant.number "\b(-?)?[0-9]+\b" "\b\[0-9]+\.[0-9]+\b" "\b0x[0-9A-F]+\b" color constant "@\[(\\.|[^\]])*\]" "@\{(\\.|[^\}])*\}" "@\((\\.|[^\)])*\)" diff --git a/runtime/syntax/peg.micro b/runtime/syntax/peg.micro index 858d5f8a..034d739f 100644 --- a/runtime/syntax/peg.micro +++ b/runtime/syntax/peg.micro @@ -1,12 +1,12 @@ syntax "peg" "\.l?peg$" -color cyan "^[[:space:]]*[A-Za-z][A-Za-z0-9_]*[[:space:]]*<-" -color blue "\^[+-]?[0-9]+" -color red "[-+*?^/!&]|->|<-|=>" -color brightyellow "%[A-Za-z][A-Za-z0-9_]*" -color magenta "\[[^]]*\]" -color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" -color brightblack "(^|[[:space:]])\-\-.*$" -color brightwhite,cyan "TODO:?" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color identifier "^[[:space:]]*[A-Za-z][A-Za-z0-9_]*[[:space:]]*<-" +color constant.number "\^[+-]?[0-9]+" +color symbol.operator "[-+*?^/!&]|->|<-|=>" +color identifier.var "%[A-Za-z][A-Za-z0-9_]*" +color special "\[[^]]*\]" +color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'" +color comment "(^|[[:space:]])\-\-.*$" +color todo "TODO:?" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/perl.micro b/runtime/syntax/perl.micro index 9a4dd1f4..fe826367 100644 --- a/runtime/syntax/perl.micro +++ b/runtime/syntax/perl.micro @@ -3,11 +3,13 @@ syntax "perl" "\.p[lm]$" header "^#!.*/(env +)?perl( |$)" -color red "\<(accept|alarm|atan2|bin(d|mode)|c(aller|h(dir|mod|op|own|root)|lose(dir)?|onnect|os|rypt)|d(bm(close|open)|efined|elete|ie|o|ump)|e(ach|of|val|x(ec|ists|it|p))|f(cntl|ileno|lock|ork))\>" "\<(get(c|login|peername|pgrp|ppid|priority|pwnam|(host|net|proto|serv)byname|pwuid|grgid|(host|net)byaddr|protobynumber|servbyport)|([gs]et|end)(pw|gr|host|net|proto|serv)ent|getsock(name|opt)|gmtime|goto|grep|hex|index|int|ioctl|join)\>" "\<(keys|kill|last|length|link|listen|local(time)?|log|lstat|m|mkdir|msg(ctl|get|snd|rcv)|next|oct|open(dir)?|ord|pack|pipe|pop|printf?|push|q|qq|qx|rand|re(ad(dir|link)?|cv|do|name|quire|set|turn|verse|winddir)|rindex|rmdir|s|scalar|seek(dir)?)\>" "\<(se(lect|mctl|mget|mop|nd|tpgrp|tpriority|tsockopt)|shift|shm(ctl|get|read|write)|shutdown|sin|sleep|socket(pair)?|sort|spli(ce|t)|sprintf|sqrt|srand|stat|study|substr|symlink|sys(call|read|tem|write)|tell(dir)?|time|tr(y)?|truncate|umask)\>" "\<(un(def|link|pack|shift)|utime|values|vec|wait(pid)?|wantarray|warn|write)\>" -color magenta "\<(continue|else|elsif|do|for|foreach|if|unless|until|while|eq|ne|lt|gt|le|ge|cmp|x|my|sub|use|package|can|isa)\>" -cyan (i) start="[$@%]" end="( |[^0-9A-Z_]|-)" -color yellow "".*"|qq\|.*\|" -color white "[sm]/.*/" -color white start="(^use| = new)" end=";" -color green "#.*" -color yellow start="<< 'STOP'" end="STOP" +color type "\<(accept|alarm|atan2|bin(d|mode)|c(aller|h(dir|mod|op|own|root)|lose(dir)?|onnect|os|rypt)|d(bm(close|open)|efined|elete|ie|o|ump)|e(ach|of|val|x(ec|ists|it|p))|f(cntl|ileno|lock|ork))\>" "\<(get(c|login|peername|pgrp|ppid|priority|pwnam|(host|net|proto|serv)byname|pwuid|grgid|(host|net)byaddr|protobynumber|servbyport)|([gs]et|end)(pw|gr|host|net|proto|serv)ent|getsock(name|opt)|gmtime|goto|grep|hex|index|int|ioctl|join)\>" "\<(keys|kill|last|length|link|listen|local(time)?|log|lstat|m|mkdir|msg(ctl|get|snd|rcv)|next|oct|open(dir)?|ord|pack|pipe|pop|printf?|push|q|qq|qx|rand|re(ad(dir|link)?|cv|do|name|quire|set|turn|verse|winddir)|rindex|rmdir|s|scalar|seek(dir)?)\>" "\<(se(lect|mctl|mget|mop|nd|tpgrp|tpriority|tsockopt)|shift|shm(ctl|get|read|write)|shutdown|sin|sleep|socket(pair)?|sort|spli(ce|t)|sprintf|sqrt|srand|stat|study|substr|symlink|sys(call|read|tem|write)|tell(dir)?|time|tr(y)?|truncate|umask)\>" "\<(un(def|link|pack|shift)|utime|values|vec|wait(pid)?|wantarray|warn|write)\>" +color statement "\<(continue|else|elsif|do|for|foreach|if|unless|until|while|eq|ne|lt|gt|le|ge|cmp|x|my|sub|use|package|can|isa)\>" +#TODO: This regex needs to be fixed. +color identifier (i) start="[$@%]" end="( |[^0-9A-Z_]|-)" +#ENDTODO. +color constant.string "".*"|qq\|.*\|" +color default "[sm]/.*/" +color preproc start="(^use| = new)" end=";" +color comment "#.*" +color identifier.macro start="<< 'STOP'" end="STOP" diff --git a/runtime/syntax/perl6.micro b/runtime/syntax/perl6.micro index 285d36d1..a029b1c8 100644 --- a/runtime/syntax/perl6.micro +++ b/runtime/syntax/perl6.micro @@ -2,15 +2,17 @@ ## Hybrid perl5 / perl6 syntax highlighting ### Found in CPAN - http://cpansearch.perl.org/src/NIGE/Goo-0.09/lib/.gooskel/nanorc +#This file probably needs cleanup!! + syntax "perl6" "\.p6$" -color brightblue "\<(accept|alarm|atan2|bin(d|mode)|c(aller|h(dir|mod|op|own|root)|lose(dir)?|onnect|os|rypt)|d(bm(close|open)|efined|elete|ie|o|ump)|e(ach|of|val|x(ec|ists|it|p))|f(cntl|ileno|lock|ork)|get(c|login|peername|pgrp|ppid|priority|pwnam|(host|net|proto|serv)byname|pwuid|grgid|(host|net)byaddr|protobynumber|servbyport)|([gs]et|end)(pw|gr|host|net|proto|serv)ent|getsock(name|opt)|gmtime|goto|grep|hex|index|int|ioctl|join|keys|kill|last|length|link|listen|local(time)?|log|lstat|m|mkdir|msg(ctl|get|snd|rcv)|next|oct|open(dir)?|ord|pack|pipe|pop|printf?|push|q|qq|qx|rand|re(ad(dir|link)?|cv|do|name|quire|set|turn|verse|winddir)|rindex|rmdir|s|scalar|seek|seekdir|se(lect|mctl|mget|mop|nd|tpgrp|tpriority|tsockopt)|shift|shm(ctl|get|read|write)|shutdown|sin|sleep|socket(pair)?|sort|spli(ce|t)|sprintf|sqrt|srand|stat|study|substr|symlink|sys(call|read|tem|write)|tell(dir)?|time|tr|y|truncate|umask|un(def|link|pack|shift)|utime|values|vec|wait(pid)?|wantarray|warn|write)\>" -color brightblue "\<(continue|else|elsif|do|for|foreach|if|unless|until|while|eq|ne|lt|gt|le|ge|cmp|x|my|sub|use|package|can|isa)\>" +color type "\<(accept|alarm|atan2|bin(d|mode)|c(aller|h(dir|mod|op|own|root)|lose(dir)?|onnect|os|rypt)|d(bm(close|open)|efined|elete|ie|o|ump)|e(ach|of|val|x(ec|ists|it|p))|f(cntl|ileno|lock|ork)|get(c|login|peername|pgrp|ppid|priority|pwnam|(host|net|proto|serv)byname|pwuid|grgid|(host|net)byaddr|protobynumber|servbyport)|([gs]et|end)(pw|gr|host|net|proto|serv)ent|getsock(name|opt)|gmtime|goto|grep|hex|index|int|ioctl|join|keys|kill|last|length|link|listen|local(time)?|log|lstat|m|mkdir|msg(ctl|get|snd|rcv)|next|oct|open(dir)?|ord|pack|pipe|pop|printf?|push|q|qq|qx|rand|re(ad(dir|link)?|cv|do|name|quire|set|turn|verse|winddir)|rindex|rmdir|s|scalar|seek|seekdir|se(lect|mctl|mget|mop|nd|tpgrp|tpriority|tsockopt)|shift|shm(ctl|get|read|write)|shutdown|sin|sleep|socket(pair)?|sort|spli(ce|t)|sprintf|sqrt|srand|stat|study|substr|symlink|sys(call|read|tem|write)|tell(dir)?|time|tr|y|truncate|umask|un(def|link|pack|shift)|utime|values|vec|wait(pid)?|wantarray|warn|write)\>" +color statement "\<(continue|else|elsif|do|for|foreach|if|unless|until|while|eq|ne|lt|gt|le|ge|cmp|x|my|sub|use|package|can|isa)\>" # Perl 6 words -color brightcyan "\<(has|is|class|role|given|when|BUILD|multi|returns|method|submethod|slurp|say|sub)\>" -color brightmagenta start="[$@%]" end="( |\\W|-)" -color brightred "".*"|qq\|.*\|" -color white "[sm]/.*/" -color brightblue start="(^use| = new)" end=";" -color brightgreen "#.*" -color brightred start="<" +color identifier start="[$@%]" end="( |\\W|-)" +color constant.string "".*"|qq\|.*\|" +color default "[sm]/.*/" +color preproc start="(^use| = new)" end=";" +color comment "#.*" +color identifier.macro start="<" +color preproc "<\?(php|=)?" +color preproc "\?>" +#color preproc start="<\?(php|=)?" end="\?>" -color special "([a-zA-Z0-9_-]+)\(" +color identifier.class "([a-zA-Z0-9_-]+)\(" -color identifier "(var|class|goto|extends|function|echo|case|break|default|exit|switch|foreach|endforeach|while|const|static|extends|as|require|include|require_once|include_once|define|do|continue|declare|goto|print|in|trait|interface|[E|e]xception|array|int|string|bool|iterable|void)[\s|\)]" +color type "(var|class|goto|extends|function|echo|case|break|default|exit|switch|foreach|endforeach|while|const|static|extends|as|require|include|require_once|include_once|define|do|continue|declare|goto|print|in|trait|interface|[E|e]xception|array|int|string|bool|iterable|void)[\s|\)]" -color identifier "[a-zA-Z\\]+::" +color identifier.class "[a-zA-Z\\]+::" color identifier "new\s([a-zA-Z0-9\\]+)" color identifier "([A-Z][a-zA-Z0-9_]+)\s" @@ -13,16 +17,16 @@ color identifier "([A-Z0-9_]+)[;|\s|\)|,]" color statement "(implements|abstract|global|public|instanceof|private|protected|static|if|else|elseif|endif|namespace|use|as|new|throw|catch|try|return)[\s|;]" -color constant "(true|false|null|TRUE|FALSE|NULL)" +color constant.bool "(true|false|null|TRUE|FALSE|NULL)" color constant "[\s|=|>|\s|\(|/|+|-|\*|\[](\d+)" color identifier "(\$this|parent|self|\$this->)" -color statement "(=>|===|!==|==|!=|&&|\|\||::|=|->|\!)" +color symbol.operator "(=>|===|!==|==|!=|&&|\|\||::|=|->|\!)" -color default "(\$[a-zA-Z0-9\-_]+)" -color default "[\(|\)|/|+|-|\*|\[|,|;]" +color identifier.var "(\$[a-zA-Z0-9\-_]+)" +color symbol.operator "[\(|\)|/|+|-|\*|\[|,|;]" color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'" color constant.specialChar "\\[abfnrtv'\"\\]" diff --git a/runtime/syntax/pkg-config.micro b/runtime/syntax/pkg-config.micro index 14d9a0f4..0ca87f02 100644 --- a/runtime/syntax/pkg-config.micro +++ b/runtime/syntax/pkg-config.micro @@ -1,8 +1,8 @@ syntax "pc" "\.pc$" -color cyan "^(Name|Description|URL|Version|Conflicts|Cflags):" -color cyan "^(Requires|Libs)(\.private)?:" -color red "=" -color brightyellow "\$\{[A-Za-z_][A-Za-z0-9_]*\}" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color preproc "^(Name|Description|URL|Version|Conflicts|Cflags):" +color preproc "^(Requires|Libs)(\.private)?:" +color symbol.operator "=" +color identifier.var "\$\{[A-Za-z_][A-Za-z0-9_]*\}" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/po.micro b/runtime/syntax/po.micro index f35e49fe..220593c6 100644 --- a/runtime/syntax/po.micro +++ b/runtime/syntax/po.micro @@ -1,8 +1,8 @@ syntax "po" "\.pot?$" -color cyan "\<(msgid|msgstr)\>" -color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" -color magenta "\\.?" -color brightblack "(^|[[:space:]])#([^{].*)?$" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color preproc "\<(msgid|msgstr)\>" +color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'" +color special "\\.?" +color comment "(^|[[:space:]])#([^{].*)?$" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/pony.micro b/runtime/syntax/pony.micro index fc068368..9397f9ef 100644 --- a/runtime/syntax/pony.micro +++ b/runtime/syntax/pony.micro @@ -13,8 +13,8 @@ color statement "\b(while|do|repeat|until|for|in)\b" color statement "(\?|=>)" color statement "(\||\&|\,|\^)" -color statement "(\-|\+|\*|/|\!|%|<<|>>)" -color statement "(==|!=|<=|>=|<|>)" +color symbol.operator "(\-|\+|\*|/|\!|%|<<|>>)" +color symbol.operator "(==|!=|<=|>=|<|>)" color statement "\b(is|isnt|not|and|or|xor)\b" color type "\b(_*[A-Z][_a-zA-Z0-9\']*)\b" diff --git a/runtime/syntax/pov.micro b/runtime/syntax/pov.micro index 298b2012..9e773039 100644 --- a/runtime/syntax/pov.micro +++ b/runtime/syntax/pov.micro @@ -1,15 +1,15 @@ ## Here is an example for POV-Ray. ## syntax "pov" "\.(pov|POV|povray|POVRAY)$" -color brightcyan "^[[:space:]]*#[[:space:]]*(declare)" -color brightyellow "\<(sphere|cylinder|translate|matrix|rotate|scale)\>" -color brightyellow "\<(orthographic|location|up|right|direction|clipped_by)\>" -color brightyellow "\<(fog_type|fog_offset|fog_alt|rgb|distance|transform)\>" -color brightred "^\<(texture)\>" -color brightred "\<(light_source|background)\>" -color brightred "\<(fog|object|camera)\>" -color green "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|!|=|&|\|)" -color brightmagenta "\<(union|group|subgroup)\>" +color preproc "^[[:space:]]*#[[:space:]]*(declare)" +color statement "\b(sphere|cylinder|translate|matrix|rotate|scale)\b" +color statement "\b(orthographic|location|up|right|direction|clipped_by)\b" +color statement "\b(fog_type|fog_offset|fog_alt|rgb|distance|transform)\b" +color identifier "^\b(texture)\b" +color identifier "\b(light_source|background)\b" +color identifier "\b(fog|object|camera)\b" +color symbol.operator "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|!|=|&|\|)" +color special "\b(union|group|subgroup)\b" ## Comment highlighting -color brightblue "//.*" -color brightblue start="/\*" end="\*/" +color comment "//.*" +color comment start="/\*" end="\*/" diff --git a/runtime/syntax/privoxy-action.micro b/runtime/syntax/privoxy-action.micro index 9c0a1761..ec1c1630 100644 --- a/runtime/syntax/privoxy-action.micro +++ b/runtime/syntax/privoxy-action.micro @@ -1,11 +1,11 @@ syntax "privoxy-action" "\.action$" -color brightred "[{[:space:]]\-block([[:space:]{}]|$)" -color brightgreen "[{[:space:]]\+block([[:space:]{}]|$)" +color constant.bool.false "[{[:space:]]\-block([[:space:]{}]|$)" +color constant.bool.true "[{[:space:]]\+block([[:space:]{}]|$)" -color brightred "-(add-header|change-x-forwarded-for|client-header-filter|client-header-tagger|content-type-overwrite|crunch-client-header|crunch-if-none-match|crunch-incoming-cookies|crunch-outgoing-cookies|crunch-server-header|deanimate-gifs|downgrade-http-version|fast-redirects|filter|force-text-mode|forward-override|handle-as-empty-document|handle-as-image|hide-accept-language|hide-content-disposition|hide-from-header|hide-if-modified-since|hide-referrer|hide-user-agent|limit-connect|overwrite-last-modified|prevent-compression|redirect|server-header-filter|server-header-tagger|session-cookies-only|set-image-blocker)" -color brightgreen "\+(add-header|change-x-forwarded-for|client-header-filter|client-header-tagger|content-type-overwrite|crunch-client-header|crunch-if-none-match|crunch-incoming-cookies|crunch-outgoing-cookies|crunch-server-header|deanimate-gifs|downgrade-http-version|fast-redirects|filter|force-text-mode|forward-override|handle-as-empty-document|handle-as-image|hide-accept-language|hide-content-disposition|hide-from-header|hide-if-modified-since|hide-referrer|hide-user-agent|limit-connect|overwrite-last-modified|prevent-compression|redirect|server-header-filter|server-header-tagger|session-cookies-only|set-image-blocker)" -color magenta "\\.?" -color brightblack "(^|[[:space:]])#([^{].*)?$" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color constant.bool.false "-(add-header|change-x-forwarded-for|client-header-filter|client-header-tagger|content-type-overwrite|crunch-client-header|crunch-if-none-match|crunch-incoming-cookies|crunch-outgoing-cookies|crunch-server-header|deanimate-gifs|downgrade-http-version|fast-redirects|filter|force-text-mode|forward-override|handle-as-empty-document|handle-as-image|hide-accept-language|hide-content-disposition|hide-from-header|hide-if-modified-since|hide-referrer|hide-user-agent|limit-connect|overwrite-last-modified|prevent-compression|redirect|server-header-filter|server-header-tagger|session-cookies-only|set-image-blocker)" +color constant.bool.true "\+(add-header|change-x-forwarded-for|client-header-filter|client-header-tagger|content-type-overwrite|crunch-client-header|crunch-if-none-match|crunch-incoming-cookies|crunch-outgoing-cookies|crunch-server-header|deanimate-gifs|downgrade-http-version|fast-redirects|filter|force-text-mode|forward-override|handle-as-empty-document|handle-as-image|hide-accept-language|hide-content-disposition|hide-from-header|hide-if-modified-since|hide-referrer|hide-user-agent|limit-connect|overwrite-last-modified|prevent-compression|redirect|server-header-filter|server-header-tagger|session-cookies-only|set-image-blocker)" +color constant.specialChar "\\.?" +color comment "(^|[[:space:]])#([^{].*)?$" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/privoxy-config.micro b/runtime/syntax/privoxy-config.micro index 6528da1a..f8241202 100644 --- a/runtime/syntax/privoxy-config.micro +++ b/runtime/syntax/privoxy-config.micro @@ -1,6 +1,6 @@ syntax "privoxy-config" "privoxy/config$" -color cyan "(accept-intercepted-requests|actionsfile|admin-address|allow-cgi-request-crunching|buffer-limit|compression-level|confdir|connection-sharing|debug|default-server-timeout|deny-access|enable-compression|enable-edit-actions|enable-remote-http-toggle|enable-remote-toggle|enforce-blocks|filterfile|forward|forwarded-connect-retries|forward-socks4|forward-socks4a|forward-socks5|handle-as-empty-doc-returns-ok|hostname|keep-alive-timeout|listen-address|logdir|logfile|max-client-connections|permit-access|proxy-info-url|single-threaded|socket-timeout|split-large-forms|templdir|toggle|tolerate-pipelining|trustfile|trust-info-url|user-manual)[[:space:]]" -color brightblack "(^|[[:space:]])#([^{].*)?$" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color statement "(accept-intercepted-requests|actionsfile|admin-address|allow-cgi-request-crunching|buffer-limit|compression-level|confdir|connection-sharing|debug|default-server-timeout|deny-access|enable-compression|enable-edit-actions|enable-remote-http-toggle|enable-remote-toggle|enforce-blocks|filterfile|forward|forwarded-connect-retries|forward-socks4|forward-socks4a|forward-socks5|handle-as-empty-doc-returns-ok|hostname|keep-alive-timeout|listen-address|logdir|logfile|max-client-connections|permit-access|proxy-info-url|single-threaded|socket-timeout|split-large-forms|templdir|toggle|tolerate-pipelining|trustfile|trust-info-url|user-manual)[[:space:]]" +color comment "(^|[[:space:]])#([^{].*)?$" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/privoxy-filter.micro b/runtime/syntax/privoxy-filter.micro index 58cdd52e..cbd34366 100644 --- a/runtime/syntax/privoxy-filter.micro +++ b/runtime/syntax/privoxy-filter.micro @@ -1,8 +1,10 @@ syntax "privoxy-filter" "\.filter$" -color cyan "^(FILTER|CLIENT-HEADER-FILTER|CLIENT-HEADER-TAGGER|SERVER-HEADER-FILTER|SERVER-HEADER-TAGGER): [a-z-]+" -color brightblue "^(FILTER|CLIENT-HEADER-FILTER|CLIENT-HEADER-TAGGER|SERVER-HEADER-FILTER|SERVER-HEADER-TAGGER):" -color magenta "\\.?" -color brightblack "(^|[[:space:]])#([^{].*)?$" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color statement "^(FILTER|CLIENT-HEADER-FILTER|CLIENT-HEADER-TAGGER|SERVER-HEADER-FILTER|SERVER-HEADER-TAGGER): [a-z-]+" +color identifier "^(FILTER|CLIENT-HEADER-FILTER|CLIENT-HEADER-TAGGER|SERVER-HEADER-FILTER|SERVER-HEADER-TAGGER):" +##Not sure what this does? +#color default "^(FILTER|CLIENT-HEADER-FILTER|CLIENT-HEADER-TAGGER|SERVER-HEADER-FILTER|SERVER-HEADER-TAGGER):" +color constant.specialChar "\\.?" +color comment "(^|[[:space:]])#([^{].*)?$" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/puppet.micro b/runtime/syntax/puppet.micro index 022c1fc2..2c6bed69 100644 --- a/runtime/syntax/puppet.micro +++ b/runtime/syntax/puppet.micro @@ -4,35 +4,35 @@ syntax "puppet" "\.pp$" #This goes first, so the normal builtins will override in some classes ## Paramerers -color brightwhite "^[[:space:]]([a-z][a-z0-9_]+)" -color brightgreen "\$[a-z:][a-z0-9_:]+" +color default "^[[:space:]]([a-z][a-z0-9_]+)" +color identifier.var "\$[a-z:][a-z0-9_:]+" ## List of built in types, also catches defines -color yellow "\<(augeas|computer|cron|exec|file|filebucket|group|host|interface|k5login|macauthorization|mailalias|maillist|mcx|mount|nagios_command|nagios_contact|nagios_contactgroup|nagios_host|nagios_hostdependency|nagios_hostescalation|nagios_hostextinfo|nagios_hostgroup|nagios_service|nagios_servicedependency|nagios_serviceescalation|nagios_serviceextinfo|nagios_servicegroup|nagios_timeperiod|notify|package|resources|router|schedule|scheduled_task|selboolean|selmodule|service|ssh_authorized_key|sshkey|stage|tidy|user|vlan|yumrepo|zfs|zone|zpool|anchor)\>" -color yellow "\<(class|define|if|else|undef|inherits)\>" -color red "(=|-|~|>)" +color type "\b(augeas|computer|cron|exec|file|filebucket|group|host|interface|k5login|macauthorization|mailalias|maillist|mcx|mount|nagios_command|nagios_contact|nagios_contactgroup|nagios_host|nagios_hostdependency|nagios_hostescalation|nagios_hostextinfo|nagios_hostgroup|nagios_service|nagios_servicedependency|nagios_serviceescalation|nagios_serviceextinfo|nagios_servicegroup|nagios_timeperiod|notify|package|resources|router|schedule|scheduled_task|selboolean|selmodule|service|ssh_authorized_key|sshkey|stage|tidy|user|vlan|yumrepo|zfs|zone|zpool|anchor)\b" +color statement "\b(class|define|if|else|undef|inherits)\b" +color symbol "(=|-|~|>)" ## Constants -color brightblue "(\$|@|@@)?\<[A-Z]+[0-9A-Z_a-z]*" +color identifier.var "(\$|@|@@)?\<[A-Z]+[0-9A-Z_a-z]*" ## Ruby "symbols" -color magenta "([ ]|^):[0-9A-Z_]+\>" +color symbol "([ ]|^):[0-9A-Z_]+\>" ## Regular expressions -color brightmagenta "/([^/]|(\\/))*/[iomx]*" "%r\{([^}]|(\\}))*\}[iomx]*" +color constant "/([^/]|(\\/))*/[iomx]*" "%r\{([^}]|(\\}))*\}[iomx]*" ## Shell command expansion is in `backticks` or like %x{this}. These are ## "double-quotish" (to use a perlism). -color brightblue "`[^`]*`" "%x\{[^}]*\}" +color constant.string "`[^`]*`" "%x\{[^}]*\}" ## Strings, double-quoted -color green ""([^"]|(\\"))*"" "%[QW]?\{[^}]*\}" "%[QW]?\([^)]*\)" "%[QW]?<[^>]*>" "%[QW]?\[[^]]*\]" "%[QW]?\$[^$]*\$" "%[QW]?\^[^^]*\^" "%[QW]?![^!]*!" +color constant.string ""([^"]|(\\"))*"" "%[QW]?\{[^}]*\}" "%[QW]?\([^)]*\)" "%[QW]?<[^>]*>" "%[QW]?\[[^]]*\]" "%[QW]?\$[^$]*\$" "%[QW]?\^[^^]*\^" "%[QW]?![^!]*!" ## Expression substitution. These go inside double-quoted strings, ## "like ${this}". -color brightgreen "\$\{[^}]*\}" +color special "\$\{[^}]*\}" ## Strings, single-quoted -color green "'([^']|(\\'))*'" "%[qw]\{[^}]*\}" "%[qw]\([^)]*\)" "%[qw]<[^>]*>" "%[qw]\[[^]]*\]" "%[qw]\$[^$]*\$" "%[qw]\^[^^]*\^" "%[qw]![^!]*!" +color constant.string "'([^']|(\\'))*'" "%[qw]\{[^}]*\}" "%[qw]\([^)]*\)" "%[qw]<[^>]*>" "%[qw]\[[^]]*\]" "%[qw]\$[^$]*\$" "%[qw]\^[^^]*\^" "%[qw]![^!]*!" ## Comments -color cyan "#[^{].*$" "#$" -color brightcyan "##[^{].*$" "##$" +color comment "#[^{].*$" "#$" +color comment "##[^{].*$" "##$" ## Some common markers -color brightcyan "(XXX|TODO|FIXME|\?\?\?)" +color todo "(XXX|TODO|FIXME|\?\?\?)" ## Trailing spaces -color red "[[:space:]]+$" +color indent-char.whitespace "[[:space:]]+$" diff --git a/runtime/syntax/python2.micro b/runtime/syntax/python2.micro index 214d3b5f..ab494612 100644 --- a/runtime/syntax/python2.micro +++ b/runtime/syntax/python2.micro @@ -24,13 +24,13 @@ color identifier "def [a-zA-Z_0-9]+" color statement "\b(and|as|assert|break|class|continue|def|del|elif|else|except|finally|for|from|global|if|import|in|is|lambda|not|or|pass|print|raise|return|try|while|with|yield)\b" ## decorators -color brightgreen "@.*[(]" +color special "@.*[(]" ## operators -color statement "[.:;,+*|=!\%@]" "<" ">" "/" "-" "&" +color symbol.operator "[.:;,+*|=!\%@]" "<" ">" "/" "-" "&" ## parentheses -color statement "[(){}]" "\[" "\]" +color symbol.brackets "[(){}]" "\[" "\]" ## numbers color constant.number "\b[0-9]+\b" diff --git a/runtime/syntax/python3.micro b/runtime/syntax/python3.micro index eb07ad4f..f9eb9242 100644 --- a/runtime/syntax/python3.micro +++ b/runtime/syntax/python3.micro @@ -24,7 +24,7 @@ color identifier "def [a-zA-Z_0-9]+" color statement "\b(and|as|assert|break|class|continue|def|del|elif|else|except|finally|for|from|global|if|import|in|is|lambda|nonlocal|not|or|pass|raise|return|try|while|with|yield)\b" ## decorators -color brightgreen "@.*[(]" +color special "@.*[(]" ## operators color statement "[.:;,+*|=!\%@]" "<" ">" "/" "-" "&" diff --git a/runtime/syntax/rpmspec.micro b/runtime/syntax/rpmspec.micro index e05ad6ad..6693d194 100644 --- a/runtime/syntax/rpmspec.micro +++ b/runtime/syntax/rpmspec.micro @@ -1,27 +1,27 @@ syntax "rpmspec" "\.spec$" "\.rpmspec$" -color cyan "\<(Icon|ExclusiveOs|ExcludeOs):" -color cyan "\<(BuildArch|BuildArchitectures|ExclusiveArch|ExcludeArch):" -color cyan "\<(Conflicts|Obsoletes|Provides|Requires|Requires\(.*\)|Enhances|Suggests|BuildConflicts|BuildRequires|Recommends|PreReq|Supplements):" -color cyan "\<(Epoch|Serial|Nosource|Nopatch):" -color cyan "\<(AutoReq|AutoProv|AutoReqProv):" -color cyan "\<(Copyright|License|Summary|Summary\(.*\)|Distribution|Vendor|Packager|Group|Source[0-9]*|Patch[0-9]*|BuildRoot|Prefix):" -color cyan "\<(Name|Version|Release|Url|URL):" -color cyan start="^(Source|Patch)" end=":" -color cyan "(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)" -color cyan "(ifarch|ifnarch|ifos|ifnos)" -color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" -color brightyellow "%(if|else|endif|define|global|undefine)" -color brightyellow "%_?([A-Z_a-z_0-9_]*)" -color brightyellow start="%\{" end="\}" -color brightyellow start="%\{__" end="\}" -color brightyellow "\$(RPM_BUILD_ROOT)\>" -color brightmagenta "^%(build$|changelog|check$|clean$|description)" -color brightmagenta "^%(files|install$|package|prep$)" -color brightmagenta "^%(pre|preun|pretrans|post|postun|posttrans)" -color brightmagenta "^%(trigger|triggerin|triggerpostun|triggerun|verifyscript)" -color brightblack "(^|[[:space:]])#([^{].*)?$" -color blue "^\*.*$" -color ,green "[[:space:]]+$" -color ,red " + +| + +" -color brightwhite,cyan "TODO:?" +color preproc "\<(Icon|ExclusiveOs|ExcludeOs):" +color preproc "\<(BuildArch|BuildArchitectures|ExclusiveArch|ExcludeArch):" +color preproc "\<(Conflicts|Obsoletes|Provides|Requires|Requires\(.*\)|Enhances|Suggests|BuildConflicts|BuildRequires|Recommends|PreReq|Supplements):" +color preproc "\<(Epoch|Serial|Nosource|Nopatch):" +color preproc "\<(AutoReq|AutoProv|AutoReqProv):" +color preproc "\<(Copyright|License|Summary|Summary\(.*\)|Distribution|Vendor|Packager|Group|Source[0-9]*|Patch[0-9]*|BuildRoot|Prefix):" +color preproc "\<(Name|Version|Release|Url|URL):" +color preproc start="^(Source|Patch)" end=":" +color 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)" +color preproc "(ifarch|ifnarch|ifos|ifnos)" +color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'" +color statement "%(if|else|endif|define|global|undefine)" +color statement "%_?([A-Z_a-z_0-9_]*)" +color statement start="%\{" end="\}" +color statement start="%\{__" end="\}" +color statement "\$(RPM_BUILD_ROOT)\>" +color special "^%(build$|changelog|check$|clean$|description)" +color special "^%(files|install$|package|prep$)" +color special "^%(pre|preun|pretrans|post|postun|posttrans)" +color special "^%(trigger|triggerin|triggerpostun|triggerun|verifyscript)" +color comment "(^|[[:space:]])#([^{].*)?$" +color constant "^\*.*$" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" +color todo "TODO:?" diff --git a/runtime/syntax/ruby.micro b/runtime/syntax/ruby.micro index 53ab3d3b..42fb358a 100644 --- a/runtime/syntax/ruby.micro +++ b/runtime/syntax/ruby.micro @@ -9,7 +9,7 @@ color statement "\b(BEGIN|END|alias|and|begin|break|case|class|def|defined\?|do| color constant "(\$|@|@@)?\b[A-Z]+[0-9A-Z_a-z]*" color constant.number "\b[0-9]+\b" ## Ruby "symbols" -color constant (i) "([ ]|^):[0-9A-Z_]+\b" +color constant "(i?)([ ]|^):[0-9A-Z_]+\b" ## Some unique things we want to stand out color constant "\b(__FILE__|__LINE__)\b" ## Regular expressions @@ -28,7 +28,7 @@ color constant.string "'([^']|(\\'))*'" "%[qw]\{[^}]*\}" "%[qw]\([^)]*\)" "%[qw] color comment "#[^{].*$" "#$" color comment "##[^{].*$" "##$" ## "Here" docs -color constant start="<<-?'?EOT'?" end="^EOT" +color constant.macro start="<<-?'?EOT'?" end="^EOT" ## Some common markers color todo "(XXX|TODO|FIXME|\?\?\?)" diff --git a/runtime/syntax/rust.micro b/runtime/syntax/rust.micro index 560d4242..9e491105 100644 --- a/runtime/syntax/rust.micro +++ b/runtime/syntax/rust.micro @@ -5,13 +5,13 @@ syntax "rust" "\.rs" # function definition -color identifier "fn [a-z0-9_]+" +color identifier.class "fn [a-z0-9_]+" # Reserved words color statement "\b(abstract|alignof|as|become|box|break|const|continue|crate|do|else|enum|extern|false|final|fn|for|if|impl|in|let|loop|macro|match|mod|move|mut|offsetof|override|priv|pub|pure|ref|return|sizeof|static|self|struct|super|true|trait|type|typeof|unsafe|unsized|use|virtual|where|while|yield)\b" # macros -color special "[a-z_]+!" +color identifier.macro "[a-z_]+!" # Constants color constant "[A-Z][A-Z_]+" @@ -26,7 +26,7 @@ color type "[A-Z][a-z]+" color constant.string "\".*\"" color constant.string start="\".*\\$" end=".*\"" # NOTE: This isn't accurate but matching "#{0,} for the end of the string is too liberal -color green start="r#+\"" end="\"#+" +color special start="r#+\"" end="\"#+" # Comments color comment "//.*" diff --git a/runtime/syntax/scala.micro b/runtime/syntax/scala.micro index b5cf0eab..df9365d0 100644 --- a/runtime/syntax/scala.micro +++ b/runtime/syntax/scala.micro @@ -1,12 +1,12 @@ ## Here is an example for Scala. ## syntax "scala" "\.scala$" -color green "\<(boolean|byte|char|double|float|int|long|new|short|this|transient|void)\>" -color red "\<(match|val|var|break|case|catch|continue|default|do|else|finally|for|if|return|switch|throw|try|while)\>" -color cyan "\<(def|object|case|trait|lazy|implicit|abstract|class|extends|final|implements|import|instanceof|interface|native|package|private|protected|public|static|strictfp|super|synchronized|throws|volatile|sealed)\>" -color red ""[^"]*"" -color yellow "\<(true|false|null)\>" -color blue "//.*" -color blue start="/\*" end="\*/" -color brightblue start="/\*\*" end="\*/" -color ,green "[[:space:]]+$" +color type "\<(boolean|byte|char|double|float|int|long|new|short|this|transient|void)\>" +color statement "\<(match|val|var|break|case|catch|continue|default|do|else|finally|for|if|return|switch|throw|try|while)\>" +color statement "\<(def|object|case|trait|lazy|implicit|abstract|class|extends|final|implements|import|instanceof|interface|native|package|private|protected|public|static|strictfp|super|synchronized|throws|volatile|sealed)\>" +color constant.string ""[^"]*"" +color constant "\<(true|false|null)\>" +color comment "//.*" +color comment start="/\*" end="\*/" +color comment.bright start="/\*\*" end="\*/" +color indent-char.whitespace "[[:space:]]+$" diff --git a/runtime/syntax/sed.micro b/runtime/syntax/sed.micro index 84cbafc8..9afdbbdd 100644 --- a/runtime/syntax/sed.micro +++ b/runtime/syntax/sed.micro @@ -1,9 +1,9 @@ syntax "sed" "\.sed$" header "^#!.*bin/(env +)?sed( |$)" -color red "[|^$.*+]" -color brightyellow "\{[0-9]+,?[0-9]*\}" -color magenta "\\." -color brightblack "(^|[[:space:]])#([^{].*)?$" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color symbol.operator "[|^$.*+]" +color constant.number "\{[0-9]+,?[0-9]*\}" +color constant.specialChar "\\." +color comment "(^|[[:space:]])#([^{].*)?$" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/sh.micro b/runtime/syntax/sh.micro index b9d12545..ed4215e8 100644 --- a/runtime/syntax/sh.micro +++ b/runtime/syntax/sh.micro @@ -6,7 +6,7 @@ color constant.number "\b[0-9]+\b" # Conditionals and control flow color statement "\b(case|do|done|elif|else|esac|exit|fi|for|function|if|in|local|read|return|select|shift|then|time|until|while)\b" -color special "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|!|=|&|\|)" +color symbol.operator "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|!|=|&|\|)" # Shell commands color type "\b(cd|echo|export|let|set|umask|unset)\b" @@ -24,12 +24,12 @@ color statement "\ -[a-z]+" # Strings color constant.string ""(\\.|[^"])*"" color constant.string "'(\\.|[^'])*'" -color special """ -color special "'" +color constant.specialChar """ +color constant.specialChar "'" # Variables -color identifier (i) "\$\{?[0-9A-Z_!@#$*?-]+\}?" -color identifier (i) "\$\{?[0-9A-Z_!@#$*?-]+\}?" +color identifier.var "\$\{?[0-9A-Za-z_!@#$*?-]+\}?" +color identifier.var "\$\{?[0-9A-Za-z_!@#$*?-]+\}?" # Comments & TODOs color comment "(^|[[:space:]])#.*$" diff --git a/runtime/syntax/sls.micro b/runtime/syntax/sls.micro index c600865d..5c0e617e 100644 --- a/runtime/syntax/sls.micro +++ b/runtime/syntax/sls.micro @@ -4,23 +4,23 @@ syntax "salt" "\.sls$" # Anything ending in a colon (:), including things that start with a dash (-) -color blue "^[^ -].*:$" -color blue ".*:" +color identifier.var "^[^ -].*:$" +color identifier.var ".*:" # Except for salt:// URLs -color white "salt:" +color default "salt:" # Numbers, etc -color red "/*[0-9]/*" -color red "\<(True|False)\>" +color constant.number "/*[0-9]/*" +color constant "\<(True|False)\>" # Anything between two single quotes -color green ""(\\.|[^"])*"|'(\\.|[^'])*'" +color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'" # Matching keywords -color yellow "\<(grain|grains|compound|pcre|grain_pcre|list|pillar)\>" +color special "\<(grain|grains|compound|pcre|grain_pcre|list|pillar)\>" # Comments -color brightblack "^#.*" +color comment "^#.*" # Logic keywords -color magenta "\<(if|elif|else|or|not|and|endif|end)\>" +color statement "\<(if|elif|else|or|not|and|endif|end)\>" diff --git a/runtime/syntax/solidity.micro b/runtime/syntax/solidity.micro index 2affa062..0725be06 100644 --- a/runtime/syntax/solidity.micro +++ b/runtime/syntax/solidity.micro @@ -22,18 +22,18 @@ color identifier "[a-zA-Z][_a-zA-Z0-9]*[[:space:]]*" color statement "\b(assembly|break|continue|do|for|function|if|else|new|return|returns|while)\b" color special "\b(\.send|throw)\b" # make sure they are very visible -color keyword "\b(anonymous|constant|indexed|payable|public|private|external|internal)\b" +color type.keyword "\b(anonymous|constant|indexed|payable|public|private|external|internal)\b" color constant "\b(block(\.(blockhash|coinbase|difficulty|gaslimit|number|timestamp))?|msg(\.(data|gas|sender|value))?|now|tx(\.(gasprice|origin))?)\b" color constant "\b(keccak256|sha3|sha256|ripemd160|ecrecover|addmod|mulmod|this|super|selfdestruct|\.balance)\b" -color constant "\b(true|false)\b" +color constant.bool "\b(true|false)\b" color constant "\b(wei|szabo|finney|ether|seconds|minutes|hours|days|weeks|years)\b" color type "\b(address|bool|mapping|string|var|int(\d*)|uint(\d*)|byte(\d*)|fixed(\d*)|ufixed(\d*))\b" color error "\b(abstract|after|case|catch|default|final|in|inline|interface|let|match|null|of|pure|relocatable|static|switch|try|type|typeof|view)\b" -color operator "[-+/*=<>!~%?:&|]" +color symbol.operator "[-+/*=<>!~%?:&|]" color comment "(^|[[:space:]])//.*" color comment "/\*.+\*/" diff --git a/runtime/syntax/sql.micro b/runtime/syntax/sql.micro index 7f12fe66..5880c56f 100644 --- a/runtime/syntax/sql.micro +++ b/runtime/syntax/sql.micro @@ -1,34 +1,34 @@ syntax "sql" "\.sql$" "sqliterc$" -cyan (i) "\<(ALL|ASC|AS|ALTER|AND|ADD|AUTO_INCREMENT)\>" -cyan (i) "\<(BETWEEN|BINARY|BOTH|BY|BOOLEAN)\>" -cyan (i) "\<(CHANGE|CHECK|COLUMNS|COLUMN|CROSS|CREATE)\>" -cyan (i) "\<(DATABASES|DATABASE|DATA|DELAYED|DESCRIBE|DESC|DISTINCT|DELETE|DROP|DEFAULT)\>" -cyan (i) "\<(ENCLOSED|ESCAPED|EXISTS|EXPLAIN)\>" -cyan (i) "\<(FIELDS|FIELD|FLUSH|FOR|FOREIGN|FUNCTION|FROM)\>" -cyan (i) "\<(GROUP|GRANT|HAVING)\>" -cyan (i) "\<(IGNORE|INDEX|INFILE|INSERT|INNER|INTO|IDENTIFIED|IN|IS|IF)\>" -cyan (i) "\<(JOIN|KEYS|KILL|KEY)\>" -cyan (i) "\<(LEADING|LIKE|LIMIT|LINES|LOAD|LOCAL|LOCK|LOW_PRIORITY|LEFT|LANGUAGE)\>" -cyan (i) "\<(MODIFY|NATURAL|NOT|NULL|NEXTVAL)\>" -cyan (i) "\<(OPTIMIZE|OPTION|OPTIONALLY|ORDER|OUTFILE|OR|OUTER|ON)\>" -cyan (i) "\<(PROCEDURE|PROCEDURAL|PRIMARY)\>" -cyan (i) "\<(READ|REFERENCES|REGEXP|RENAME|REPLACE|RETURN|REVOKE|RLIKE|RIGHT)\>" -cyan (i) "\<(SHOW|SONAME|STATUS|STRAIGHT_JOIN|SELECT|SETVAL|SET)\>" -cyan (i) "\<(TABLES|TERMINATED|TO|TRAILING|TRUNCATE|TABLE|TEMPORARY|TRIGGER|TRUSTED)\>" -cyan (i) "\<(UNIQUE|UNLOCK|USE|USING|UPDATE|VALUES|VARIABLES|VIEW)\>" -cyan (i) "\<(WITH|WRITE|WHERE|ZEROFILL|TYPE|XOR)\>" -color green "\<(VARCHAR|TINYINT|TEXT|DATE|SMALLINT|MEDIUMINT|INT|INTEGER|BIGINT|FLOAT|DOUBLE|DECIMAL|DATETIME|TIMESTAMP|TIME|YEAR|UNSIGNED|CHAR|TINYBLOB|TINYTEXT|BLOB|MEDIUMBLOB|MEDIUMTEXT|LONGBLOB|LONGTEXT|ENUM|BOOL|BINARY|VARBINARY)\>" +color statement (i) "\b(ALL|ASC|AS|ALTER|AND|ADD|AUTO_INCREMENT)\b" +color statement (i) "\b(BETWEEN|BINARY|BOTH|BY|BOOLEAN)\b" +color statement (i) "\b(CHANGE|CHECK|COLUMNS|COLUMN|CROSS|CREATE)\b" +color statement (i) "\b(DATABASES|DATABASE|DATA|DELAYED|DESCRIBE|DESC|DISTINCT|DELETE|DROP|DEFAULT)\b" +color statement (i) "\b(ENCLOSED|ESCAPED|EXISTS|EXPLAIN)\b" +color statement (i) "\b(FIELDS|FIELD|FLUSH|FOR|FOREIGN|FUNCTION|FROM)\b" +color statement (i) "\b(GROUP|GRANT|HAVING)\b" +color statement (i) "\b(IGNORE|INDEX|INFILE|INSERT|INNER|INTO|IDENTIFIED|IN|IS|IF)\b" +color statement (i) "\b(JOIN|KEYS|KILL|KEY)\b" +color statement (i) "\b(LEADING|LIKE|LIMIT|LINES|LOAD|LOCAL|LOCK|LOW_PRIORITY|LEFT|LANGUAGE)\b" +color statement (i) "\b(MODIFY|NATURAL|NOT|NULL|NEXTVAL)\b" +color statement (i) "\b(OPTIMIZE|OPTION|OPTIONALLY|ORDER|OUTFILE|OR|OUTER|ON)\b" +color statement (i) "\b(PROCEDURE|PROCEDURAL|PRIMARY)\b" +color statement (i) "\b(READ|REFERENCES|REGEXP|RENAME|REPLACE|RETURN|REVOKE|RLIKE|RIGHT)\b" +color statement (i) "\b(SHOW|SONAME|STATUS|STRAIGHT_JOIN|SELECT|SETVAL|SET)\b" +color statement (i) "\b(TABLES|TERMINATED|TO|TRAILING|TRUNCATE|TABLE|TEMPORARY|TRIGGER|TRUSTED)\b" +color statement (i) "\b(UNIQUE|UNLOCK|USE|USING|UPDATE|VALUES|VARIABLES|VIEW)\b" +color statement (i) "\b(WITH|WRITE|WHERE|ZEROFILL|TYPE|XOR)\b" +color type "\b(VARCHAR|TINYINT|TEXT|DATE|SMALLINT|MEDIUMINT|INT|INTEGER|BIGINT|FLOAT|DOUBLE|DECIMAL|DATETIME|TIMESTAMP|TIME|YEAR|UNSIGNED|CHAR|TINYBLOB|TINYTEXT|BLOB|MEDIUMBLOB|MEDIUMTEXT|LONGBLOB|LONGTEXT|ENUM|BOOL|BINARY|VARBINARY)\b" # SQLite meta commands -cyan (i) "\.\<(databases|dump|echo|exit|explain|header(s)?|help)\>" -cyan (i) "\.\<(import|indices|mode|nullvalue|output|prompt|quit|read)\>" -cyan (i) "\.\<(schema|separator|show|tables|timeout|width)\>" -color brightcyan "\<(ON|OFF)\>" +color preproc (i) "\.\b(databases|dump|echo|exit|explain|header(s)?|help)\b" +color preproc (i) "\.\b(import|indices|mode|nullvalue|output|prompt|quit|read)\b" +color preproc (i) "\.\b(schema|separator|show|tables|timeout|width)\b" +color constant.bool "\b(ON|OFF)\b" -color blue "\<([0-9]+)\>" -color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" -color yellow "`(\\.|[^\\`])*`" -color brightblack "\-\-.*$" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color constant.number "\b([0-9]+)\b" +color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'" +color constant.string "`(\\.|[^\\`])*`" +color comment "\-\-.*$" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/swift.micro b/runtime/syntax/swift.micro index bf6f6a05..aabf24a7 100644 --- a/runtime/syntax/swift.micro +++ b/runtime/syntax/swift.micro @@ -1,11 +1,11 @@ ############################################################################## -# Swift syntax highlighting for Nano. +# Swift syntax highlighting for Micro. ############################################################################## syntax "swift" "\.swift$" # Operators -color statement "[.:;,+*|=!?\%]" "<" ">" "/" "-" "&" +color symbol.operator "[.:;,+*|=!?\%]" "<" ">" "/" "-" "&" # Statements color statement "(class|import|let|var|struct|enum|func|if|else|switch|case|default|for|in|internal|external|unowned|private|public|throws)\ " @@ -20,7 +20,7 @@ color constant.number "([0-9]+)" # Standard Types color type "\ ((U)?Int(8|16|32|64))" -color constant "(true|false|nil)" +color constant.bool "(true|false|nil)" color type "\ (Double|String|Float|Boolean|Dictionary|Array|Int)" color type "\ (AnyObject)" diff --git a/runtime/syntax/systemd.micro b/runtime/syntax/systemd.micro index 1a3ea916..e02c8799 100644 --- a/runtime/syntax/systemd.micro +++ b/runtime/syntax/systemd.micro @@ -1,12 +1,12 @@ syntax "systemd" "\.(service|socket)$" header "^\[Unit\]$" -color cyan "^(Accept|After|Alias|AllowIsolate|Also|ANSI_COLOR|_AUDIT_LOGINUID|_AUDIT_SESSION|Backlog|Before|BindIPv6Only|BindsTo|BindToDevice|BlockIOReadBandwidth|BlockIOWeight|BlockIOWriteBandwidth|_BOOT_ID|Broadcast|BUG_REPORT_URL|BusName|Capabilities|CapabilityBoundingSet|CHASSIS|cipher|class|_CMDLINE|CODE_FILE|CODE_FUNC|CODE_LINE|_COMM|Compress|ConditionACPower|ConditionCapability|ConditionDirectoryNotEmpty|ConditionFileIsExecutable|ConditionFileNotEmpty|ConditionHost|ConditionKernelCommandLine|ConditionNull|ConditionPathExists|ConditionPathExistsGlob|ConditionPathIsDirectory|ConditionPathIsMountPoint|ConditionPathIsReadWrite|ConditionPathIsSymbolicLink|ConditionSecurity|ConditionVirtualization|Conflicts|ControlGroup|ControlGroupAttribute|ControlGroupModify|ControlGroupPersistent|controllers|Controllers|CPE_NAME|CPUAffinity|CPUSchedulingPolicy|CPUSchedulingPriority|CPUSchedulingResetOnFork|CPUShares|CrashChVT|CrashShell|__CURSOR|debug|DefaultControllers|DefaultDependencies|DefaultLimitAS|DefaultLimitCORE|DefaultLimitCPU|DefaultLimitDATA|DefaultLimitFSIZE|DefaultLimitLOCKS|DefaultLimitMEMLOCK|DefaultLimitMSGQUEUE|DefaultLimitNICE|DefaultLimitNOFILE|DefaultLimitNPROC|DefaultLimitRSS|DefaultLimitRTPRIO|DefaultLimitRTTIME|DefaultLimitSIGPENDING|DefaultLimitSTACK|DefaultStandardError|DefaultStandardOutput|Description|DeviceAllow|DeviceDeny|DirectoryMode|DirectoryNotEmpty|Documentation|DumpCore|entropy|Environment|EnvironmentFile|ERRNO|event_timeout|_EXE|ExecReload|ExecStart|ExecStartPost|ExecStartPre|ExecStop|ExecStopPost|ExecStopPre|filter|FONT|FONT_MAP|FONT_UNIMAP|ForwardToConsole|ForwardToKMsg|ForwardToSyslog|FreeBind|freq|FsckPassNo|fstab|_GID|Group|GuessMainPID|HandleHibernateKey|HandleLidSwitch|HandlePowerKey|HandleSuspendKey|hash|HibernateKeyIgnoreInhibited|HOME_URL|_HOSTNAME|ICON_NAME|ID|IdleAction|IdleActionSec|ID_LIKE|ID_MODEL|ID_MODEL_FROM_DATABASE|IgnoreOnIsolate|IgnoreOnSnapshot|IgnoreSIGPIPE|InaccessibleDirectories|InhibitDelayMaxSec|init|IOSchedulingClass|IOSchedulingPriority|IPTOS|IPTTL|JobTimeoutSec|JoinControllers|KeepAlive|KEYMAP|KEYMAP_TOGGLE|KillExcludeUsers|KillMode|KillOnlyUsers|KillSignal|KillUserProcesses|LidSwitchIgnoreInhibited|LimitAS|LimitCORE|LimitCPU|LimitDATA|LimitFSIZE|LimitLOCKS|LimitMEMLOCK|LimitMSGQUEUE|LimitNICE|LimitNOFILE|LimitNPROC|LimitRSS|LimitRTPRIO|LimitRTTIME|LimitSIGPENDING|LimitSTACK|link_priority|valueListenDatagram|ListenFIFO|ListenMessageQueue|ListenNetlink|ListenSequentialPacket|ListenSpecial|ListenStream|LogColor|LogLevel|LogLocation|LogTarget|luks|_MACHINE_ID|MakeDirectory|Mark|MaxConnections|MaxFileSec|MaxLevelConsole|MaxLevelKMsg|MaxLevelStore|MaxLevelSyslog|MaxRetentionSec|MemoryLimit|MemorySoftLimit|MESSAGE|MESSAGE_ID|MessageQueueMaxMessages|MessageQueueMessageSize|__MONOTONIC_TIMESTAMP|MountFlags|NAME|NAutoVTs|Nice|NonBlocking|NoNewPrivileges|NotifyAccess|OnActiveSec|OnBootSec|OnCalendar|OnFailure|OnFailureIsolate|OnStartupSec|OnUnitActiveSec|OnUnitInactiveSec|OOMScoreAdjust|Options|output|PAMName|PartOf|PassCredentials|PassSecurity|PathChanged|PathExists|PathExistsGlob|PathModified|PermissionsStartOnly|_PID|PIDFile|PipeSize|PowerKeyIgnoreInhibited|PRETTY_HOSTNAME|PRETTY_NAME|Priority|PRIORITY|PrivateNetwork|PrivateTmp|PropagatesReloadTo|pss|RateLimitBurst|RateLimitInterval|ReadOnlyDirectories|ReadWriteDirectories|__REALTIME_TIMESTAMP|ReceiveBuffer|RefuseManualStart|RefuseManualStop|rel|ReloadPropagatedFrom|RemainAfterExit|RequiredBy|Requires|RequiresMountsFor|RequiresOverridable|Requisite|RequisiteOverridable|ReserveVT|ResetControllers|Restart|RestartPreventExitStatus|RestartSec|RootDirectory|RootDirectoryStartOnly|RuntimeKeepFree|RuntimeMaxFileSize|RuntimeMaxUse|RuntimeWatchdogSec|samples|scale_x|scale_y|Seal|SecureBits|_SELINUX_CONTEXT|SendBuffer|SendSIGKILL|Service|ShowStatus|ShutdownWatchdogSec|size|SmackLabel|SmackLabelIPIn|SmackLabelIPOut|SocketMode|Sockets|SourcePath|_SOURCE_REALTIME_TIMESTAMP|SplitMode|StandardError|StandardInput|StandardOutput|StartLimitAction|StartLimitBurst|StartLimitInterval|static_node|StopWhenUnneeded|Storage|string_escape|none|replaceSuccessExitStatus|SupplementaryGroups|SUPPORT_URL|SuspendKeyIgnoreInhibited|SyslogFacility|SYSLOG_FACILITY|SyslogIdentifier|SYSLOG_IDENTIFIER|SyslogLevel|SyslogLevelPrefix|SYSLOG_PID|SystemCallFilter|SYSTEMD_ALIAS|_SYSTEMD_CGROUP|_SYSTEMD_OWNER_UID|SYSTEMD_READY|_SYSTEMD_SESSION|_SYSTEMD_UNIT|_SYSTEMD_USER_UNIT|SYSTEMD_WANTS|SystemKeepFree|SystemMaxFileSize|SystemMaxUse|SysVStartPriority|TCPCongestion|TCPWrapName|timeout|TimeoutSec|TimeoutStartSec|TimeoutStopSec|TimerSlackNSec|Transparent|_TRANSPORT|tries|TTYPath|TTYReset|TTYVHangup|TTYVTDisallocate|Type|_UID|UMask|Unit|User|UtmpIdentifier|VERSION|VERSION_ID|WantedBy|Wants|WatchdogSec|What|Where|WorkingDirectory)=" -color brightblue "^\.include\>" -color red "=" -color brightmagenta "^\[(Unit|Install|Service|Socket)\]" -color brightyellow "\$MAINPID" -color brightcyan "\<(true|false)\>" -color brightblack "(^|[[:space:]])#([^{].*)?$" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color statement "^(Accept|After|Alias|AllowIsolate|Also|ANSI_COLOR|_AUDIT_LOGINUID|_AUDIT_SESSION|Backlog|Before|BindIPv6Only|BindsTo|BindToDevice|BlockIOReadBandwidth|BlockIOWeight|BlockIOWriteBandwidth|_BOOT_ID|Broadcast|BUG_REPORT_URL|BusName|Capabilities|CapabilityBoundingSet|CHASSIS|cipher|class|_CMDLINE|CODE_FILE|CODE_FUNC|CODE_LINE|_COMM|Compress|ConditionACPower|ConditionCapability|ConditionDirectoryNotEmpty|ConditionFileIsExecutable|ConditionFileNotEmpty|ConditionHost|ConditionKernelCommandLine|ConditionNull|ConditionPathExists|ConditionPathExistsGlob|ConditionPathIsDirectory|ConditionPathIsMountPoint|ConditionPathIsReadWrite|ConditionPathIsSymbolicLink|ConditionSecurity|ConditionVirtualization|Conflicts|ControlGroup|ControlGroupAttribute|ControlGroupModify|ControlGroupPersistent|controllers|Controllers|CPE_NAME|CPUAffinity|CPUSchedulingPolicy|CPUSchedulingPriority|CPUSchedulingResetOnFork|CPUShares|CrashChVT|CrashShell|__CURSOR|debug|DefaultControllers|DefaultDependencies|DefaultLimitAS|DefaultLimitCORE|DefaultLimitCPU|DefaultLimitDATA|DefaultLimitFSIZE|DefaultLimitLOCKS|DefaultLimitMEMLOCK|DefaultLimitMSGQUEUE|DefaultLimitNICE|DefaultLimitNOFILE|DefaultLimitNPROC|DefaultLimitRSS|DefaultLimitRTPRIO|DefaultLimitRTTIME|DefaultLimitSIGPENDING|DefaultLimitSTACK|DefaultStandardError|DefaultStandardOutput|Description|DeviceAllow|DeviceDeny|DirectoryMode|DirectoryNotEmpty|Documentation|DumpCore|entropy|Environment|EnvironmentFile|ERRNO|event_timeout|_EXE|ExecReload|ExecStart|ExecStartPost|ExecStartPre|ExecStop|ExecStopPost|ExecStopPre|filter|FONT|FONT_MAP|FONT_UNIMAP|ForwardToConsole|ForwardToKMsg|ForwardToSyslog|FreeBind|freq|FsckPassNo|fstab|_GID|Group|GuessMainPID|HandleHibernateKey|HandleLidSwitch|HandlePowerKey|HandleSuspendKey|hash|HibernateKeyIgnoreInhibited|HOME_URL|_HOSTNAME|ICON_NAME|ID|IdleAction|IdleActionSec|ID_LIKE|ID_MODEL|ID_MODEL_FROM_DATABASE|IgnoreOnIsolate|IgnoreOnSnapshot|IgnoreSIGPIPE|InaccessibleDirectories|InhibitDelayMaxSec|init|IOSchedulingClass|IOSchedulingPriority|IPTOS|IPTTL|JobTimeoutSec|JoinControllers|KeepAlive|KEYMAP|KEYMAP_TOGGLE|KillExcludeUsers|KillMode|KillOnlyUsers|KillSignal|KillUserProcesses|LidSwitchIgnoreInhibited|LimitAS|LimitCORE|LimitCPU|LimitDATA|LimitFSIZE|LimitLOCKS|LimitMEMLOCK|LimitMSGQUEUE|LimitNICE|LimitNOFILE|LimitNPROC|LimitRSS|LimitRTPRIO|LimitRTTIME|LimitSIGPENDING|LimitSTACK|link_priority|valueListenDatagram|ListenFIFO|ListenMessageQueue|ListenNetlink|ListenSequentialPacket|ListenSpecial|ListenStream|LogColor|LogLevel|LogLocation|LogTarget|luks|_MACHINE_ID|MakeDirectory|Mark|MaxConnections|MaxFileSec|MaxLevelConsole|MaxLevelKMsg|MaxLevelStore|MaxLevelSyslog|MaxRetentionSec|MemoryLimit|MemorySoftLimit|MESSAGE|MESSAGE_ID|MessageQueueMaxMessages|MessageQueueMessageSize|__MONOTONIC_TIMESTAMP|MountFlags|NAME|NAutoVTs|Nice|NonBlocking|NoNewPrivileges|NotifyAccess|OnActiveSec|OnBootSec|OnCalendar|OnFailure|OnFailureIsolate|OnStartupSec|OnUnitActiveSec|OnUnitInactiveSec|OOMScoreAdjust|Options|output|PAMName|PartOf|PassCredentials|PassSecurity|PathChanged|PathExists|PathExistsGlob|PathModified|PermissionsStartOnly|_PID|PIDFile|PipeSize|PowerKeyIgnoreInhibited|PRETTY_HOSTNAME|PRETTY_NAME|Priority|PRIORITY|PrivateNetwork|PrivateTmp|PropagatesReloadTo|pss|RateLimitBurst|RateLimitInterval|ReadOnlyDirectories|ReadWriteDirectories|__REALTIME_TIMESTAMP|ReceiveBuffer|RefuseManualStart|RefuseManualStop|rel|ReloadPropagatedFrom|RemainAfterExit|RequiredBy|Requires|RequiresMountsFor|RequiresOverridable|Requisite|RequisiteOverridable|ReserveVT|ResetControllers|Restart|RestartPreventExitStatus|RestartSec|RootDirectory|RootDirectoryStartOnly|RuntimeKeepFree|RuntimeMaxFileSize|RuntimeMaxUse|RuntimeWatchdogSec|samples|scale_x|scale_y|Seal|SecureBits|_SELINUX_CONTEXT|SendBuffer|SendSIGKILL|Service|ShowStatus|ShutdownWatchdogSec|size|SmackLabel|SmackLabelIPIn|SmackLabelIPOut|SocketMode|Sockets|SourcePath|_SOURCE_REALTIME_TIMESTAMP|SplitMode|StandardError|StandardInput|StandardOutput|StartLimitAction|StartLimitBurst|StartLimitInterval|static_node|StopWhenUnneeded|Storage|string_escape|none|replaceSuccessExitStatus|SupplementaryGroups|SUPPORT_URL|SuspendKeyIgnoreInhibited|SyslogFacility|SYSLOG_FACILITY|SyslogIdentifier|SYSLOG_IDENTIFIER|SyslogLevel|SyslogLevelPrefix|SYSLOG_PID|SystemCallFilter|SYSTEMD_ALIAS|_SYSTEMD_CGROUP|_SYSTEMD_OWNER_UID|SYSTEMD_READY|_SYSTEMD_SESSION|_SYSTEMD_UNIT|_SYSTEMD_USER_UNIT|SYSTEMD_WANTS|SystemKeepFree|SystemMaxFileSize|SystemMaxUse|SysVStartPriority|TCPCongestion|TCPWrapName|timeout|TimeoutSec|TimeoutStartSec|TimeoutStopSec|TimerSlackNSec|Transparent|_TRANSPORT|tries|TTYPath|TTYReset|TTYVHangup|TTYVTDisallocate|Type|_UID|UMask|Unit|User|UtmpIdentifier|VERSION|VERSION_ID|WantedBy|Wants|WatchdogSec|What|Where|WorkingDirectory)=" +color preproc "^\.include\>" +color symbol "=" +color special "^\[(Unit|Install|Service|Socket)\]" +color identifier.class "\$MAINPID" +color constant.bool "\<(true|false)\>" +color comment "(^|[[:space:]])#([^{].*)?$" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/tcl.micro b/runtime/syntax/tcl.micro index f92eb3dd..2cc4ff3e 100644 --- a/runtime/syntax/tcl.micro +++ b/runtime/syntax/tcl.micro @@ -2,23 +2,23 @@ syntax "tcl" "\.tcl$" header "^#!.*/(env +)?tclsh( |$)" ## Standard Tcl [info commands] -color cyan "\<(after|append|array|auto_execok|auto_import|auto_load|auto_load_index|auto_qualify|binary|break|case|catch|cd|clock|close|concat|continue|else|encoding|eof|error|eval|exec|exit|expr|fblocked|fconfigure|fcopy|file|fileevent|flush|for|foreach|format|gets|glob|global|history|if|incr|info|interp|join|lappend|lindex|linsert|list|llength|load|lrange|lreplace|lsearch|lset|lsort|namespace|open|package|pid|puts|pwd|read|regexp|regsub|rename|return|scan|seek|set|socket|source|split|string|subst|switch|tclLog|tell|time|trace|unknown|unset|update|uplevel|upvar|variable|vwait|while)\>" +color statement "\<(after|append|array|auto_execok|auto_import|auto_load|auto_load_index|auto_qualify|binary|break|case|catch|cd|clock|close|concat|continue|else|encoding|eof|error|eval|exec|exit|expr|fblocked|fconfigure|fcopy|file|fileevent|flush|for|foreach|format|gets|glob|global|history|if|incr|info|interp|join|lappend|lindex|linsert|list|llength|load|lrange|lreplace|lsearch|lset|lsort|namespace|open|package|pid|puts|pwd|read|regexp|regsub|rename|return|scan|seek|set|socket|source|split|string|subst|switch|tclLog|tell|time|trace|unknown|unset|update|uplevel|upvar|variable|vwait|while)\>" ## Basic Tcl sub commands -color cyan "\<(array anymore|array donesearch|array exists|array get|array names|array nextelement|array set|array size|array startsearch|array statistics|array unset)\>" -color cyan "\<(string bytelength|string compare|string equal|string first|string index|string is|string last|string length|string map|string match|string range|string repeat|string replace|string to|string tolower|string totitle|string toupper|string trim|string trimleft|string trimright|string will|string wordend|string wordstart)\>" +color statement "\b(array anymore|array donesearch|array exists|array get|array names|array nextelement|array set|array size|array startsearch|array statistics|array unset)\b" +color statement "\b(string bytelength|string compare|string equal|string first|string index|string is|string last|string length|string map|string match|string range|string repeat|string replace|string to|string tolower|string totitle|string toupper|string trim|string trimleft|string trimright|string will|string wordend|string wordstart)\b" ## Extended TclX [info commands] -color cyan "\<(alarm|auto_load_pkg|bsearch|catclose|catgets|catopen|ccollate|cconcat|cequal|chgrp|chmod|chown|chroot|cindex|clength|cmdtrace|commandloop|crange|csubstr|ctoken|ctype|dup|echo|execl|fcntl|flock|fork|fstat|ftruncate|funlock|host_info|id|infox|keyldel|keylget|keylkeys|keylset|kill|lassign|lcontain|lempty|lgets|link|lmatch|loadlibindex|loop|lvarcat|lvarpop|lvarpush|max|min|nice|pipe|profile|random|readdir|replicate|scancontext|scanfile|scanmatch|select|server_accept|server_create|signal|sleep|sync|system|tclx_findinit|tclx_fork|tclx_load_tndxs|tclx_sleep|tclx_system|tclx_wait|times|translit|try_eval|umask|wait)\>" +color statement "\b(alarm|auto_load_pkg|bsearch|catclose|catgets|catopen|ccollate|cconcat|cequal|chgrp|chmod|chown|chroot|cindex|clength|cmdtrace|commandloop|crange|csubstr|ctoken|ctype|dup|echo|execl|fcntl|flock|fork|fstat|ftruncate|funlock|host_info|id|infox|keyldel|keylget|keylkeys|keylset|kill|lassign|lcontain|lempty|lgets|link|lmatch|loadlibindex|loop|lvarcat|lvarpop|lvarpush|max|min|nice|pipe|profile|random|readdir|replicate|scancontext|scanfile|scanmatch|select|server_accept|server_create|signal|sleep|sync|system|tclx_findinit|tclx_fork|tclx_load_tndxs|tclx_sleep|tclx_system|tclx_wait|times|translit|try_eval|umask|wait)\b" ## Function declaration -color brightblue "proc[[:space:]]" "(\{|\})" +color identifier.class "proc[[:space:]]" "(\{|\})" ## Syntax -color green "(\(|\)|\;|`|\\|\$|<|>|!|=|&|\|)" +color symbol.operator "(\(|\)|\;|`|\\|\$|<|>|!|=|&|\|)" ## Numbers -color brightyellow "\<[0-9]+(\.[0-9]+)?\>" +color constant.number "\b[0-9]+(\.[0-9]+)?\b" ## Strings -color yellow ""(\\.|[^"])*"" "'(\\.|[^'])*'" +color constant.string ""(\\.|[^"])*"" "'(\\.|[^'])*'" ## Variables -brightred (i) "\$\{?[0-9A-Z_!@#$*?-]+\}?" +color identifier.var "\$\{?[0-9A-Z_!@#$*?-]+\}?" ## Comments -color magenta "(^|;)[[:space:]]*#.*" +color comment "(^|;)[[:space:]]*#.*" ## Trailing whitespace -color ,blue "[[:space:]]+$" +color indent-char.whitespace "[[:space:]]+$" diff --git a/runtime/syntax/tex.micro b/runtime/syntax/tex.micro index 4a1bc76d..dde259dd 100644 --- a/runtime/syntax/tex.micro +++ b/runtime/syntax/tex.micro @@ -8,13 +8,13 @@ color identifier start="\[" end="\]" ## numbers color constant.number "\b[0-9]+(\.[0-9]+)?([[:space:]](pt|mm|cm|in|ex|em|bp|pc|dd|cc|nd|nc|sp))?\b" -## let brackets have the default color again -color default "[{}\[\]]" +## let brackets be colored on their own. +color symbol.brackets "[{}\[\]]" color special "[&\\]" ## macros -color statement "\\@?[a-zA-Z_]+" +color identifier.macro "\\@?[a-zA-Z_]+" ## commments color comment "%.*" diff --git a/runtime/syntax/toml.micro b/runtime/syntax/toml.micro index 052c72de..cb8013d3 100644 --- a/runtime/syntax/toml.micro +++ b/runtime/syntax/toml.micro @@ -5,7 +5,7 @@ color statement "(.*)[[:space:]]=" color special "=" # Bracket thingies -color special "(\[|\])" +color symbol.brackets "(\[|\])" # Numbers and strings color constant.number "\b([0-9]+|0x[0-9a-fA-F]*)\b|'.'" diff --git a/runtime/syntax/typescript.micro b/runtime/syntax/typescript.micro index 935a66a9..8f6ba15b 100644 --- a/runtime/syntax/typescript.micro +++ b/runtime/syntax/typescript.micro @@ -3,17 +3,17 @@ syntax "typescript" "\.ts$" color constant.number "\b[-+]?([1-9][0-9]*|0[0-7]*|0x[0-9a-fA-F]+)([uU][lL]?|[lL][uU]?)?\b" color constant.number "\b[-+]?([0-9]+\.[0-9]*|[0-9]*\.[0-9]+)([EePp][+-]?[0-9]+)?[fFlL]?" color constant.number "\b[-+]?([0-9]+[EePp][+-]?[0-9]+)[fFlL]?" -color identifier "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[(]" +color identifier.class "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[(]" color statement "\b(abstract|as|async|await|break|case|catch|class|const|constructor|continue)\b" color statement "\b(debugger|declare|default|delete|do|else|enum|export|extends|finally|for|from)\b" color statement "\b(function|get|if|implements|import|in|instanceof|interface|is|let|module|namespace)\b" color statement "\b(new|of|package|private|protected|public|require|return|set|static|super|switch)\b" color statement "\b(this|throw|try|type|typeof|var|void|while|with|yield)\b" -color constant "\b(false|true|null|undefined|NaN)\b" +color constant.bool "\b(false|true|null|undefined|NaN)\b" color type "\b(Array|Boolean|Date|Enumerator|Error|Function|Math)\b" color type "\b(Number|Object|RegExp|String|Symbol)\b" color type "\b(any|boolean|never|number|string|symbol)\b" -color statement "[-+/*=<>!~%?:&|]" +color symbol.operator "[-+/*=<>!~%?:&|]" color constant "/[^*]([^/]|(\\/))*[^\\]/[gim]*" color constant "\\[0-7][0-7]?[0-7]?|\\x[0-9a-fA-F]+|\\[bfnrt'"\?\\]" color comment "(^|[[:space:]])//.*" diff --git a/runtime/syntax/vala.micro b/runtime/syntax/vala.micro index 34509bd3..bd7a825a 100644 --- a/runtime/syntax/vala.micro +++ b/runtime/syntax/vala.micro @@ -1,18 +1,18 @@ syntax "vala" "\.vala$" -color green "\<(float|double|bool|char|int|uint|short|long|void|(un)?signed)\>" -color brightblue "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[()]" -color cyan "\<(for|if|while|do|else|case|default|switch|try|throw|catch)\>" -color cyan "\<(inline|typedef|struct|enum|union|extern|static|const)\>" -color cyan "\<(operator|new|delete|return|null)\>" -color cyan "\<(class|override|private|public|signal|this|weak)\>" -color brightred "\<(goto|break|continue)\>" -color brightcyan "\<(true|false)\>" -color blue "\<([0-9]+)\>" -color red "[-+/*=<>?:!~%&|]" "->" -color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" -color brightblack "(^|[[:space:]])//.*" -color brightblack start="/\*" end="\*/" -color brightwhite,cyan "TODO:?" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color type "\<(float|double|bool|char|int|uint|short|long|void|(un)?signed)\>" +color identifier.class "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[()]" +color statement "\<(for|if|while|do|else|case|default|switch|try|throw|catch)\>" +color statement "\<(inline|typedef|struct|enum|union|extern|static|const)\>" +color statement "\<(operator|new|delete|return|null)\>" +color statement "\<(class|override|private|public|signal|this|weak)\>" +color special "\<(goto|break|continue)\>" +color constant.bool "\<(true|false)\>" +color constant.number "\<([0-9]+)\>" +color symbol.operator "[-+/*=<>?:!~%&|]" "->" +color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'" +color comment "(^|[[:space:]])//.*" +color comment start="/\*" end="\*/" +color todo "TODO:?" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/vhdl.micro b/runtime/syntax/vhdl.micro index 8f9753b9..e51ae99c 100644 --- a/runtime/syntax/vhdl.micro +++ b/runtime/syntax/vhdl.micro @@ -2,48 +2,48 @@ syntax "vhdl" "\.vhdl?$" ## types -color type (i) "\b(string|integer|natural|positive|(un)?signed|std_u?logic(_vector)?|bit(_vector)?|boolean|u?x01z?|array|range)\b" +color type "(i)\b(string|integer|natural|positive|(un)?signed|std_u?logic(_vector)?|bit(_vector)?|boolean|u?x01z?|array|range)\b" ## identifiers (component-, library-names etc.) -color identifier (i) "library[[:space:]]+[a-zA-Z_0-9]+" -color identifier (i) "use[[:space:]]+[a-zA-Z_0-9\.]+" -color identifier (i) "component[[:space:]]+[a-zA-Z_0-9]+" -color identifier (i) "(architecture|configuration)[[:space:]]+[a-zA-Z_0-9]+[[:space:]]+of[[:space:]]+[a-zA-Z_0-9]+" -color identifier (i) "(entity|package)[[:space:]]+[a-zA-Z_0-9]+[[:space:]]+is" -color identifier (i) "end[[:space:]]+((architecture|entity|component|process|package|generate)[[:space:]]+)?[a-zA-Z_0-9]+" +color identifier "(?i)library[[:space:]]+[a-zA-Z_0-9]+" +color identifier "(?i)use[[:space:]]+[a-zA-Z_0-9\.]+" +color identifier "(?i)component[[:space:]]+[a-zA-Z_0-9]+" +color identifier "(?i)(architecture|configuration)[[:space:]]+[a-zA-Z_0-9]+[[:space:]]+of[[:space:]]+[a-zA-Z_0-9]+" +color identifier "(?i)(entity|package)[[:space:]]+[a-zA-Z_0-9]+[[:space:]]+is" +color identifier "(?i)end[[:space:]]+((architecture|entity|component|process|package|generate)[[:space:]]+)?[a-zA-Z_0-9]+" ## reserved words -color statement (i) "\b(abs|access|after|alias|all|and|architecture|assert|attribute)\b" -color statement (i) "\b(begin|block|body|buffer|bus|case|component|configuration|constant)\b" -color statement (i) "\b(disconnect|downto|else|elsif|end|entity|exit)\b" -color statement (i) "\b(file|for|function|generate|generic|guarded)\b" -color statement (i) "\b(if|impure|in|inertial|inout|is)\b" -color statement (i) "\b(label|library|linkage|literal|loop|map|mod)\b" -color statement (i) "\b(nand|new|next|nor|not|null|of|on|open|or|others|out)\b" -color statement (i) "\b(package|port|postponed|procedure|process|pure)\b" -color statement (i) "\b(range|record|register|reject|rem|report|return|rol|ror)\b" -color statement (i) "\b(select|severity|shared|signal|sla|sll|sra|srl|subtype)\b" -color statement (i) "\b(then|to|transport|type|unaffected|units|until|use)\b" -color statement (i) "\b(variable|wait|when|while|with|xnor|xor)\b" +color statement "(?i)\b(abs|access|after|alias|all|and|architecture|assert|attribute)\b" +color statement "(?i)\b(begin|block|body|buffer|bus|case|component|configuration|constant)\b" +color statement "(?i)\b(disconnect|downto|else|elsif|end|entity|exit)\b" +color statement "(?i)\b(file|for|function|generate|generic|guarded)\b" +color statement "(?i)\b(if|impure|in|inertial|inout|is)\b" +color statement "(?i)\b(label|library|linkage|literal|loop|map|mod)\b" +color statement "(?i)\b(nand|new|next|nor|not|null|of|on|open|or|others|out)\b" +color statement "(?i)\b(package|port|postponed|procedure|process|pure)\b" +color statement "(?i)\b(range|record|register|reject|rem|report|return|rol|ror)\b" +color statement "(?i)\b(select|severity|shared|signal|sla|sll|sra|srl|subtype)\b" +color statement "(?i)\b(then|to|transport|type|unaffected|units|until|use)\b" +color statement "(?i)\b(variable|wait|when|while|with|xnor|xor)\b" ## attributes -color statement (i) "'(base|left|right|high|low|pos|val|succ|pred|leftof|rightof|image|(last_)?value)" -color statement (i) "'((reverse_)?range|length|ascending|event|stable)" -color statement (i) "'(simple|path|instance)_name" +color statement "(?i)'(base|left|right|high|low|pos|val|succ|pred|leftof|rightof|image|(last_)?value)" +color statement "(?i)'((reverse_)?range|length|ascending|event|stable)" +color statement "(?i)'(simple|path|instance)_name" ## library functions -color statement (i) "\b(std_match|(rising|falling)_edge|is_x)\b" -color statement (i) "\bto_(unsigned|signed|integer|u?x01z?|stdu?logic(vector)?)\b" +color statement "(?i)\b(std_match|(rising|falling)_edge|is_x)\b" +color statement "(?i)\bto_(unsigned|signed|integer|u?x01z?|stdu?logic(vector)?)\b" ## operators -color statement "(\+|-|\*|/|&|<|>|=|\.|:)" +color symbol.operator "(\+|-|\*|/|&|<|>|=|\.|:)" ## constants -color constant.number (i) "'([0-1]|u|x|z|w|l|h|-)'" "[box]?"([0-1a-fA-F]|u|x|z|w|l|h|-)+"" -color constant.number (i) "\b[0-9\._]+(e[-]?[0-9]+)?( ?[fpnum]?s)?\b" -color constant (i) "\b(true|false)\b" +color constant.number "(?i)'([0-1]|u|x|z|w|l|h|-)'" "[box]?"([0-1a-fA-F]|u|x|z|w|l|h|-)+"" +color constant.number "(?i)\b[0-9\._]+(e[-]?[0-9]+)?( ?[fpnum]?s)?\b" +color constant.bool "(?i)\b(true|false)\b" ## severity levels -color constant (i) "\b(note|warning|error|failure)\b" +color constant "(?i)\b(note|warning|error|failure)\b" color constant.string ""[^"]*"" ## Comment highlighting diff --git a/runtime/syntax/vi.micro b/runtime/syntax/vi.micro index 077ef756..a07fb4b0 100644 --- a/runtime/syntax/vi.micro +++ b/runtime/syntax/vi.micro @@ -3,7 +3,7 @@ syntax "vi" "(^|/|\.)(ex|vim)rc$|\.vim" color identifier "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[()]" color statement "\b([nvxsoilc]?(nore|un)?map|[nvlx]n|[ico]?no|[cilovx][um]|s?unm)\b" color statement "\b(snor|nun|nm|set|if|endif|let|unlet)\b" -color statement "[!&=]" +color symbol.operator "[!&=]" color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'" color constant.number "\b[0-9]+\b" color comment "(^|[[:space:]])\"[^"]*$" diff --git a/runtime/syntax/xml.micro b/runtime/syntax/xml.micro index 3cdccf1a..8bfaac54 100644 --- a/runtime/syntax/xml.micro +++ b/runtime/syntax/xml.micro @@ -1,7 +1,7 @@ ## Here is an example for xml files. syntax "xml" "\.(xml|sgml?|rng|plist)$" -color identifier "<.*?>" -color comment start="" -color comment start="" +color symbol.tag "<.*?>" +color preproc start="" +color comment "" color special "&[^;]*;" diff --git a/runtime/syntax/xresources.micro b/runtime/syntax/xresources.micro index a49cb3f8..6b8901e0 100644 --- a/runtime/syntax/xresources.micro +++ b/runtime/syntax/xresources.micro @@ -1,10 +1,10 @@ syntax "xresources" "X(defaults|resources)$" -color green "^[[:alnum:]]+\*" -color brightyellow "\*[[:alnum:]]+\:" -color blue "\<[0-9]+\>" -color red "[*:=]" -color brightcyan "\<(true|false)\>" -color brightblack "(^|[[:space:]])#([^{].*)?$" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color special "^[[:alnum:]]+\*" +color identifier.var "\*[[:alnum:]]+\:" +color constant.number "\<[0-9]+\>" +color symbol.operator "[*:=]" +color constant.bool "\<(true|false)\>" +color comment "(^|[[:space:]])#([^{].*)?$" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/yaml.micro b/runtime/syntax/yaml.micro index 7b00c44e..55537de7 100644 --- a/runtime/syntax/yaml.micro +++ b/runtime/syntax/yaml.micro @@ -2,11 +2,14 @@ syntax "yaml" "\.ya?ml$" header "%YAML" color type "(^| )!!(binary|bool|float|int|map|null|omap|seq|set|str) " -color constant "\b(YES|yes|Y|y|ON|on|NO|no|N|n|OFF|off)\b" -color constant "\b(true|false)\b" -color statement "\[" "\]" ":[[:space:]]+[|>]" "^[[:space:]]*- " +color constant.bool.true "\b(YES|yes|Y|y|ON|on)\b" +color constant.bool.false "\b(NO|no|N|n|OFF|off)\b" +color constant.bool.true "\b(true)\b" +color constant.bool.false "\b(false)\b" +color statement ":[[:space:]]" "\[" "\]" ":[[:space:]]+[|>]" "^[[:space:]]*- " color identifier "[[:space:]][\*&][A-Za-z0-9]+" color type "([-\w\.\/]+[[:space:]]*:\s+)|([-\w\.\/]+[[:space:]]*:$)" color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'" color comment "(^|[[:space:]])#([^{].*)?$" color special "^---" "^\.\.\." "^%YAML" "^%TAG" +color indent-char.whitespace " $" diff --git a/runtime/syntax/yum.micro b/runtime/syntax/yum.micro index 6ca9f058..a343b1ed 100644 --- a/runtime/syntax/yum.micro +++ b/runtime/syntax/yum.micro @@ -1,8 +1,8 @@ syntax "yum" "\.repo$|yum.*\.conf$" -color cyan "^[[:space:]]*[^=]*=" -color brightmagenta "^[[:space:]]*\[.*\]$" -color brightyellow "\$(releasever|arch|basearch|uuid|YUM[0-9])" -color brightblack "(^|[[:space:]])#([^{].*)?$" -color ,green "[[:space:]]+$" -color ,red " + +| + +" +color identifier "^[[:space:]]*[^=]*=" +color constant.specialChar "^[[:space:]]*\[.*\]$" +color statement "\$(releasever|arch|basearch|uuid|YUM[0-9])" +color comment "(^|[[:space:]])#([^{].*)?$" +color indent-char.whitespace "[[:space:]]+$" +color indent-char " + +| + +" diff --git a/runtime/syntax/zsh.micro b/runtime/syntax/zsh.micro index 03a444ef..b70b3ac2 100644 --- a/runtime/syntax/zsh.micro +++ b/runtime/syntax/zsh.micro @@ -3,40 +3,40 @@ syntax "zsh" "\.zsh$" "\.?(zshenv|zprofile|zshrc|zlogin|zlogout|zsh-theme)$" header "^#!.*/(env +)?zsh( |$)" ## Numbers -color brightyellow "\b[0-9]+\b" +color constant.number "\b[0-9]+\b" ## Conditionals and control flow -color green "\<(always|break|bye|case|continue|disown|do|done|elif|else|esac|exit|fi|for|function|if|in|local|read|return|select|shift|then|time|until|while)\>" +color statement "\b(always|break|bye|case|continue|disown|do|done|elif|else|esac|exit|fi|for|function|if|in|local|read|return|select|shift|then|time|until|while)\b" -color green "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|!|=|&|\|)" +color symbol.operator "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|!|=|&|\|)" ## Conditional flags -color green "-[Ldefgruwx]\>" -color green "-(eq|ne|gt|lt|ge|le|s|n|z)\>" +color statement "-[Ldefgruwx]\b" +color statement "-(eq|ne|gt|lt|ge|le|s|n|z)\b" ## Bash-inherited -color brightblue "\<((un)?alias|bindkey|builtin|cd|declare|eval|exec|export|jobs|let|popd|pushd|set|source|typeset|umask|unset)\>" +color preproc "\b((un)?alias|bindkey|builtin|cd|declare|eval|exec|export|jobs|let|popd|pushd|set|source|typeset|umask|unset)\b" ## ZSH-specific -color brightblue "\<(add-zsh-hook|autoload|chdir|compinit|dirs|(dis|en)able|echotc|emulate|print|prompt(init)?|(un)?setopt|zle|zmodload|zstyle|whence)\>" +color preproc "\b(add-zsh-hook|autoload|chdir|compinit|dirs|(dis|en)able|echotc|emulate|print|prompt(init)?|(un)?setopt|zle|zmodload|zstyle|whence)\b" ## Common linux commands -color brightmagenta "\<((g|ig)?awk|find|\w{0,4}grep|kill|killall|\w{0,4}less|make|pkill|sed|tar)\>" +color special "\b((g|ig)?awk|find|\w{0,4}grep|kill|killall|\w{0,4}less|make|pkill|sed|tar)\b" ## Coreutils commands -color brightmagenta "\<(base64|basename|cat|chcon|chgrp|chmod|chown|chroot|cksum|comm|cp|csplit|cut|date|dd|df|dir|dircolors|dirname|du|echo|env|expand|expr|factor|false|fmt|fold|head|hostid|id|install|join|link|ln|logname|ls|md5sum|mkdir|mkfifo|mknod|mktemp|mv|nice|nl|nohup|nproc|numfmt|od|paste|pathchk|pinky|pr|printenv|printf|ptx|pwd|readlink|realpath|rm|rmdir|runcon|seq|(sha1|sha224|sha256|sha384|sha512)sum|shred|shuf|sleep|sort|split|stat|stdbuf|stty|sum|sync|tac|tail|tee|test|timeout|touch|tr|true|truncate|tsort|tty|uname|unexpand|uniq|unlink|users|vdir|wc|who|whoami|yes)\>" +color type "\b(base64|basename|cat|chcon|chgrp|chmod|chown|chroot|cksum|comm|cp|csplit|cut|date|dd|df|dir|dircolors|dirname|du|echo|env|expand|expr|factor|false|fmt|fold|head|hostid|id|install|join|link|ln|logname|ls|md5sum|mkdir|mkfifo|mknod|mktemp|mv|nice|nl|nohup|nproc|numfmt|od|paste|pathchk|pinky|pr|printenv|printf|ptx|pwd|readlink|realpath|rm|rmdir|runcon|seq|(sha1|sha224|sha256|sha384|sha512)sum|shred|shuf|sleep|sort|split|stat|stdbuf|stty|sum|sync|tac|tail|tee|test|timeout|touch|tr|true|truncate|tsort|tty|uname|unexpand|uniq|unlink|users|vdir|wc|who|whoami|yes)\b" ## Function definition -brightgreen (i) "^\s+(function\s+)[0-9A-Z_]+\s+\(\)" +color identifier.class "^\s+(function\s+)[0-9A-Z_]+\s+\(\)" ## Variables -brightred (i) "\$\{?[0-9A-Z_!@#$*?-]+\}?" +color identifier.var "\$\{?[0-9A-Z_!@#$*?-]+\}?" ## Strings -color yellow ""(\\.|[^"])*"" -color yellow "'(\\.|[^'])*'" +color constant.string ""(\\.|[^"])*"" +color constant.string "'(\\.|[^'])*'" ## Comments -color cyan "(^|[[:space:]])#.*$" -color brightcyan "(^|[[:space:]])##.*$" +color comment "(^|[[:space:]])#.*$" +color comment.bright "(^|[[:space:]])##.*$" ## Trailing spaces -color ,blue "[[:space:]]+$" +color indent-char.whitespace "[[:space:]]+$"