1<?php
2/*************************************************************************************
3 * nagios.php
4 * --------
5 * Author: Albéric de Pertat <alberic@depertat.net>
6 * Copyright: (c) 2012 Albéric de Pertat (https://github.com/adepertat/geshi-nagios)
7 * Release Version: 1.0.9.1
8 * Date Started: 2012/01/19
9 *
10 * Nagios language file for GeSHi.
11 *
12 * CHANGES
13 * -------
14 * 2012/01/19 (1.0.0)
15 *  -  First Release
16 *
17 * TODO (updated 2012/01/19)
18 * -------------------------
19 *
20 *************************************************************************************
21 *
22 *     This file is part of GeSHi.
23 *
24 *   GeSHi is free software; you can redistribute it and/or modify
25 *   it under the terms of the GNU General Public License as published by
26 *   the Free Software Foundation; either version 2 of the License, or
27 *   (at your option) any later version.
28 *
29 *   GeSHi is distributed in the hope that it will be useful,
30 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
31 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
32 *   GNU General Public License for more details.
33 *
34 *   You should have received a copy of the GNU General Public License
35 *   along with GeSHi; if not, write to the Free Software
36 *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
37 *
38 ************************************************************************************/
39
40$language_data = array(
41    'LANG_NAME' => 'Nagios',
42    'COMMENT_SINGLE' => array(1 => ';', 2 => '#'),
43    'COMMENT_MULTI' => array(),
44    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
45    'HARDQUOTE' => array("'", "'"),
46    'QUOTEMARKS' => array("'", '"'),
47    'ESCAPE_CHAR' => '\'',
48    'KEYWORDS' => array(
49        1 => array(
50            'define'
51            ),
52        2 => array(
53            'command', 'contact', 'contactgroup', 'host', 'hostdependency',
54            'hostescalation', 'hostextinfo', 'hostgroup', 'service',
55            'servicedependency', 'serviceescalation',
56            'serviceextinfo', 'servicegroup', 'timeperiod'
57            ),
58        3 => array(
59            'active_checks_enabled', 'passive_checks_enabled', 'alias',
60            'display_name', 'host_name', 'address', 'hostgroups', 'parents',
61            'hostgroup_members', 'members', 'service_description',
62            'servicegroups', 'is_volatile', 'servicegroup_name',
63            'servicegroup_members', 'contact_name', 'contactgroups', 'email',
64            'pager', 'can_submit_commands', 'contactgroup_name',
65            'contactgroup_members', 'host_notifications_enabled',
66            'service_notifications_enabled', 'host_notification_period',
67            'service_notification_period', 'host_notification_options',
68            'service_notification_options', 'host_notification_commands',
69            'service_notification_commands', 'check_command',
70            'check_freshness', 'check_interval', 'check_period', 'contacts',
71            'contact_groups', 'event_handler', 'event_handler_enabled',
72            'flap_detection_enabled', 'flap_detection_options',
73            'freshness_threshold', 'initial_state', 'low_flap_threshold',
74            'high_flap_threshold', 'max_check_attempts',
75            'notification_interval', 'first_notification_delay',
76            'notification_period', 'notification_options',
77            'notifications_enabled', 'stalking_options', 'notes', 'notes_url',
78            'action_url', 'icon_image', 'icon_image_alt', 'vrml_image',
79            'statusmap_image', '2d_coords', '3d_coords', 'obsess_over_host',
80            'obsess_over_hostver_service', 'process_perf_data',
81            'retain_status_information', 'retain_nonstatus_information',
82            'retry_interval', 'register', 'use', 'name', 'timeperiod_name',
83            'exclude', 'command_name', 'command_line', 'dependent_host_name',
84            'dependent_hostgroup_name', 'dependent_service_description',
85            'inherits_parent', 'execution_failure_criteria',
86            'notification_failure_criteria', 'dependency_period',
87            'first_notification', 'last_notification', 'escalation_period',
88            'escalation_options'
89            ),
90        4 => array(
91            'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday',
92            'sunday', 'january', 'february', 'march', 'april', 'may', 'june',
93            'july', 'august', 'september', 'october', 'november', 'december',
94            'day'
95            )
96        ),
97    'SYMBOLS' => array(
98        0 => array(
99            '{', '}', ',', '+'
100            )
101        ),
102    'CASE_SENSITIVE' => array(
103        GESHI_COMMENTS => false,
104        1 => false,
105        2 => false,
106        3 => false,
107        4 => false,
108        ),
109    'STYLES' => array(
110        'KEYWORDS' => array(
111            1 => 'font-weight:bold;color:#FFDCA8;',
112            2 => 'font-weight:bold;color #FFA858;',
113            3 => 'font-weight:bold;color:#00C0C0;',
114            4 => 'font-weight:bold;color:#C0C0FF;'
115            ),
116        'SYMBOLS' => array(
117            0 => 'font-weight:bold;color:#000000;'
118            ),
119        'NUMBERS' => array(
120            0 => ''
121            ),
122        'COMMENTS' => array(
123            0 => 'color: #AAAAAA; font-style: italic;',
124            1 => 'color: #AAAAAA; font-style: italic;',
125            2 => 'color: #AAAAAA; font-style: italic;'
126            ),
127        'BRACKETS' => array(
128            0 => 'color: #009900;'
129            ),
130        'STRINGS' => array(
131            0 => 'color: #660066;',
132            'HARD' => 'color: #660066;'
133            ),
134        'ESCAPE_CHAR' => array(
135            0 => 'color: #000099; font-weight: bold;'
136            ),
137        'METHODS' => array(
138            1 => 'color: #006600;'
139            ),
140        'REGEXPS' => array(
141            0 => 'font-weight:bold;color:#808080;',
142            1 => 'font-weight:bold;color:#000080;',
143            2 => 'font-weight:bold;color:red;',
144            3 => 'font-weight:bold;color:#808000;',
145            4 => 'font-weight:bold;color:blue;',
146            5 => 'font-weight:bold;color:#C0FFC0;',
147            ),
148        'SCRIPT' => array(
149            0 => '',
150            )
151        ),
152    'OOLANG' => false,
153    'OBJECT_SPLITTERS' => array(
154        1 => '\\'
155        ),
156    'REGEXPS' => array(
157        // Custom macros
158        0 => array(
159            GESHI_SEARCH => '(\$[a-zA-Z_]+\$)',
160            GESHI_REPLACE => '\\1',
161            GESHI_MODIFIERS => '',
162            GESHI_BEFORE => '',
163            GESHI_AFTER => '',
164            ),
165        // Custom macro definitions
166        1 => array(
167            GESHI_SEARCH => '(\A|\s)(_[a-zA-Z_]+)',
168            GESHI_REPLACE => '\\2',
169            GESHI_MODIFIERS => '',
170            GESHI_BEFORE => '\\1',
171            GESHI_AFTER => '',
172            ),
173        // $USERxx$
174        2 => array(
175            GESHI_SEARCH => '(\$USER[0-9]+\$)',
176            GESHI_REPLACE => '\\1',
177            GESHI_MODIFIERS => '',
178            GESHI_BEFORE => '',
179            GESHI_AFTER => '',
180            ),
181        // $ARGxx$
182        3 => array(
183            GESHI_SEARCH => '(\$ARG[1-9]\$)',
184            GESHI_REPLACE => '\\1',
185            GESHI_MODIFIERS => '',
186            GESHI_BEFORE => '',
187            GESHI_AFTER => '',
188            ),
189        // register 0
190        4 => array(
191            GESHI_SEARCH => '(\bregister[\\x20\\t]+[01])',
192            GESHI_REPLACE => '\\1',
193            GESHI_MODIFIERS => '',
194            GESHI_BEFORE => '',
195            GESHI_AFTER => '',
196            ),
197        // use
198        5 => array(
199            GESHI_SEARCH => '(use[\\x20\\t]+[^\\x20\\t]+)([\\x20\\t]*[$;#])',
200            GESHI_REPLACE => '\\2',
201            GESHI_MODIFIERS => '',
202            GESHI_BEFORE => '\\1',
203            GESHI_AFTER => '',
204            ),
205        ),
206    'URLS' => array(
207        1 => '',
208        2 => '',
209        3 => '',
210        4 => ''
211        ),
212    'STRICT_MODE_APPLIES' => GESHI_NEVER,
213    'SCRIPT_DELIMITERS' => array(),
214    'HIGHLIGHT_STRICT_BLOCK' => array(
215        0 => false
216        ),
217    'TAB_WIDTH' => 4,
218    'PARSER_CONTROL' => array(
219        'ENABLE_FLAGS' => array(
220            'NUMBERS' => GESHI_NEVER
221            )
222        )
223);
224