[ Index ]

PHP Cross Reference of DokuWiki

title

Body

[close]

/vendor/geshi/geshi/src/geshi/ -> roff.php (source)

   1  <?php
   2  /*************************************************************************************
   3   * roff.php
   4   * ---------------------------------
   5   * Author: Artur Iwicki (iwicki DOT artur AT svgames DOT pl)
   6   * Copyright: (c) 2017 Artur Iwicki
   7   * Release Version: 1.0.9.1
   8   * Date Started: 2017-11-17
   9   *
  10   * roff (Unix man page) language file for GeSHi.
  11   *
  12   * CHANGES
  13   * -------
  14   * 2018-12-06 (1.0.1)
  15   *  - Fix reqex for line-start requests (must start with [.'], not [\.'])
  16   *  - Add some missing whitespace escapes
  17   * 2017-11-20 (1.0.0)
  18   *  - First Release
  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' => 'roff',
  42      'COMMENT_SINGLE' => array(
  43          1 => '\\"',
  44          2 => '\\#',
  45          ),
  46      'COMMENT_MULTI' => array(),
  47      'COMMENT_REGEXP' => array(
  48          1 => '/^\\.\\\\"[[:print:]]*/m'
  49          ),
  50      'QUOTEMARKS' => array(),
  51      'ESCAPE_CHAR' => '',
  52      'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
  53      'CASE_SENSITIVE' => array(
  54          GESHI_COMMENTS => false,
  55          ),
  56      'KEYWORDS' => array(
  57          ),
  58      'SYMBOLS' => array(
  59          0 => array(
  60              '\\[-D]',    '\\(-D',
  61              '\\[Sd]',    '\\(Sd',
  62              '\\[TP]',    '\\(TP',
  63              '\\[Tp]',    '\\(Tp',
  64              '\\[ss]',    '\\(ss',
  65              '\\[ff]',    '\\(ff',
  66              '\\[fi]',    '\\(fi',
  67              '\\[fl]',    '\\(fl',
  68              '\\[Fi]',    '\\(Fi',
  69              '\\[Fl]',    '\\(Fl',
  70              '\\[/L]',    '\\(/L',
  71              '\\[/l]',    '\\(/l',
  72              '\\[/O]',    '\\(/O',
  73              '\\[/o]',    '\\(/o',
  74              '\\[AE]',    '\\(AE',
  75              '\\[ae]',    '\\(ae',
  76              '\\[OE]',    '\\(OE',
  77              '\\[oe]',    '\\(oe',
  78              '\\[IJ]',    '\\(IJ',
  79              '\\[ij]',    '\\(ij',
  80              '\\[.i]',    '\\(.i',
  81              '\\[.j]',    '\\(.j',
  82              '\\[\'A]',    '\\(\'A',
  83              '\\[\'C]',    '\\(\'C',
  84              '\\[\'E]',    '\\(\'E',
  85              '\\[\'I]',    '\\(\'I',
  86              '\\[\'O]',    '\\(\'O',
  87              '\\[\'U]',    '\\(\'U',
  88              '\\[\'Y]',    '\\(\'Y',
  89              '\\[\'a]',    '\\(\'a',
  90              '\\[\'c]',    '\\(\'c',
  91              '\\[\'e]',    '\\(\'e',
  92              '\\[\'i]',    '\\(\'i',
  93              '\\[\'o]',    '\\(\'o',
  94              '\\[\'u]',    '\\(\'u',
  95              '\\[\'y]',    '\\(\'y',
  96              '\\[:A]',    '\\(:A',
  97              '\\[:E]',    '\\(:E',
  98              '\\[:I]',    '\\(:I',
  99              '\\[:O]',    '\\(:O',
 100              '\\[:U]',    '\\(:U',
 101              '\\[:Y]',    '\\(:Y',
 102              '\\[:a]',    '\\(:a',
 103              '\\[:e]',    '\\(:e',
 104              '\\[:i]',    '\\(:i',
 105              '\\[:o]',    '\\(:o',
 106              '\\[:u]',    '\\(:u',
 107              '\\[:y]',    '\\(:y',
 108              '\\[^A]',    '\\(^A',
 109              '\\[^E]',    '\\(^E',
 110              '\\[^I]',    '\\(^I',
 111              '\\[^O]',    '\\(^O',
 112              '\\[^U]',    '\\(^U',
 113              '\\[^a]',    '\\(^a',
 114              '\\[^e]',    '\\(^e',
 115              '\\[^i]',    '\\(^i',
 116              '\\[^o]',    '\\(^o',
 117              '\\[^u]',    '\\(^u',
 118              '\\[`A]',    '\\(`A',
 119              '\\[`E]',    '\\(`E',
 120              '\\[`I]',    '\\(`I',
 121              '\\[`O]',    '\\(`O',
 122              '\\[`U]',    '\\(`U',
 123              '\\[`a]',    '\\(`a',
 124              '\\[`e]',    '\\(`e',
 125              '\\[`i]',    '\\(`i',
 126              '\\[`o]',    '\\(`o',
 127              '\\[`u]',    '\\(`u',
 128              '\\[~A]',    '\\(~A',
 129              '\\[~N]',    '\\(~N',
 130              '\\[~O]',    '\\(~O',
 131              '\\[~a]',    '\\(~a',
 132              '\\[~n]',    '\\(~n',
 133              '\\[~o]',    '\\(~o',
 134              '\\[vS]',    '\\(vS',
 135              '\\[vs]',    '\\(vs',
 136              '\\[vZ]',    '\\(vZ',
 137              '\\[vz]',    '\\(vz',
 138              '\\[,C]',    '\\(,C',
 139              '\\[,c]',    '\\(,c',
 140              '\\[oA]',    '\\(oA',
 141              '\\[oa]',    '\\(oa',
 142              '\\[a"]',    '\\(a"',
 143              '\\[a-]',    '\\(a-',
 144              '\\[a.]',    '\\(a.',
 145              '\\[a^]',    '\\(a^',
 146              '\\[aa]',    '\\(aa',
 147              '\\[ga]',    '\\(ga',
 148              '\\[ab]',    '\\(ab',
 149              '\\[ac]',    '\\(ac',
 150              '\\[ad]',    '\\(ad',
 151              '\\[ah]',    '\\(ah',
 152              '\\[ao]',    '\\(ao',
 153              '\\[a~]',    '\\(a~',
 154              '\\[ho]',    '\\(ho',
 155              '\\[ha]',    '\\(ha',
 156              '\\[ti]',    '\\(ti',
 157              '\\[Bq]',    '\\(Bq',
 158              '\\[bq]',    '\\(bq',
 159              '\\[lq]',    '\\(lq',
 160              '\\[rq]',    '\\(rq',
 161              '\\[oq]',    '\\(oq',
 162              '\\[cq]',    '\\(cq',
 163              '\\[aq]',    '\\(aq',
 164              '\\[dq]',    '\\(dq',
 165              '\\[Fo]',    '\\(Fo',
 166              '\\[Fc]',    '\\(Fc',
 167              '\\[fo]',    '\\(fo',
 168              '\\[fc]',    '\\(fc',
 169              '\\[r!]',    '\\(r!',
 170              '\\[r?]',    '\\(r?',
 171              '\\[em]',    '\\(em',
 172              '\\[en]',    '\\(en',
 173              '\\[hy]',    '\\(hy',
 174              '\\[lB]',    '\\(lB',
 175              '\\[rB]',    '\\(rB',
 176              '\\[lC]',    '\\(lC',
 177              '\\[rC]',    '\\(rC',
 178              '\\[la]',    '\\(la',
 179              '\\[ra]',    '\\(ra',
 180              '\\[bv]',    '\\(bv',
 181              '\\[braceex]',
 182              '\\[bracketlefttp]',
 183              '\\[bracketleftbt]',
 184              '\\[bracketleftex]',
 185              '\\[bracketrighttp]',
 186              '\\[bracketrightbt]',
 187              '\\[bracketrightex]',
 188              '\\[lt]',    '\\(lt',
 189              '\\[bracelefttp]',
 190              '\\[lk]',    '\\(lk',
 191              '\\[braceleftmid]',
 192              '\\[lb]',    '\\(lb',
 193              '\\[braceleftbt]',
 194              '\\[braceleftex]',
 195              '\\[rt]',    '\\(rt',
 196              '\\[bracerighttp]',
 197              '\\[rk]',    '\\(rk',
 198              '\\[bracerightmid]',
 199              '\\[rb]',    '\\(rb',
 200              '\\[bracerightbt]',
 201              '\\[bracerightex]',
 202              '\\[parenlefttp]',
 203              '\\[parenleftbt]',
 204              '\\[parenleftex]',
 205              '\\[parenrighttp]',
 206              '\\[parenrightbt]',
 207              '\\[parenrightex]',
 208              '\\[&lt;-]',    '\\(&lt;-',
 209              '\\[-&gt;]',    '\\(-&gt;',
 210              '\\[&lt;&gt;]',    '\\(&lt;&gt;',
 211              '\\[da]',    '\\(da',
 212              '\\[ua]',    '\\(ua',
 213              '\\[va]',    '\\(va',
 214              '\\[lA]',    '\\(lA',
 215              '\\[rA]',    '\\(rA',
 216              '\\[hA]',    '\\(hA',
 217              '\\[dA]',    '\\(dA',
 218              '\\[uA]',    '\\(uA',
 219              '\\[vA]',    '\\(vA',
 220              '\\[an]',    '\\(an',
 221              '\\[ba]',    '\\(ba',
 222              '\\[br]',    '\\(br',
 223              '\\[ul]',    '\\(ul',
 224              '\\[rn]',    '\\(rn',
 225              '\\[ru]',    '\\(ru',
 226              '\\[bb]',    '\\(bb',
 227              '\\[sl]',    '\\(sl',
 228              '\\[rs]',    '\\(rs',
 229              '\\[ci]',    '\\(ci',
 230              '\\[bu]',    '\\(bu',
 231              '\\[dd]',    '\\(dd',
 232              '\\[dg]',    '\\(dg',
 233              '\\[lz]',    '\\(lz',
 234              '\\[sq]',    '\\(sq',
 235              '\\[ps]',    '\\(ps',
 236              '\\[sc]',    '\\(sc',
 237              '\\[lh]',    '\\(lh',
 238              '\\[rh]',    '\\(rh',
 239              '\\[at]',    '\\(at',
 240              '\\[sh]',    '\\(sh',
 241              '\\[CR]',    '\\(CR',
 242              '\\[OK]',    '\\(OK',
 243              '\\[co]',    '\\(co',
 244              '\\[rg]',    '\\(rg',
 245              '\\[tm]',    '\\(tm',
 246              '\\[bs]',    '\\(bs',
 247              '\\[Do]',    '\\(Do',
 248              '\\[ct]',    '\\(ct',
 249              '\\[eu]',    '\\(eu',
 250              '\\[Eu]',    '\\(Eu',
 251              '\\[Ye]',    '\\(Ye',
 252              '\\[Po]',    '\\(Po',
 253              '\\[Cs]',    '\\(Cs',
 254              '\\[Fn]',    '\\(Fn',
 255              '\\[de]',    '\\(de',
 256              '\\[%0]',    '\\(%0',
 257              '\\[fm]',    '\\(fm',
 258              '\\[sd]',    '\\(sd',
 259              '\\[mc]',    '\\(mc',
 260              '\\[Of]',    '\\(Of',
 261              '\\[Om]',    '\\(Om',
 262              '\\[AN]',    '\\(AN',
 263              '\\[OR]',    '\\(OR',
 264              '\\[no]',    '\\(no',
 265              '\\[tno]',
 266              '\\[te]',    '\\(te',
 267              '\\[fa]',    '\\(fa',
 268              '\\[st]',    '\\(st',
 269              '\\[3d]',    '\\(3d',
 270              '\\[tf]',    '\\(tf',
 271              '\\[or]',    '\\(or',
 272              '\\[12]',    '\\(12',
 273              '\\[14]',    '\\(14',
 274              '\\[34]',    '\\(34',
 275              '\\[18]',    '\\(18',
 276              '\\[38]',    '\\(38',
 277              '\\[58]',    '\\(58',
 278              '\\[78]',    '\\(78',
 279              '\\[S1]',    '\\(S1',
 280              '\\[S2]',    '\\(S2',
 281              '\\[S3]',    '\\(S3',
 282              '\\[pl]',    '\\(pl',
 283              '\\[mi]',    '\\(mi',
 284              '\\[-+]',    '\\(-+',
 285              '\\[+-]',    '\\(+-',
 286              '\\[t+-]',
 287              '\\[pc]',    '\\(pc',
 288              '\\[md]',    '\\(md',
 289              '\\[mu]',    '\\(mu',
 290              '\\[tmu]',
 291              '\\[c*]',    '\\(c*',
 292              '\\[c+]',    '\\(c+',
 293              '\\[di]',    '\\(di',
 294              '\\[tdi]',
 295              '\\[f/]',    '\\(f/',
 296              '\\[**]',    '\\(**',
 297              '\\[&lt;=]',    '\\(&lt;=',
 298              '\\[&gt;=]',    '\\(&gt;=',
 299              '\\[&lt;&lt;]',    '\\(&lt;&lt;',
 300              '\\[&gt;&gt;]',    '\\(&gt;&gt;',
 301              '\\[eq]',    '\\(eq',
 302              '\\[!=]',    '\\(!=',
 303              '\\[==]',    '\\(==',
 304              '\\[ne]',    '\\(ne',
 305              '\\[=~]',    '\\(=~',
 306              '\\[|=]',    '\\(|=',
 307              '\\[ap]',    '\\(ap',
 308              '\\[~~]',    '\\(~~',
 309              '\\[~=]',    '\\(~=',
 310              '\\[pt]',    '\\(pt',
 311              '\\[es]',    '\\(es',
 312              '\\[mo]',    '\\(mo',
 313              '\\[nm]',    '\\(nm',
 314              '\\[sb]',    '\\(sb',
 315              '\\[nb]',    '\\(nb',
 316              '\\[sp]',    '\\(sp',
 317              '\\[nc]',    '\\(nc',
 318              '\\[ib]',    '\\(ib',
 319              '\\[ip]',    '\\(ip',
 320              '\\[ca]',    '\\(ca',
 321              '\\[cu]',    '\\(cu',
 322              '\\[/_]',    '\\(/_',
 323              '\\[pp]',    '\\(pp',
 324              '\\[is]',    '\\(is',
 325              '\\[integral]',
 326              '\\[sum]',
 327              '\\[product]',
 328              '\\[coproduct]',
 329              '\\[gr]',    '\\(gr',
 330              '\\[sr]',    '\\(sr',
 331              '\\[sqrt]',
 332              '\\[radicalex]',
 333              '\\[sqrtex]',
 334              '\\[lc]',    '\\(lc',
 335              '\\[rc]',    '\\(rc',
 336              '\\[lf]',    '\\(lf',
 337              '\\[rf]',    '\\(rf',
 338              '\\[if]',    '\\(if',
 339              '\\[Ah]',    '\\(Ah',
 340              '\\[Im]',    '\\(Im',
 341              '\\[Re]',    '\\(Re',
 342              '\\[wp]',    '\\(wp',
 343              '\\[pd]',    '\\(pd',
 344              '\\[-h]',    '\\(-h',
 345              '\\[hbar]',
 346              '\\[*A]',    '\\(*A',
 347              '\\[*B]',    '\\(*B',
 348              '\\[*G]',    '\\(*G',
 349              '\\[*D]',    '\\(*D',
 350              '\\[*E]',    '\\(*E',
 351              '\\[*Z]',    '\\(*Z',
 352              '\\[*Y]',    '\\(*Y',
 353              '\\[*H]',    '\\(*H',
 354              '\\[*I]',    '\\(*I',
 355              '\\[*K]',    '\\(*K',
 356              '\\[*L]',    '\\(*L',
 357              '\\[*M]',    '\\(*M',
 358              '\\[*N]',    '\\(*N',
 359              '\\[*C]',    '\\(*C',
 360              '\\[*O]',    '\\(*O',
 361              '\\[*P]',    '\\(*P',
 362              '\\[*R]',    '\\(*R',
 363              '\\[*S]',    '\\(*S',
 364              '\\[*T]',    '\\(*T',
 365              '\\[*U]',    '\\(*U',
 366              '\\[*F]',    '\\(*F',
 367              '\\[*X]',    '\\(*X',
 368              '\\[*Q]',    '\\(*Q',
 369              '\\[*W]',    '\\(*W',
 370              '\\[*a]',    '\\(*a',
 371              '\\[*b]',    '\\(*b',
 372              '\\[*g]',    '\\(*g',
 373              '\\[*d]',    '\\(*d',
 374              '\\[*e]',    '\\(*e',
 375              '\\[*z]',    '\\(*z',
 376              '\\[*y]',    '\\(*y',
 377              '\\[*h]',    '\\(*h',
 378              '\\[*i]',    '\\(*i',
 379              '\\[*k]',    '\\(*k',
 380              '\\[*l]',    '\\(*l',
 381              '\\[*m]',    '\\(*m',
 382              '\\[*n]',    '\\(*n',
 383              '\\[*c]',    '\\(*c',
 384              '\\[*o]',    '\\(*o',
 385              '\\[*p]',    '\\(*p',
 386              '\\[*r]',    '\\(*r',
 387              '\\[ts]',    '\\(ts',
 388              '\\[*s]',    '\\(*s',
 389              '\\[*t]',    '\\(*t',
 390              '\\[*u]',    '\\(*u',
 391              '\\[*f]',    '\\(*f',
 392              '\\[*x]',    '\\(*x',
 393              '\\[*q]',    '\\(*q',
 394              '\\[*w]',    '\\(*w',
 395              '\\[+h]',    '\\(+h',
 396              '\\[+f]',    '\\(+f',
 397              '\\[+p]',    '\\(+p',
 398              '\\[+e]',    '\\(+e',
 399              '\\[CL]',    '\\(CL',
 400              '\\[SP]',    '\\(SP',
 401              '\\[HE]',    '\\(HE',
 402              '\\[DI]',    '\\(DI',
 403              ),
 404          1 => array(
 405              // Special characters
 406              '\\\\', '\\ยด', '\\`', '\\-',
 407              '\\_',  '\\.', '\\%', '\\!',
 408              '\\0',  '\\|', '\\^', '\\&',
 409              '\\)',  '\\/', '\\,', '\\~',
 410              '\\:',  '\\{', '\\}', '\\a',
 411              '\\c',  '\\d', '\\e', '\\E',
 412              '\\p',  '\\r', '\\t', '\\u',
 413  
 414              // Whitespace escapes
 415              '\\ ', '\\h', "\\\n",
 416  
 417              // Text modifiers
 418              '\\fB', '\\fI', '\\fR', '\\fP',
 419              '\\f0', '\\f1', '\\f2', '\\f3', '\\f4', '\\f5', '\\f6', '\\f7', '\\f8', '\\f9',
 420              ),
 421          ),
 422      'STYLES' => array(
 423          'KEYWORDS' => array(
 424              ),
 425          'COMMENTS' => array(
 426              1 => 'color: #ffff55;',
 427              2 => 'color: #ffff55;',
 428              ),
 429          'ESCAPE_CHAR' => array(
 430              ),
 431          'BRACKETS' => array(
 432              ),
 433          'STRINGS' => array(
 434              ),
 435          'NUMBERS' => array(
 436              ),
 437          'METHODS' => array(
 438              ),
 439          'SYMBOLS' => array(
 440              0 => 'color: #00aaaa',
 441              1 => 'color: #aa00aa',
 442              ),
 443          'REGEXPS' => array(
 444              0 => 'color: #ffff55;',
 445              1 => 'font-weight: bold;',
 446              2 => 'font-style: italic;',
 447              3 => 'font-weight: bold;',
 448              4 => 'font-style: italic;',
 449              5 => 'color: #55aaff;',
 450              ),
 451          'SCRIPT' => array(
 452              )
 453          ),
 454      'REGEXPS' => array(
 455          0 => array(
 456              // Unicode characters
 457              GESHI_SEARCH => '\\\\\\[u([[:xdigit:]]{4,5})\\]',
 458              GESHI_REPLACE => '\\\\[\\1]',
 459              GESHI_MODIFIERS => '',
 460              GESHI_BEFORE => '',
 461              GESHI_AFTER => '',
 462              ),
 463          1 => array(
 464              // Bold text - formatted using .B or 'B
 465              GESHI_SEARCH => "^([\\.']{1}B[[:blank:]]*\\n{0,1})([[:print:]]+)",
 466              GESHI_REPLACE => '\\2',
 467              GESHI_MODIFIERS => 'm',
 468              GESHI_BEFORE => '\\1',
 469              GESHI_AFTER => '',
 470              ),
 471          2 => array(
 472              // Italic text - formatted using .I or 'I
 473              GESHI_SEARCH => "^([\\.']{1}I[[:blank:]]*\\n{0,1})([[:print:]]+)",
 474              GESHI_REPLACE => '\\2',
 475              GESHI_MODIFIERS => 'm',
 476              GESHI_BEFORE => '\\1',
 477              GESHI_AFTER => '',
 478              ),
 479          3 => array(
 480              // Bold text - formatted inline
 481              GESHI_SEARCH => '(\\\\fB)([[:print:]]+?)(\\\\fR)',
 482              GESHI_REPLACE => '\\2',
 483              GESHI_MODIFIERS => '',
 484              GESHI_BEFORE => '\\1',
 485              GESHI_AFTER => '\\3',
 486              ),
 487          4 => array (
 488              // Italic text - formatted inline
 489              GESHI_SEARCH => '(\\\\fI)([[:print:]]+?)(\\\\fR)',
 490              GESHI_REPLACE => '\\2',
 491              GESHI_MODIFIERS => '',
 492              GESHI_BEFORE => '\\1',
 493              GESHI_AFTER => '\\3',
 494              ),
 495          5 => array(
 496              // Line start macros (.TP, .SH, et cetera)
 497              GESHI_SEARCH => "^([.']{1}[a-zA-Z]+)",
 498              GESHI_REPLACE => '\\1',
 499              GESHI_MODIFIERS => 'm',
 500              GESHI_BEFORE => '',
 501              GESHI_AFTER => '',
 502              ),
 503          ),
 504      'URLS' => array(),
 505      'OOLANG' => false,
 506      'OBJECT_SPLITTERS' => array(),
 507      'HIGHLIGHT_STRICT_BLOCK' => array(),
 508      'STRICT_MODE_APPLIES' => GESHI_NEVER,
 509      'SCRIPT_DELIMITERS' => array(),
 510  );