ILIAS  release_5-2 Revision v5.2.25-18-g3f80b82851
pf.php
Go to the documentation of this file.
1 <?php
2 /*************************************************************************************
3  * pf.php
4  * --------
5  * Author: David Berard (david@nfrance.com)
6  * Copyright: (c) 2010 Benny Baumann (http://qbnz.com/highlighter/)
7  * Release Version: 1.0.8.12
8  * Date Started: 2009/10/16
9  * Based on bash.php
10  *
11  * OpenBSD PACKET FILTER language file for GeSHi.
12  *
13  * CHANGES
14  * -------
15  * 2009/10/16 (1.0.0)
16  * - First Release
17  *
18  * TODO
19  * -------------------------
20  * * Support ALTQ
21  *
22  *************************************************************************************
23  *
24  * This file is part of GeSHi.
25  *
26  * GeSHi is free software; you can redistribute it and/or modify
27  * it under the terms of the GNU General Public License as published by
28  * the Free Software Foundation; either version 2 of the License, or
29  * (at your option) any later version.
30  *
31  * GeSHi is distributed in the hope that it will be useful,
32  * but WITHOUT ANY WARRANTY; without even the implied warranty of
33  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
34  * GNU General Public License for more details.
35  *
36  * You should have received a copy of the GNU General Public License
37  * along with GeSHi; if not, write to the Free Software
38  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
39  *
40  ************************************************************************************/
41 
43  'LANG_NAME' => 'OpenBSD Packet Filter',
44  'COMMENT_SINGLE' => array('#'),
45  'COMMENT_MULTI' => array(),
46  'COMMENT_REGEXP' => array(
47  1 => "/\\$\\{[^\\n\\}]*?\\}/i",
48  2 => '/<<-?\s*?(\'?)([a-zA-Z0-9]+)\1\\n.*\\n\\2(?![a-zA-Z0-9])/siU',
49  3 => "/\\\\['\"]/siU"
50  ),
51  'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
52  'QUOTEMARKS' => array('"'),
53  'HARDQUOTE' => array("'", "'"),
54  'HARDESCAPE' => array("\'"),
55  'ESCAPE_CHAR' => '',
56  'ESCAPE_REGEXP' => array(
57  1 => "#\\\\[nfrtv\\$\\\"\n]#i",
58  2 => "#\\$[a-z_][a-z0-9_]*#i",
59  3 => "/\\$\\{[^\\n\\}]*?\\}/i",
60  4 => "/\\$\\([^\\n\\)]*?\\)/i",
61  5 => "/`[^`]*`/"
62  ),
63  'KEYWORDS' => array(
64  1 => array(
65  'pass'
66  ),
67  2 => array(
68  'block'
69  ),
70  3 => array(
71  'quick','keep','state','antispoof','table','persist','file','scrub',
72  'set','skip','flags','on'
73  ),
74  4 => array(
75  'in','out','proto'
76  )
77  ),
78  'SYMBOLS' => array(
79  '(', ')', '[', ']', '!', '@', '%', '&', '*', '|', '/', '<', '>', ';;', '`','='
80  ),
81  'CASE_SENSITIVE' => array(
82  GESHI_COMMENTS => false,
83  1 => true,
84  2 => true,
85  3 => true,
86  4 => true
87  ),
88  'STYLES' => array(
89  'KEYWORDS' => array(
90  1 => 'color: #009900; font-weight: bold;',
91  2 => 'color: #990000; font-weight: bold;',
92  3 => 'color: #7a0874;',
93  4 => 'color: #336699;'
94  ),
95  'COMMENTS' => array(
96  0 => 'color: #666666; font-style: italic;',
97  1 => 'color: #800000;',
98  2 => 'color: #cc0000; font-style: italic;',
99  3 => 'color: #000000; font-weight: bold;'
100  ),
101  'ESCAPE_CHAR' => array(
102  1 => 'color: #000099; font-weight: bold;',
103  2 => 'color: #007800;',
104  3 => 'color: #007800;',
105  4 => 'color: #007800;',
106  5 => 'color: #780078;',
107  'HARD' => 'color: #000099; font-weight: bold;'
108  ),
109  'BRACKETS' => array(
110  0 => 'color: #7a0874; font-weight: bold;'
111  ),
112  'STRINGS' => array(
113  0 => 'color: #CC0000;',
114  'HARD' => 'color: #CC0000;'
115  ),
116  'NUMBERS' => array(
117  0 => 'color: #ff00cc;'
118  ),
119  'METHODS' => array(
120  ),
121  'SYMBOLS' => array(
122  0 => 'color: #000000; font-weight: bold;'
123  ),
124  'REGEXPS' => array(
125  0 => 'color: #007800;',
126  1 => 'color: #007800;',
127  2 => 'color: #007800;',
128  4 => 'color: #007800;',
129  5 => 'color: #660033;',
130  6 => 'color: #000099; font-weight: bold;',
131  7 => 'color: #0000ff;',
132  ),
133  'SCRIPT' => array(
134  )
135  ),
136  'URLS' => array(
137  1 => '',
138  2 => '',
139  3 => '',
140  4 => ''
141  ),
142  'OOLANG' => false,
143  'OBJECT_SPLITTERS' => array(
144  ),
145  'REGEXPS' => array(
146  //Variables (will be handled by comment_regexps)
147  0 => "\\$\\{[a-zA-Z_][a-zA-Z0-9_]*?\\}",
148  //Variables without braces
149  1 => "\\$[a-zA-Z_][a-zA-Z0-9_]*",
150  //Variable assignment
151  2 => "(?<![\.a-zA-Z_\-])([a-zA-Z_][a-zA-Z0-9_]*?)(?==)",
152  //Shorthand shell variables
153  4 => "\\$[*#\$\\-\\?!]",
154  //Parameters of commands
155  5 => "(?<=\s)--?[0-9a-zA-Z\-]+(?=[\s=]|$)",
156  //IPs
157  6 => "([0-9]{1,3}\.){3}[0-9]{1,3}",
158  //Tables
159  7 => "(&lt;(.*)&gt;)"
160  ),
161  'STRICT_MODE_APPLIES' => GESHI_NEVER,
162  'SCRIPT_DELIMITERS' => array(
163  ),
164  'HIGHLIGHT_STRICT_BLOCK' => array(
165  ),
166  'TAB_WIDTH' => 4,
167  'PARSER_CONTROL' => array(
168  'COMMENTS' => array(
169  'DISALLOWED_BEFORE' => '$'
170  ),
171  'KEYWORDS' => array(
172  'DISALLOWED_BEFORE' => "(?<![\.\-a-zA-Z0-9_\$\#])",
173  'DISALLOWED_AFTER' => "(?![\.\-a-zA-Z0-9_%\\/])"
174  )
175  )
176 );
$language_data
Definition: pf.php:42
const GESHI_COMMENTS
Used in language files to mark comments.
Definition: geshi.php:150
Create styles array
The data for the language used.
const GESHI_NEVER
#+ private
Definition: geshi.php:124
const GESHI_CAPS_NO_CHANGE
Lowercase keywords found.
Definition: geshi.php:95