###################################################################### ################################# C ################################## ###################################################################### [c] #comment "", "", "[^/]/\*.*?\*/" #string "", "", "\".*?(\"|$)" #preprocessor line "", "", "^[ \t]*#.*?$" #character constant "", "", "'.'" #numeric constant "", "", "\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\.?[0-9]*)|(\.[0-9]+))((e|E)(\+|-)?[0-9]+)?)(L|l|UL|ul|u|U|F|f)?\b" #storage keyword "", "", "\b(const|extern|auto|register|static|unsigned|signed|volatile|char|double|float|int|long|short|void|typedef|struct|union|enum)\b" #keyword "", "", "\b(return|goto|if|else|case|default|switch|break|continue|while|do|for|sizeof)\b" #braces "", "", "[\{\}]" #symbols "", "", "([\*\-\+=:;%&\|<>\(\)\[\]!]|[^/]/[^/])" #identifiers "", "", "([a-zA-Z_][a-zA-Z_0-9]*)" ###################################################################### ################################# C ++ ############################### ###################################################################### [c++] #comment "", "", "[^/]/\*.*?\*/" #cplus comment "", "", "//.*?$" #string "", "", "\".*?(\"|$)" #preprocessor line "", "", "^[ \t]*#.*?$" #character constant "", "", "'.'" #numeric constant "", "", "\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\.?[0-9]*)|(\.[0-9]+))((e|E)(\+|-)?[0-9]+)?)(L|l|UL|ul|u|U|F|f)?\b" #storage keyword "", "", "\b(class|typename|typeid|template|friend|virtual|inline|explicit|operator|overload|public|private|protected|const|extern|auto|register|static|mutable|unsigned|signed|volatile|char|double|float|int|long|short|bool|wchar_t|void|typedef|struct|union|enum)\b" #keyword "", "", "\b(new|delete|this|return|goto|if|else|case|default|switch|break|continue|while|do|for|catch|throw|sizeof|true|false|namespace|using|dynamic_cast|static_cast|reinterpret_cast)\b" #braces "", "", "[\{\}]" #symbols "", "", "([\*\-\+=:;%&\|<>\(\)\[\]!]|[^/]/[^/])" #identifiers "", "", "([a-zA-Z_][a-zA-Z_0-9]*)" ###################################################################### ################################# Ada 95 ############################# ###################################################################### [ada,ada95] #Comments "", "", "--.*?$" #String Literals "", "", "\".*?(\"|$)" #Character Literals "", "", "'.'" #Ada Attibutes "", "", "'[a-zA-Z][a-zA-Z_]+\b" #Numeric Literals "", "", "(((2|8|10|16)#[_0-9a-fA-F]*#)|[0-9.]+)" #Withs Pragmas Use "", "", "\b(([wW]ith|WITH|[pP]ragma|PRAGMA|[uU]se|USE)[ \t\n\f\r]+[a-zA-Z0-9_.]+;)+\b" #Predefined Types "", "", "\b([bB]oolean|BOOLEAN|[cC]haracter|CHARACTER|[cC]ount|COUNT|[dD]uration|DURATION|[fF]loat|FLOAT|[iI]nteger|INTEGER|[lL]ong_[fF]loat|LONG_FLOAT|[lL]ong_[iI]nteger|LONG_INTEGER|[pP]riority|PRIORITY|[sS]hort_[fF]loat|SHORT_FLOAT|[sS]hort_[iI]nteger|SHORT_INTEGER|[sS]tring|STRING)\b" #Predefined Subtypes "", "", "\b([fF]ield|FIELD|[nN]atural|NATURAL|[nN]umber_[bB]ase|NUMBER_BASE|[pP]ositive|POSITIVE|[pP]riority|PRIORITY)\b" #Reserved Words "", "", "\b([aA]bort|ABORT|[aA]bs|ABS|[aA]ccept|ACCEPT|[aA]ccess|ACCESS|[aA]nd|AND|[aA]rray|ARRAY|[aA][tT]|[bB]egin|BEGIN|[bB]ody|BODY|[cC]ase|CASE|[cC]onstant|CONSTANT|[dD]eclare|DECLARE|[dD]elay|DELAY|[dD]elta|DELTA|[dD]igits|DIGITS|[dD][oO]||[eE]lse|ELSE|[eE]lsif|ELSIF|[eE]nd|END|[eE]ntry|ENTRY|[eE]xception|EXCEPTION|[eE]xit|EXIT|[fF]or|FOR|[fF]unction|FUNCTION|[gG]eneric|GENERIC|[gG]oto|GOTO|[iI][fF]|[iI][nN]|[iI][sS]|[lL]imited|LIMITED|[lL]oop|LOOP|[mM]od|MOD|[nN]ew|NEW|[nN]ot|NOT|[nN]ull|NULL|[oO][fF]|[oO][rR]|[oO]thers|OTHERS|[oO]ut|OUT|[pP]ackage|PACKAGE|[pP]ragma|PRAGMA|[pP]rivate|PRIVATE|[pP]rocedure|PROCEDURE|[rR]aise|RAISE|[rR]ange|RANGE|[rR]ecord|RECORD|[rR]em|REM|[rR]enames|RENAMES|[rR]eturn|RETURN|[rR]everse|REVERSE|[sS]elect|SELECT|[sS]eparate|SEPARATE|[sS]ubtype|SUBTYPE|[tT]ask|TASK|[tT]erminate|TERMINATE|[tT]hen|THEN|[tT]ype|TYPE|[uU]se|USE|[wW]hen|WHEN|[wW]hile|WHILE|[wW]ith|WITH|[xX]or|XOR)\b" #Ada 95 Only "", "", "\b([aA]bstract|ABSTRACT|[tT]agged|TAGGED|[aA]ll|ALL|[pP]rotected|PROTECTED|[aA]liased|ALIASED|[rR]equeue|REQUEUE|[uU]ntil|UNTIL)\b" #Identifiers "", "", "\b[a-zA-Z][a-zA-Z0-9_]*\b" #Dot All "", "", "\.[aA][lL][lL]\b" ###################################################################### ################################# Pascal ############################# ###################################################################### [pas,pascal] #comment1 (* *) "", "", "\(\*.*?\*\)" #comment1 { } "", "", "\{.*?\}" #string "", "", "'.*?('|$)" #preprocessor line "", "", "^[ \t]*#.*?$" #character constant "", "", "'.'" #numeric constant "", "", "\b((0(x|X)[0-9a-fA-F]*)|[0-9.]+((e|E)(\+|-)?)?[0-9]*)(L|l|UL|ul|u|U|F|f)?\b" #storage and ops "", "", "\b(and|AND|array|const|div|export|file|function|import|in|IN|label|mod|module|nil|not|NOT|only|or|OR|packed|pow|pragma|procedure|program|protected|qualified|record|restricted|set|type|var)\b" #keywords "", "", "\b(begin|case|do|downto|else|end|for|goto|if|of|otherwise|then|to|until|while|with)\b" #symbols "", "", "([\*\-\+=:;<>\(\)\[\]!]|[^/]/[^/])" #identifiers "", "", "([a-zA-Z_][a-zA-Z_0-9]*)" ###################################################################### ################################# HTML ############################### ###################################################################### [html] #comment "", "", "" #special chars "", "", "\&[-.a-zA-Z0-9#]*;?" #tag "", "", "<(/|!)?[-.a-zA-Z0-9]*.*?>"