mirror of
				https://github.com/cmur2/joe-syntax.git
				synced 2025-11-04 04:25:08 +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
 |