/** Automic Engine Syntax Highlighting Joel Wiesmann Constants not yet supported. Might be replaced by a list of valid attributes. */ SyntaxHighlighter.brushes.Custom = function() { /* Functions having a return value */ var funcs = 'CREATE_OBJECT EXPORT IMPORT MODIFY_OBJECT MOVE_OBJECT REMOVE_OBJECT ACTIVATE_UC_OBJECT AUTOFORECAST CANCEL_UC_OBJECT ' + 'DEACTIVATE_UC_OBJECT FORECAST_OBJECT FORECAST_TASK RERUN_UC_OBJECT RESTART_UC_OBJECT ROLLBACK_UC_OBJECT SYS_STATE_ACTIVE ' + 'SYS_ACTIVE_COUNT SYS_STATE_JOB_ACTIVE SYS_STATE_JOBS_IN_GROUP SYS_STATE_JP_ACTIVE TOGGLE_OBJECT_STATUS GET_ATT GET_ATT_PLAIN ' + 'GET_ATT_SUBSTR GET_CONDITION GET_CONNECTION GET_LOGIN GET_OBJECT_TYPE GET_OH_IDNR GET_PUBLISHED_VALUE GET_STATISTIC_DETAIL ' + 'GET_SYNC GET_VAR MODIFY_TASK MODIFY_UC_OBJECT SET_SYNC XML_BEAUTIFY XML_GET_ATTRIBUTE XML_GET_CHILD_COUNT XML_GET_FIRST_CHILD ' + 'XML_GET_LAST_CHILD XML_GET_NEXTSIBLING XML_GET_NODE_NAME XML_GET_NODE_TEXT XML_OPEN XML_PRINTINTOFILE XML_SELECT_NODE FIND ' + 'GET_SCRIPT_VAR LENGTH GET_MSG_TXT GET_MSG_TYPE SEND_MAIL SYS_LAST_ERR_INS SYS_LAST_ERR_NR SYS_LAST_ERR_SYSTXT GET_PARENT_NAME ' + 'GET_PARENT_NR GET_PARENT_TYPE GET_UC_OBJECT_STATUS GET_UC_OBJECT_NR SYS_ACT_HOST SYS_ACT_JP SYS_ACT_ME_NAME SYS_ACT_ME_NR ' + 'SYS_ACT_ME_TYPE SYS_ACT_PARENT_NAME SYS_ACT_PARENT_NR SYS_ACT_PARENT_TYPE SYS_ACT_PREV_NAME SYS_ACT_PREV_NR SYS_ACT_PTTYP ' + 'SYS_ACT_RESTART SYS_ACT_RESTART_COUNT SYS_ACT_RESTART_ME_NR SYS_ACT_TOP_NAME SYS_ACT_TOP_NR SYS_ACT_USERID SYS_LAST_RESTART_POINT ' + 'SYS_LAST_RESTART_TEXT SYS_RESTART_POINT IS_GROUP_MEMBER SYS_ACT_CLIENT SYS_ACT_CLIENT_TEXT SYS_USER_ALIVE SYS_USER_DEP SYS_USER_LNAME ' + 'SYS_USER_NAME CREATE_PROCESS GET_PROCESS_INFO GET_PROCESS_LINE LOAD_PROCESS PREP_PROCESS PREP_PROCESS_AGENTGROUP PREP_PROCESS_COMMENTS ' + 'PREP_PROCESS_DOCU PREP_PROCESS_FILE PREP_PROCESS_FILENAME PREP_PROCESS_PROMPTSET PREP_PROCESS_REPORT PREP_PROCESS_REPORTLIST ' + 'PREP_PROCESS_VAR PUT_PROCESS_LINE SAVE_PROCESS WRITE_PROCESS GET_CONSOLE GET_FILESYSTEM GET_WIN_EVENT CHANGE_LOGGING GET_UC_SERVER_NAME ' + 'GET_UC_SETTING GET_UC_SYSTEM_NAME ILM MODIFY_SYSTEM SYS_BUSY_01 SYS_BUSY_10 SYS_BUSY_60 SYS_HOST_ALIVE SYS_INFO SYS_SERVER_ALIVE ' + 'SYS_SNMP_ACTIVE SYS_USER_LANGUAGE TOGGLE_SYSTEM_STATUS ADD_DAYS ADD_PERIOD ADD_TIME ADD_TIMESTAMP CALE_LOOK_AHEAD CONV_DATE CONV_TIMESTAMP ' + 'DAY_OF_YEAR DIFF_DATE DIFF_TIME FIRST_OF_PERIOD LAST_OF_PERIOD SUB_DAYS SUB_PERIOD SUB_TIME SUB_TIMESTAMP SYS_DATE SYS_DATE_PHYSICAL SYS_LDATE ' + 'SYS_TIME SYS_TIME_PHYSICAL SYS_TIMESTAMP_PHYSICAL VALID_CALE VALID_DATE VALID_TIME WEEK_NR WEEKDAY_NR WEEKDAY_XX YEAR_9999 ADD DIV GET_BIT MOD ' + 'MULT RANDOM SUB ARRAY_2_STRING ALPHA2RUNNR CONVERT FORMAT HEX ISNUMERIC RUNNR2ALPHA STR_CAT STR_CUT STR_ENDS_WITH STR_FIND STR_FIND_REVERSE ' + 'STR_ISLOWER STR_ISUPPER STR_LC STR_LENGTH STR_LTRIM STR_MATCH STR_PAD STR_REVERSE STR_RTRIM STR_SPLIT STR_STARTS_WITH STR_SUBSTITUTE ' + 'STR_SUBSTITUTE_VAR STR_TRIM STR_UC UC_CRLF'; /* Statements without a return value */ var keywords = 'ADD_ATT ADD_COMMENT ATTACH_SYNC BEGINREAD ENDREAD CLEAR CLOSE_PROCESS CONST DATA DEFINE DELETE_VAR DISCONNECT EXIT ' + 'EXT_REPORT_OFF EXT_REPORT_ON FILL GENERATE IF ELSE ENDIF INCLUDE INC_SCRIPT JCL_CONCAT_CHAR JCL_SUBSTITUTE MODIFY_STATE ' + 'ON_ERROR PRINT PROCESS TERM_PROCESS ENDPROCESS PSET PUBLISH PUT_ATT PUT_ATT_APPEND PUT_PROMPT_BUFFER PUT_READ_BUFFER ' + 'PUT_VAR PUT_VAR_COL READ REGISTER_OUTPUTFILE REMOVE_ATT REPLACE_STRUCTURE RESTART RSET SEND_MSG SEND_SNMP_TRAP SET SET_CALE ' + 'SET_CONDITION SET_LAST_ERR SET_SCRIPT_VAR SET_UC_SETTING SHUTDOWN STOP SWITCH CASE ENDSWITCH TERMINATE WAIT WHILE ENDWHILE XML_CLOSE'; /* Attributes */ var constants = 'x'; this.regexList = [ { regex: /^\s*!.*/mg, css: 'comments' }, { regex: new RegExp('^\s*: *' + this.getKeywords(keywords), 'gmi'), css: 'keyword' }, { regex: SyntaxHighlighter.regexLib.doubleQuotedString, css: 'string' }, { regex: SyntaxHighlighter.regexLib.singleQuotedString, css: 'string' }, { regex: /&\w+#?/g, css: 'variable' }, { regex: new RegExp(this.getKeywords(constants), 'gmi'), css: 'constants' }, { regex: new RegExp(this.getKeywords(funcs), 'gmi'), css: 'functions' }, { regex: new RegExp('[^:|^!]', 'gm'), css: 'bold' }, // { regex: /^\s*\b(?:[^:!]).*\b$/mg, css: 'bold' }, ]; }; SyntaxHighlighter.brushes.Custom.prototype = new SyntaxHighlighter.Highlighter(); SyntaxHighlighter.brushes.Custom.aliases = ['AEScript', 'aescript', 'UC4Script'];