(sh|bash|zsh) DECLARE_EXECUTABLE #!.*$ comment #(\\[\\\n]|.)*$ doubleQuoteText "(.|\\[\\"])*?" doubleQuoteText '(.|\\[\\'])*?' keyword \@for|done|do|while|in|if|elif|then|else|fi\@ keyword [\$]+[a-zA-Z_][a-zA-Z0-9_]* functionName function (\w|_)+[ \t]*\( boolean ==|<=|>=|!=|<{1,2}|>{1,2}|&&|\{|\}