Menu

Diff of /syntax/awk.jsf [000000] .. [517113]  Maximize  Restore

Switch to side-by-side view

--- a
+++ b/syntax/awk.jsf
@@ -0,0 +1,237 @@
+# JOE syntax highlight file for AWK
+
+# Resync whole file
+-
+
+=Idle
+=Ident
+=Bad
+=Preproc
+=Define		+Preproc
+=Comment
+=IncLocal	+String +Preproc
+=IncSystem	+Preproc
+=Constant
+=Number		+Constant
+=String		+Constant
+=StringEscape	+Escape +String
+=Character	+String
+=CharacterEscape +Escape +Character
+=Type
+=Keyword
+=Brace		+Control
+=Control
+
+:reset Idle
+	*		first		noeat
+	" \t"		reset
+
+:first Idle
+	*		idle		noeat
+	"/"		regex
+	"#"		reset_line_comment	recolor=-1
+
+:regex Idle
+	*		regex
+	"/"		idle
+	"\\"		regex_skip
+
+:regex_skip Idle
+	*		regex
+
+:reset_line_comment Comment comment
+	*		reset_line_comment
+	"BFHNTX"        line_comment	noeat call=comment_todo.comment_todo()
+	"\n"		reset
+
+:idle Idle
+	*		idle
+	"\n"		reset
+	"#"		line_comment	recolor=-1
+	"0"		first_digit	recolor=-1
+	"1-9"		decimal	recolor=-1
+	"."		maybe_float
+	"\""		string		recolor=-1
+	"'"		char		recolor=-1
+	"a-zA-Z_"	ident		buffer
+	"{}"		brace		recolor=-1
+	"/,:;=()><[]*&|!~+\-%^"	control		recolor=-1
+
+:brace Brace
+	*	idle	noeat
+
+:control Control
+	*	idle	noeat
+
+:line_comment Comment comment
+	*		line_comment
+	"BFHNTX"        line_comment	noeat call=comment_todo.comment_todo()
+	"\n"		reset
+
+:first_digit Number
+	*		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 Number
+	*		idle	noeat
+	"0-7"		octal
+	"89"		bad_number	recolor=-1
+
+:hex Number
+	*		idle	noeat
+	"0-9A-Fa-f"	hex
+
+:decimal Number
+	*		idle	noeat
+	"0-9"		decimal
+	"eE"		epart
+	"."		float
+
+:maybe_float Number
+	*		idle	recolor=-2	noeat
+	"0-9"		float		recolor=-2
+
+:float Number
+	*		idle	noeat
+	"eE"		epart
+	"0-9"		float
+
+:epart Number
+	*		idle	noeat
+	"0-9+\-"	enum
+
+:enum Number
+	*		idle	noeat
+	"0-9"		enum
+
+:string	String string
+	*		string
+	"\""		idle
+	"\\"		string_escape	recolor=-1
+	"%"		string_control	recolor=-1
+
+:string_escape StringEscape string
+	*		string
+	"x"		string_hex1
+	"0-7"		string_octal2
+	"\n"		string		recolor=-2
+
+:string_hex1 StringEscape string
+	*		string		noeat
+	"0-9a-fA-F"	string_hex2
+
+:string_hex2 StringEscape string
+	*		string		noeat
+	"0-9a-fA-F"	string
+
+:string_octal2 StringEscape string
+	*		string		noeat
+	"0-7"		string_octal3
+
+:string_octal3 StringEscape string
+	*		string		noeat
+	"0-7"		string
+
+:string_control StringEscape string
+	*		string
+	"\""		string noeat
+	"\n"		reset
+	"0-9.\-+ #hjILtz$"	string_control
+
+:char Character
+	*		char
+	"\n"		reset
+	"'"		idle
+	"\\"		char_escape	recolor=-1
+
+:char_escape CharacterEscape
+	*		char
+	"x"		char_hex1
+	"0-7"		char_octal2
+	"\n"		char		recolor=-2
+
+:char_hex1 CharacterEscape
+	*		char		noeat
+	"0-9a-fA-F"	char_hex2
+
+:char_hex2 CharacterEscape
+	*		char		noeat
+	"0-9a-fA-F"	char
+
+:char_octal2 CharacterEscape
+	*		char		noeat
+	"0-7"		char_octal3
+
+:char_octal3 CharacterEscape
+	*		char		noeat
+	"0-7"		char
+
+:ident Ident
+	*			idle	noeat istrings
+	"if"			kw
+	"else"			kw
+	"while"			kw
+	"do"			kw
+	"for"			kw
+	"break"			kw
+	"continue"		kw
+	"delete"		kw
+	"exit"			kw
+	"close"			kw
+	"getline"		kw
+	"next"			kw
+	"nextfile"		kw
+	"print"			kw
+	"printf"		kw
+	"system"		kw
+	"fflush"		kw
+	"atan2"			kw
+	"cos"			kw
+	"exp"			kw
+	"int"			kw
+	"log"			kw
+	"rand"			kw
+	"sin"			kw
+	"sqrt"			kw
+	"srand"			kw
+	"asort"			kw
+	"asorti"		kw
+	"gensub"		kw
+	"gsub"			kw
+	"index"			kw
+	"length"		kw
+	"match"			kw
+	"split"			kw
+	"sprintf"		kw
+	"strtonum"		kw
+	"sub"			kw
+	"substr"		kw
+	"tolower"		kw
+	"toupper"		kw
+	"mktime"		kw
+	"strftime"		kw
+	"systime"		kw
+	"and"			kw
+	"compl"			kw
+	"lshift"		kw
+	"or"			kw
+	"rshift"		kw
+	"xor"			kw
+	"bindtextdomain"	kw
+	"dcgettext"		kw
+	"dcngettext"		kw
+	"function"		kw
+	"return"		kw
+done
+	"a-zA-Z0-9_"	ident
+
+:kw Keyword
+	*	idle	noeat
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.