diff options
Diffstat (limited to 'tools/syntax/nano/icinga2.nanorc')
-rw-r--r-- | tools/syntax/nano/icinga2.nanorc | 157 |
1 files changed, 157 insertions, 0 deletions
diff --git a/tools/syntax/nano/icinga2.nanorc b/tools/syntax/nano/icinga2.nanorc new file mode 100644 index 0000000..cff78be --- /dev/null +++ b/tools/syntax/nano/icinga2.nanorc @@ -0,0 +1,157 @@ +### Nano synteax file +### Icinga2 object configuration file + +syntax "icinga2" "/etc/icinga2/.*\.conf$" "/usr/share/icinga2/include/(plugin|itl|.*\.conf$)" + +## objects types +icolor brightgreen "object[ \t]+(host|hostgroup|service|servicegroup|user|usergroup)" +icolor brightgreen "object[ \t]+(checkcommand|notificationcommand|eventcommand|notification)" +icolor brightgreen "object[ \t]+(timeperiod|scheduleddowntime|dependency|perfdatawriter)" +icolor brightgreen "object[ \t]+(graphitewriter|idomysqlconnection|idomysqlconnection)" +icolor brightgreen "object[ \t]+(livestatuslistener|externalcommandlistener)" +icolor brightgreen "object[ \t]+(compatlogger|checkcomponent|notificationcomponent)" +icolor brightgreen "object[ \t]+(filelogger|sysloglogger|journaldlogger|apilistener|endpoint|zone)" + +## apply def +icolor brightgreen "apply[ \t]+(Service|Dependency|Notification|ScheduledDowntime)" + + +## objects attributes +icolor red "(^|^\s+)(accept_commands|accept_config|action_url|address|address6|arguments|author|bind_host)" +icolor red "(^|^\s+)(bind_port|ca_path|categories|cert_path|check_command|check_interval)" +icolor red "(^|^\s+)(check_period|child_host_name|child_service_name|cleanup|command|command_endpoint|command_path)" +icolor red "(^|^\s+)(comment|compat_log_path|crl_path|database|disable_checks|disable_notifications)" +icolor red "(^|^\s+)(display_name|duration|email|enable_active_checks|enable_event_handler)" +icolor red "(^|^\s+)(enable_flapping|enable_ha|enable_notifications|enable_passive_checks|enable_perfdata)" +icolor red "(^|^\s+)(endpoints|env|event_command|failover_timeout|fixed|flapping_threshold|groups|host)" +icolor red "(^|^\s+)(host_format_template|host_name|host_name_template|host_perfdata_path|host_temp_path|icon_image)" +icolor red "(^|^\s+)(icon_image_alt|instance_description|instance_name|interval|key_path|log_dir)" +icolor red "(^|^\s+)(log_duration|max_check_attempts|methods|name|notes|notes_url|objects_path)" +icolor red "(^|^\s+)(pager|parent|parent_host_name|parent_service_name|password|path|period)" +icolor red "(^|^\s+)(port|ranges|retry_interval|rotation_interval|rotation_method)" +icolor red "(^|^\s+)(service_format_template|service_name|service_name_template|service_perfdata_path|service_temp_path)" +icolor red "(^|^\s+)(severity|socket_path|socket_type|spool_dir|states|status_path|table_prefix)" +icolor red "(^|^\s+)(timeout|times|types|update_interval|user|user_groups|users|volatile|zone)" +icolor red "(^|^\s+)(vars\.\w+)" + + +## keywords +icolor red "(^|^\s+)|(icinga2Keyword|template|const|import|include|include_recursive|var|function|return|to|use|locals|globals|this)\s+" + +## Assign conditions +icolor magenta "(assign|ignore)[ \t]+where" + +## Global functions +icolor white "(regex|match|len|union|intersection|keys|string|number|bool|random|log|typeof|get_time|exit)" + +## Accessor Functions +icolor white "(get_host|get_service|get_user|get_check_command|get_event_command|get_notification_command)" +icolor white "(get_host_group|get_service_group|get_user_group|get_time_period)" + + +## Math functions +icolor white "(Math.E|Math.LN2|Math.LN10|Math.LOG2E|Math.PI|Math.SQRT1_2|Math.SQRT2)" +icolor white "(Math.abs|Math.acos|Math.asin|Math.atan|Math.atan2|Math.ceil|Math.cos)" +icolor white "(Math.exp|Math.floor|Math.isinf|Math.isnan|Math.log|Math.max|Math.min)" +icolor white "(Math.pow|Math.random|Math.round|Math.sign|Math.sin|Math.sqrt|Math.tan)" + +## Json functions +icolor white "(Json.encode|Json.decode)" + +## String functions +icolor white "(\.to_string)" +icolor white "(\.find)" +icolor white "(\.contains)" +icolor white "(\.len)" +icolor white "(\.lower)" +icolor white "(\.upper)" +icolor white "(\.replace)" +icolor white "(\.split)" +icolor white "(\.substr)" + +## Array and Dict Functions +icolor white "(\.add)" +icolor white "(\.clear)" +icolor white "(\.clone)" +icolor white "(\.contains)" +icolor white "(\.len)" +icolor white "(\.remove)" +icolor white "(\.set)" +icolor white "(\.remove)" +icolor white "(\.sort)" +icolor white "(\.join)" +icolor white "(\.clone)" +icolor white "(\.call)" +icolor white "(\.callv)" + + +## Conditional statements +icolor white "(if|else)" + +## Loops +icolor white "(while|for|break|continue)" + +## Operators +icolor green "\s(\.)\s" +icolor green "\s(!)\s" +icolor green "\s(\~)\s" +icolor green "\s(\+)\s" +icolor green "\s(-)\s" +icolor green "\s(\*)\s" +icolor green "\s(/)\s" +icolor green "\s(%)\s" +icolor green "\s(=)\s" +icolor green "\s(<)\s" +icolor green "\s(>)\s" +icolor green "\s(<<)\s" +icolor green "\s(>>)\s" +icolor green "\s(<=)\s" +icolor green "\s(>=)\s" +icolor green "\s(in)\s" +icolor green "\s(!in)\s" +icolor green "\s(==)\s" +icolor green "\s(!=)\s" +icolor green "\s(&)\s" +icolor green "\s(\^)\s" +icolor green "\s(|)\s" +icolor green "\s(&&)\s" +icolor green "\s(||)\s" +icolor green "\s(=>)\s" +icolor green "\s(\+=)\s" +icolor green "\s(-=)\s" +icolor green "\s(\*=)\s" +icolor green "\s(/=)\s" + +## Global constats +icolor yellow "(PrefixDir|SysconfDir|ZonesDir|LocalStateDir|RunDir|PkgDataDir|StatePath|ObjectsPath)" +icolor yellow "(PidPath|NodeName|ApplicationType|EnableNotifications|EnableEventHandlers|EnableFlapping)" +icolor yellow "(EnableHostChecks|EnableServiceChecks|EnablePerfdata|UseVfork|RunAsUser|RunAsGroup|PluginDir)" +icolor yellow "(Vars\s+)" + +## Boolean +icolor blue "(true|false)" + +# Null +icolor blue "(null)" + + +## comments +color brightblue "\/\/.*" +color brightblue "^[ \t]*\*\($\|[ \t]\+\)" +color brightblue start="/\*" end="\*/" + +## Braces and Parens definition +# - Braces are used in dictionary definition + +color magenta "(\(|\))" +color magenta "(\[|\])" +color magenta "(\{|\})" + +## type definitions +# - double quotes " +# - single quotes ' +# - brackets <> + +color brightyellow "'" +color brightyellow """ +color brightyellow start="<" end=">" |