mirror of
https://github.com/cmur2/joe-syntax.git
synced 2024-11-18 10:56:16 +01:00
154 lines
2.2 KiB
Plaintext
154 lines
2.2 KiB
Plaintext
|
# JOE syntax highlight file for Markdown
|
||
|
# by Christian Nicolai (http://mycrobase.de)
|
||
|
|
||
|
# And yes, this *is* a joke :p
|
||
|
|
||
|
# bold parsing is not that perfect since this works: **bold__
|
||
|
|
||
|
=Idle
|
||
|
=Tag green
|
||
|
=Escape bold
|
||
|
=Bad bold red
|
||
|
|
||
|
=Bold bold
|
||
|
=Headline bold yellow
|
||
|
=Quote green
|
||
|
=Code green
|
||
|
=List yellow
|
||
|
=LinkDesc green
|
||
|
=Link blue
|
||
|
=Rule inverse
|
||
|
|
||
|
:line_start Idle
|
||
|
* idle noeat
|
||
|
"#" headline_prefix recolor=-1
|
||
|
">" quote recolor=-1
|
||
|
" " maybe_code1
|
||
|
"\t" code
|
||
|
"-*" maybe_list
|
||
|
|
||
|
:idle Idle
|
||
|
* idle
|
||
|
"\n" line_start
|
||
|
"<" tag recolor=-1
|
||
|
"\\" escape recolor=-1
|
||
|
"*_" maybe_bold1
|
||
|
"[" maybe_link_desc1
|
||
|
"`" backtick buffer noeat
|
||
|
|
||
|
:headline_prefix Idle
|
||
|
* headline
|
||
|
"#" headline_prefix
|
||
|
|
||
|
:headline Headline
|
||
|
* headline
|
||
|
"\n" line_start
|
||
|
|
||
|
:quote Quote
|
||
|
* quote
|
||
|
"\n" line_start
|
||
|
|
||
|
:maybe_code1 Idle
|
||
|
* idle
|
||
|
" " maybe_code2
|
||
|
|
||
|
:maybe_code2 Idle
|
||
|
* idle
|
||
|
" " maybe_code3
|
||
|
|
||
|
:maybe_code3 Idle
|
||
|
* idle
|
||
|
" " code recolor=-4
|
||
|
|
||
|
:code Code
|
||
|
* code
|
||
|
"\n" line_start
|
||
|
|
||
|
:maybe_list Idle
|
||
|
* idle
|
||
|
" " list
|
||
|
"-*" maybe_rule1
|
||
|
|
||
|
:list List
|
||
|
* list
|
||
|
"\n" line_start
|
||
|
|
||
|
:maybe_rule1 Idle
|
||
|
* idle
|
||
|
"-*" rule recolor=-3
|
||
|
|
||
|
:rule Rule
|
||
|
* rule
|
||
|
"\n" line_start
|
||
|
|
||
|
:tag Tag
|
||
|
* idle
|
||
|
"a-z0-9 /" tag
|
||
|
">" idle
|
||
|
|
||
|
# do escaping of *_ and so on
|
||
|
:escape Escape
|
||
|
* idle
|
||
|
|
||
|
:maybe_bold1 Idle
|
||
|
* idle noeat
|
||
|
"*_" bold recolor=-2
|
||
|
|
||
|
:bold Bold
|
||
|
* bold
|
||
|
"\n" line_start # end if we reach newline during bold
|
||
|
"*_" maybe_end_bold
|
||
|
|
||
|
:maybe_end_bold Bold
|
||
|
* bold
|
||
|
"*_" end_bold
|
||
|
|
||
|
:end_bold Bold
|
||
|
* idle noeat
|
||
|
|
||
|
:maybe_link_desc1 Idle
|
||
|
* maybe_link_desc mark
|
||
|
|
||
|
:maybe_link_desc Idle
|
||
|
* maybe_link_desc
|
||
|
"]" maybe_end_link_desc markend
|
||
|
|
||
|
:maybe_end_link_desc Idle
|
||
|
* idle
|
||
|
"(" link_inline1 recolormark
|
||
|
"[" link_ref1 recolormark
|
||
|
|
||
|
:link_inline1 LinkDesc
|
||
|
* link_inline noeat
|
||
|
|
||
|
:link_inline Link
|
||
|
* link_inline
|
||
|
")" link_end noeat
|
||
|
|
||
|
:link_ref1 LinkDesc
|
||
|
* link_ref noeat
|
||
|
|
||
|
:link_ref Link
|
||
|
* link_ref
|
||
|
"]" link_end noeat
|
||
|
|
||
|
:link_end Idle
|
||
|
* idle
|
||
|
|
||
|
:backtick Quote
|
||
|
* backtick_body save_s noeat
|
||
|
"`" backtick
|
||
|
|
||
|
:backtick_body Code
|
||
|
* backtick_body
|
||
|
"`" backtick_end_maybe buffer
|
||
|
|
||
|
:backtick_end_maybe Code
|
||
|
* backtick_body strings
|
||
|
"&" backtick_end
|
||
|
done
|
||
|
"`" backtick_end_maybe
|
||
|
|
||
|
:backtick_end Quote
|
||
|
* idle noeat
|