Some more improvements
* Fix keywords in comments being highlighted * Highlight Nim's escape sequences for strings * Highlight common comment tags * Add on/off to the highlighted boolean values * Remove redundant regex highlighter for comments * Fix autoindent indenting lines more than it should
This commit is contained in:
parent
5ca0b9baa3
commit
93e64b4541
|
@ -37,8 +37,18 @@ add-highlighter shared/nim regions
|
||||||
add-highlighter shared/nim/code default-region group
|
add-highlighter shared/nim/code default-region group
|
||||||
add-highlighter shared/nim/triple_string region '([A-Za-z](_?\w)*)?"""' '"""(?!")' fill string
|
add-highlighter shared/nim/triple_string region '([A-Za-z](_?\w)*)?"""' '"""(?!")' fill string
|
||||||
add-highlighter shared/nim/raw_string region [A-Za-z](_?[A-Za-z])*" (?<!")"(?!") fill string
|
add-highlighter shared/nim/raw_string region [A-Za-z](_?[A-Za-z])*" (?<!")"(?!") fill string
|
||||||
add-highlighter shared/nim/string region (?<!'\\)"(?!') (?<!\\)(\\\\)*" fill string
|
add-highlighter shared/nim/string region (?<!'\\)"(?!') (?<!\\)(\\\\)*" group
|
||||||
add-highlighter shared/nim/comment region '#?#\[' '\]##?' fill comment
|
add-highlighter shared/nim/comment region '#?#\[' '\]##?' group
|
||||||
|
add-highlighter shared/nim/comment_line region '#?#[^\[]' $ group
|
||||||
|
|
||||||
|
add-highlighter shared/nim/string/fill fill string
|
||||||
|
add-highlighter shared/nim/comment/fill fill comment
|
||||||
|
add-highlighter shared/nim/comment_line/fill fill comment
|
||||||
|
# Escape sequences in string
|
||||||
|
add-highlighter shared/nim/string/escape regex \\[prcnlftv] 0:value
|
||||||
|
# Comment tags
|
||||||
|
add-highlighter shared/nim/comment/tags regex \b(TODO|FIXME|XXX|NOTE|BUG)\b 0:default+rb
|
||||||
|
add-highlighter shared/nim/comment_line/tags regex \b(TODO|FIXME|XXX|NOTE|BUG)\b 0:default+rb
|
||||||
|
|
||||||
evaluate-commands %sh{
|
evaluate-commands %sh{
|
||||||
# Grammar
|
# Grammar
|
||||||
|
@ -66,7 +76,7 @@ evaluate-commands %sh{
|
||||||
types="int int8 int16 int32 int64 uint uint8 uint16 uint32 uint64 float
|
types="int int8 int16 int32 int64 uint uint8 uint16 uint32 uint64 float
|
||||||
float32 float64 bool char object seq array cstring string tuple varargs
|
float32 float64 bool char object seq array cstring string tuple varargs
|
||||||
typedesc pointer byte set typed untyped void auto"
|
typedesc pointer byte set typed untyped void auto"
|
||||||
values="false true"
|
values="false true on off"
|
||||||
|
|
||||||
join() { sep=$2; set -- $1; IFS="$sep"; echo "$*"; }
|
join() { sep=$2; set -- $1; IFS="$sep"; echo "$*"; }
|
||||||
|
|
||||||
|
@ -96,7 +106,6 @@ evaluate-commands %sh{
|
||||||
}
|
}
|
||||||
|
|
||||||
add-highlighter shared/nim/code/ regex '(,|;|`|\(\.?|\.?\)|\[[.:]?|\.?\]|\{\.?|\.?\})' 0:meta
|
add-highlighter shared/nim/code/ regex '(,|;|`|\(\.?|\.?\)|\[[.:]?|\.?\]|\{\.?|\.?\})' 0:meta
|
||||||
add-highlighter shared/nim/code/ regex '#[^\n]+' 0:comment
|
|
||||||
add-highlighter shared/nim/code/ regex %{'(\\([rcnlftvabe\\"']|0*[12]?\d?\d|x[0-9a-fA-F]{2})|[^'\n])'} 0:string
|
add-highlighter shared/nim/code/ regex %{'(\\([rcnlftvabe\\"']|0*[12]?\d?\d|x[0-9a-fA-F]{2})|[^'\n])'} 0:string
|
||||||
|
|
||||||
# Commands
|
# Commands
|
||||||
|
@ -111,7 +120,7 @@ def -hidden nim-indent-on-new-line %{
|
||||||
# cleanup trailing whitespaces from previous line
|
# cleanup trailing whitespaces from previous line
|
||||||
try %{ exec -draft k <a-x> s \h+$ <ret> d }
|
try %{ exec -draft k <a-x> s \h+$ <ret> d }
|
||||||
# indent after line ending with enum, tuple, object, type, import, export, const, let, var, ':' or '='
|
# indent after line ending with enum, tuple, object, type, import, export, const, let, var, ':' or '='
|
||||||
try %{ exec -draft <space> k x <a-k> (:|=|enum|tuple|object|const|let|var|import|export|type)$ <ret> j <a-gt> }
|
try %{ exec -draft <space> k <a-x> <a-k> (:|=|enum|tuple|object|const|let|var|import|export|type)$ <ret> j <a-gt> }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user