mirror of
https://github.com/cmur2/joe-syntax.git
synced 2024-12-21 16:54:23 +01:00
Added revamped Javascript highlighter
This version is only for standalone .js files, not for <script> tag in HTML.
This commit is contained in:
parent
fa61d19d1c
commit
a2c886e3fa
2
ftyperc
2
ftyperc
@ -488,7 +488,7 @@
|
||||
Javascript
|
||||
*.js
|
||||
-autoindent
|
||||
-syntax java
|
||||
-syntax js
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-c_comment
|
||||
|
253
js.jsf
Normal file
253
js.jsf
Normal file
@ -0,0 +1,253 @@
|
||||
# JOE syntax highlight file for JavaScript
|
||||
|
||||
# the real one - not a pimped Java file...
|
||||
# just getting this idea seams crazy...
|
||||
|
||||
=Idle
|
||||
=Comment green
|
||||
=CommentLabel bold green
|
||||
=Constant cyan
|
||||
=Escape bold cyan
|
||||
=Type bold
|
||||
=Keyword bold
|
||||
=Operator bold
|
||||
=Bad bold red
|
||||
=Brace magenta
|
||||
=Control
|
||||
|
||||
=Methods
|
||||
=Number fg_520
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"\n" idle
|
||||
"/" slash
|
||||
"0" first_digit recolor=-1
|
||||
"1-9" decimal recolor=-1
|
||||
"." maybe_float
|
||||
"\"" string recolor=-1
|
||||
"'" char recolor=-1
|
||||
"a-zA-Z_" ident mark buffer
|
||||
"{}" brace recolor=-1
|
||||
",:;=()><[]*&|!~+\-%^" control recolor=-1
|
||||
|
||||
:brace Brace
|
||||
* idle noeat
|
||||
|
||||
:control Control
|
||||
* idle noeat
|
||||
|
||||
:slash Idle
|
||||
* idle noeat
|
||||
"*" comment recolor=-2
|
||||
"/" line_comment recolor=-2
|
||||
|
||||
:comment Comment
|
||||
* comment
|
||||
# might be TODO label
|
||||
"BFHNTX" comment noeat call=.comment_todo()
|
||||
"*" maybe_end_comment
|
||||
|
||||
:maybe_end_comment Comment
|
||||
* comment noeat
|
||||
"/" idle
|
||||
"*" maybe_end_comment
|
||||
|
||||
:line_comment Comment
|
||||
* line_comment
|
||||
# might be TODO label
|
||||
"BFHNTX" line_comment noeat call=.comment_todo()
|
||||
"\n" idle
|
||||
|
||||
:first_digit Constant
|
||||
* idle noeat
|
||||
"xX" hex
|
||||
"." float
|
||||
"eE" epart
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:bad_number Bad
|
||||
* idle noeat
|
||||
"0-9" bad_number
|
||||
|
||||
:octal Constant
|
||||
* idle noeat
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:hex Constant
|
||||
* idle noeat
|
||||
"0-9A-Fa-f" hex
|
||||
|
||||
:decimal Constant
|
||||
* idle noeat
|
||||
"0-9" decimal
|
||||
"eE" epart
|
||||
"." float
|
||||
|
||||
:maybe_float Constant
|
||||
* idle recolor=-2 noeat
|
||||
"0-9" float recolor=-2
|
||||
|
||||
:float Constant
|
||||
* idle noeat
|
||||
"eE" epart
|
||||
"0-9" float
|
||||
|
||||
:epart Constant
|
||||
* idle noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Constant
|
||||
* idle noeat
|
||||
"0-9" enum
|
||||
|
||||
:string Constant
|
||||
* string
|
||||
"\"" idle
|
||||
"\\" string_escape recolor=-1
|
||||
"%" string_control recolor=-1
|
||||
|
||||
:string_escape Escape
|
||||
* string
|
||||
"x" string_hex1
|
||||
"0-7" string_octal2
|
||||
"\n" string recolor=-2
|
||||
|
||||
:string_hex1 Escape
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex2
|
||||
|
||||
:string_hex2 Escape
|
||||
* string noeat
|
||||
"0-9a-fA-F" string
|
||||
|
||||
:string_octal2 Escape
|
||||
* string noeat
|
||||
"0-7" string_octal3
|
||||
|
||||
:string_octal3 Escape
|
||||
* string noeat
|
||||
"0-7" string
|
||||
|
||||
:string_control Escape
|
||||
* string_control
|
||||
"\n" reset
|
||||
"diouxXeEfFgGaAcspn%SC" string
|
||||
|
||||
:char Constant
|
||||
* char
|
||||
"\n" reset
|
||||
"'" idle
|
||||
"\\" char_escape recolor=-1
|
||||
|
||||
:char_escape Escape
|
||||
* char
|
||||
"x" char_hex1
|
||||
"0-7" char_octal2
|
||||
"\n" char recolor=-2
|
||||
|
||||
:char_hex1 Escape
|
||||
* char noeat
|
||||
"0-9a-fA-F" char_hex2
|
||||
|
||||
:char_hex2 Escape
|
||||
* char noeat
|
||||
"0-9a-fA-F" char
|
||||
|
||||
:char_octal2 Escape
|
||||
* char noeat
|
||||
"0-7" char_octal3
|
||||
|
||||
:char_octal3 Escape
|
||||
* char noeat
|
||||
"0-7" char
|
||||
|
||||
:ident Idle
|
||||
* ident_end noeat markend strings
|
||||
"arguments" kw
|
||||
"Array" type
|
||||
"break" kw
|
||||
"Boolean" type
|
||||
"case" kw
|
||||
"catch" kw
|
||||
"continue" kw
|
||||
"default" kw
|
||||
"delete" operator
|
||||
"do" kw
|
||||
"Date" type
|
||||
"else" kw
|
||||
"false" lit
|
||||
"finally" kw
|
||||
"for" kw
|
||||
"function" kw
|
||||
"Function" type
|
||||
"if" kw
|
||||
"in" kw
|
||||
"instanceof" operator
|
||||
"let" kw
|
||||
"new" operator
|
||||
"null" lit
|
||||
"Number" type
|
||||
"Object" type
|
||||
"return" kw
|
||||
"RegExp" type
|
||||
"switch" kw
|
||||
"String" type
|
||||
"this" kw
|
||||
"throw" kw
|
||||
"true" lit
|
||||
"try" kw
|
||||
"typeof" operator
|
||||
"undefined" lit
|
||||
"var" kw
|
||||
"void" kw
|
||||
"while" kw
|
||||
"with" kw
|
||||
done
|
||||
"a-zA-Z0-9_" ident
|
||||
|
||||
:type Type
|
||||
* idle noeat
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:lit Constant
|
||||
* idle noeat
|
||||
|
||||
:operator Operator
|
||||
* idle noeat
|
||||
|
||||
:ident_end Idle
|
||||
* idle noeat
|
||||
" " ident_end
|
||||
"(" method_end recolormark
|
||||
|
||||
:method_end Methods
|
||||
* idle noeat
|
||||
|
||||
.subr comment_todo
|
||||
# initial state
|
||||
:comment_todo_init Comment
|
||||
* comment_todo_guess buffer
|
||||
|
||||
# highlight common TODO labels
|
||||
:comment_todo_guess Comment
|
||||
* comment_todo_unknown noeat strings
|
||||
"BUG" comment_todo
|
||||
"FIXME" comment_todo
|
||||
"HACK" comment_todo
|
||||
"NOTE" comment_todo
|
||||
"TODO" comment_todo
|
||||
"XXX" comment_todo
|
||||
done
|
||||
"A-Z" comment_todo_guess
|
||||
|
||||
:comment_todo_unknown Comment
|
||||
* NULL noeat return
|
||||
|
||||
:comment_todo CommentLabel
|
||||
* NULL noeat return
|
||||
.end
|
Loading…
Reference in New Issue
Block a user