# JOE syntax highlight file for typical UNIX configuration files

=Idle
=Comment
=String		+Constant
=Escape
=StringEscape	+Escape
=Backtick	+Character +Constant +String

:idle Idle
	*		idle
	"#"		comment		recolor=-1
	"\""		string		recolor=-1
	"'"		single		recolor=-1
	"\`"		backtick	recolor=-1
	"\\"		escape		recolor=-1

:escape Escape
	*		idle

:comment Comment comment
	*		comment
	"\n"		idle


:string String string
	*		string
	"\""		idle
	"\`"		backtick_in_str	recolor=-1
	"\\"		string_escape	recolor=-1

:string_escape StringEscape string
	*		string
	"\n"		string		recolor=-2

:backtick_in_str Backtick
	*		backtick_in_str
	"\`"		string
	"\\"		bt_escape_2	recolor=-1

:bt_escape_2 Escape
	*		backtick_in_str
	"\n"		backtick_in_str	recolor=-2


:single String string
	*		single
	"'"		idle
	"\\"		single_escape	recolor=-1

:single_escape StringEscape string
	*		single
	"\n"		single		recolor=-2


:backtick Backtick
	*		backtick
	"\`"		idle
	"\""		string_in_bt	recolor=-1
	"'"		single_in_bt	recolor=-1
	"\\"		bt_escape	recolor=-1

:bt_escape Escape
	*		backtick
	"\n"		backtick	recolor=-2


:string_in_bt String string
	*		string_in_bt
	"\""		backtick
	"\\"		string_escape_b	recolor=-1

:string_escape_b StringEscape string
	*		string_in_bt
	"\n"		string_in_bt	recolor=-2


:single_in_bt String string
	*		single_in_bt
	"'"		backtick
	"\\"		single_escape_b	recolor=-1

:single_escape_b StringEscape string
	*		single_in_bt
	"\n"		single_in_bt	recolor=-2

