summaryrefslogtreecommitdiff
path: root/extensions/SyntaxHighlight_GeSHi
diff options
context:
space:
mode:
Diffstat (limited to 'extensions/SyntaxHighlight_GeSHi')
-rw-r--r--extensions/SyntaxHighlight_GeSHi/README6
-rw-r--r--extensions/SyntaxHighlight_GeSHi/ResourceLoaderGeSHiLocalModule.php11
-rw-r--r--extensions/SyntaxHighlight_GeSHi/ResourceLoaderGeSHiModule.php12
-rw-r--r--extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.class.php159
-rw-r--r--extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.i18n.php35
-rw-r--r--extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.langs.php236
-rw-r--r--extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php98
-rw-r--r--extensions/SyntaxHighlight_GeSHi/extension.json53
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/contrib/aliased.php122
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/contrib/cssgen.php464
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/contrib/cssgen2.php59
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/contrib/example.php217
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/contrib/langcheck.php778
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/contrib/langwiz.php1153
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/docs/CHANGES59
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/docs/COPYING39
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/docs/THANKS27
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/docs/TODO2
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/docs/api/__filesource/fsource_geshi_core_geshi.php.html2
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/docs/api/elementindex.html2
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/docs/api/elementindex_geshi.html2
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/docs/api/geshi/core/GeSHi.html6
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/docs/api/geshi/core/_geshi.php.html4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/docs/geshi-doc.html8
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/docs/geshi-doc.txt12
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi.php55
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/4cs.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/6502acme.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/6502kickass.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/6502tasm.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/68000devpac.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/abap.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/actionscript.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/actionscript3.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/ada.php7
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/aimms.php316
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/algol68.php7
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/apache.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/applescript.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/apt_sources.php17
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/arm.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/asm.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/asp.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/asymptote.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/autoconf.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/autohotkey.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/autoit.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/avisynth.php3
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/awk.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/bascomavr.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/bash.php70
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/basic4gl.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/bf.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/bibtex.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/blitzbasic.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/bnf.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/boo.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/c.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/c_loadrunner.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/c_mac.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/c_winapi.php870
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/caddcl.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/cadlisp.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/cfdg.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/cfm.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/chaiscript.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/chapel.php169
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/cil.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/clojure.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/cmake.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/cobol.php495
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/coffeescript.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/cpp-qt.php14
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/cpp-winapi.php836
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/cpp.php14
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/csharp.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/css.php290
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/cuesheet.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/d.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/dart.php159
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/dcl.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/dcpu16.php6
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/dcs.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/delphi.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/diff.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/div.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/dos.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/dot.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/e.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/ecmascript.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/eiffel.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/email.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/epc.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/erlang.php10
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/euphoria.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/ezt.php134
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/f1.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/falcon.php3
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/fo.php3
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/fortran.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/freebasic.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/freeswitch.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/fsharp.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/gambas.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/gdb.php8
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/genero.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/genie.php6
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/gettext.php6
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/glsl.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/gml.php649
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/gnuplot.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/go.php6
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/groovy.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/gwbasic.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/haskell.php58
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/haxe.php5
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/hicest.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/hq9plus.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/html4strict.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/html5.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/icon.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/idl.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/ini.php7
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/inno.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/intercal.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/io.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/ispfpanel.php165
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/j.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/java.php5
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/java5.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/javascript.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/jcl.php155
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/jquery.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/kixtart.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/klonec.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/klonecpp.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/latex.php6
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/lb.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/ldif.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/lisp.php11
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/llvm.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/locobasic.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/logtalk.php20
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/lolcode.php19
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/lotusformulas.php6
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/lotusscript.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/lscript.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/lsl2.php448
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/lua.php19
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/m68k.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/magiksf.php6
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/make.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/mapbasic.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/matlab.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/mirc.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/mmix.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/modula2.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/modula3.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/mpasm.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/mxml.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/mysql.php5
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/nagios.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/netrexx.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/newlisp.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/nginx.php868
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/nimrod.php201
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/nsis.php40
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/oberon2.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/objc.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/objeck.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/ocaml-brief.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/ocaml.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/octave.php42
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/oobas.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/oorexx.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/oracle11.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/oracle8.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/oxygene.php13
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/oz.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/parasail.php13
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/parigp.php234
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/pascal.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/pcre.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/per.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/perl.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/perl6.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/pf.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/php-brief.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/php.php10
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/pic16.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/pike.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/pixelbender.php5
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/pli.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/plsql.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/postgresql.php5
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/postscript.php217
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/povray.php3
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/powerbuilder.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/powershell.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/proftpd.php12
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/progress.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/prolog.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/properties.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/providex.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/purebasic.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/pycon.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/pys60.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/python.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/q.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/qbasic.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/qml.php351
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/racket.php964
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/rails.php6
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/rbs.php224
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/rebol.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/reg.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/rexx.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/robots.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/rpmspec.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/rsplus.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/ruby.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/rust.php235
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/sas.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/scala.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/scheme.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/scilab.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/scl.php148
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/sdlbasic.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/smalltalk.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/smarty.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/spark.php7
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/sparql.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/sql.php9
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/standardml.php216
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/stonescript.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/systemverilog.php10
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/tcl.php12
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/teraterm.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/text.php8
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/thinbasic.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/tsql.php18
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/typoscript.php8
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/unicon.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/upc.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/urbi.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/uscript.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/vala.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/vb.php18
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/vbnet.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/vbscript.php153
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/vedit.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/verilog.php62
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/vhdl.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/vim.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/visualfoxpro.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/visualprolog.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/whitespace.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/whois.php6
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/winbatch.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/xbasic.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/xml.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/xorg_conf.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/xpp.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/yaml.php12
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/z80.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/zxbasic.php4
-rw-r--r--extensions/SyntaxHighlight_GeSHi/i18n/ksh.json6
-rw-r--r--extensions/SyntaxHighlight_GeSHi/i18n/pt-br.json3
-rw-r--r--extensions/SyntaxHighlight_GeSHi/i18n/qqq.json7
-rw-r--r--extensions/SyntaxHighlight_GeSHi/maintenance/updateLanguageList.php54
270 files changed, 11681 insertions, 1849 deletions
diff --git a/extensions/SyntaxHighlight_GeSHi/README b/extensions/SyntaxHighlight_GeSHi/README
index 31908768..b6af55cf 100644
--- a/extensions/SyntaxHighlight_GeSHi/README
+++ b/extensions/SyntaxHighlight_GeSHi/README
@@ -50,3 +50,9 @@ GeSHi is generous about creating HTML elements: highlighting large blocks of
code can easily generate enough of them to crash a browser. As a guard, symbol
highlighting is turned off for code fragments larger than 100 kB. For fragments
larger than 200 kB, string highlighting is turned off as well.
+
+== Note to maintainers ==
+
+Whenever updating the version of GeSHi embedded in the extension, run
+maintenance/updateLanguageList.php to re-generate the list of supported
+languages.
diff --git a/extensions/SyntaxHighlight_GeSHi/ResourceLoaderGeSHiLocalModule.php b/extensions/SyntaxHighlight_GeSHi/ResourceLoaderGeSHiLocalModule.php
index c2ad1ef8..7ce87b53 100644
--- a/extensions/SyntaxHighlight_GeSHi/ResourceLoaderGeSHiLocalModule.php
+++ b/extensions/SyntaxHighlight_GeSHi/ResourceLoaderGeSHiLocalModule.php
@@ -25,8 +25,13 @@ class ResourceLoaderGeSHiLocalModule extends ResourceLoaderWikiModule {
* @return array
*/
protected function getPages( ResourceLoaderContext $context ) {
- return array(
- 'MediaWiki:Geshi.css' => array( 'type' => 'style' ),
- );
+ global $wgUseSiteCss;
+ if ( $wgUseSiteCss ) {
+ return array(
+ 'MediaWiki:Geshi.css' => array( 'type' => 'style' ),
+ );
+ } else {
+ return array();
+ }
}
}
diff --git a/extensions/SyntaxHighlight_GeSHi/ResourceLoaderGeSHiModule.php b/extensions/SyntaxHighlight_GeSHi/ResourceLoaderGeSHiModule.php
index 63310c5b..98c1c1eb 100644
--- a/extensions/SyntaxHighlight_GeSHi/ResourceLoaderGeSHiModule.php
+++ b/extensions/SyntaxHighlight_GeSHi/ResourceLoaderGeSHiModule.php
@@ -51,11 +51,16 @@ class ResourceLoaderGeSHiModule extends ResourceLoaderModule {
* @return int
*/
public function getModifiedTime( ResourceLoaderContext $context ) {
+ static $selfmtime = null;
+ if ( $selfmtime === null ) {
+ // Cache this since there are 100s of instances of this module
+ // See also T93025, T85794.
+ $selfmtime = self::safeFilemtime( __FILE__ );
+ }
+
return max( array(
$this->getDefinitionMtime( $context ),
- self::safeFilemtime( __FILE__ ),
- self::safeFilemtime( __DIR__ . '/SyntaxHighlight_GeSHi.class.php' ),
- self::safeFilemtime( __DIR__ . '/geshi/geshi.php' ),
+ $selfmtime,
self::safeFilemtime( GESHI_LANG_ROOT . "/{$this->lang}.php" ),
) );
}
@@ -68,6 +73,7 @@ class ResourceLoaderGeSHiModule extends ResourceLoaderModule {
return array(
'class' => get_class( $this ),
'lang' => $this->lang,
+ 'geshi' => GESHI_VERSION,
);
}
}
diff --git a/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.class.php b/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.class.php
index 3580d013..732f2195 100644
--- a/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.class.php
+++ b/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.class.php
@@ -30,6 +30,36 @@ class SyntaxHighlight_GeSHi {
private static $languages = null;
/**
+ * Executed after processing extension.json
+ */
+ public static function registerExtension() {
+ global $wgVersion;
+ if ( version_compare( $wgVersion, '1.25', '<' ) ) {
+ die( 'This version of SyntaxHighlight GeSHi requires MediaWiki 1.25' );
+ }
+
+ global $wgGeSHiSupportedLanguages;
+ if ( !$wgGeSHiSupportedLanguages ) {
+ // If not set already, load it (@see ExtensionRegistry::exportExtractedData)
+ require_once __DIR__ . '/SyntaxHighlight_GeSHi.langs.php';
+ }
+ // @fixme we shouldn't be loading this on ever request
+ require_once __DIR__ . '/geshi/geshi.php';
+ }
+
+ /**
+ * Register parser hook
+ *
+ * @param $parser Parser
+ * @return bool
+ */
+ public static function configureParser( &$parser ) {
+ $parser->setHook( 'source', array( 'SyntaxHighlight_GeSHi', 'parserHook' ) );
+ $parser->setHook( 'syntaxhighlight', array( 'SyntaxHighlight_GeSHi', 'parserHook' ) );
+ return true;
+ }
+
+ /**
* Parser hook
*
* @param string $text
@@ -38,15 +68,14 @@ class SyntaxHighlight_GeSHi {
* @return string
*/
public static function parserHook( $text, $args = array(), $parser ) {
- global $wgSyntaxHighlightDefaultLang, $wgUseSiteCss, $wgUseTidy;
- wfProfileIn( __METHOD__ );
+ global $wgSyntaxHighlightDefaultLang, $wgUseTidy;
self::initialise();
$text = rtrim( $text );
// Don't trim leading spaces away, just the linefeeds
$text = preg_replace( '/^\n+/', '', $text );
// Validate language
- if( isset( $args['lang'] ) && $args['lang'] ) {
+ if ( isset( $args['lang'] ) && $args['lang'] ) {
$lang = $args['lang'];
} else {
// language is not specified. Check if default exists, if yes, use it.
@@ -54,43 +83,40 @@ class SyntaxHighlight_GeSHi {
$lang = $wgSyntaxHighlightDefaultLang;
} else {
$error = self::formatLanguageError( $text );
- wfProfileOut( __METHOD__ );
return $error;
}
}
$lang = strtolower( $lang );
- if( !preg_match( '/^[a-z_0-9-]*$/', $lang ) ) {
+ if ( !preg_match( '/^[a-z_0-9-]*$/', $lang ) ) {
$error = self::formatLanguageError( $text );
- wfProfileOut( __METHOD__ );
return $error;
}
$geshi = self::prepare( $text, $lang );
- if( !$geshi instanceof GeSHi ) {
+ if ( !$geshi instanceof GeSHi ) {
$error = self::formatLanguageError( $text );
- wfProfileOut( __METHOD__ );
return $error;
}
$enclose = self::getEncloseType( $args );
// Line numbers
- if( isset( $args['line'] ) ) {
+ if ( isset( $args['line'] ) ) {
$geshi->enable_line_numbers( GESHI_FANCY_LINE_NUMBERS );
}
// Highlighting specific lines
- if( isset( $args['highlight'] ) ) {
+ if ( isset( $args['highlight'] ) ) {
$lines = self::parseHighlightLines( $args['highlight'] );
if ( count( $lines ) ) {
$geshi->highlight_lines_extra( $lines );
}
}
// Starting line number
- if( isset( $args['start'] ) ) {
+ if ( isset( $args['start'] ) ) {
$geshi->start_line_numbers_at( $args['start'] );
}
$geshi->set_header_type( $enclose );
// Strict mode
- if( isset( $args['strict'] ) ) {
+ if ( isset( $args['strict'] ) ) {
$geshi->enable_strict_mode();
}
// Format
@@ -98,32 +124,26 @@ class SyntaxHighlight_GeSHi {
if ( $geshi->error == GESHI_ERROR_NO_SUCH_LANG ) {
// Common error :D
$error = self::formatLanguageError( $text );
- wfProfileOut( __METHOD__ );
return $error;
}
$err = $geshi->error();
- if( $err ) {
+ if ( $err ) {
// Other unknown error!
$error = self::formatError( $err );
- wfProfileOut( __METHOD__ );
return $error;
}
// Armour for Parser::doBlockLevels()
- if( $enclose === GESHI_HEADER_DIV ) {
+ if ( $enclose === GESHI_HEADER_DIV ) {
$out = str_replace( "\n", '', $out );
}
// HTML Tidy will convert tabs to spaces incorrectly (bug 30930).
// But the conversion from tab to space occurs while reading the input,
// before the conversion from &#9; to tab, so we can armor it that way.
- if( $wgUseTidy ) {
+ if ( $wgUseTidy ) {
$out = str_replace( "\t", '&#9;', $out );
}
// Register CSS
- $parser->getOutput()->addModuleStyles( "ext.geshi.language.$lang" );
-
- if ( $wgUseSiteCss ) {
- $parser->getOutput()->addModuleStyles( 'ext.geshi.local' );
- }
+ $parser->getOutput()->addModuleStyles( array( "ext.geshi.language.$lang", 'ext.geshi.local' ) );
$encloseTag = $enclose === GESHI_HEADER_NONE ? 'span' : 'div';
$attribs = Sanitizer::validateTagAttributes( $args, $encloseTag );
@@ -140,7 +160,6 @@ class SyntaxHighlight_GeSHi {
}
$out = Html::rawElement( $encloseTag, $attribs, $out );
- wfProfileOut( __METHOD__ );
return $out;
}
@@ -151,7 +170,7 @@ class SyntaxHighlight_GeSHi {
* @return array
*/
private static function addAttribute( $attribs, $name, $value ) {
- if( isset( $attribs[$name] ) ) {
+ if ( isset( $attribs[$name] ) ) {
$attribs[$name] = $value . ' ' . $attribs[$name];
} else {
$attribs[$name] = $value;
@@ -243,9 +262,11 @@ class SyntaxHighlight_GeSHi {
global $wgSyntaxHighlightModels, $wgUseSiteCss,
$wgParser, $wgTextModelsToParse;
+ $highlightModels = ExtensionRegistry::getInstance()->getAttribute( 'SyntaxHighlightModels' );
+
// Determine the language
$model = $content->getModel();
- if ( !isset( $wgSyntaxHighlightModels[$model] ) ) {
+ if ( !isset( $highlightModels[$model] ) && !isset( $wgSyntaxHighlightModels[$model] ) ) {
// We don't care about this model, carry on.
return true;
}
@@ -269,19 +290,25 @@ class SyntaxHighlight_GeSHi {
$output = $wgParser->parse( $text, $title, $options, true, true, $revId );
}
- $lang = $wgSyntaxHighlightModels[$model];
+ if ( isset( $highlightModels[$model] ) ) {
+ $lang = $highlightModels[$model];
+ } else {
+ // TODO: Add deprecation warning after a while?
+ $lang = $wgSyntaxHighlightModels[$model];
+ }
+
// Attempt to format
$geshi = self::prepare( $text, $lang );
- if( $geshi instanceof GeSHi ) {
+ if ( $geshi instanceof GeSHi ) {
$out = $geshi->parse_code();
- if( !$geshi->error() ) {
+ if ( !$geshi->error() ) {
// Done
$output->addModuleStyles( "ext.geshi.language.$lang" );
$output->setText( "<div dir=\"ltr\">{$out}</div>" );
- if( $wgUseSiteCss ) {
+ if ( $wgUseSiteCss ) {
$output->addModuleStyles( 'ext.geshi.local' );
}
@@ -295,6 +322,54 @@ class SyntaxHighlight_GeSHi {
}
/**
+ * Hook to provide syntax highlighting for API pretty-printed output
+ *
+ * @param IContextSource $context
+ * @param string $text
+ * @param string $mime
+ * @param string $format
+ * @since MW 1.24
+ */
+ public static function apiFormatHighlight( IContextSource $context, $text, $mime, $format ) {
+ switch ( $mime ) {
+ case 'text/javascript':
+ case 'application/json':
+ $lang = 'javascript';
+ break;
+
+ case 'text/xml':
+ $lang = 'xml';
+ break;
+
+ default:
+ // Don't know how to handle this
+ return true;
+ }
+
+ $geshi = self::prepare( $text, $lang );
+ if ( $geshi instanceof GeSHi ) {
+ $out = $geshi->parse_code();
+ if ( !$geshi->error() ) {
+ if ( preg_match( '/^<pre([^>]*)>/i', $out, $m ) ) {
+ $attrs = Sanitizer::decodeTagAttributes( $m[1] );
+ $attrs['class'] .= ' api-pretty-content';
+ $out = '<pre' . Sanitizer::safeEncodeTagAttributes( $attrs ) . '>' .
+ substr( $out, strlen( $m[0] ) );
+ }
+ $output = $context->getOutput();
+ $output->addModuleStyles( array( "ext.geshi.language.$lang", 'ext.geshi.local' ) );
+ $output->addHTML( "<div dir=\"ltr\">{$out}</div>" );
+
+ // Inform MediaWiki that we have parsed this page and it shouldn't mess with it.
+ return false;
+ }
+ }
+
+ // Bottle out
+ return true;
+ }
+
+ /**
* Initialise a GeSHi object to format some code, performing
* common setup for all our uses of it
*
@@ -308,7 +383,7 @@ class SyntaxHighlight_GeSHi {
self::initialise();
$geshi = new GeSHi( $text, $lang );
- if( $geshi->error() == GESHI_ERROR_NO_SUCH_LANG ) {
+ if ( $geshi->error() == GESHI_ERROR_NO_SUCH_LANG ) {
return null;
}
$geshi->set_encoding( 'UTF-8' );
@@ -410,7 +485,7 @@ class SyntaxHighlight_GeSHi {
*/
private static function formatError( $error = '' ) {
$html = '';
- if( $error ) {
+ if ( $error ) {
$html .= "<p>{$error}</p>";
}
$html .= '<p>' . wfMessage( 'syntaxhighlight-specify')->inContentLanguage()->escaped()
@@ -428,8 +503,8 @@ class SyntaxHighlight_GeSHi {
private static function formatLanguages() {
$langs = self::getSupportedLanguages();
$list = array();
- if( count( $langs ) > 0 ) {
- foreach( $langs as $lang ) {
+ if ( count( $langs ) > 0 ) {
+ foreach ( $langs as $lang ) {
$list[] = '<samp>' . htmlspecialchars( $lang ) . '</samp>';
}
return '<p class="mw-collapsible mw-collapsed" style="padding: 0em 1em;">' . implode( ', ', $list ) . '</p><br style="clear: all"/>';
@@ -444,15 +519,9 @@ class SyntaxHighlight_GeSHi {
* @return array
*/
private static function getSupportedLanguages() {
- if( !is_array( self::$languages ) ) {
- self::initialise();
- self::$languages = array();
- foreach( glob( GESHI_LANG_ROOT . "/*.php" ) as $file ) {
- self::$languages[] = basename( $file, '.php' );
- }
- sort( self::$languages );
- }
- return self::$languages;
+ global $wgGeSHiSupportedLanguages;
+ self::initialise();
+ return $wgGeSHiSupportedLanguages;
}
/**
@@ -460,9 +529,9 @@ class SyntaxHighlight_GeSHi {
* @return bool
*/
private static function initialise() {
- if( !self::$initialised ) {
- if( !class_exists( 'GeSHi' ) ) {
- require( dirname( __FILE__ ) . '/geshi/geshi.php' );
+ if ( !self::$initialised ) {
+ if ( !class_exists( 'GeSHi' ) ) {
+ require ( dirname( __FILE__ ) . '/geshi/geshi.php' );
}
self::$initialised = true;
}
diff --git a/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.i18n.php b/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.i18n.php
deleted file mode 100644
index 32012d47..00000000
--- a/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.i18n.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-/**
- * This is a backwards-compatibility shim, generated by:
- * https://git.wikimedia.org/blob/mediawiki%2Fcore.git/HEAD/maintenance%2FgenerateJsonI18n.php
- *
- * Beginning with MediaWiki 1.23, translation strings are stored in json files,
- * and the EXTENSION.i18n.php file only exists to provide compatibility with
- * older releases of MediaWiki. For more information about this migration, see:
- * https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format
- *
- * This shim maintains compatibility back to MediaWiki 1.17.
- */
-$messages = array();
-if ( !function_exists( 'wfJsonI18nShim6442dc48f1d977f3' ) ) {
- function wfJsonI18nShim6442dc48f1d977f3( $cache, $code, &$cachedData ) {
- $codeSequence = array_merge( array( $code ), $cachedData['fallbackSequence'] );
- foreach ( $codeSequence as $csCode ) {
- $fileName = dirname( __FILE__ ) . "/i18n/$csCode.json";
- if ( is_readable( $fileName ) ) {
- $data = FormatJson::decode( file_get_contents( $fileName ), true );
- foreach ( array_keys( $data ) as $key ) {
- if ( $key === '' || $key[0] === '@' ) {
- unset( $data[$key] );
- }
- }
- $cachedData['messages'] = array_merge( $data, $cachedData['messages'] );
- }
-
- $cachedData['deps'][] = new FileDependency( $fileName );
- }
- return true;
- }
-
- $GLOBALS['wgHooks']['LocalisationCacheRecache'][] = 'wfJsonI18nShim6442dc48f1d977f3';
-}
diff --git a/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.langs.php b/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.langs.php
new file mode 100644
index 00000000..deff2980
--- /dev/null
+++ b/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.langs.php
@@ -0,0 +1,236 @@
+<?php
+// Generated by updateLanguageList.php on Wed, 20 May 2015 00:14:22 +0000
+global $wgGeSHiSupportedLanguages;
+$wgGeSHiSupportedLanguages = array(
+ "4cs",
+ "6502acme",
+ "6502kickass",
+ "6502tasm",
+ "68000devpac",
+ "abap",
+ "actionscript",
+ "actionscript3",
+ "ada",
+ "aimms",
+ "algol68",
+ "apache",
+ "applescript",
+ "arm",
+ "asm",
+ "asp",
+ "asymptote",
+ "autoconf",
+ "autohotkey",
+ "autoit",
+ "avisynth",
+ "awk",
+ "bascomavr",
+ "bash",
+ "basic4gl",
+ "bf",
+ "bibtex",
+ "blitzbasic",
+ "bnf",
+ "boo",
+ "c",
+ "caddcl",
+ "cadlisp",
+ "cfdg",
+ "cfm",
+ "chaiscript",
+ "chapel",
+ "cil",
+ "clojure",
+ "cmake",
+ "cobol",
+ "coffeescript",
+ "cpp",
+ "csharp",
+ "css",
+ "cuesheet",
+ "d",
+ "dart",
+ "dcl",
+ "dcpu16",
+ "dcs",
+ "delphi",
+ "diff",
+ "div",
+ "dos",
+ "dot",
+ "e",
+ "ecmascript",
+ "eiffel",
+ "email",
+ "epc",
+ "erlang",
+ "euphoria",
+ "ezt",
+ "f1",
+ "falcon",
+ "fo",
+ "fortran",
+ "freebasic",
+ "freeswitch",
+ "fsharp",
+ "gambas",
+ "gdb",
+ "genero",
+ "genie",
+ "gettext",
+ "glsl",
+ "gml",
+ "gnuplot",
+ "go",
+ "groovy",
+ "gwbasic",
+ "haskell",
+ "haxe",
+ "hicest",
+ "hq9plus",
+ "html4strict",
+ "html5",
+ "icon",
+ "idl",
+ "ini",
+ "inno",
+ "intercal",
+ "io",
+ "ispfpanel",
+ "j",
+ "java",
+ "java5",
+ "javascript",
+ "jcl",
+ "jquery",
+ "kixtart",
+ "klonec",
+ "klonecpp",
+ "latex",
+ "lb",
+ "ldif",
+ "lisp",
+ "llvm",
+ "locobasic",
+ "logtalk",
+ "lolcode",
+ "lotusformulas",
+ "lotusscript",
+ "lscript",
+ "lsl2",
+ "lua",
+ "m68k",
+ "magiksf",
+ "make",
+ "mapbasic",
+ "matlab",
+ "mirc",
+ "mmix",
+ "modula2",
+ "modula3",
+ "mpasm",
+ "mxml",
+ "mysql",
+ "nagios",
+ "netrexx",
+ "newlisp",
+ "nginx",
+ "nimrod",
+ "nsis",
+ "oberon2",
+ "objc",
+ "objeck",
+ "ocaml",
+ "octave",
+ "oobas",
+ "oorexx",
+ "oracle11",
+ "oracle8",
+ "oxygene",
+ "oz",
+ "parasail",
+ "parigp",
+ "pascal",
+ "pcre",
+ "per",
+ "perl",
+ "perl6",
+ "pf",
+ "php",
+ "pic16",
+ "pike",
+ "pixelbender",
+ "pli",
+ "plsql",
+ "postgresql",
+ "postscript",
+ "povray",
+ "powerbuilder",
+ "powershell",
+ "proftpd",
+ "progress",
+ "prolog",
+ "properties",
+ "providex",
+ "purebasic",
+ "pycon",
+ "pys60",
+ "python",
+ "q",
+ "qbasic",
+ "qml",
+ "racket",
+ "rails",
+ "rbs",
+ "rebol",
+ "reg",
+ "rexx",
+ "robots",
+ "rpmspec",
+ "rsplus",
+ "ruby",
+ "rust",
+ "sas",
+ "scala",
+ "scheme",
+ "scilab",
+ "scl",
+ "sdlbasic",
+ "smalltalk",
+ "smarty",
+ "spark",
+ "sparql",
+ "sql",
+ "standardml",
+ "stonescript",
+ "systemverilog",
+ "tcl",
+ "teraterm",
+ "text",
+ "thinbasic",
+ "tsql",
+ "typoscript",
+ "unicon",
+ "upc",
+ "urbi",
+ "uscript",
+ "vala",
+ "vb",
+ "vbnet",
+ "vbscript",
+ "vedit",
+ "verilog",
+ "vhdl",
+ "vim",
+ "visualfoxpro",
+ "visualprolog",
+ "whitespace",
+ "whois",
+ "winbatch",
+ "xbasic",
+ "xml",
+ "xpp",
+ "yaml",
+ "z80",
+ "zxbasic"
+);
diff --git a/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php b/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php
index 6820ae1e..0c3df7de 100644
--- a/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php
+++ b/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php
@@ -1,89 +1,13 @@
<?php
-/**
- * Syntax highlighting extension for MediaWiki using GeSHi
- * Copyright (C) 2005 Brion Vibber <brion@pobox.com>
- * http://www.mediawiki.org/
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-/**
- * @file
- * @ingroup Extensions
- * @author Brion Vibber
- *
- * This extension wraps the GeSHi highlighter: http://qbnz.com/highlighter/
- *
- * A language is specified like: <source lang="c">void main() {}</source>
- * If you forget, or give an unsupported value, the extension spits out
- * some help text and a list of all supported languages.
- */
-
-if( !defined( 'MEDIAWIKI' ) ) {
- die();
+if ( function_exists( 'wfLoadExtension' ) ) {
+ wfLoadExtension( 'SyntaxHighlight_GeSHi' );
+ // Keep i18n globals so mergeMessageFileList.php doesn't break
+ $wgMessagesDirs['SyntaxHighlight_GeSHi'] = __DIR__ . '/i18n';
+ /* wfWarn(
+ 'Deprecated PHP entry point used for SyntaxHighlight_GeSHi extension. Please use wfLoadExtension instead, ' .
+ 'see https://www.mediawiki.org/wiki/Extension_registration for more details.'
+ ); */
+ return;
+} else {
+ die( 'This version of the SyntaxHighlight_GeSHi extension requires MediaWiki 1.25+' );
}
-
-require_once __DIR__ . '/geshi/geshi.php';
-
-$wgExtensionCredits['parserhook'][] = array(
- 'path' => __FILE__,
- 'name' => 'SyntaxHighlight',
- 'author' => array( 'Brion Vibber', 'Tim Starling', 'Rob Church', 'Niklas Laxström' ),
- 'descriptionmsg' => 'syntaxhighlight-desc',
- 'url' => 'https://www.mediawiki.org/wiki/Extension:SyntaxHighlight_GeSHi',
- 'version' => GESHI_VERSION,
-);
-
-// Change these in LocalSettings.php
-$wgSyntaxHighlightDefaultLang = null;
-$wgSyntaxHighlightKeywordLinks = false;
-
-$dir = __DIR__ . '/';
-$wgMessagesDirs['SyntaxHighlight_GeSHi'] = __DIR__ . '/i18n';
-$wgExtensionMessagesFiles['SyntaxHighlight_GeSHi'] = $dir . 'SyntaxHighlight_GeSHi.i18n.php';
-
-$wgAutoloadClasses['SyntaxHighlight_GeSHi'] = $dir . 'SyntaxHighlight_GeSHi.class.php';
-$wgAutoloadClasses['ResourceLoaderGeSHiModule'] = $dir . 'ResourceLoaderGeSHiModule.php';
-$wgAutoloadClasses['ResourceLoaderGeSHiLocalModule'] = $dir . 'ResourceLoaderGeSHiLocalModule.php';
-
-$wgHooks['ResourceLoaderRegisterModules'][] = 'SyntaxHighlight_GeSHi::resourceLoaderRegisterModules';
-$wgHooks['ContentGetParserOutput'][] = 'SyntaxHighlight_GeSHi::renderHook';
-
-// Module to load MediaWiki:Geshi.css.
-$wgResourceModules['ext.geshi.local'] = array( 'class' => 'ResourceLoaderGeSHiLocalModule' );
-// More modules are defined by SyntaxHighlight_GeSHi::resourceLoaderRegisterModules,
-// one for each supported language. The general name template is 'ext.geshi.language.<lang>'.
-
-/**
- * Map content models to the corresponding language names to be used with the highlighter.
- * Pages with one of the given content models will automatically be highlighted.
- */
-$wgSyntaxHighlightModels = array(
- CONTENT_MODEL_CSS => 'css',
- CONTENT_MODEL_JAVASCRIPT => 'javascript',
-);
-
-/**
- * Register parser hook
- *
- * @param $parser Parser
- * @return bool
- */
-$wgHooks['ParserFirstCallInit'][] = function ( &$parser ) {
- $parser->setHook( 'source', array( 'SyntaxHighlight_GeSHi', 'parserHook' ) );
- $parser->setHook( 'syntaxhighlight', array( 'SyntaxHighlight_GeSHi', 'parserHook' ) );
- return true;
-};
diff --git a/extensions/SyntaxHighlight_GeSHi/extension.json b/extensions/SyntaxHighlight_GeSHi/extension.json
new file mode 100644
index 00000000..19809bf8
--- /dev/null
+++ b/extensions/SyntaxHighlight_GeSHi/extension.json
@@ -0,0 +1,53 @@
+{
+ "name": "SyntaxHighlight",
+ "version": "1.0.8.12",
+ "author": [
+ "Brion Vibber",
+ "Tim Starling",
+ "Rob Church",
+ "Niklas Laxström"
+ ],
+ "url": "https://www.mediawiki.org/wiki/Extension:SyntaxHighlight_GeSHi",
+ "descriptionmsg": "syntaxhighlight-desc",
+ "license-name": "GPL-2.0+",
+ "type": "parserhook",
+ "callback": "SyntaxHighlight_GeSHi::registerExtension",
+ "MessagesDirs": {
+ "SyntaxHighlight_GeSHi": [
+ "i18n"
+ ]
+ },
+ "AutoloadClasses": {
+ "SyntaxHighlight_GeSHi": "SyntaxHighlight_GeSHi.class.php",
+ "ResourceLoaderGeSHiModule": "ResourceLoaderGeSHiModule.php",
+ "ResourceLoaderGeSHiLocalModule": "ResourceLoaderGeSHiLocalModule.php"
+ },
+ "ResourceModules": {
+ "ext.geshi.local": {
+ "class": "ResourceLoaderGeSHiLocalModule"
+ }
+ },
+ "Hooks": {
+ "ParserFirstCallInit": [
+ "SyntaxHighlight_GeSHi::configureParser"
+ ],
+ "ResourceLoaderRegisterModules": [
+ "SyntaxHighlight_GeSHi::resourceLoaderRegisterModules"
+ ],
+ "ContentGetParserOutput": [
+ "SyntaxHighlight_GeSHi::renderHook"
+ ],
+ "ApiFormatHighlight": [
+ "SyntaxHighlight_GeSHi::apiFormatHighlight"
+ ]
+ },
+ "SyntaxHighlightModels": {
+ "css": "css",
+ "javascript": "javascript"
+ },
+ "config": {
+ "SyntaxHighlightDefaultLang": null,
+ "SyntaxHighlightKeywordLinks": false,
+ "GeSHiSupportedLanguages" : null
+ }
+}
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/contrib/aliased.php b/extensions/SyntaxHighlight_GeSHi/geshi/contrib/aliased.php
new file mode 100644
index 00000000..0d4b2838
--- /dev/null
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/contrib/aliased.php
@@ -0,0 +1,122 @@
+<?php
+/**
+ * Another GeSHi example script
+ *
+ * Configure your Apache server with 'AcceptPathInfo true' and something like
+ * 'Alias /viewmysource /var/www/geshi/contrib/aliased.php'. Don't forget
+ * to protect this alias as necessary.
+ *
+ * Usage - visit /viewmysource/file.name.ext to see that file with syntax
+ * highlighting, where "viewmysource" is the name of the alias you set up.
+ * You can use this without an alias too, just by visiting
+ * aliased.php/file.name.ext.
+ *
+ * @author Ross Golder <ross@golder.org>
+ * @version $Id$
+ */
+
+// Your config here
+define("SOURCE_ROOT", "/var/www/your/source/root/");
+
+// Assume you've put geshi in the include_path already
+require_once("geshi.php");
+
+// Get path info
+$path = SOURCE_ROOT.$_SERVER['PATH_INFO'];
+
+// Check for dickheads trying to use '../' to get to sensitive areas
+$base_path_len = strlen(SOURCE_ROOT);
+$real_path = realpath($path);
+if(strncmp($real_path, SOURCE_ROOT, $base_path_len)) {
+ exit("Access outside acceptable path.");
+}
+
+// Check file exists
+if(!file_exists($path)) {
+ exit("File not found ($path).");
+}
+
+// Prepare GeSHi instance
+$geshi = new GeSHi();
+$geshi->set_language('text');
+$geshi->load_from_file($path);
+$geshi->set_header_type(GESHI_HEADER_PRE);
+$geshi->enable_classes();
+$geshi->enable_line_numbers(GESHI_FANCY_LINE_NUMBERS, 10);
+$geshi->set_overall_style('color: #000066; border: 1px solid #d0d0d0; background-color: #f0f0f0;', true);
+$geshi->set_line_style('font: normal normal 95% \'Courier New\', Courier, monospace; color: #003030;', 'font-weight: bold; color: #006060;', true);
+$geshi->set_code_style('color: #000020;', 'color: #000020;');
+$geshi->set_link_styles(GESHI_LINK, 'color: #000060;');
+$geshi->set_link_styles(GESHI_HOVER, 'background-color: #f0f000;');
+$geshi->set_header_content('Source code viewer - ' . $path . ' - ' . $geshi->get_language_name());
+$geshi->set_header_content_style('font-family: Verdana, Arial, sans-serif; color: #808080; font-size: 70%; font-weight: bold; background-color: #f0f0ff; border-bottom: 1px solid #d0d0d0; padding: 2px;');
+$geshi->set_footer_content('Parsed in <TIME> seconds, using GeSHi <VERSION>');
+$geshi->set_footer_content_style('font-family: Verdana, Arial, sans-serif; color: #808080; font-size: 70%; font-weight: bold; background-color: #f0f0ff; border-top: 1px solid #d0d0d0; padding: 2px;');
+
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <title>Source code viewer - <?php echo $path; ?> - <?php $geshi->get_language_name(); ?></title>
+ <style type="text/css">
+ <!--
+ <?php
+ // Output the stylesheet. Note it doesn't output the <style> tag
+ echo $geshi->get_stylesheet();
+ ?>
+ html {
+ background-color: #f0f0f0;
+ }
+ body {
+ font-family: Verdana, Arial, sans-serif;
+ margin: 10px;
+ border: 2px solid #e0e0e0;
+ background-color: #fcfcfc;
+ padding: 5px;
+ }
+ h2 {
+ margin: .1em 0 .2em .5em;
+ border-bottom: 1px solid #b0b0b0;
+ color: #b0b0b0;
+ font-weight: normal;
+ font-size: 150%;
+ }
+ h3 {
+ margin: .1em 0 .2em .5em;
+ color: #b0b0b0;
+ font-weight: normal;
+ font-size: 120%;
+ }
+ #footer {
+ text-align: center;
+ font-size: 80%;
+ color: #a9a9a9;
+ }
+ #footer a {
+ color: #9999ff;
+ }
+ textarea {
+ border: 1px solid #b0b0b0;
+ font-size: 90%;
+ color: #333;
+ margin-left: 20px;
+ }
+ select, input {
+ margin-left: 20px;
+ }
+ p {
+ font-size: 90%;
+ margin-left: .5em;
+ }
+ -->
+ </style>
+</head>
+<body>
+<?php
+// The fun part :)
+echo $geshi->parse_code();
+?>
+<hr/>
+</body>
+</html>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/contrib/cssgen.php b/extensions/SyntaxHighlight_GeSHi/geshi/contrib/cssgen.php
new file mode 100644
index 00000000..d0dac0f9
--- /dev/null
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/contrib/cssgen.php
@@ -0,0 +1,464 @@
+<?php
+/*************************************************************************************
+ * cssgen.php
+ * ----------
+ * Author: Nigel McNie (nigel@geshi.org)
+ * Copyright: (c) 2004 Nigel McNie
+ * Release Version: 1.0.8.12
+ * Date Started: 2004/05/20
+ *
+ * Application to generate custom CSS files for GeSHi (based on an idea by Andreas
+ * Gohr)
+ *
+ *************************************************************************************
+ *
+ * This file is part of GeSHi.
+ *
+ * GeSHi is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * GeSHi is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GeSHi; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ ************************************************************************************/
+
+set_magic_quotes_runtime(0);
+//
+// Functions
+//
+
+function make_header ( $title )
+{
+ echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <title>GeSHi CSS Generator :: ' . $title . ' </title>
+ <style type="text/css" media="screen">
+ <!--
+ html {
+ font-family: Verdana, Arial, sans-serif;
+ font-size: 80%;
+ background-color: #d0d0d0;
+ }
+ body {
+ margin: 10px;
+ padding: 5px;
+ border: 1px solid #f0f0f0;
+ background-color: #f6f6f6;
+ }
+ h1 {
+ border-bottom: 2px solid #e0e0e0;
+ font-weight: normal;
+ font-size: 150%;
+ color: #c0c0c0;
+ }
+ input, textarea {
+ border: 1px solid #d0d0d0;
+ }
+ th {
+ text-align: right;
+ font-weight: normal;
+ }
+ pre {
+ font-size: 110%;
+ color: #202020;
+ }
+ #footer {
+ color: #b0b0b0;
+ text-align: center;
+ font-size: 90%;
+ margin: 0 auto;
+ border-top: 1px solid #e0e0e0;
+ }
+ #footer a {
+ color: #c0c0c0;
+ }
+ -->
+ </style>
+ <script type="text/javascript">
+ function select (state)
+ {
+ var cboxes = document.getElementsByTagName(\'input\');
+ for (var i = 0; i < cboxes.length; i++) {
+ if (cboxes[i].type == "checkbox") {
+ if (state == "true") {
+ cboxes[i].checked = true;
+ } elseif (state == "false") {
+ cboxes[i].checked = false;
+ } elseif (state == "invert") {
+ cboxes[i].checked = !cboxes[i].checked;
+ }
+ }
+ }
+ }
+ </script>
+</head>
+<body>
+<h1>' . $title . '</h1>
+';
+}
+
+function make_footer ()
+{
+ echo '<div id="footer"><a href="http://qbnz.com/highlighter/">GeSHi</a> &copy; Nigel McNie, 2004, released under the GPL</div></body>
+</html>';
+}
+
+
+function get_var ( $var_name )
+{
+ if ( isset($_GET[$var_name]) )
+ {
+ return str_replace("\'", "'", $_GET[$var_name]);
+ }
+ elseif ( isset($_POST[$var_name]) )
+ {
+ return str_replace("\'", "'", $_POST[$var_name]);
+ }
+ return null;
+}
+
+
+
+//
+// Unset everything
+//
+foreach ( $_REQUEST as $var )
+{
+ unset($$var);
+}
+foreach ( array(
+ '_POST' => 'HTTP_POST_VARS',
+ '_GET' => 'HTTP_GET_VARS',
+ '_COOKIE' => 'HTTP_COOKIE_VARS',
+ '_SERVER' => 'HTTP_SERVER_VARS',
+ '_ENV' => 'HTTP_ENV_VARS',
+ '_FILES' => 'HTTP_POST_FILES') as $array => $other )
+{
+ if ( !isset($$array) )
+ {
+ $$array = $$other;
+ }
+ unset($$other);
+}
+
+
+// Get what step we're up to
+$step = get_var('step');
+
+if ( !$step || $step == 1 )
+{
+ $errors = 0;
+ make_header('Step 1');
+ echo "Welcome to the GeSHi CSS generator.<br /><pre>Searching for GeSHi... ";
+
+ // Find GeSHi
+ $geshi_path = get_var('geshi-path');
+ $geshi_lang_path = get_var('geshi-lang-path');
+
+ if(strstr($geshi_path, '..')) {
+ unset($geshi_path);
+ }
+ if(strstr($geshi_lang_path, '..')) {
+ unset($geshi_lang_path);
+ }
+
+ if ( !$geshi_path )
+ {
+ $geshi_path = '../geshi.php';
+ }
+ if ( !$geshi_lang_path )
+ {
+ $geshi_lang_path = '../geshi/';
+ }
+
+ if ( is_file($geshi_path) && is_readable($geshi_path) )
+ {
+ // Get file contents and see if GeSHi is in here
+ $file = @file($geshi_path);
+ $contents = '';
+ foreach ( $file as $line )
+ {
+ $contents .= $line;
+ }
+ if ( strpos($contents, '<?php
+/**
+ * GeSHi - Generic Syntax Highlighter') !== false )
+ {
+ echo '<span style="color: green;">Found at ' . realpath($geshi_path) . '</span>';
+ }
+ else
+ {
+ ++$errors;
+ $no_geshi_dot_php_error = true;
+ echo '<span style="color: red;">Not found</span>';
+ }
+ }
+ else
+ {
+ ++$errors;
+ $no_geshi_dot_php_error = true;
+ echo '<span style="color: red;">Not found</span>';
+ }
+
+ // Find language files
+ echo "\nSearching for language files... ";
+ if ( is_readable($geshi_lang_path . 'css-gen.cfg') )
+ {
+
+ echo '<span style="color: green;">Found at ' . realpath($geshi_lang_path) . '</span>';
+ }
+ else
+ {
+ ++$errors;
+ $no_lang_dir_error = true;
+ echo '<span style="color: red;">Not found</span>';
+ }
+ echo "</pre>\n";
+
+ if ( $errors > 0 )
+ {
+ // We're gonna have to ask for the paths...
+ echo 'Unfortunately CSSGen could not detect the following paths. Please input them and press &quot;submit&quot; to try again.';
+ echo "
+<form action=\"cssgen.php\" method=\"post\">";
+ if ( $no_geshi_dot_php_error )
+ {
+ echo "
+<br />geshi.php: <input type=\"text\" name=\"geshi-path\" value=\"" . realpath('../geshi.php') . "\" size=\"50\" />";
+ }
+ else
+ {
+ echo '<input type="hidden" name="geshi-path" value="' . htmlspecialchars($geshi_path) . '" />';
+ }
+ if ( $no_lang_dir_error )
+ {
+ echo "
+<br />language files directory: <input type=\"text\" name=\"geshi-lang-path\" value=\"" . realpath('../geshi/') . "/\" size=\"50\" /> (should have a trailing slash)";
+ }
+ else
+ {
+ echo '<input type="hidden" name="geshi-lang-path" value="' . $geshi_lang_path . '" />';
+ }
+
+ echo "
+<br /><input type=\"submit\" value=\"Search\" /></form>";
+ }
+ else
+ {
+ // no errors - echo continue form
+ echo 'Everything seems to be detected successfully. Use the button to continue.
+<br /><br /><form action="cssgen.php?step=2" method="post">
+<input type="hidden" name="geshi-path" value="' . realpath($geshi_path) . '" /><input type="hidden" name="geshi-lang-path" value="' . realpath($geshi_lang_path) . '" />
+<input type="submit" value="Step 2" />';
+ }
+
+ make_footer();
+}
+// Step 2
+elseif ( $step == 2 )
+{
+ make_header('Step 2');
+
+ $geshi_path = get_var('geshi-path');
+ $geshi_lang_path = get_var('geshi-lang-path');
+
+ $dh = opendir($geshi_lang_path);
+ $lang_files = array();
+ $file = readdir($dh);
+ while ( $file !== false )
+ {
+ if ( $file == '.' || $file == '..' || $file == 'CVS' || $file == 'css-gen.cfg' )
+ {
+ $file = readdir($dh);
+ continue;
+ }
+ if(!strstr(file_get_contents($dh . DIRECTORY_SEPARATOR . $file), '$language_data')) {
+ $file = readdir($dh);
+ continue;
+ }
+ $lang_files[] = $file;
+ $file = readdir($dh);
+ }
+ closedir($dh);
+ sort($lang_files);
+
+ // Now installed languages are in $lang_files
+
+ echo '<form action="cssgen.php?step=3" method="post" id="step2">
+What languages are you wanting to make this stylesheet for?<br /><br />
+Detected languages:<br />';
+
+ foreach ( $lang_files as $lang )
+ {
+ $lang = substr($lang, 0, strpos($lang, '.'));
+ if ($lang) {
+ echo "<input type=\"checkbox\" name=\"langs[$lang]\" checked=\"checked\" />&nbsp;$lang<br />\n";
+ }
+ }
+
+ echo "Select: <a href=\"javascript:select('true')\">All</a>, <a href=\"javascript:select('false')\">None</a>, <a href=\"javascript:select('invert')\">Invert</a><br />\n";
+
+ echo 'If you\'d like any other languages not detected here to be supported, please enter
+them here, one per line:<br /><textarea rows="4" cols="20" name="extra-langs"></textarea><br />
+';
+
+ echo '<br />Styles:
+<table>
+ <tr><th>Style for the overall code block:</th><td><input type="text" name="overall" value="border: 1px dotted #a0a0a0; font-family: \'Courier New\', Courier, monospace; background-color: #f0f0f0; color: #0000bb;" /></td></tr>
+ <tr><th>Default Styles</th><td><input type="text" name="default-styles" value="font-weight:normal;background:transparent;color:#000; padding-left: 5px;" /></td></tr>
+ <tr><th>Keywords I (if, do, while etc)</th><td><input type="text" name="keywords-1" value="color: #a1a100;" /></td></tr>
+ <tr><th>Keywords II (null, true, false etc)</th><td><input type="text" name="keywords-2" value="color: #000; font-weight: bold;" /></td></tr>
+ <tr><th>Inbuilt Functions (echo, print etc)</th><td><input type="text" name="keywords-3" value="color: #000066;" /></td></tr>
+ <tr><th>Data Types (int, boolean etc)</th><td><input type="text" name="keywords-4" value="color: #f63333;" /></td></tr>
+
+ <tr><th>Comments (//, <!-- --> etc)</th><td><input type="text" name="comments" value="color: #808080;" /></td></tr>
+ <tr><th>Escaped Characters (\n, \t etc)</th><td><input type="text" name="escaped-chars" value="color: #000033; font-weight: bold;" /></td></tr>
+ <tr><th>Brackets ( ([{}]) etc)</th><td><input type="text" name="brackets" value="color: #66cc66;" /></td></tr>
+ <tr><th>Strings ("foo" etc)</th><td><input type="text" name="strings" value="color: #ff0000;" /></td></tr>
+ <tr><th>Numbers (1, -54, 2.5 etc)</th><td><input type="text" name="numbers" value="color: #ff33ff;" /></td></tr>
+ <tr><th>Methods (Foo.bar() etc)</th><td><input type="text" name="methods" value="color: #006600;" /></td></tr>
+</table>';
+
+ echo '<input type="hidden" name="geshi-path" value="' . realpath($geshi_path) . '" /><input type="hidden" name="geshi-lang-path" value="' . realpath($geshi_lang_path) . '" />
+<input type="submit" value="Step 3" /></form>';
+
+ make_footer();
+}
+// Step 3
+elseif ( $step == 3 )
+{
+ make_header('Step 3');
+ echo '<p>Here is your completed stylesheet. Note that it may not be perfect - no regular expression styles are included for one thing,
+you\'ll have to add those yourself (php and xml are just two languages that use them), and line numbers are not included, however
+it includes most of the basic information.</p>';
+
+ // Make the stylesheet
+ $part_selector_1 = '';
+ $part_selector_2 = '';
+ $part_selector_3 = '';
+
+ $langs = get_var('langs');
+ $extra_langs = trim(get_var('extra-langs'));
+ if ( $extra_langs != '' )
+ {
+ $l = explode("\r\n", $extra_langs);
+ foreach ( $l as $lng )
+ {
+ $langs[$lng] = true;
+ }
+ }
+
+
+ foreach ( $langs as $lang => $dummy )
+ {
+ $part_selector_1 .= ".$lang {PART}, ";
+ $part_selector_2 .= ".$lang {PART1}, .$lang {PART2}, ";
+ $part_selector_3 .= ".$lang {PART1}, .$lang {PART2}, .$lang {PART3}, ";
+ }
+ $part_selector_1 = substr($part_selector_1, 0, -2);
+ $part_selector_2 = substr($part_selector_2, 0, -2);
+ $part_selector_3 = substr($part_selector_3, 0, -2);
+
+
+ $default_styles = get_var('default-styles');
+ $ol_selector = str_replace('{PART}', 'ol', $part_selector_1);
+ $overall_styles = get_var('overall');
+ $overall_selector = str_replace('{PART}', '', $part_selector_1);
+
+ $stylesheet = "/* GeSHi (c) Nigel McNie 2004 (http://qbnz.com/highlighter) */";
+
+ if ( $overall != '' )
+ {
+ $stylesheet .= "\n$overall_selector {{$overall_styles}}";
+ }
+ if ( $default_styles != '' )
+ {
+ $default_selector = str_replace(array('{PART1}', '{PART2}'), array('.de1', '.de2'), $part_selector_2);
+ $stylesheet .= "\n$default_selector {{$default_styles}}";
+ }
+
+ // Do keywords
+ $keywords_1 = get_var('keywords-1');
+ $keyword_selector_1 = str_replace('{PART}', '.kw1', $part_selector_1);
+ if ( $keywords_1 != '' )
+ {
+ $stylesheet .= "\n$keyword_selector_1 {{$keywords_1}}";
+ }
+
+ $keywords_2 = get_var('keywords-2');
+ $keyword_selector_2 = str_replace('{PART}', '.kw2', $part_selector_1);
+ if ( $keywords_2 != '' )
+ {
+ $stylesheet .= "\n$keyword_selector_2 {{$keywords_2}}";
+ }
+
+ $keywords_3 = get_var('keywords-3');
+ $keyword_selector_3 = str_replace('{PART}', '.kw3', $part_selector_1);
+ if ( $keywords_3 != '' )
+ {
+ $stylesheet .= "\n$keyword_selector_3 {{$keywords_3}}";
+ }
+
+ $keywords_4 = get_var('keywords-4');
+ $keyword_selector_4 = str_replace('{PART}', '.kw4', $part_selector_1);
+ if ( $keywords_4 != '' )
+ {
+ $stylesheet .= "\n$keyword_selector_4 {{$keywords_4}}";
+ }
+
+ // Do other lexics
+ $comments = get_var('comments');
+ $comment_selector = str_replace(array('{PART1}', '{PART2}', '{PART3}'), array('.co1', '.co2', '.coMULTI'), $part_selector_3);
+ if ( $comments != '' )
+ {
+ $stylesheet .= "\n$comment_selector {{$comments}}";
+ }
+
+ $esc = get_var('escaped-chars');
+ $esc_selector = str_replace('{PART}', '.es0', $part_selector_1);
+ if ( $esc != '' )
+ {
+ $stylesheet .= "\n$esc_selector {{$esc}}";
+ }
+
+ $brackets = get_var('brackets');
+ $brk_selector = str_replace('{PART}', '.br0', $part_selector_1);
+ if ( $brackets != '' )
+ {
+ $stylesheet .= "\n$brk_selector {{$brackets}}";
+ }
+
+ $strings = get_var('strings');
+ $string_selector = str_replace('{PART}', '.st0', $part_selector_1);
+ if ( $strings != '' )
+ {
+ $stylesheet .= "\n$string_selector {{$strings}}";
+ }
+
+ $numbers = get_var('numbers');
+ $num_selector = str_replace('{PART}', '.nu0', $part_selector_1);
+ if ( $numbers != '' )
+ {
+ $stylesheet .= "\n$num_selector {{$numbers}}";
+ }
+
+ $methods = get_var('methods');
+ $method_selector = str_replace('{PART}', '.me0', $part_selector_1);
+ if ( $methods != '' )
+ {
+ $stylesheet .= "\n$method_selector {{$methods}}";
+ }
+
+ echo "<pre>$stylesheet</pre>";
+
+ make_footer();
+}
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/contrib/cssgen2.php b/extensions/SyntaxHighlight_GeSHi/geshi/contrib/cssgen2.php
new file mode 100644
index 00000000..cc3c39cb
--- /dev/null
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/contrib/cssgen2.php
@@ -0,0 +1,59 @@
+<?php
+/**
+ * A simple script which outputs the CSS classes for all languages
+ * supported by GeSHi. You can access it directly to download
+ * the CSS file. On *NIX you can also do a simple `php cssgen.php > geshi.css`.
+ *
+ * This file is part of GeSHi.
+ *
+ * GeSHi is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * GeSHi is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GeSHi; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ * @package geshi
+ * @subpackage contrib
+ * @author revulo <revulon@gmail.com>
+ * @copyright 2008 revulo
+ * @license http://gnu.org/copyleft/gpl.html GNU GPL
+ *
+ */
+
+require dirname(dirname(__FILE__)) . DIRECTORY_SEPARATOR . 'geshi.php';
+$geshi = new GeSHi;
+
+$languages = array();
+if ($handle = opendir($geshi->language_path)) {
+ while (($file = readdir($handle)) !== false) {
+ $pos = strpos($file, '.');
+ if ($pos > 0 && substr($file, $pos) == '.php') {
+ $languages[] = substr($file, 0, $pos);
+ }
+ }
+ closedir($handle);
+}
+sort($languages);
+
+header('Content-Type: application/octet-stream');
+header('Content-Disposition: attachment; filename="geshi.css"');
+
+echo "/**\n".
+ " * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2008 Benny Baumann\n" .
+ " * (http://qbnz.com/highlighter/ and http://geshi.org/)\n".
+ " */\n";
+
+foreach ($languages as $language) {
+ $geshi->set_language($language);
+ // note: the false argument is required for stylesheet generators, see API documentation
+ $css = $geshi->get_stylesheet(false);
+ echo preg_replace('/^\/\*\*.*?\*\//s', '', $css);
+}
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/contrib/example.php b/extensions/SyntaxHighlight_GeSHi/geshi/contrib/example.php
new file mode 100644
index 00000000..1ad923d0
--- /dev/null
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/contrib/example.php
@@ -0,0 +1,217 @@
+<?php
+/**
+ * GeSHi example script
+ *
+ * Just point your browser at this script (with geshi.php in the parent directory,
+ * and the language files in subdirectory "../geshi/")
+ *
+ * @author Nigel McNie
+ * @version $Id$
+ */
+header('Content-Type: text/html; charset=utf-8');
+
+error_reporting(E_ALL);
+
+// Rudimentary checking of where GeSHi is. In a default install it will be in ../, but
+// it could be in the current directory if the include_path is set. There's nowhere else
+// we can reasonably guess.
+if (is_readable('../geshi.php')) {
+ $path = '../';
+} elseif (is_readable('geshi.php')) {
+ $path = './';
+} else {
+ die('Could not find geshi.php - make sure it is in your include path!');
+}
+require $path . 'geshi.php';
+
+$fill_source = false;
+if (isset($_POST['submit'])) {
+ if (get_magic_quotes_gpc()) {
+ $_POST['source'] = stripslashes($_POST['source']);
+ }
+ if (!strlen(trim($_POST['source']))) {
+ $_POST['language'] = preg_replace('#[^a-zA-Z0-9\-_]#', '', $_POST['language']);
+ $_POST['source'] = implode('', @file($path . 'geshi/' . $_POST['language'] . '.php'));
+ $_POST['language'] = 'php';
+ } else {
+ $fill_source = true;
+ }
+
+ // Here's a free demo of how GeSHi works.
+
+ // First the initialisation: source code to highlight and the language to use. Make sure
+ // you sanitise correctly if you use $_POST of course - this very script has had a security
+ // advisory against it in the past because of this. Please try not to use this script on a
+ // live site.
+ $geshi = new GeSHi($_POST['source'], $_POST['language']);
+
+ // Use the PRE_VALID header. This means less output source since we don't have to output &nbsp;
+ // everywhere. Of course it also means you can't set the tab width.
+ // HEADER_PRE_VALID puts the <pre> tag inside the list items (<li>) thus producing valid HTML markup.
+ // HEADER_PRE puts the <pre> tag around the list (<ol>) which is invalid in HTML 4 and XHTML 1
+ // HEADER_DIV puts a <div> tag arount the list (valid!) but needs to replace whitespaces with &nbsp
+ // thus producing much larger overhead. You can set the tab width though.
+ $geshi->set_header_type(GESHI_HEADER_PRE_VALID);
+
+ // Enable CSS classes. You can use get_stylesheet() to output a stylesheet for your code. Using
+ // CSS classes results in much less output source.
+ $geshi->enable_classes();
+
+ // Enable line numbers. We want fancy line numbers, and we want every 5th line number to be fancy
+ $geshi->enable_line_numbers(GESHI_FANCY_LINE_NUMBERS, 5);
+
+ // Set the style for the PRE around the code. The line numbers are contained within this box (not
+ // XHTML compliant btw, but if you are liberally minded about these things then you'll appreciate
+ // the reduced source output).
+ $geshi->set_overall_style('font: normal normal 90% monospace; color: #000066; border: 1px solid #d0d0d0; background-color: #f0f0f0;', false);
+
+ // Set the style for line numbers. In order to get style for line numbers working, the <li> element
+ // is being styled. This means that the code on the line will also be styled, and most of the time
+ // you don't want this. So the set_code_style reverts styles for the line (by using a <div> on the line).
+ // So the source output looks like this:
+ //
+ // <pre style="[set_overall_style styles]"><ol>
+ // <li style="[set_line_style styles]"><div style="[set_code_style styles]>...</div></li>
+ // ...
+ // </ol></pre>
+ $geshi->set_line_style('color: #003030;', 'font-weight: bold; color: #006060;', true);
+ $geshi->set_code_style('color: #000020;', true);
+
+ // Styles for hyperlinks in the code. GESHI_LINK for default styles, GESHI_HOVER for hover style etc...
+ // note that classes must be enabled for this to work.
+ $geshi->set_link_styles(GESHI_LINK, 'color: #000060;');
+ $geshi->set_link_styles(GESHI_HOVER, 'background-color: #f0f000;');
+
+ // Use the header/footer functionality. This puts a div with content within the PRE element, so it is
+ // affected by the styles set by set_overall_style. So if the PRE has a border then the header/footer will
+ // appear inside it.
+ $geshi->set_header_content('<SPEED> <TIME> GeSHi &copy; 2004-2007, Nigel McNie, 2007-2008 Benny Baumann. View source of example.php for example of using GeSHi');
+ $geshi->set_header_content_style('font-family: sans-serif; color: #808080; font-size: 70%; font-weight: bold; background-color: #f0f0ff; border-bottom: 1px solid #d0d0d0; padding: 2px;');
+
+ // You can use <TIME> and <VERSION> as placeholders
+ $geshi->set_footer_content('Parsed in <TIME> seconds at <SPEED>, using GeSHi <VERSION>');
+ $geshi->set_footer_content_style('font-family: sans-serif; color: #808080; font-size: 70%; font-weight: bold; background-color: #f0f0ff; border-top: 1px solid #d0d0d0; padding: 2px;');
+} else {
+ // make sure we don't preselect any language
+ $_POST['language'] = null;
+}
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <title>GeSHi examples</title>
+ <style type="text/css">
+ <!--
+ <?php
+ if (isset($_POST['submit'])) {
+ // Output the stylesheet. Note it doesn't output the <style> tag
+ echo $geshi->get_stylesheet(true);
+ }
+ ?>
+ html {
+ background-color: #f0f0f0;
+ }
+ body {
+ font-family: Verdana, Arial, sans-serif;
+ margin: 10px;
+ border: 2px solid #e0e0e0;
+ background-color: #fcfcfc;
+ padding: 5px;
+ }
+ h2 {
+ margin: .1em 0 .2em .5em;
+ border-bottom: 1px solid #b0b0b0;
+ color: #b0b0b0;
+ font-weight: normal;
+ font-size: 150%;
+ }
+ h3 {
+ margin: .1em 0 .2em .5em;
+ color: #b0b0b0;
+ font-weight: normal;
+ font-size: 120%;
+ }
+ #footer {
+ text-align: center;
+ font-size: 80%;
+ color: #a9a9a9;
+ }
+ #footer a {
+ color: #9999ff;
+ }
+ textarea {
+ border: 1px solid #b0b0b0;
+ font-size: 90%;
+ color: #333;
+ margin-left: 20px;
+ }
+ select, input {
+ margin-left: 20px;
+ }
+ p {
+ font-size: 90%;
+ margin-left: .5em;
+ }
+ -->
+ </style>
+</head>
+<body>
+<h2>GeSHi Example Script</h2>
+<p>To use this script, make sure that <strong>geshi.php</strong> is in the parent directory or in your
+include_path, and that the language files are in a subdirectory of GeSHi's directory called <strong>geshi/</strong>.</p>
+<p>Enter your source and a language to highlight the source in and submit, or just choose a language to
+have that language file highlighted in PHP.</p>
+<?php
+if (isset($_POST['submit'])) {
+ // The fun part :)
+ echo $geshi->parse_code();
+ echo '<hr />';
+}
+?>
+<form action="?" method="post">
+<h3>Source to highlight</h3>
+<p>
+<textarea rows="10" cols="60" name="source" id="source"><?php echo $fill_source ? htmlspecialchars($_POST['source']) : '' ?></textarea>
+</p>
+<h3>Choose a language</h3>
+<p>
+<select name="language" id="language">
+<?php
+if (!($dir = @opendir(dirname(__FILE__) . '/geshi'))) {
+ if (!($dir = @opendir(dirname(__FILE__) . '/../geshi'))) {
+ echo '<option>No languages available!</option>';
+ }
+}
+$languages = array();
+while ($file = readdir($dir)) {
+ if ( $file[0] == '.' || strpos($file, '.', 1) === false) {
+ continue;
+ }
+ $lang = substr($file, 0, strpos($file, '.'));
+ $languages[] = $lang;
+}
+closedir($dir);
+sort($languages);
+foreach ($languages as $lang) {
+ if (isset($_POST['language']) && $_POST['language'] == $lang) {
+ $selected = 'selected="selected"';
+ } else {
+ $selected = '';
+ }
+ echo '<option value="' . $lang . '" '. $selected .'>' . $lang . "</option>\n";
+}
+
+?>
+</select>
+</p>
+<p>
+<input type="submit" name="submit" value="Highlight Source" />
+<input type="submit" name="clear" onclick="document.getElementById('source').value='';document.getElementById('language').value='';return false" value="clear" />
+</p>
+</form>
+<div id="footer">GeSHi &copy; Nigel McNie, 2004, released under the GNU GPL<br />
+For a better demonstration, check out the <a href="http://qbnz.com/highlighter/demo.php">online demo</a>
+</div>
+</body>
+</html>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/contrib/langcheck.php b/extensions/SyntaxHighlight_GeSHi/geshi/contrib/langcheck.php
new file mode 100644
index 00000000..ce5aed1f
--- /dev/null
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/contrib/langcheck.php
@@ -0,0 +1,778 @@
+<?php
+/**
+ * GeSHi language file validation script
+ *
+ * Just point your browser at this script (with geshi.php in the parent directory)
+ * and the language files in subdirectory "../geshi/" are being validated
+ *
+ * CLI mode is supported
+ *
+ * @author Benny Baumann
+ * @version $Id$
+ */
+header('Content-Type: text/html; charset=utf-8');
+
+set_time_limit(0);
+error_reporting(E_ALL);
+$time_start = explode(' ', microtime());
+
+function colorize($level, $string) {
+ static $colors, $end;
+ if ( !isset($colors) ) {
+ if ( PHP_SAPI != 'cli' ) {
+ $end = '</span>';
+ $colors = array(
+ TYPE_NOTICE => '<span style="color:#080;font-weight:bold;">',
+ TYPE_WARNING => '<span style="color:#CC0; font-weight: bold;">',
+ TYPE_ERROR => '<span style="color:#F00; font-weight: bold;">',
+ TYPE_OK => '<span style="color: #080; font-weight: bold;">'
+ );
+ } else {
+ $end = chr(27).'[0m';
+ $colors = array(
+ TYPE_NOTICE => chr(27).'[1m',
+ TYPE_WARNING => chr(27).'[1;33m',
+ TYPE_ERROR => chr(27).'[1;31m',
+ TYPE_OK => chr(27).'[1;32m'
+ );
+ }
+ }
+
+ if ( !isset($colors[$level]) ) {
+ trigger_error("no colors for level $level", E_USER_ERROR);
+ }
+
+ return $colors[$level].$string.$end;
+}
+
+define ('TYPE_NOTICE', 0);
+define ('TYPE_WARNING', 1);
+define ('TYPE_ERROR', 2);
+define ('TYPE_OK', 3);
+
+$error_abort = false;
+$error_cache = array();
+function output_error_cache(){
+ global $error_cache;
+
+ if(count($error_cache)) {
+ echo colorize(TYPE_ERROR, "Failed");
+ if ( PHP_SAPI == 'cli' ) {
+ echo "\n\n";
+ } else {
+ echo "<br /><ol>\n";
+ }
+ foreach($error_cache as $error_msg) {
+ if ( PHP_SAPI == 'cli' ) {
+ echo "\n";
+ } else {
+ echo "<li>";
+ }
+ switch($error_msg['t']) {
+ case TYPE_NOTICE:
+ $msg = 'NOTICE';
+ break;
+ case TYPE_WARNING:
+ $msg = 'WARNING';
+ break;
+ case TYPE_ERROR:
+ $msg = 'ERROR';
+ break;
+ }
+ echo colorize($error_msg['t'], $msg);
+ if ( PHP_SAPI == 'cli' ) {
+ echo "\t" . $error_msg['m'];
+ } else {
+ echo " " . $error_msg['m'] . "</li>";
+ }
+ }
+ if ( PHP_SAPI == 'cli' ) {
+ echo "\n";
+ } else {
+ echo "</ol>\n";
+ }
+ } else {
+ echo colorize(TYPE_OK, "OK");
+ if ( PHP_SAPI == 'cli' ) {
+ echo "\n";
+ } else {
+ echo "\n<br />";
+ }
+ }
+ echo "\n";
+
+ $error_cache = array();
+}
+
+function report_error($type, $message) {
+ global $error_cache, $error_abort;
+
+ $error_cache[] = array('t' => $type, 'm' => $message);
+ if(TYPE_ERROR == $type) {
+ $error_abort = true;
+ }
+}
+
+function dupfind_strtolower(&$value){
+ $value = strtolower($value);
+}
+
+if ( PHP_SAPI != 'cli' ) { ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <title>GeSHi Language File Validation Script</title>
+ <style type="text/css">
+ <!--
+ html {
+ background-color: #f0f0f0;
+ }
+ body {
+ font-family: Verdana, Arial, sans-serif;
+ margin: 10px;
+ border: 2px solid #e0e0e0;
+ background-color: #fcfcfc;
+ padding: 5px;
+ font-size: 10pt;
+ }
+ h2 {
+ margin: .1em 0 .2em .5em;
+ border-bottom: 1px solid #b0b0b0;
+ color: #b0b0b0;
+ font-weight: normal;
+ font-size: 150%;
+ }
+ h3 {
+ margin: .1em 0 .2em .5em;
+ color: #b0b0b0;
+ font-weight: normal;
+ font-size: 120%;
+ }
+ #footer {
+ text-align: center;
+ font-size: 80%;
+ color: #a9a9a9;
+ }
+ #footer a {
+ color: #9999ff;
+ }
+ textarea {
+ border: 1px solid #b0b0b0;
+ font-size: 90%;
+ color: #333;
+ margin-left: 20px;
+ }
+ select, input {
+ margin-left: 20px;
+ }
+ p {
+ font-size: 90%;
+ margin-left: .5em;
+ }
+ -->
+ </style>
+</head>
+<body>
+<h2>GeSHi Language File Validation Script</h2>
+<p>To use this script, make sure that <strong>geshi.php</strong> is in the
+parent directory or in your include_path, and that the language files are in a
+subdirectory of GeSHi's directory called <strong>geshi/</strong>.</p>
+<p>Everything else will be done by this script automatically. After the script
+finished you should see messages of what could cause trouble with GeSHi or where
+your language files can be improved. Please be patient, as this might take some time.</p>
+
+<ol>
+<li>Checking where to find GeSHi installation ...<?php
+} else { ?>
+<?php echo colorize(TYPE_NOTICE, "#### GeSHi Language File Validation Script ####") ?>
+
+
+To use this script, make sure that <?php echo colorize(TYPE_NOTICE, "geshi.php"); ?> is in the
+parent directory or in your include_path, and that the language files are in a
+subdirectory of GeSHi's directory called <?php echo colorize(TYPE_NOTICE, "geshi/"); ?>.
+
+Everything else will be done by this script automatically. After the script
+finished you should see messages of what could cause trouble with GeSHi or where
+your language files can be improved. Please be patient, as this might take some time.
+
+
+Checking where to find GeSHi installation ...<?php echo "\t";
+}
+
+// Rudimentary checking of where GeSHi is. In a default install it will be in ../, but
+// it could be in the current directory if the include_path is set. There's nowhere else
+// we can reasonably guess.
+if (is_readable('../geshi.php')) {
+ $path = '../';
+} elseif (is_readable('geshi.php')) {
+ $path = './';
+} else {
+ report_error(TYPE_ERROR, 'Could not find geshi.php - make sure it is in your include path!');
+}
+
+if(!$error_abort) {
+ require $path . 'geshi.php';
+
+ if(!class_exists('GeSHi')) {
+ report_error(TYPE_ERROR, 'The GeSHi class was not found, although it seemed we loaded the correct file!');
+ }
+}
+
+if(!$error_abort) {
+ if(!defined('GESHI_LANG_ROOT')) {
+ report_error(TYPE_ERROR, 'There\'s no information present on where to find the language files!');
+ } elseif(!is_dir(GESHI_LANG_ROOT)) {
+ report_error(TYPE_ERROR, 'The path "'.GESHI_LANG_ROOT.'" given, does not ressemble a directory!');
+ } elseif(!is_readable(GESHI_LANG_ROOT)) {
+ report_error(TYPE_ERROR, 'The path "'.GESHI_LANG_ROOT.'" is not readable to this script!');
+ }
+}
+
+output_error_cache();
+
+if(!$error_abort) {
+ if ( PHP_SAPI == 'cli' ) {
+ echo "Listing available language files ...\t\t";
+ } else {
+ echo "</li>\n<li>Listing available language files ... ";
+ }
+
+ if (!($dir = @opendir(GESHI_LANG_ROOT))) {
+ report_error(TYPE_ERROR, 'Error requesting listing for available language files!');
+ }
+
+ $languages = array();
+
+ if(!$error_abort) {
+ while ($file = readdir($dir)) {
+ if (!$file || $file[0] == '.' || strpos($file, '.php') === false) {
+ continue;
+ }
+ $lang = substr($file, 0, strpos($file, '.'));
+ if(4 != strlen($file) - strlen($lang)) {
+ continue;
+ }
+ $languages[] = $lang;
+ }
+ closedir($dir);
+ }
+
+ $languages = array_unique($languages);
+ sort($languages);
+
+ if(!count($languages)) {
+ report_error(TYPE_WARNING, 'Unable to locate any usable language files in "'.GESHI_LANG_ROOT.'"!');
+ }
+
+ output_error_cache();
+}
+
+if ( PHP_SAPI == 'cli' ) {
+ if (isset($_SERVER['argv'][1]) && in_array($_SERVER['argv'][1], $languages)) {
+ $languages = array($_SERVER['argv'][1]);
+ }
+} else {
+ if (isset($_REQUEST['show']) && in_array($_REQUEST['show'], $languages)) {
+ $languages = array($_REQUEST['show']);
+ }
+}
+
+if(!$error_abort) {
+ foreach ($languages as $lang) {
+
+ if ( PHP_SAPI == 'cli' ) {
+ echo "Validating language file for '$lang' ...\t\t";
+ } else {
+ echo "</li>\n<li>Validating language file for '$lang' ... ";
+ }
+
+ $langfile = GESHI_LANG_ROOT . $lang . '.php';
+
+ $language_data = array();
+
+ if(!is_file($langfile)) {
+ report_error(TYPE_ERROR, 'The path "' .$langfile. '" does not ressemble a regular file!');
+ } elseif(!is_readable($langfile)) {
+ report_error(TYPE_ERROR, 'Cannot read file "' .$langfile. '"!');
+ } else {
+ $langfile_content = file_get_contents($langfile);
+ if(preg_match("/\?>(?:\r?\n|\r(?!\n)){2,}\Z/", $langfile_content)) {
+ report_error(TYPE_ERROR, 'Language file contains trailing empty lines at EOF!');
+ }
+ if(preg_match("/\?>(?:\r?\n|\r(?!\n))?\Z/", $langfile_content)) {
+ report_error(TYPE_ERROR, 'Language file contains an PHP end marker at EOF!');
+ }
+ if(!preg_match("/(?:\r?\n|\r(?!\n))\Z/", $langfile_content)) {
+ report_error(TYPE_ERROR, 'Language file contains no newline at EOF!');
+ }
+ if(preg_match("/(\r?\n|\r(?!\n))\\1\Z/", $langfile_content)) {
+ report_error(TYPE_ERROR, 'Language file contains trailing empty line before EOF!');
+ }
+ if(preg_match("/[\x20\t]$/m", $langfile_content)) {
+ report_error(TYPE_ERROR, 'Language file contains trailing whitespace at EOL!');
+ }
+ if(preg_match("/\t/", $langfile_content)) {
+ report_error(TYPE_NOTICE, 'Language file contains unescaped tabulator chars (probably for indentation)!');
+ }
+ if(preg_match('/^(?: )*(?! )(?! \*) /m', $langfile_content)) {
+ report_error(TYPE_NOTICE, 'Language file contains irregular indentation (other than 4 spaces per indentation level)!');
+ }
+
+ if(!preg_match("/\/\*\*((?!\*\/).)*?Author:((?!\*\/).)*?\*\//s", $langfile_content)) {
+ report_error(TYPE_WARNING, 'Language file does not contain a specification of an author!');
+ }
+ if(!preg_match("/\/\*\*((?!\*\/).)*?Copyright:((?!\*\/).)*?\*\//s", $langfile_content)) {
+ report_error(TYPE_WARNING, 'Language file does not contain a specification of the copyright!');
+ }
+ if(!preg_match("/\/\*\*((?!\*\/).)*?Release Version:((?!\*\/).)*?\*\//s", $langfile_content)) {
+ report_error(TYPE_WARNING, 'Language file does not contain a specification of the release version!');
+ }
+ if(!preg_match("/\/\*\*((?!\*\/).)*?Date Started:((?!\*\/).)*?\*\//s", $langfile_content)) {
+ report_error(TYPE_WARNING, 'Language file does not contain a specification of the date it was started!');
+ }
+ if(!preg_match("/\/\*\*((?!\*\/).)*?This file is part of GeSHi\.((?!\*\/).)*?\*\//s", $langfile_content)) {
+ report_error(TYPE_WARNING, 'Language file does not state that it belongs to GeSHi!');
+ }
+ if(!preg_match("/\/\*\*((?!\*\/).)*?language file for GeSHi\.((?!\*\/).)*?\*\//s", $langfile_content)) {
+ report_error(TYPE_WARNING, 'Language file does not state that it is a language file for GeSHi!');
+ }
+ if(!preg_match("/\/\*\*((?!\*\/).)*?GNU General Public License((?!\*\/).)*?\*\//s", $langfile_content)) {
+ report_error(TYPE_WARNING, 'Language file does not state that it is provided under the terms of the GNU GPL!');
+ }
+
+ unset($langfile_content);
+
+ include $langfile;
+
+ if(!isset($language_data)) {
+ report_error(TYPE_ERROR, 'Language file does not contain a $language_data structure to check!');
+ } elseif (!is_array($language_data)) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data structure which is not an array!');
+ }
+ }
+
+ if(!$error_abort) {
+ if(!isset($language_data['LANG_NAME'])) {
+ report_error(TYPE_ERROR, 'Language file contains no $language_data[\'LANG_NAME\'] specification!');
+ } elseif (!is_string($language_data['LANG_NAME'])) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'LANG_NAME\'] specification which is not a string!');
+ }
+
+ if(!isset($language_data['COMMENT_SINGLE'])) {
+ report_error(TYPE_ERROR, 'Language file contains no $language_data[\'COMMENT_SIGNLE\'] structure to check!');
+ } elseif (!is_array($language_data['COMMENT_SINGLE'])) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'COMMENT_SINGLE\'] structure which is not an array!');
+ }
+
+ if(!isset($language_data['COMMENT_MULTI'])) {
+ report_error(TYPE_ERROR, 'Language file contains no $language_data[\'COMMENT_MULTI\'] structure to check!');
+ } elseif (!is_array($language_data['COMMENT_MULTI'])) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'COMMENT_MULTI\'] structure which is not an array!');
+ }
+
+ if(isset($language_data['COMMENT_REGEXP'])) {
+ if (!is_array($language_data['COMMENT_REGEXP'])) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'COMMENT_REGEXP\'] structure which is not an array!');
+ }
+ }
+
+ if(!isset($language_data['QUOTEMARKS'])) {
+ report_error(TYPE_ERROR, 'Language file contains no $language_data[\'QUOTEMARKS\'] structure to check!');
+ } elseif (!is_array($language_data['QUOTEMARKS'])) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'QUOTEMARKS\'] structure which is not an array!');
+ }
+
+ if(isset($language_data['HARDQUOTE'])) {
+ if (!is_array($language_data['HARDQUOTE'])) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'HARDQUOTE\'] structure which is not an array!');
+ }
+ }
+
+ if(!isset($language_data['ESCAPE_CHAR'])) {
+ report_error(TYPE_ERROR, 'Language file contains no $language_data[\'ESCAPE_CHAR\'] specification to check!');
+ } elseif (!is_string($language_data['ESCAPE_CHAR'])) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'ESCAPE_CHAR\'] specification which is not a string!');
+ } elseif (1 < strlen($language_data['ESCAPE_CHAR'])) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'ESCAPE_CHAR\'] specification is not empty or exactly one char!');
+ }
+
+ if(!isset($language_data['CASE_KEYWORDS'])) {
+ report_error(TYPE_ERROR, 'Language file contains no $language_data[\'CASE_KEYWORDS\'] specification!');
+ } elseif (!is_int($language_data['CASE_KEYWORDS'])) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'CASE_KEYWORDS\'] specification which is not an integer!');
+ } elseif (GESHI_CAPS_NO_CHANGE != $language_data['CASE_KEYWORDS'] &&
+ GESHI_CAPS_LOWER != $language_data['CASE_KEYWORDS'] &&
+ GESHI_CAPS_UPPER != $language_data['CASE_KEYWORDS']) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'CASE_KEYWORDS\'] specification which is neither of GESHI_CAPS_NO_CHANGE, GESHI_CAPS_LOWER nor GESHI_CAPS_UPPER!');
+ }
+
+ if(!isset($language_data['KEYWORDS'])) {
+ report_error(TYPE_ERROR, 'Language file contains no $language_data[\'KEYWORDS\'] structure to check!');
+ } elseif (!is_array($language_data['KEYWORDS'])) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'KEYWORDS\'] structure which is not an array!');
+ } else {
+ foreach($language_data['KEYWORDS'] as $kw_key => $kw_value) {
+ if(!is_integer($kw_key)) {
+ report_error(TYPE_WARNING, "Language file contains an key '$kw_key' in \$language_data['KEYWORDS'] that is not integer!");
+ } elseif (!is_array($kw_value)) {
+ report_error(TYPE_ERROR, "Language file contains a \$language_data['KEYWORDS']['$kw_value'] structure which is not an array!");
+ }
+ }
+ }
+
+ if(!isset($language_data['SYMBOLS'])) {
+ report_error(TYPE_ERROR, 'Language file contains no $language_data[\'SYMBOLS\'] structure to check!');
+ } elseif (!is_array($language_data['SYMBOLS'])) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'SYMBOLS\'] structure which is not an array!');
+ }
+
+ if(!isset($language_data['CASE_SENSITIVE'])) {
+ report_error(TYPE_ERROR, 'Language file contains no $language_data[\'CASE_SENSITIVE\'] structure to check!');
+ } elseif (!is_array($language_data['CASE_SENSITIVE'])) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'CASE_SENSITIVE\'] structure which is not an array!');
+ } else {
+ foreach($language_data['CASE_SENSITIVE'] as $cs_key => $cs_value) {
+ if(!is_integer($cs_key)) {
+ report_error(TYPE_WARNING, "Language file contains an key '$cs_key' in \$language_data['CASE_SENSITIVE'] that is not integer!");
+ } elseif (!is_bool($cs_value)) {
+ report_error(TYPE_ERROR, "Language file contains a Case Sensitivity specification for \$language_data['CASE_SENSITIVE']['$cs_value'] which is not a boolean!");
+ }
+ }
+ }
+
+ if(!isset($language_data['URLS'])) {
+ report_error(TYPE_ERROR, 'Language file contains no $language_data[\'URLS\'] structure to check!');
+ } elseif (!is_array($language_data['URLS'])) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'URLS\'] structure which is not an array!');
+ } else {
+ foreach($language_data['URLS'] as $url_key => $url_value) {
+ if(!is_integer($url_key)) {
+ report_error(TYPE_WARNING, "Language file contains an key '$url_key' in \$language_data['URLS'] that is not integer!");
+ } elseif (!is_string($url_value)) {
+ report_error(TYPE_ERROR, "Language file contains a Documentation URL specification for \$language_data['URLS']['$url_value'] which is not a string!");
+ } elseif (preg_match('#&([^;]*(=|$))#U', $url_value)) {
+ report_error(TYPE_ERROR, "Language file contains unescaped ampersands (&amp;) in \$language_data['URLS']!");
+ }
+ }
+ }
+
+ if(!isset($language_data['OOLANG'])) {
+ report_error(TYPE_ERROR, 'Language file contains no $language_data[\'OOLANG\'] specification!');
+ } elseif (!is_int($language_data['OOLANG']) && !is_bool($language_data['OOLANG'])) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'OOLANG\'] specification which is neither boolean nor integer!');
+ } elseif (false !== $language_data['OOLANG'] &&
+ true !== $language_data['OOLANG'] &&
+ 2 !== $language_data['OOLANG']) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'OOLANG\'] specification which is neither of false, true or 2!');
+ }
+
+ if(!isset($language_data['OBJECT_SPLITTERS'])) {
+ report_error(TYPE_ERROR, 'Language file contains no $language_data[\'OBJECT_SPLITTERS\'] structure to check!');
+ } elseif (!is_array($language_data['OBJECT_SPLITTERS'])) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'OBJECT_SPLITTERS\'] structure which is not an array!');
+ }
+
+ if(!isset($language_data['REGEXPS'])) {
+ report_error(TYPE_ERROR, 'Language file contains no $language_data[\'REGEXPS\'] structure to check!');
+ } elseif (!is_array($language_data['REGEXPS'])) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'REGEXPS\'] structure which is not an array!');
+ }
+
+ if(!isset($language_data['STRICT_MODE_APPLIES'])) {
+ report_error(TYPE_ERROR, 'Language file contains no $language_data[\'STRICT_MODE_APPLIES\'] specification!');
+ } elseif (!is_int($language_data['STRICT_MODE_APPLIES'])) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'STRICT_MODE_APPLIES\'] specification which is not an integer!');
+ } elseif (GESHI_MAYBE != $language_data['STRICT_MODE_APPLIES'] &&
+ GESHI_ALWAYS != $language_data['STRICT_MODE_APPLIES'] &&
+ GESHI_NEVER != $language_data['STRICT_MODE_APPLIES']) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'STRICT_MODE_APPLIES\'] specification which is neither of GESHI_MAYBE, GESHI_ALWAYS nor GESHI_NEVER!');
+ }
+
+ if(!isset($language_data['SCRIPT_DELIMITERS'])) {
+ report_error(TYPE_ERROR, 'Language file contains no $language_data[\'SCRIPT_DELIMITERS\'] structure to check!');
+ } elseif (!is_array($language_data['SCRIPT_DELIMITERS'])) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'SCRIPT_DELIMITERS\'] structure which is not an array!');
+ }
+
+ if(!isset($language_data['HIGHLIGHT_STRICT_BLOCK'])) {
+ report_error(TYPE_ERROR, 'Language file contains no $language_data[\'HIGHLIGHT_STRICT_BLOCK\'] structure to check!');
+ } elseif (!is_array($language_data['HIGHLIGHT_STRICT_BLOCK'])) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'HIGHLIGHT_STRICT_BLOCK\'] structure which is not an array!');
+ }
+
+ if(isset($language_data['TAB_WIDTH'])) {
+ if (!is_int($language_data['TAB_WIDTH'])) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'TAB_WIDTH\'] specification which is not an integer!');
+ } elseif (1 > $language_data['TAB_WIDTH']) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'TAB_WIDTH\'] specification which is less than 1!');
+ }
+ }
+
+ if(isset($language_data['PARSER_CONTROL'])) {
+ if (!is_array($language_data['PARSER_CONTROL'])) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'PARSER_CONTROL\'] structure which is not an array!');
+ }
+ }
+
+ if(!isset($language_data['STYLES'])) {
+ report_error(TYPE_ERROR, 'Language file contains no $language_data[\'STYLES\'] structure to check!');
+ } elseif (!is_array($language_data['STYLES'])) {
+ report_error(TYPE_ERROR, 'Language file contains a $language_data[\'STYLES\'] structure which is not an array!');
+ } else {
+ $style_arrays = array('KEYWORDS', 'COMMENTS', 'ESCAPE_CHAR',
+ 'BRACKETS', 'STRINGS', 'NUMBERS', 'METHODS', 'SYMBOLS',
+ 'REGEXPS', 'SCRIPT');
+ foreach($style_arrays as $style_kind) {
+ if(!isset($language_data['STYLES'][$style_kind])) {
+ report_error(TYPE_ERROR, "Language file contains no \$language_data['STYLES']['$style_kind'] structure to check!");
+ } elseif (!is_array($language_data['STYLES'][$style_kind])) {
+ report_error(TYPE_ERROR, "Language file contains a \$language_data['STYLES\']['$style_kind'] structure which is not an array!");
+ } else {
+ foreach($language_data['STYLES'][$style_kind] as $sk_key => $sk_value) {
+ if(!is_int($sk_key) && ('COMMENTS' != $style_kind && 'MULTI' != $sk_key)
+ && !(('STRINGS' == $style_kind || 'ESCAPE_CHAR' == $style_kind) && 'HARD' == $sk_key)) {
+ report_error(TYPE_WARNING, "Language file contains an key '$sk_key' in \$language_data['STYLES']['$style_kind'] that is not integer!");
+ } elseif (!is_string($sk_value)) {
+ report_error(TYPE_WARNING, "Language file contains a CSS specification for \$language_data['STYLES']['$style_kind'][$key] which is not a string!");
+ }
+ }
+ }
+ }
+
+ unset($style_arrays);
+ }
+ }
+
+ if(!$error_abort) {
+ //Initial sanity checks survived? --> Let's dig deeper!
+ foreach($language_data['KEYWORDS'] as $key => $keywords) {
+ if(!isset($language_data['CASE_SENSITIVE'][$key])) {
+ report_error(TYPE_ERROR, "Language file contains no \$language_data['CASE_SENSITIVE'] specification for keyword group $key!");
+ }
+ if(!isset($language_data['URLS'][$key])) {
+ report_error(TYPE_ERROR, "Language file contains no \$language_data['URLS'] specification for keyword group $key!");
+ }
+ if(empty($keywords)) {
+ report_error(TYPE_WARNING, "Language file contains an empty keyword list in \$language_data['KEYWORDS'] for group $key!");
+ }
+ foreach($keywords as $id => $kw) {
+ if(!is_string($kw)) {
+ report_error(TYPE_WARNING, "Language file contains an non-string entry at \$language_data['KEYWORDS'][$key][$id]!");
+ } elseif (!strlen($kw)) {
+ report_error(TYPE_ERROR, "Language file contains an empty string entry at \$language_data['KEYWORDS'][$key][$id]!");
+ } elseif (preg_match('/^([\(\)\{\}\[\]\^=.,:;\-+\*\/%\$\"\'\?]|&[\w#]\w*;)+$/i', $kw)) {
+ report_error(TYPE_NOTICE, "Language file contains an keyword ('$kw') at \$language_data['KEYWORDS'][$key][$id] which seems to be better suited for the symbols section!");
+ }
+ }
+ if(isset($language_data['CASE_SENSITIVE'][$key]) && !$language_data['CASE_SENSITIVE'][$key]) {
+ array_walk($keywords, 'dupfind_strtolower');
+ }
+ if(count($keywords) != count(array_unique($keywords))) {
+ $kw_diffs = array_count_values($keywords);
+ foreach($kw_diffs as $kw => $kw_count) {
+ if($kw_count > 1) {
+ report_error(TYPE_WARNING, "Language file contains per-group duplicate keyword '$kw' in \$language_data['KEYWORDS'][$key]!");
+ }
+ }
+ }
+ }
+
+ $disallowed_before = "(?<![a-zA-Z0-9\$_\|\#;>|^&";
+ $disallowed_after = "(?![a-zA-Z0-9_\|%\\-&;";
+
+ foreach($language_data['KEYWORDS'] as $key => $keywords) {
+ foreach($language_data['KEYWORDS'] as $key2 => $keywords2) {
+ if($key2 <= $key) {
+ continue;
+ }
+ $kw_diffs = array_intersect($keywords, $keywords2);
+ foreach($kw_diffs as $kw) {
+ if(isset($language_data['PARSER_CONTROL']['KEYWORDS'])) {
+ //Check the precondition\post-cindition for the involved keyword groups
+ $g1_pre = $disallowed_before;
+ $g2_pre = $disallowed_before;
+ $g1_post = $disallowed_after;
+ $g2_post = $disallowed_after;
+ if(isset($language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_BEFORE'])) {
+ $g1_pre = $language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_BEFORE'];
+ $g2_pre = $language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_BEFORE'];
+ }
+ if(isset($language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_AFTER'])) {
+ $g1_post = $language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_AFTER'];
+ $g2_post = $language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_AFTER'];
+ }
+
+ if(isset($language_data['PARSER_CONTROL']['KEYWORDS'][$key]['DISALLOWED_BEFORE'])) {
+ $g1_pre = $language_data['PARSER_CONTROL']['KEYWORDS'][$key]['DISALLOWED_BEFORE'];
+ }
+ if(isset($language_data['PARSER_CONTROL']['KEYWORDS'][$key]['DISALLOWED_AFTER'])) {
+ $g1_post = $language_data['PARSER_CONTROL']['KEYWORDS'][$key]['DISALLOWED_AFTER'];
+ }
+
+ if(isset($language_data['PARSER_CONTROL']['KEYWORDS'][$key2]['DISALLOWED_BEFORE'])) {
+ $g2_pre = $language_data['PARSER_CONTROL']['KEYWORDS'][$key2]['DISALLOWED_BEFORE'];
+ }
+ if(isset($language_data['PARSER_CONTROL']['KEYWORDS'][$key2]['DISALLOWED_AFTER'])) {
+ $g2_post = $language_data['PARSER_CONTROL']['KEYWORDS'][$key2]['DISALLOWED_AFTER'];
+ }
+
+ if($g1_pre != $g2_pre || $g1_post != $g2_post) {
+ continue;
+ }
+ }
+ report_error(TYPE_WARNING, "Language file contains cross-group duplicate keyword '$kw' in \$language_data['KEYWORDS'][$key] and \$language_data['KEYWORDS'][$key2]!");
+ }
+ }
+ }
+ foreach($language_data['CASE_SENSITIVE'] as $key => $keywords) {
+ if(!isset($language_data['KEYWORDS'][$key]) && $key != GESHI_COMMENTS) {
+ report_error(TYPE_WARNING, "Language file contains an superfluous \$language_data['CASE_SENSITIVE'] specification for non-existing keyword group $key!");
+ }
+ }
+ foreach($language_data['URLS'] as $key => $keywords) {
+ if(!isset($language_data['KEYWORDS'][$key])) {
+ report_error(TYPE_WARNING, "Language file contains an superfluous \$language_data['URLS'] specification for non-existing keyword group $key!");
+ }
+ }
+ foreach($language_data['STYLES']['KEYWORDS'] as $key => $keywords) {
+ if(!isset($language_data['KEYWORDS'][$key])) {
+ report_error(TYPE_WARNING, "Language file contains an superfluous \$language_data['STYLES']['KEYWORDS'] specification for non-existing keyword group $key!");
+ }
+ }
+
+ foreach($language_data['COMMENT_SINGLE'] as $ck => $cv) {
+ if(!is_int($ck)) {
+ report_error(TYPE_WARNING, "Language file contains an key '$ck' in \$language_data['COMMENT_SINGLE'] that is not integer!");
+ }
+ if(!is_string($cv)) {
+ report_error(TYPE_WARNING, "Language file contains an non-string entry at \$language_data['COMMENT_SINGLE'][$ck]!");
+ }
+ if(!isset($language_data['STYLES']['COMMENTS'][$ck])) {
+ report_error(TYPE_WARNING, "Language file contains no \$language_data['STYLES']['COMMENTS'] specification for comment group $ck!");
+ }
+ }
+ if(isset($language_data['COMMENT_REGEXP'])) {
+ foreach($language_data['COMMENT_REGEXP'] as $ck => $cv) {
+ if(!is_int($ck)) {
+ report_error(TYPE_WARNING, "Language file contains an key '$ck' in \$language_data['COMMENT_REGEXP'] that is not integer!");
+ }
+ if(!is_string($cv)) {
+ report_error(TYPE_WARNING, "Language file contains an non-string entry at \$language_data['COMMENT_REGEXP'][$ck]!");
+ }
+ if(!isset($language_data['STYLES']['COMMENTS'][$ck])) {
+ report_error(TYPE_WARNING, "Language file contains no \$language_data['STYLES']['COMMENTS'] specification for comment group $ck!");
+ }
+ }
+ }
+ foreach($language_data['STYLES']['COMMENTS'] as $ck => $cv) {
+ if($ck != 'MULTI' && !isset($language_data['COMMENT_SINGLE'][$ck]) &&
+ !isset($language_data['COMMENT_REGEXP'][$ck])) {
+ report_error(TYPE_NOTICE, "Language file contains an superfluous \$language_data['STYLES']['COMMENTS'] specification for Single Line or Regular-Expression Comment key $ck!");
+ }
+ }
+ if (isset($language_data['STYLES']['STRINGS']['HARD'])) {
+ if (empty($language_data['HARDQUOTE'])) {
+ report_error(TYPE_NOTICE, "Language file contains superfluous \$language_data['STYLES']['STRINGS'] specification for key 'HARD', but no 'HARDQUOTE's are defined!");
+ }
+ unset($language_data['STYLES']['STRINGS']['HARD']);
+ }
+ foreach($language_data['STYLES']['STRINGS'] as $sk => $sv) {
+ if($sk && !isset($language_data['QUOTEMARKS'][$sk])) {
+ report_error(TYPE_NOTICE, "Language file contains an superfluous \$language_data['STYLES']['STRINGS'] specification for non-existing quotemark key $sk!");
+ }
+ }
+
+ foreach($language_data['REGEXPS'] as $rk => $rv) {
+ if(!is_int($rk)) {
+ report_error(TYPE_WARNING, "Language file contains an key '$rk' in \$language_data['REGEXPS'] that is not integer!");
+ }
+ if(is_string($rv)) {
+ //Check for unmasked / in regular expressions ...
+ if(empty($rv)) {
+ report_error(TYPE_WARNING, "Language file contains an empty regular expression at \$language_data['REGEXPS'][$rk]!");
+ } else {
+ if(preg_match("/(?<!\\\\)\//s", $rv)) {
+ report_error(TYPE_WARNING, "Language file contains a regular expression with an unmasked / character at \$language_data['REGEXPS'][$rk]!");
+ } elseif (preg_match("/(?<!<)(\\\\\\\\)*\\\\\|(?!>)/s", $rv)) {
+ report_error(TYPE_WARNING, "Language file contains a regular expression with an unescaped match for a pipe character '|' which needs escaping as '&lt;PIPE&gt;' instead at \$language_data['REGEXPS'][$rk]!");
+ }
+ }
+ } elseif(is_array($rv)) {
+ if(!isset($rv[GESHI_SEARCH])) {
+ report_error(TYPE_ERROR, "Language file contains no GESHI_SEARCH entry in extended regular expression at \$language_data['REGEXPS'][$rk]!");
+ } elseif(!is_string($rv[GESHI_SEARCH])) {
+ report_error(TYPE_ERROR, "Language file contains a GESHI_SEARCH entry in extended regular expression at \$language_data['REGEXPS'][$rk] which is not a string!");
+ } else {
+ if(preg_match("/(?<!\\\\)\//s", $rv[GESHI_SEARCH])) {
+ report_error(TYPE_WARNING, "Language file contains a regular expression with an unmasked / character at \$language_data['REGEXPS'][$rk]!");
+ } elseif (preg_match("/(?<!<)(\\\\\\\\)*\\\\\|(?!>)/s", $rv[GESHI_SEARCH])) {
+ report_error(TYPE_WARNING, "Language file contains a regular expression with an unescaped match for a pipe character '|' which needs escaping as '&lt;PIPE&gt;' instead at \$language_data['REGEXPS'][$rk]!");
+ }
+ }
+ if(!isset($rv[GESHI_REPLACE])) {
+ report_error(TYPE_WARNING, "Language file contains no GESHI_REPLACE entry in extended regular expression at \$language_data['REGEXPS'][$rk]!");
+ } elseif(!is_string($rv[GESHI_REPLACE])) {
+ report_error(TYPE_ERROR, "Language file contains a GESHI_REPLACE entry in extended regular expression at \$language_data['REGEXPS'][$rk] which is not a string!");
+ }
+ if(!isset($rv[GESHI_MODIFIERS])) {
+ report_error(TYPE_WARNING, "Language file contains no GESHI_MODIFIERS entry in extended regular expression at \$language_data['REGEXPS'][$rk]!");
+ } elseif(!is_string($rv[GESHI_MODIFIERS])) {
+ report_error(TYPE_ERROR, "Language file contains a GESHI_MODIFIERS entry in extended regular expression at \$language_data['REGEXPS'][$rk] which is not a string!");
+ }
+ if(!isset($rv[GESHI_BEFORE])) {
+ report_error(TYPE_WARNING, "Language file contains no GESHI_BEFORE entry in extended regular expression at \$language_data['REGEXPS'][$rk]!");
+ } elseif(!is_string($rv[GESHI_BEFORE])) {
+ report_error(TYPE_ERROR, "Language file contains a GESHI_BEFORE entry in extended regular expression at \$language_data['REGEXPS'][$rk] which is not a string!");
+ }
+ if(!isset($rv[GESHI_AFTER])) {
+ report_error(TYPE_WARNING, "Language file contains no GESHI_AFTER entry in extended regular expression at \$language_data['REGEXPS'][$rk]!");
+ } elseif(!is_string($rv[GESHI_AFTER])) {
+ report_error(TYPE_ERROR, "Language file contains a GESHI_AFTER entry in extended regular expression at \$language_data['REGEXPS'][$rk] which is not a string!");
+ }
+ } else {
+ report_error(TYPE_WARNING, "Language file contains an non-string and non-array entry at \$language_data['REGEXPS'][$rk]!");
+ }
+ if(!isset($language_data['STYLES']['REGEXPS'][$rk])) {
+ report_error(TYPE_WARNING, "Language file contains no \$language_data['STYLES']['REGEXPS'] specification for regexp group $rk!");
+ }
+ }
+ foreach($language_data['STYLES']['REGEXPS'] as $rk => $rv) {
+ if(!isset($language_data['REGEXPS'][$rk])) {
+ report_error(TYPE_NOTICE, "Language file contains an superfluous \$language_data['STYLES']['REGEXPS'] specification for regexp key $rk!");
+ }
+ }
+
+
+ }
+
+ output_error_cache();
+
+ flush();
+
+ if($error_abort) {
+ break;
+ }
+ }
+}
+
+$time_end = explode(' ', microtime());
+$time_diff = $time_end[0] + $time_end[1] - $time_start[0] - $time_start[1];
+
+if ( PHP_SAPI != 'cli' ) {
+?></li>
+</ol>
+
+<p>Validation process completed in <?php printf("%.2f", $time_diff); ?> seconds.</p>
+
+<div id="footer">GeSHi &copy; 2004-2007 Nigel McNie, 2007-2008 Benny Baumann, released under the GNU GPL</div>
+</body>
+</html>
+
+<?php } else { ?>
+
+Validation process completed in <?php printf("%.2f", $time_diff); ?> seconds.
+
+GeSHi &copy; 2004-2007 Nigel McNie, 2007-2014 Benny Baumann, released under the GNU GPL
+
+<?php } ?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/contrib/langwiz.php b/extensions/SyntaxHighlight_GeSHi/geshi/contrib/langwiz.php
new file mode 100644
index 00000000..3338fa66
--- /dev/null
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/contrib/langwiz.php
@@ -0,0 +1,1153 @@
+<?php
+/**
+ * GeSHi example script
+ *
+ * Just point your browser at this script (with geshi.php in the parent directory,
+ * and the language files in subdirectory "../geshi/")
+ *
+ *This script
+ *
+ * @author Nigel McNie, Benny Baumann (BenBE@geshi.org), Andreas 'Segaja' Schleifer (webmaster at segaja dot de)
+ * @version $Id$
+ */
+header('Content-Type: text/html; charset=utf-8');
+
+set_time_limit(0);
+error_reporting(E_ALL);
+$time_start = explode(' ', microtime());
+
+//Handle crappy PHP magic:
+if (get_magic_quotes_gpc()) {
+ function stripslashes_deep($value) {
+ $value = is_array($value) ?
+ array_map('stripslashes_deep', $value) :
+ stripslashes($value);
+
+ return $value;
+ }
+
+ $_POST = array_map('stripslashes_deep', $_POST);
+ $_GET = array_map('stripslashes_deep', $_GET);
+ $_COOKIE = array_map('stripslashes_deep', $_COOKIE);
+ $_REQUEST = array_map('stripslashes_deep', $_REQUEST);
+}
+
+function htmlspecialchars_deep($value) {
+ return is_array($value) ? array_map('htmlspecialchars_deep', $value) : htmlspecialchars($value);
+}
+
+define ('TYPE_NOTICE', 0);
+define ('TYPE_WARNING', 1);
+define ('TYPE_ERROR', 2);
+
+$error_abort = false;
+$error_cache = array();
+function output_error_cache(){
+ global $error_cache;
+
+ if(count($error_cache)) {
+ echo "<span style=\"color: #F00; font-weight: bold;\">Failed</span><br />";
+ echo "<ol>\n";
+ foreach($error_cache as $error_msg) {
+ echo "<li>";
+ switch($error_msg['t']) {
+ case TYPE_NOTICE:
+ echo "<span style=\"color: #080; font-weight: bold;\">NOTICE:</span>";
+ break;
+ case TYPE_WARNING:
+ echo "<span style=\"color: #CC0; font-weight: bold;\">WARNING:</span>";
+ break;
+ case TYPE_ERROR:
+ echo "<span style=\"color: #F00; font-weight: bold;\">ERROR:</span>";
+ break;
+ }
+ echo " " . $error_msg['m'] . "</li>";
+ }
+ echo "</ol>\n";
+ } else {
+ echo "<span style=\"color: #080; font-weight: bold;\">OK</span><br />";
+ }
+ echo "\n";
+
+ $error_cache = array();
+}
+
+function report_error($type, $message) {
+ global $error_cache, $error_abort;
+
+ $error_cache[] = array('t' => $type, 'm' => $message);
+ if(TYPE_ERROR == $type) {
+ $error_abort = true;
+ }
+}
+
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <title>GeSHi Language File Generator Script</title>
+ <style type="text/css">
+ <!--
+ html {
+ background-color: #f0f0f0;
+ }
+ body {
+ font-family: Verdana, Arial, sans-serif;
+ margin: 10px;
+ border: 2px solid #e0e0e0;
+ background-color: #fcfcfc;
+ padding: 5px;
+ font-size: 10pt;
+ }
+ h2 {
+ margin: .1em 0 .2em .5em;
+ border-bottom: 1px solid #b0b0b0;
+ color: #b0b0b0;
+ font-weight: normal;
+ font-size: 150%;
+ }
+ h3 {
+ margin: .1em 0 .2em .5em;
+ color: #b0b0b0;
+ font-weight: normal;
+ font-size: 120%;
+ }
+ #footer {
+ text-align: center;
+ font-size: 80%;
+ color: #a9a9a9;
+ }
+ #footer a {
+ color: #9999ff;
+ }
+ textarea {
+ border: 1px solid #b0b0b0;
+ font-size: 90%;
+ color: #333;
+ margin-left: 20px;
+ }
+ select, input {
+ margin-left: 2px;
+ border: 1px solid #808080;
+ }
+ p {
+ font-size: 90%;
+ margin-left: .5em;
+ }
+ fieldset {
+ border: 1px dotted gray;
+ background-color: #f0f0f0;
+ margin-bottom: .5em;
+ }
+ legend {
+ font-weight: bold;
+ background-color: #f9f9f9;
+ border: 1px solid #a0a0a0;
+ border-width: 1px 2px 2px 1px;
+ }
+ fieldset table > tbody > tr > td {
+ width: 20%;
+ }
+ fieldset table > tbody > tr > td+td {
+ width: 80%;
+ }
+
+ fieldset table > tbody > tr > td+td > input {
+ width: 98%;
+ }
+ -->
+ </style>
+</head>
+<body>
+<h2>GeSHi Language File Generator Script</h2>
+<p>To use this script, make sure that <strong>geshi.php</strong> is in the
+parent directory or in your include_path, and that the language files are in a
+subdirectory of GeSHi's directory called <strong>geshi/</strong>.</p>
+<p>If not already done, select a language file below that will be used as
+base for the language file to generate or create a blank one. Following this
+you can do whatever you like to edit your language file. But note that not all
+features are made available through this script.</p>
+
+<p>Checking GeSHi installation ... <?php
+// Rudimentary checking of where GeSHi is. In a default install it will be in ../, but
+// it could be in the current directory if the include_path is set. There's nowhere else
+// we can reasonably guess.
+if (is_readable('../geshi.php')) {
+ $path = '../';
+} elseif (is_readable('geshi.php')) {
+ $path = './';
+} else {
+ report_error(TYPE_ERROR, 'Could not find geshi.php - make sure it is in your include path!');
+}
+
+if(!$error_abort) {
+ require $path . 'geshi.php';
+
+ if(!class_exists('GeSHi')) {
+ report_error(TYPE_ERROR, 'The GeSHi class was not found, although it seemed we loaded the correct file!');
+ }
+}
+
+if(!$error_abort) {
+ if(!defined('GESHI_LANG_ROOT')) {
+ report_error(TYPE_ERROR, 'There\'s no information present on where to find the language files!');
+ } elseif(!is_dir(GESHI_LANG_ROOT)) {
+ report_error(TYPE_ERROR, 'The path "'.GESHI_LANG_ROOT.'" given, does not ressemble a directory!');
+ } elseif(!is_readable(GESHI_LANG_ROOT)) {
+ report_error(TYPE_ERROR, 'The path "'.GESHI_LANG_ROOT.'" is not readable to this script!');
+ }
+}
+
+if(!$error_abort) {
+ if (!($dir = @opendir(GESHI_LANG_ROOT))) {
+ report_error(TYPE_ERROR, 'Error requesting listing for available language files!');
+ }
+
+ $languages = array();
+
+ if(!$error_abort) {
+ while ($file = readdir($dir)) {
+ if (!$file || $file[0] == '.' || strpos($file, '.') === false) {
+ continue;
+ }
+ $lang = substr($file, 0, strpos($file, '.'));
+ $languages[] = $lang;
+ }
+ closedir($dir);
+ }
+
+ $languages = array_unique($languages);
+ sort($languages);
+
+ if(!count($languages)) {
+ report_error(TYPE_WARNING, 'Unable to locate any usable language files in "'.GESHI_LANG_ROOT.'"!');
+ }
+}
+
+output_error_cache();
+
+// --- empty variables for values of $_POST - begin ---
+$post_var_names = array('li', 'ai', 'ld');
+
+$li = array(
+ 'file' => 'example',
+ 'name' => 'Example'
+ );
+
+$ai = array(
+ 'name' => 'Benny Baumann',
+ 'email' => 'BenBE@geshi.org',
+ 'web' => 'http://qbnz.com/highlighter/'
+ );
+
+$ld = array(
+ 'cmt' => array(
+ 'sl' => array(
+ 1 => array(
+ 'start' => '//',
+ 'style' => 'font-style: italic; color: #666666;'
+ ),
+ 2 => array(
+ 'start' => '#',
+ 'style' => 'font-style: italic; color: #666666;'
+ )
+ ),
+ 'ml' => array(
+ 1 => array(
+ 'start' => '/*',
+ 'end' => '*/',
+ 'style' => 'font-style: italic; color: #666666;'
+ ),
+ 2 => array(
+ 'start' => '/**',
+ 'end' => '*/',
+ 'style' => 'font-style: italic; color: #006600;'
+ )
+ ),
+ 'rxc' => array(
+ 1 => array(
+ 'rx' => '/Hello RegExp/',
+ 'style' => 'font-style: italic; color: #666666;'
+ )
+ )
+ ),
+ 'str' => array(
+ 'qm' => array(
+ 1 => array(
+ 'delim' => "'",
+ 'style' => 'color: #0000FF;'
+ ),
+ 2 => array(
+ 'delim' => "&quot;",
+ 'style' => 'color: #0000FF;'
+ )
+ ),
+ 'ec' => array(
+ 'char' => '\\',
+ 'style' => 'font-weight: bold; color: #000080;'
+ ),
+ 'erx' => array(
+ 1 => array(
+ 'rx' => '/\{\\\\$\w+\}/',
+ 'style' => 'font-weight: bold; color: #008080;'
+ ),
+ 2 => array(
+ 'rx'=> '/\{\\\\$\w+\}/',
+ 'style' => 'font-weight: bold; color: #008080;'
+ )
+ )
+ ),
+ 'kw_case' => 'GESHI_CAPS_NO_CHANGE',
+ 'kw' => array(
+ 1 => array(
+ 'list' => '',
+ 'case' => '0',
+ 'style' => 'color: #0000FF; font-weight: bold;',
+ 'docs' => ''
+ )
+ ),
+ 'sy' => array(
+ 0 => array(
+ 'list' => '',
+ 'style' => 'color: #0000FF; font-weight: bold;'
+ )
+ )
+ );
+
+$kw_case_sel = array(
+ 'GESHI_CAPS_NO_CHANGE' => '',
+ 'GESHI_CAPS_UPPER' => '',
+ 'GESHI_CAPS_LOWER' => ''
+ );
+
+$kw_cases_sel = array(
+ 1 => array(
+ 0 => '',
+ 1 => ''
+ )
+ );
+// --- empty variables for values of $_POST - end ---
+
+echo "<pre>";
+//var_dump($languages);
+
+foreach($post_var_names as $varName) { // export wanted variables of $_POST array...
+ if(array_key_exists($varName, $_POST)) {
+ $$varName = htmlspecialchars_deep($_POST[$varName]);
+ }
+}
+
+// determine the selected kw_case...
+$kw_case_sel[$ld['kw_case']] = ' selected="selected"';
+
+// determine the selected kw_cases...
+for($i = 1; $i <= count($kw_cases_sel); $i += 1) {
+ $kw_cases_sel[$i][(int) $ld['kw'][$i]['case']] = ' selected="selected"';
+}
+
+$lang = validate_lang();
+var_dump($lang);
+echo "</pre>";
+
+?>
+
+<form action="?action=test" method="post">
+ <fieldset>
+ <legend>Generic Information</legend>
+
+ <table width="100%">
+ <tr>
+ <td>
+ <label for="li[file]">Language File ID:</label>
+ </td>
+ <td>
+ <input type="text" name="li[file]" id="li[file]" value="<?=$li['file']; ?>" />
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <label for="li[name]">Language Name:</label>
+ </td>
+ <td>
+ <input type="text" name="li[name]" id="li[name]" value="<?=$li['name']; ?>" />
+ </td>
+ </tr>
+
+ </table>
+ </fieldset>
+
+ <fieldset>
+ <legend>Author</legend>
+
+ <table width="100%">
+ <tr>
+ <td>
+ <label for="ai[name]">Full Name:</label>
+ </td>
+ <td>
+ <input type="text" name="ai[name]" id="ai[name]" value="<?=$ai['name']; ?>" />
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <label for="ai[email]">eMail address:</label>
+ </td>
+ <td>
+ <input type="text" name="ai[email]" id="ai[email]" value="<?=$ai['email']; ?>" />
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <label for="ai[web]">Homepage:</label>
+ </td>
+ <td>
+ <input type="text" name="ai[web]" id="ai[web]" value="<?=$ai['web']; ?>" />
+ </td>
+ </tr>
+ </table>
+ </fieldset>
+
+ <fieldset>
+ <legend>Comments</legend>
+
+ <fieldset>
+ <legend>Single Line</legend>
+
+ <fieldset>
+ <legend>Comment Group 1</legend>
+
+ <table width="100%">
+ <tr>
+ <td>
+ <label for="ld[cmt][sl][1][start]">Comment Start:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[cmt][sl][1][start]" id="ld[cmt][sl][1][start]" value="<?=$ld['cmt']['sl'][1]['start']; ?>" />
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <label for="ld[cmt][sl][1][style]">Comment Style:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[cmt][sl][1][style]" id="ld[cmt][sl][1][style]" value="<?=$ld['cmt']['sl'][1]['style']; ?>" />
+ </td>
+ </tr>
+ </table>
+ </fieldset>
+
+ <fieldset>
+ <legend>Comment Group 2</legend>
+
+ <table width="100%">
+ <tr>
+ <td>
+ <label for="ld[cmt][sl][2][start]">Comment Start:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[cmt][sl][2][start]" id="ld[cmt][sl][2][start]" value="<?=$ld['cmt']['sl'][2]['start']; ?>" />
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <label for="ld[cmt][sl][2][style]">Comment Style:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[cmt][sl][2][style]" id="ld[cmt][sl][2][style]" value="<?=$ld['cmt']['sl'][2]['style']; ?>" />
+ </td>
+ </tr>
+ </table>
+ </fieldset>
+ </fieldset>
+
+ <fieldset>
+ <legend>Multiple Lines</legend>
+
+ <fieldset>
+ <legend>Comment Group 1</legend>
+
+ <table width="100%">
+ <tr>
+ <td>
+ <label for="ld[cmt][ml][1][start]">Comment Start:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[cmt][ml][1][start]" id="ld[cmt][ml][1][start]" value="<?=$ld['cmt']['ml'][1]['start']; ?>" />
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <label for="ld[cmt][ml][1][end]">Comment End:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[cmt][ml][1][end]" id="ld[cmt][ml][1][end]" value="<?=$ld['cmt']['ml'][1]['end']; ?>" />
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <label for="ld[cmt][ml][1][style]">Comment Style:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[cmt][ml][1][style]" id="ld[cmt][ml][1][style]" value="<?=$ld['cmt']['ml'][1]['style']; ?>" />
+ </td>
+ </tr>
+ </table>
+ </fieldset>
+
+ <fieldset>
+ <legend>Comment Group 2</legend>
+
+ <table width="100%">
+ <tr>
+ <td>
+ <label for="ld[cmt][ml][2][start]">Comment Start:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[cmt][ml][2][start]" id="ld[cmt][ml][2][start]" value="<?=$ld['cmt']['ml'][2]['start']; ?>" />
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <label for="ld[cmt][ml][2][end]">Comment End:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[cmt][ml][2][end]" id="ld[cmt][ml][2][end]" value="<?=$ld['cmt']['ml'][2]['end']; ?>" />
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <label for="ld[cmt][ml][2][style]">Comment Style:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[cmt][ml][2][style]" id="ld[cmt][ml][2][style]" value="<?=$ld['cmt']['ml'][2]['style']; ?>" />
+ </td>
+ </tr>
+ </table>
+ </fieldset>
+ </fieldset>
+
+ <fieldset>
+ <legend>Regular Expressions</legend>
+
+ <fieldset>
+ <legend>Comment Group 1</legend>
+
+ <table width="100%">
+ <tr>
+ <td>
+ <label for="ld[cmt][rxc][1][rx]">Comment RX:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[cmt][rxc][1][rx]" id="ld[cmt][rxc][1][rx]" value="<?=$ld['cmt']['rxc'][1]['rx']; ?>" />
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <label for="ld[cmt][rxc][1][style]">Comment Style:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[cmt][rxc][1][style]" id="ld[cmt][rxc][1][style]" value="<?=$ld['cmt']['rxc'][1]['style']; ?>" />
+ </td>
+ </tr>
+ </table>
+ </fieldset>
+ </fieldset>
+ </fieldset>
+
+ <fieldset>
+ <legend>Strings</legend>
+
+ <fieldset>
+ <legend>String \ Quotes (delimiters, parsed)</legend>
+
+ <fieldset>
+ <legend>Quotemark Group 1</legend>
+
+ <table width="100%">
+ <tr>
+ <td>
+ <label for="ld[str][qm][1][delim]">String Delimiter:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[str][qm][1][delim]" id="ld[str][qm][1][delim]" value="<?=$ld['str']['qm'][1]['delim']; ?>" />
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <label for="ld[str][qm][1][style]">String Style:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[str][qm][1][style]" id="ld[str][qm][1][style]" value="<?=$ld['str']['qm'][1]['style']; ?>" />
+ </td>
+ </tr>
+ </table>
+ </fieldset>
+ <fieldset>
+ <legend>Quotemark Group 2</legend>
+
+ <table width="100%">
+ <tr>
+ <td>
+ <label for="ld[str][qm][1][delim]">String Delimiter:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[str][qm][2][delim]" id="ld[str][qm][2][delim]" value="<?=$ld['str']['qm'][2]['delim']; ?>" />
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <label for="ld[str][qm][1][style]">String Style:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[str][qm][2][style]" id="ld[str][qm][2][style]" value="<?=$ld['str']['qm'][2]['style']; ?>" />
+ </td>
+ </tr>
+ </table>
+ </fieldset>
+
+
+ </fieldset>
+
+ <fieldset>
+ <legend>Escape Sequences</legend>
+
+ <fieldset>
+ <legend>Generic Escape Char</legend>
+
+ <table width="100%">
+ <tr>
+ <td>
+ <label for="ld[str][ec][char]">Escape Char:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[str][ec][char]" id="ld[str][ec][char]" value="<?=$ld['str']['ec']['char']; ?>" />
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <label for="ld[str][ec][style]">Escape Char Style:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[str][ec][style]" id="ld[str][ec][style]" value="<?=$ld['str']['ec']['style']; ?>" />
+ </td>
+ </tr>
+ </table>
+ </fieldset>
+
+ <fieldset>
+ <legend>Escape Regexp Group 1</legend>
+
+ <table width="100%">
+ <tr>
+ <td>
+ <label for="ld[str][erx][1][rx]">Escape Regexp:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[str][erx][1][rx]" id="ld[str][erx][1][rx]" value="<?=$ld['str']['erx'][1]['rx']; ?>" />
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <label for="ld[str][erx][1][style]">Escape Style:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[str][erx][1][style]" id="ld[str][erx][1][style]" value="<?=$ld['str']['erx'][1]['style']; ?>" />
+ </td>
+ </tr>
+ </table>
+ </fieldset>
+
+ <fieldset>
+ <legend>Escape Regexp Group 2</legend>
+
+ <table width="100%">
+ <tr>
+ <td>
+ <label for="ld[str][erx][2][rx]">Escape Regexp:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[str][erx][2][rx]" id="ld[str][erx][2][rx]" value="<?=$ld['str']['erx'][2]['rx']; ?>" />
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <label for="ld[str][erx][2][style]">Escape Style:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[str][erx][2][style]" id="ld[str][erx][2][style]" value="<?=$ld['str']['erx'][2]['style']; ?>" />
+ </td>
+ </tr>
+ </table>
+ </fieldset>
+ </fieldset>
+ </fieldset>
+
+ <fieldset>
+ <legend>Keywords</legend>
+
+ <fieldset>
+ <legend>Case of Keywords</legend>
+
+ <table width="100%">
+ <tr>
+ <td>
+ <label for="ld[kw_case]">Handling of keywords case:</label>
+ </td>
+ <td>
+ <select name=ld[kw_case]" id="ld[kw_case]">
+ <option value="GESHI_CAPS_NO_CHANGE"<?=$kw_case_sel['GESHI_CAPS_NO_CHANGE']; ?>>Don’t change the case of any keyword</option>
+ <option value="GESHI_CAPS_UPPER"<?=$kw_case_sel['GESHI_CAPS_UPPER']; ?>>Convert the case of all keywords to upper case</option>
+ <option value="GESHI_CAPS_LOWER"<?=$kw_case_sel['GESHI_CAPS_LOWER']; ?>>Convert the case of all keywords to lower case</option>
+ </select>
+ </td>
+ </tr>
+ </table>
+ </fieldset>
+
+ <fieldset>
+ <legend>Keyword Group 1</legend>
+
+ <table width="100%">
+ <tr>
+ <td>
+ <label for="ld[kw][1][list]">Keyword List:</label>
+ </td>
+ <td>
+ <textarea name="ld[kw][1][list]" id="ld[kw][1][list]" rows="10" cols="80"><?=$ld['kw'][1]['list']; ?></textarea>
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <label for="ld[kw][1][case]">Case Sensitive:</label>
+ </td>
+ <td>
+ <select name="ld[kw][1][case]" id="ld[kw][1][case]">
+ <option value="0"<?=$kw_cases_sel[1][0]; ?>>No</option>
+ <option value="1"<?=$kw_cases_sel[1][1]; ?>>Yes</option>
+ </select>
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <label for="ld[kw][1][style]">Keyword Style:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[kw][1][style]" id="ld[kw][1][style]" value="<?=$ld['kw'][1]['style']; ?>" />
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <label for="ld[kw][1][docs]">Documentation URL:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[kw][1][docs]" id="ld[kw][1][docs]" value="<?=$ld['kw'][1]['docs']; ?>" />
+ </td>
+ </tr>
+ </table>
+ </fieldset>
+
+ </fieldset>
+
+
+ <fieldset>
+ <legend>Symbols</legend>
+
+ <fieldset>
+ <legend>Symbols Group 1</legend>
+
+ <table width="100%">
+ <tr>
+ <td>
+ <label for="ld[sy][0][list]">Symbols List:</label>
+ </td>
+ <td>
+ <textarea name="ld[sy][0][list]" id="ld[sy][0][list]" rows="10" cols="80"><?=$ld['sy'][0]['list']; ?></textarea>
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <label for="ld[sy][0][style]">Symbols Style:</label>
+ </td>
+ <td>
+ <input type="text" name="ld[sy][0][style]" id="ld[sy][0][style]" value="<?=$ld['sy'][0]['style']; ?>" />
+ </td>
+ </tr>
+ </table>
+ </fieldset>
+
+ </fieldset>
+
+
+ <div id="langfile">
+ <fieldset>
+ <legend>Language File Source</legend>
+<?php
+$G = new GeSHi('', 'php');
+$langfile_source = gen_langfile($lang);
+$G->set_source($langfile_source);
+echo $G->parse_code();
+unset($G);
+?>
+ </fieldset>
+ </div>
+
+ <input type="submit" name="btn" value="Send!" />
+</form>
+
+<p>Operation completed in <?php
+$time_end = explode(' ', microtime());
+$time_diff = $time_end[0] + $time_end[1] - $time_start[0] - $time_start[1];
+
+echo sprintf("%.2f", $time_diff);
+?> seconds.</p>
+
+<div id="footer">GeSHi &copy; 2004-2007 Nigel McNie, 2007-2009 Benny Baumann, released under the GNU GPL</div>
+</body>
+</html>
+<?php
+
+function str_to_phpstring($str, $doublequote = false){
+ if($doublequote) {
+ return '"' . strtr($str,
+ array(
+ "\"" => "\\\"",
+ "\\" => "\\\\",
+ "\0" => "\\0",
+ "\n" => "\\n",
+ "\r" => "\\r",
+ "\t" => "\\t",
+ "\$" => "\\\$"
+ )
+ ) . '"';
+ } else {
+ return "'" . strtr($str,
+ array(
+ "'" => "\\'",
+ "\\" => "\\\\"
+ )
+ ) . "'";
+ }
+}
+
+function validate_lang(){
+ $ai = array(
+ 'name' => 'Benny Baumann',
+ 'email' => 'BenBE@geshi.org',
+ 'web' => 'http://qbnz.com/highlighter/'
+ );
+
+ $li = array(
+ 'file' => 'example',
+ 'desc' => 'Example'
+ );
+
+ if(isset($_POST['ld'])) {
+ $ld = $_POST['ld'];
+ } else {
+ $ld = array(
+ 'cmt' => array(
+ 'sl' => array(
+ 1 => array(
+ 'start' => '//',
+ 'style' => 'test'
+ )
+ ),
+ 'ml' => array(
+ 1 => array(
+ 'start' => '/*',
+ 'end' => '*/',
+ 'style' => 'font-style: italic; color: #666666;'
+ )
+ ),
+ 'rxc' => array(
+ 1 => array(
+ 'rx' => '/Hello/',
+ 'style' => 'color: #00000'
+ )
+ )
+ ),
+ 'str' => array(
+ 'qm' => array(),
+ 'ec' => array(
+ 'char' => ''
+ ),
+ 'erx' => array()
+ ),
+ 'kw' => array(),
+ 'kw_case' => 'GESHI_CAPS_NO_CHANGE',
+ 'sy' => array()
+ );
+ }
+
+ return array('ai' => $ai, 'li' => $li, 'ld' => $ld);
+}
+
+function gen_langfile($lang){
+ $langfile = $lang['li']['file'];
+ $langdesc = $lang['li']['desc'];
+
+ $langauthor_name = $lang['ai']['name'];
+ $langauthor_email = $lang['ai']['email'];
+ $langauthor_web = $lang['ai']['web'];
+
+ $langversion = GESHI_VERSION;
+
+ $langdate = date('Y/m/d');
+ $langyear = date('Y');
+
+ $i = ' ';
+ $i = array('', $i, $i.$i, $i.$i.$i);
+
+ $src = <<<GESHI_LANGFILE_HEAD
+<?php
+/*************************************************************************************
+ * {$langfile}.php
+ * --------
+ * Author: {$langauthor_name} ({$langauthor_email})
+ * Copyright: (c) {$langyear} {$langauthor_name} ({$langauthor_web})
+ * Release Version: {$langversion}
+ * Date Started: {$langdate}
+ *
+ * {$langdesc} language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * {$langdate} ({$langversion})
+ * - First Release
+ *
+ * TODO (updated {$langdate})
+ * -------------------------
+ * * Complete language file
+ *
+ *************************************************************************************
+ *
+ * This file is part of GeSHi.
+ *
+ * GeSHi is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * GeSHi is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GeSHi; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ ************************************************************************************/
+
+\$language_data = array(
+
+GESHI_LANGFILE_HEAD;
+
+ //Language Name
+ $src .= $i[1] . "'LANG_NAME' => ".str_to_phpstring($langdesc).",\n";
+
+ //Comments
+ $src .= $i[1] . "'COMMENT_SINGLE' => array(\n";
+ foreach($lang['ld']['cmt']['sl'] as $idx_cmt_sl => $tmp_cmt_sl) {
+ $src .= $i[2] . ((int)$idx_cmt_sl). " => ". str_to_phpstring($tmp_cmt_sl['start']) . ",\n";
+ }
+ $src .= $i[2] . "),\n";
+ $src .= $i[1] . "'COMMENT_MULTI' => array(\n";
+ foreach($lang['ld']['cmt']['ml'] as $tmp_cmt_ml) {
+ $src .= $i[2] . str_to_phpstring($tmp_cmt_ml['start']). " => ". str_to_phpstring($tmp_cmt_ml['end']) . ",\n";
+ }
+ $src .= $i[2] . "),\n";
+ $src .= $i[1] . "'COMMENT_REGEXP' => array(\n";
+ foreach($lang['ld']['cmt']['rxc'] as $idx_cmt_rxc => $tmp_cmt_rxc) {
+ $src .= $i[2] . ((int)$idx_cmt_rxc). " => ". str_to_phpstring($tmp_cmt_rxc['rx']) . ",\n";
+ }
+ $src .= $i[2] . "),\n";
+
+ //Case Keywords
+ $src .= $i[1] . "'CASE_KEYWORDS' => " . $lang['ld']['kw_case'] . ",\n";
+
+ //Quotes \ Strings
+ $src .= $i[1] . "'QUOTEMARKS' => array(\n";
+ foreach($lang['ld']['str']['qm'] as $idx_str_qm => $tmp_str_qm) {
+ $src .= $i[2] . ((int)$idx_str_qm). " => ". str_to_phpstring($tmp_str_qm['delim']) . ",\n";
+ }
+ $src .= $i[2] . "),\n";
+ $src .= $i[1] . "'ESCAPE_CHAR' => " . str_to_phpstring($lang['ld']['str']['ec']['char']) . ",\n";
+ $src .= $i[1] . "'ESCAPE_REGEXP' => array(\n";
+ foreach($lang['ld']['str']['erx'] as $idx_str_erx => $tmp_str_erx) {
+ $src .= $i[2] . ((int)$idx_str_erx). " => ". str_to_phpstring($tmp_str_erx['rx']) . ",\n";
+ }
+ $src .= $i[2] . "),\n";
+
+ //HardQuotes
+ $src .= $i[1] . "'HARDQUOTE' => array(\n";
+ $src .= $i[2] . "),\n";
+ $src .= $i[1] . "'HARDESCAPE' => array(\n";
+ $src .= $i[2] . "),\n";
+ $src .= $i[1] . "'HARDCHAR' => '',\n";
+
+ //Numbers
+ $src .= $i[1] . "'NUMBERS' =>\n";
+ $src .= $i[2] . "GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX |\n";
+ $src .= $i[2] . "GESHI_NUMBER_FLT_SCI_ZERO,\n";
+
+ //Keywords
+ $src .= $i[1] . "'KEYWRODS' => array(\n";
+ foreach($lang['ld']['kw'] as $idx_kw => $tmp_kw) {
+ $src .= $i[2] . ((int)$idx_kw) . " => array(\n";
+ if(!is_array($tmp_kw['list'])) {
+ $tmp_kw['list'] = explode("\n", $tmp_kw['list']);
+ }
+ $tmp_kw['list'] = array_map('trim', $tmp_kw['list']);
+ sort($tmp_kw['list']);
+ $kw_esc = array_map('str_to_phpstring', $tmp_kw['list']);
+ $kw_nl = true;
+ $kw_pos = 0;
+ foreach($kw_esc as $kw_data) {
+ if((strlen($kw_data) + $kw_pos > 79) && $kw_pos > strlen($i[3])) {
+ $src .= "\n";
+ $kw_nl = true;
+ $kw_pos = 0;
+ }
+ if($kw_nl) {
+ $src .= $i[3];
+ $kw_pos += strlen($i[3]);
+ $kw_nl = false;
+ }
+ $src .= $kw_data . ', ';
+ $kw_pos += strlen($kw_data) + 2;
+ }
+ $src .= "\n";
+ $src .= $i[3] . "),\n";
+ }
+ $src .= $i[2] . "),\n";
+
+ //Case Sensitivity
+ $src .= $i[1] . "'CASE_SENSITIVE' => array(\n";
+ foreach($lang['ld']['kw'] as $idx_kw => $tmp_kw) {
+ $src .= $i[2] . ((int)$idx_kw) . " => " . ($tmp_kw['case'] ? 'true' : 'false') . ",\n";
+ }
+ $src .= $i[2] . "),\n";
+
+ //Symbols
+ $src .= $i[1] . "'SYMBOLS' => array(\n";
+ foreach($lang['ld']['sy'] as $idx_kw => $tmp_kw) {
+ $src .= $i[2] . ((int)$idx_kw) . " => array(\n";
+ $tmp_kw['list'] = (array)$tmp_kw['list'];
+ sort($tmp_kw['list']);
+ $kw_esc = array_map('str_to_phpstring', $tmp_kw['list']);
+ $kw_nl = true;
+ $kw_pos = strlen($i[3]);
+ foreach($kw_esc as $kw_data) {
+ if((strlen($kw_data) + $kw_pos > 79) && $kw_pos > strlen($i[3])) {
+ $src .= "\n";
+ $kw_nl = true;
+ $kw_pos = 0;
+ }
+ if($kw_nl) {
+ $src .= $i[3];
+ $kw_pos += strlen($i[3]);
+ $kw_nl = false;
+ }
+ $src .= $kw_data . ', ';
+ $kw_pos += strlen($kw_data) + 2;
+ }
+ $src .= "\n";
+ $src .= $i[3] . "),\n";
+ }
+ $src .= $i[2] . "),\n";
+
+ //Styles \ CSS
+ $src .= $i[1] . "'STYLES' => array(\n";
+ $src .= $i[2] . "'KEYWRODS' => array(\n";
+ foreach($lang['ld']['kw'] as $idx_kw => $tmp_kw) {
+ $src .= $i[3] . ((int)$idx_kw) . " => " . str_to_phpstring($tmp_kw['style']) . ",\n";
+ }
+ $src .= $i[3] . "),\n";
+ $src .= $i[2] . "'COMMENTS' => array(\n";
+ foreach($lang['ld']['cmt']['sl'] as $idx_cmt_sl => $tmp_cmt_sl) {
+ $src .= $i[3] . ((int)$idx_cmt_sl) . " => " . str_to_phpstring($tmp_cmt_sl['style']) . ",\n";
+ }
+ foreach($lang['ld']['cmt']['rxc'] as $idx_cmt_rxc => $tmp_cmt_rxc) {
+ $src .= $i[3] . ((int)$idx_cmt_rxc) . " => " . str_to_phpstring($tmp_cmt_rxc['style']) . ",\n";
+ }
+ $src .= $i[3] . "'MULTI' => " . str_to_phpstring($lang['ld']['cmt']['ml'][1]['style']) . "\n";
+ $src .= $i[3] . "),\n";
+ $src .= $i[2] . "'ESCAPE_CHAR' => array(\n";
+ foreach($lang['ld']['str']['erx'] as $idx_str_erx => $tmp_str_erx) {
+ $src .= $i[3] . ((int)$idx_str_erx). " => ". str_to_phpstring($tmp_str_erx['style']) . ",\n";
+ }
+ // 'HARD' => 'color: #000099; font-weight: bold;'
+ $src .= $i[3] . "),\n";
+ $src .= $i[2] . "'BRACKETS' => array(\n";
+ $src .= $i[3] . "),\n";
+ $src .= $i[2] . "'STRINGS' => array(\n";
+ foreach($lang['ld']['str']['qm'] as $idx_str_qm => $tmp_str_qm) {
+ $src .= $i[3] . ((int)$idx_str_qm). " => ". str_to_phpstring($tmp_str_qm['style']) . ",\n";
+ }
+ // 'HARD' => 'color: #0000ff;'
+ $src .= $i[3] . "),\n";
+ $src .= $i[2] . "'NUMBERS' => array(\n";
+ $src .= $i[3] . "),\n";
+ $src .= $i[2] . "'METHODS' => array(\n";
+ $src .= $i[3] . "),\n";
+ $src .= $i[2] . "'SYMBOLS' => array(\n";
+ foreach($lang['ld']['sy'] as $idx_kw => $tmp_kw) {
+ $src .= $i[3] . ((int)$idx_kw) . " => " . str_to_phpstring($tmp_kw['style']) . ",\n";
+ }
+ $src .= $i[3] . "),\n";
+ $src .= $i[2] . "'REGEXPS' => array(\n";
+ $src .= $i[3] . "),\n";
+ $src .= $i[2] . "'SCRIPT' => array(\n";
+ $src .= $i[3] . "),\n";
+ $src .= $i[2] . "),\n";
+
+ //Keyword Documentation
+ $src .= $i[1] . "'URLS' => array(\n";
+ foreach($lang['ld']['kw'] as $idx_kw => $tmp_kw) {
+ $src .= $i[2] . ((int)$idx_kw) . " => " . str_to_phpstring($tmp_kw['docs']) . ",\n";
+ }
+ $src .= $i[2] . "),\n";
+ $src .= $i[1] . "'OOLANG' => false,\n";
+ $src .= $i[1] . "'OBJECT_SPLITTERS' => array(\n";
+ $src .= $i[2] . "),\n";
+ $src .= $i[1] . "'REGEXPS' => array(\n";
+ $src .= $i[2] . "),\n";
+ $src .= $i[1] . "'STRICT_MODE_APPLIES' => GESHI_MAYBE,\n";
+ $src .= $i[1] . "'SCRIPT_DELIMITERS' => array(\n";
+ $src .= $i[2] . "),\n";
+ $src .= $i[1] . "'HIGHLIGHT_STRICT_BLOCK' => array(\n";
+ $src .= $i[2] . "),\n";
+ $src .= $i[1] . "'TAB_WIDTH' => 4\n";
+
+ $src .= <<<GESHI_LANGFILE_FOOTER
+);
+GESHI_LANGFILE_FOOTER;
+
+ //Reduce source ...
+ $src = preg_replace('/array\(\s*\)/s', 'array()', $src);
+ $src = preg_replace('/\,(\s*\))/s', '\1', $src);
+ $src = preg_replace('/\s+$/m', '', $src);
+
+ return $src;
+}
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/docs/CHANGES b/extensions/SyntaxHighlight_GeSHi/geshi/docs/CHANGES
index ee510fe0..942d09b2 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/docs/CHANGES
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/docs/CHANGES
@@ -1,7 +1,7 @@
CHANGES - Changelog for GeSHi (geshi.php only)
-Changes to the code are listed under the version they occured in, with who suggested
+Changes to the code are listed under the version they occurred in, with who suggested
it by each one (if there's nobody listed as suggesting it I dreamed it up :)). Users
who suggested an idea often also provided the code that was used as a basis for the
changes - thanks to all who suggested these ideas and gave me the code to show me how!
@@ -12,6 +12,59 @@ modified by me for consistency/bug fixing.
Please send any bug reports to BenBE@omorphia.de, or use the bug report tracker
at sourceforge (http://sourceforge.net/tracker/?group_id=114997&atid=670231)
+Version 1.0.8.12
+ - Added language files
+ * AIMMS (Guido Diepen)
+ * C with WinAPI (BenBE)
+ * C++ with WinAPI (BenBE)
+ * Chapel (Richard Molitor)
+ * Dart (Edward Hart)
+ * EZT (Ramesh Vishveshwar)
+ * ISPF Panel (Ramesh Vishveshwar)
+ * Job Control Language (Ramesh Vishveshwar)
+ * nginx (Cliff Wells, Deoren Moor, Thomas Joiner)
+ * Nimrod (Dennis Felsing)
+ * PostScript (BenBE)
+ * QML (J-P Nurmi)
+ * Racket (Tim Brown)
+ * RBScript (Deng Wen Gang)
+ * Rust (Dave Hodder)
+ * SCL (Leonhard Hösch)
+ * StandardML (eldesh)
+ * VBScript (Rory Prendergast)
+ - Allow for global setup of all keyword and comments style at once using '*' (BenBE)
+ - Non-persistent XSS in example contrib script (BenBE, present in intermediate dev versions)
+ - Fix short tag usage to allow for configurations where short tags are disabled (BenBE)
+ - Updated COPYING to use updated version of GPL 2.0 (BenBE)
+ - Improvements to language files (BenBE)
+ * Updated Documentation Link for LaTeX (Johannes Ähling)
+ * Fix some highlighting problems with Octave (Carnë Draug, Juan Pablo Carbajal)
+ * Fix a minor issue with comments in Visual Basic (Plançon, BenBE)
+ * Some LangCheck issues with Visual Basic (BenBE)
+ * Fix a minor issue with keywords in SQL (Gerrit, BenBE)
+ * Force comments in INI files to be their own line (BenBE)
+ * Fix problem with T-SQL keyword highlighting (James Horsley, BenBE)
+ * Some more keywords for Bash (BenBE)
+ * Updated LSL2 language file (BenBE, Sei Lisa)
+ * Fixed langcheck errors in Lua langfile (BenBE)
+ * Fixed double quotes in Tcl (BenBE, stecue)
+ * Updated PARI/GP language file (Charles R Greathouse IV, BenBE)
+ * Updated Cobol language file (Edward Hart, BenBE)
+ * Updated Verilog language file (Tony Carrillo, BenBE)
+ * Updated Lisp language file (Edward Hart, BenBE)
+ * Updated list of Debian and Ubuntu releases (BenBE)
+ * Implemented C++11 string literal support (BenBE)
+ * Updated list of commands on Bash language file (BenBE)
+ * Updated PHP language file (Levi Morrisson)
+ * Updated Haskell language file (duplode)
+ * Updated NSIS language file (Jan T. Scott, BenBE)
+ * Add raw string support for Rust (mbrown1413)
+ * Fix LangCheck issues with LOLcode language file (mudhailess, BenBE)
+ * Updated LSL2 language file (Sei Lisa, BenBE)
+ * Updated Oxygene language file (Carlo Kok, BenBE)
+ * Fixed TCL comment processing (Sei Lisa)
+ * Fixed C++ (Qt) documentation links (Sei Lisa)
+ * Updated CSS language file to include CSS3 keywords (Zéfling, BenBE))
Version 1.0.8.11
- Added language files
* ARM (Marat Dukhan)
@@ -731,7 +784,7 @@ Version 1.0.7.6
- Used hardquote support for ' strings in perl (Cliff Stanford)
- Fixed setting of language path (Cliff Stanford)
- Display source correctly formatted with line numbers (if requested) if an error
- has occured (several people)
+ has occurred (several people)
- Having no source to highlight is not an error condition anymore
- Delphi language updated to include more keywords and types (BenBE)
- Updated NSIS to version 2.11 (deguix)
@@ -920,4 +973,4 @@ Version 1.0.1
* NSIS (Tux)
* Pascal (Tux)
Version 1.0.0
- - Initial Release \ No newline at end of file
+ - Initial Release
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/docs/COPYING b/extensions/SyntaxHighlight_GeSHi/geshi/docs/COPYING
index 5b6e7c66..d159169d 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/docs/COPYING
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/docs/COPYING
@@ -1,12 +1,12 @@
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
- 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
- Preamble
+ Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
@@ -15,7 +15,7 @@ software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.) You can apply it to
+the GNU Lesser General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
@@ -55,8 +55,8 @@ patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
-
- GNU GENERAL PUBLIC LICENSE
+
+ GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
@@ -110,7 +110,7 @@ above, provided that you also meet all of these conditions:
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
-
+
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
@@ -168,7 +168,7 @@ access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
-
+
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
@@ -225,7 +225,7 @@ impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
-
+
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
@@ -255,7 +255,7 @@ make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
- NO WARRANTY
+ NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
@@ -277,9 +277,9 @@ YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
@@ -303,10 +303,9 @@ the "copyright" line and a pointer to where the full notice is found.
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
Also add information on how to contact you by electronic and paper mail.
@@ -336,5 +335,5 @@ necessary. Here is a sample; alter the names:
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Library General
+library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License.
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/docs/THANKS b/extensions/SyntaxHighlight_GeSHi/geshi/docs/THANKS
index be3325e9..258d4a50 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/docs/THANKS
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/docs/THANKS
@@ -50,6 +50,7 @@ PEOPE WHO MADE LANGUAGE FILES
- Actionscript Steffen Krause (french translation by NikO)
- ActionScript 3 Jordi Boggiano (version for ActionScript3 and MXML)
- Ada Tux
+- AIMMS Guido Diepen
- Algol68 Neville Dempsey
- Apache Tux
- Applescript Stephan Klimek
@@ -73,21 +74,26 @@ PEOPE WHO MADE LANGUAGE FILES
- Brainfuck \ Brainfork Benny Baumann
- C for Loadrunner Stuart Moncrieff
- C for Macs M. Uli Kusterer
+- C for Windows Benny Baumann
- C# Alan Juden
- C++ Dennis Bayer, M. Uli Kusterer
-- C++/Qt Iulian M
+- C++ (Qt) Iulian M
+- C++ for Windows Benny Baumann
- CADDCL Roberto Rossi
- CadLisp Roberto Rossi
- CDFG John Horigan
- ChaiScript Jason Turner, Jonathan Turner
+- Chapel Richard Molitor
- CIL Marcus Griep
- Clojure Jess Johnson
- CMake Daniel Nelson
-- COBOL Benny Baumann
+- COBOL Benny Baumann, Edward Hart
- CoffeeScript Trevor Burnham
- ColdFusion Diego
+- CSS Nigel McNie, Zéfling
- Cuesheet Benny Baumann
- D Thomas Kuehne
+- Dart Edward Hart
- DCL Petr Hendl
- DCPU-16 Benny Baumann
- DCS Stelio Passaris
@@ -101,6 +107,7 @@ PEOPE WHO MADE LANGUAGE FILES
- EPC Thorsten Muehlfelder
- Erlang Benny Baumann, Dan Forest-Barbier, Uwe Dauernheim
- Euphoria Nicholas Koceja
+- EZT Ramesh Vishveshwar
- F# Julien Ortin
- Falcon billykater
- FO (abas-ERP) Tan-Vinh Nguyen
@@ -113,7 +120,7 @@ PEOPE WHO MADE LANGUAGE FILES
- Genie Nicolas Joseph
- Gettext Milian Wolff
- glSlang Benny Baumann
-- GML José Jorge Enríquez Rodríguez
+- GML José Jorge Enríquez Rodríguez, Timon Knigge
- GNU make Neil Bird
- Gnuplot Milian Wolff
- Go Markus Jarderot
@@ -128,9 +135,11 @@ PEOPE WHO MADE LANGUAGE FILES
- Ini Deguix
- Inno Thomas Klinger
- INTERCAL Benny Baumann
+- ISPF Panel Ramesh Vishveshwar
- J Ric Sherlock
- Java 5 Clemens Bruckmann
- Javascript Ben Keen
+- Job Control Language Ramesh Vishveshwar
- jQuery Rob Loach
- KiXtart Riley McArdle
- KLone C Mickael Auger
@@ -159,6 +168,8 @@ PEOPE WHO MADE LANGUAGE FILES
- MySQL Carl Fürstenberg, Marjolein Katsma
- Nagios Albéric de Pertat
- NewLisp cormullion
+- nginx Cliff Wells, Deoren Moor, Thomas Joiner
+- Nimrod Dennis Felsing
- NSIS Tux, Deguix
- Oberon-2 Mike Mol
- Objeck Progr. Lang. Randy Hollines
@@ -184,6 +195,7 @@ PEOPE WHO MADE LANGUAGE FILES
- PL/I Robert Prins
- PL/SQL Victor Engmark
- PostgreSQL Christophe Chauvet
+- PostScript Benny Baumann
- POV-Ray Carl Fürstenberg
- PowerBuilder Doug Porter
- PowerShell Frode Aarebrot
@@ -197,22 +209,28 @@ PEOPE WHO MADE LANGUAGE FILES
- Python for S60 Sohan Basak
- PyCon Benny Baumann
- q/kdb+ Ian Roddis
+- QML J-P Nurmi
- R / S+ Ron Fredericks, Fernando H.F.P. da Rosa
+- Racket Tim Brown
- Rails Moises Deniz
+- RBScript Deng Wen Gang
- Rebol Lecanu Guillaume
- Reg SmokingRope
- Rexx Jon Wolfers
- Robots Christian Lescuyer
- RPM Specification File Paul Grinberg
- Ruby Amit Gupta, Moises Deniz
+- Rust Dave Hodder
- SAS Galen Johnson
- Scheme Jon Raphaelson
- SciLab Christophe David
+- SCL Leonhard Hösch
- SDLBasic Roberto Rossi
- Smalltalk Bananeweizen
- Smarty Alan Juden
- SPARK Phil Thornley
- SPARQL Karima Rafes
+- StandardML eldesh
- StoneScript Archimmersion
- SystemVerilog Sean O'Boyle
- TCL Reid van Melle
@@ -229,8 +247,9 @@ PEOPE WHO MADE LANGUAGE FILES
- Vala Nicolas Joseph
- VB Roberto Rossi
- VB.NET Alan Juden
+- VBScript Rory Prendergast
- Vedit Pauli Lindgren
-- Verilog Günter Dannoritzer
+- Verilog Günter Dannoritzer, Tony Carrillo
- VHDL Alexander 'E-Razor' Krause, Kevin Thibedeau
- VIM Script Swaroop C H
- Visual FoxPro Roberto Armellin
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/docs/TODO b/extensions/SyntaxHighlight_GeSHi/geshi/docs/TODO
index d849261c..5fe7afc7 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/docs/TODO
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/docs/TODO
@@ -68,4 +68,4 @@ http://sourceforge.net/tracker/?group_id=114997&atid=670234
and that script would redirect to the correct location.
[BETTER FIX IN 1.2]
- $Id: TODO 1725 2008-08-08 11:56:36Z benbe $
+ $Id$
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/docs/api/__filesource/fsource_geshi_core_geshi.php.html b/extensions/SyntaxHighlight_GeSHi/geshi/docs/api/__filesource/fsource_geshi_core_geshi.php.html
index 3d799821..a8ff361c 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/docs/api/__filesource/fsource_geshi_core_geshi.php.html
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/docs/api/__filesource/fsource_geshi_core_geshi.php.html
@@ -615,7 +615,7 @@
<li><div class="src-line"><a name="a600"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a601"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a602"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Returns&nbsp;an&nbsp;error&nbsp;message&nbsp;associated&nbsp;with&nbsp;the&nbsp;last&nbsp;GeSHi&nbsp;operation,</span></div></li>
-<li><div class="src-line"><a name="a603"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;or&nbsp;false&nbsp;if&nbsp;no&nbsp;error&nbsp;has&nbsp;occured</span></div></li>
+<li><div class="src-line"><a name="a603"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;or&nbsp;false&nbsp;if&nbsp;no&nbsp;error&nbsp;has&nbsp;occurred</span></div></li>
<li><div class="src-line"><a name="a604"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a605"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">false</span><span class="src-doc">An&nbsp;error&nbsp;message&nbsp;if&nbsp;there&nbsp;has&nbsp;been&nbsp;an&nbsp;error,&nbsp;else&nbsp;false</span></div></li>
<li><div class="src-line"><a name="a606"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@since</span><span class="src-doc">&nbsp;&nbsp;1.0.0</span></div></li>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/docs/api/elementindex.html b/extensions/SyntaxHighlight_GeSHi/geshi/docs/api/elementindex.html
index 970ebd19..f808e36b 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/docs/api/elementindex.html
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/docs/api/elementindex.html
@@ -153,7 +153,7 @@
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methoderror">GeSHi::error()</a> in geshi.php</div>
- <div class="index-item-description">Returns an error message associated with the last GeSHi operation, or false if no error has occured</div>
+ <div class="index-item-description">Returns an error message associated with the last GeSHi operation, or false if no error has occurred</div>
</dd>
</dl>
<a name="g"></a>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/docs/api/elementindex_geshi.html b/extensions/SyntaxHighlight_GeSHi/geshi/docs/api/elementindex_geshi.html
index f3193965..c3403081 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/docs/api/elementindex_geshi.html
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/docs/api/elementindex_geshi.html
@@ -150,7 +150,7 @@
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methoderror">GeSHi::error()</a> in geshi.php</div>
- <div class="index-item-description">Returns an error message associated with the last GeSHi operation, or false if no error has occured</div>
+ <div class="index-item-description">Returns an error message associated with the last GeSHi operation, or false if no error has occurred</div>
</dd>
</dl>
<a name="g"></a>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/docs/api/geshi/core/GeSHi.html b/extensions/SyntaxHighlight_GeSHi/geshi/docs/api/geshi/core/GeSHi.html
index a8ccc7d0..e80e3a1e 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/docs/api/geshi/core/GeSHi.html
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/docs/api/geshi/core/GeSHi.html
@@ -27,8 +27,8 @@
<p class="short-description">The GeSHi Class.</p>
<p class="description"><p>Please refer to the documentation for GeSHi 1.0.X that is available at http://qbnz.com/highlighter/documentation.php for more information about how to use this class.</p></p>
<ul class="tags">
- <li><span class="field">author:</span> Nigel McNie &lt;<a href="mailto:nigel@geshi.org">nigel@geshi.org</a>&gt;, Benny Baumann &lt;BenBE@omorphia.de&gt;</li>
- <li><span class="field">copyright:</span> (C) 2004 - 2007 Nigel McNie, (C) 2007 - 2008 Benny Baumann</li>
+ <li><span class="field">author:</span> Nigel McNie &lt;<a href="mailto:nigel@geshi.org">nigel@geshi.org</a>&gt;, Benny Baumann &lt;BenBE@geshi.org&gt;</li>
+ <li><span class="field">copyright:</span> (C) 2004 - 2007 Nigel McNie, (C) 2007 - 2014 Benny Baumann</li>
</ul>
<p class="notes">
Located in <a class="field" href="_geshi.php.html">/geshi.php</a> (line <span class="field"><a href="../../__filesource/fsource_geshi_core_geshi.php.html#a253">253</a></span>)
@@ -905,7 +905,7 @@
</div>
<!-- ========== Info from phpDoc block ========= -->
-<p class="short-description">Returns an error message associated with the last GeSHi operation, or false if no error has occured</p>
+<p class="short-description">Returns an error message associated with the last GeSHi operation, or false if no error has occurred</p>
<ul class="tags">
<li><span class="field">return:</span> An error message if there has been an error, else false</li>
<li><span class="field">since:</span> 1.0.0</li>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/docs/api/geshi/core/_geshi.php.html b/extensions/SyntaxHighlight_GeSHi/geshi/docs/api/geshi/core/_geshi.php.html
index 798f68f2..03527b1a 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/docs/api/geshi/core/_geshi.php.html
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/docs/api/geshi/core/_geshi.php.html
@@ -25,8 +25,8 @@
<p class="short-description">GeSHi - Generic Syntax Highlighter</p>
<p class="description"><p>The GeSHi class for Generic Syntax Highlighting. Please refer to the documentation at http://qbnz.com/highlighter/documentation.php for more information about how to use this class.</p><p>For changes, release notes, TODOs etc, see the relevant files in the docs/ directory.</p><p>This file is part of GeSHi.</p><p>GeSHi is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.</p><p>GeSHi is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.</p><p>You should have received a copy of the GNU General Public License along with GeSHi; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA</p></p>
<ul class="tags">
- <li><span class="field">author:</span> Nigel McNie &lt;<a href="mailto:nigel@geshi.org">nigel@geshi.org</a>&gt;, Benny Baumann &lt;BenBE@omorphia.de&gt;</li>
- <li><span class="field">copyright:</span> (C) 2004 - 2007 Nigel McNie, (C) 2007 - 2008 Benny Baumann</li>
+ <li><span class="field">author:</span> Nigel McNie &lt;<a href="mailto:nigel@geshi.org">nigel@geshi.org</a>&gt;, Benny Baumann &lt;BenBE@geshi.org&gt;</li>
+ <li><span class="field">copyright:</span> (C) 2004 - 2007 Nigel McNie, (C) 2007 - 2014 Benny Baumann</li>
<li><span class="field">filesource:</span> <a href="../../__filesource/fsource_geshi_core_geshi.php.html">Source Code for this file</a></li>
<li><span class="field">license:</span> <a href="http://gnu.org/copyleft/gpl.html">GNU GPL</a></li>
</ul>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/docs/geshi-doc.html b/extensions/SyntaxHighlight_GeSHi/geshi/docs/geshi-doc.html
index dc5161f4..693617b7 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/docs/geshi-doc.html
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/docs/geshi-doc.html
@@ -2,7 +2,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
- <title>GeSHi Documentation 1.0.8.11</title>
+ <title>GeSHi Documentation 1.0.8.12</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta name="keywords" content="GeSHi, syntax, highlighter, colorizer, beautifier, code, generic, php, sql, css, html, syntax, highlighting, documentation" />
@@ -390,7 +390,7 @@
<div class="header">
-<p>Version 1.0.8.11</p>
+<p>Version 1.0.8.12</p>
<p><img src="http://qbnz.com/highlighter/images/geshi.png" alt="The GeSHi Logo" /></p>
@@ -570,7 +570,7 @@ for phpBB<sup id="fnref:phpbb-note"><a href="#fn:phpbb-note" rel="footnote">3</a
<p>Several systems are using <abbr title="Generic Syntax Highlighter">GeSHi</abbr> now, including:</p>
<ul>
-<li><a href="http://www.splitbrain.org/docuwiki/">Dokuwiki</a> - An advanced wiki engine</li>
+<li><a href="https://www.dokuwiki.org/dokuwiki">Dokuwiki</a> - An advanced wiki engine</li>
<li><a href="http://gtk.php.net/">gtk.php.net</a> - Their manual uses <abbr title="Generic Syntax Highlighter">GeSHi</abbr> for syntax highlighting</li>
<li><a href="http://www.wordpress.org/">WordPress</a> - A powerful blogging system<sup id="fnref:plugin-only"><a href="#fn:plugin-only" rel="footnote">4</a></sup></li>
<li><a href="http://www.php-fusion.co.uk/"><abbr title="PHP: HTML Preprocessor">PHP</abbr>-Fusion</a> - A constantly evolving CMS</li>
@@ -2639,7 +2639,7 @@ yourself. And I promise it&#8217;s not too hard - and if you&#8217;re here you&#
</pre></td><td class="de1"><pre class="de1"><span class="kw2">&lt;?php</span>
<span class="xtra li2"><span class="de2"><span class="coMULTI">/*************************************************************************************</span></span></span><span class="coMULTI">&nbsp;* php.php</span>
<span class="xtra li2"><span class="de2"><span class="coMULTI">&nbsp;* --------</span></span></span><span class="coMULTI">&nbsp;* Author: Nigel McNie (nigel@geshi.org)</span>
-<span class="xtra li2"><span class="de2"><span class="coMULTI">&nbsp;* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)</span></span></span><span class="coMULTI">&nbsp;* Release Version: 1.0.8.10</span>
+<span class="xtra li2"><span class="de2"><span class="coMULTI">&nbsp;* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)</span></span></span><span class="coMULTI">&nbsp;* Release Version: 1.0.8.12</span>
<span class="xtra li2"><span class="de2"><span class="coMULTI">&nbsp;* Date Started: 2004/06/20</span></span></span><span class="coMULTI">&nbsp;*</span>
<span class="xtra li2"><span class="de2"><span class="coMULTI">&nbsp;* PHP language file for GeSHi.</span></span></span><span class="coMULTI">&nbsp;*</span>
<span class="xtra li2"><span class="de2"><span class="coMULTI">&nbsp;* CHANGES</span></span></span><span class="coMULTI">&nbsp;* -------</span>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/docs/geshi-doc.txt b/extensions/SyntaxHighlight_GeSHi/geshi/docs/geshi-doc.txt
index e0f38ff6..a40c7552 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/docs/geshi-doc.txt
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/docs/geshi-doc.txt
@@ -5,7 +5,7 @@ GeSHi Documentation
Version 1.0.7.22
Author: Nigel McNie, Benny Baumann
-Copyright: © 2004 - 2007 Nigel McNie, 2007 - 2008 Benny Baumann
+Copyright: © 2004 - 2007 Nigel McNie, 2007 - 2014 Benny Baumann
Email: nigel@geshi.org, BenBE@omorphia.de
GeSHi Website: http://qbnz.com/highlighter
@@ -994,9 +994,9 @@ Let's begin by looking at an example language file - the language file for the f
* Author: Nigel McNie (nigel@geshi.org)
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
* Release Version: 1.0.2
- * CVS Revision Version: $Revision: 1195 $
+ * CVS Revision Version: $Revision$
* Date Started: 2004/06/20
- * Last Modified: $Date: 2008-06-08 19:44:08 +0200 (So, 08. Jun 2008) $
+ * Last Modified: $Date$
*
* PHP language file for GeSHi.
*
@@ -1356,9 +1356,9 @@ The header of a language file is the first lines with the big comment and the st
* Author: <name> (<e-mail address>)
* Copyright: (c) 2004 <name> (<website URL>)
* Release Version: 1.0.0
- * CVS Revision Version: $Revision: 1195 $
+ * CVS Revision Version: $Revision$
* Date Started: <date started>
- * Last Modified: $Date: 2008-06-08 19:44:08 +0200 (So, 08. Jun 2008) $
+ * Last Modified: $Date$
*
* <name-of-language> language file for GeSHi.
*
@@ -1408,7 +1408,7 @@ Here are the parts you should change:
* <any-comments> - Any comments you have to make about this language file, perhaps on where you got the keywords for, what dialect of the language this language file is for etc etc. If you don't have any comments, remove the space for them.
* <date-of-release - The date you released the language file to the public. If you simply send it to me for inclusion in a new GeSHi and don't release it, leave this blank, and I'll replace it with the date of the GeSHi release that it is first added to.
-Everything should remain the same, including $Revision: 1195 $ and $Date: 2008-06-08 19:44:08 +0200 (So, 08. Jun 2008) $ (I know these may look funny but they have their purpose for those of you who don't know about SVN).
+Everything should remain the same, including $Revision$ and $Date$ (I know these may look funny but they have their purpose for those of you who don't know about SVN).
Also: I'm not sure about the copyright on a new language file. I'm not a lawyer, could someone contact me about whether the copyright for a new language file should be exclusivly the authors, or joint with me (if included in a GeSHi release)?
4.3.2: The First Indices
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi.php
index 4323d05c..6ade501e 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi.php
@@ -28,7 +28,7 @@
* @package geshi
* @subpackage core
* @author Nigel McNie <nigel@geshi.org>, Benny Baumann <BenBE@omorphia.de>
- * @copyright (C) 2004 - 2007 Nigel McNie, (C) 2007 - 2008 Benny Baumann
+ * @copyright (C) 2004 - 2007 Nigel McNie, (C) 2007 - 2014 Benny Baumann
* @license http://gnu.org/copyleft/gpl.html GNU GPL
*
*/
@@ -41,7 +41,7 @@
//
/** The version of this GeSHi file */
-define('GESHI_VERSION', '1.0.8.11-wmf1'); // WMF fix for Haskell (bug 52509)
+define('GESHI_VERSION', '1.0.8.12-wmf1'); // WMF fix for Haskell (bug 52509)
// Define the root directory for the GeSHi code tree
if (!defined('GESHI_ROOT')) {
@@ -254,7 +254,7 @@ define('GESHI_ERROR_INVALID_LINE_NUMBER_TYPE', 5);
*
* @package geshi
* @author Nigel McNie <nigel@geshi.org>, Benny Baumann <BenBE@omorphia.de>
- * @copyright (C) 2004 - 2007 Nigel McNie, (C) 2007 - 2008 Benny Baumann
+ * @copyright (C) 2004 - 2007 Nigel McNie, (C) 2007 - 2014 Benny Baumann
*/
class GeSHi {
/**#@+
@@ -617,7 +617,7 @@ class GeSHi {
/**
* Returns an error message associated with the last GeSHi operation,
- * or false if no error has occured
+ * or false if no error has occurred
*
* @return string|false An error message if there has been an error, else false
* @since 1.0.0
@@ -1019,10 +1019,20 @@ class GeSHi {
*/
function set_keyword_group_style($key, $style, $preserve_defaults = false) {
//Set the style for this keyword group
- if (!$preserve_defaults) {
- $this->language_data['STYLES']['KEYWORDS'][$key] = $style;
+ if('*' == $key) {
+ foreach($this->language_data['STYLES']['KEYWORDS'] as $_key => $_value) {
+ if (!$preserve_defaults) {
+ $this->language_data['STYLES']['KEYWORDS'][$_key] = $style;
+ } else {
+ $this->language_data['STYLES']['KEYWORDS'][$_key] .= $style;
+ }
+ }
} else {
- $this->language_data['STYLES']['KEYWORDS'][$key] .= $style;
+ if (!$preserve_defaults) {
+ $this->language_data['STYLES']['KEYWORDS'][$key] = $style;
+ } else {
+ $this->language_data['STYLES']['KEYWORDS'][$key] .= $style;
+ }
}
//Update the lexic permissions
@@ -1054,10 +1064,20 @@ class GeSHi {
* @since 1.0.0
*/
function set_comments_style($key, $style, $preserve_defaults = false) {
- if (!$preserve_defaults) {
- $this->language_data['STYLES']['COMMENTS'][$key] = $style;
+ if('*' == $key) {
+ foreach($this->language_data['STYLES']['COMMENTS'] as $_key => $_value) {
+ if (!$preserve_defaults) {
+ $this->language_data['STYLES']['COMMENTS'][$_key] = $style;
+ } else {
+ $this->language_data['STYLES']['COMMENTS'][$_key] .= $style;
+ }
+ }
} else {
- $this->language_data['STYLES']['COMMENTS'][$key] .= $style;
+ if (!$preserve_defaults) {
+ $this->language_data['STYLES']['COMMENTS'][$key] = $style;
+ } else {
+ $this->language_data['STYLES']['COMMENTS'][$key] .= $style;
+ }
}
}
@@ -1445,9 +1465,8 @@ class GeSHi {
* @since 1.0.5
* @todo Re-think about how this method works (maybe make it private and/or make it
* a extension->lang lookup?)
- * @todo static?
*/
- function get_language_name_from_extension( $extension, $lookup = array() ) {
+ static function get_language_name_from_extension( $extension, $lookup = array() ) {
$extension = strtolower($extension);
if ( !is_array($lookup) || empty($lookup)) {
@@ -1557,7 +1576,7 @@ class GeSHi {
function load_from_file($file_name, $lookup = array()) {
if (is_readable($file_name)) {
$this->set_source(file_get_contents($file_name));
- $this->set_language($this->get_language_name_from_extension(substr(strrchr($file_name, '.'), 1), $lookup));
+ $this->set_language(self::get_language_name_from_extension(substr(strrchr($file_name, '.'), 1), $lookup));
} else {
$this->error = GESHI_ERROR_FILE_NOT_READABLE;
}
@@ -3573,7 +3592,6 @@ class GeSHi {
$symbol_length = strlen($symbol_match);
$symbol_offset = $pot_symbols[$s_id][0][1];
unset($pot_symbols[$s_id]);
- $symbol_end = $symbol_length + $symbol_offset;
$symbol_hl = "";
// if we have multiple styles, we have to handle them properly
@@ -3875,9 +3893,6 @@ class GeSHi {
// the <pre> will line-break them (and the <li>s already do this for us)
$ls = ($this->header_type != GESHI_HEADER_PRE && $this->header_type != GESHI_HEADER_PRE_VALID) ? "\n" : '';
- // Set vars to defaults for following loop
- $i = 0;
-
// Foreach line...
for ($i = 0, $n = count($code); $i < $n;) {
//Reset the attributes for a new line ...
@@ -4386,13 +4401,13 @@ class GeSHi {
" * --------------------------------------\n".
" * Dynamically generated stylesheet for {$this->language}\n".
" * CSS class: {$this->overall_class}, CSS id: {$this->overall_id}\n".
- " * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2008 Benny Baumann\n" .
+ " * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2014 Benny Baumann\n" .
" * (http://qbnz.com/highlighter/ and http://geshi.org/)\n".
" * --------------------------------------\n".
" */\n";
} else {
$stylesheet = "/**\n".
- " * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2008 Benny Baumann\n" .
+ " * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2014 Benny Baumann\n" .
" * (http://qbnz.com/highlighter/ and http://geshi.org/)\n".
" */\n";
}
@@ -4771,5 +4786,3 @@ if (!function_exists('geshi_highlight')) {
return true;
}
}
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/4cs.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/4cs.php
index 5209c51e..8fdf9317 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/4cs.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/4cs.php
@@ -4,7 +4,7 @@
* ------
* Author: Jason Curl (jason.curl@continental-corporation.com)
* Copyright: (c) 2009 Jason Curl
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2009/09/05
*
* 4CS language file for GeSHi.
@@ -135,5 +135,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/6502acme.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/6502acme.php
index 203e04df..6b37a279 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/6502acme.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/6502acme.php
@@ -4,7 +4,7 @@
* -------
* Author: Warren Willmey
* Copyright: (c) 2010 Warren Willmey.
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2010/05/26
*
* MOS 6502 (more specifically 6510) ACME Cross Assembler 0.93 by Marco Baye language file for GeSHi.
@@ -226,5 +226,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/6502kickass.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/6502kickass.php
index 80428262..205cdd1d 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/6502kickass.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/6502kickass.php
@@ -4,7 +4,7 @@
* -------
* Author: Warren Willmey
* Copyright: (c) 2010 Warren Willmey.
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2010/06/07
*
* MOS 6502 (6510) Kick Assembler 3.13 language file for GeSHi.
@@ -237,5 +237,3 @@ $language_data = array (
)
),
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/6502tasm.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/6502tasm.php
index 86aa479d..4efe25e3 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/6502tasm.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/6502tasm.php
@@ -4,7 +4,7 @@
* -------
* Author: Warren Willmey
* Copyright: (c) 2010 Warren Willmey.
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2010/06/02
*
* MOS 6502 (6510) TASM/64TASS (64TASS being the super set of TASM) language file for GeSHi.
@@ -185,5 +185,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/68000devpac.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/68000devpac.php
index f46387ae..90aea4c6 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/68000devpac.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/68000devpac.php
@@ -4,7 +4,7 @@
* -------
* Author: Warren Willmey
* Copyright: (c) 2010 Warren Willmey.
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2010/06/09
*
* Motorola 68000 - HiSoft Devpac ST 2 Assembler language file for GeSHi.
@@ -164,5 +164,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/abap.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/abap.php
index 5acd261c..faa5efc1 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/abap.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/abap.php
@@ -7,7 +7,7 @@
* - Sandra Rossi (sandra.rossi@gmail.com)
* - Jacob Laursen (jlu@kmd.dk)
* Copyright: (c) 2007 Andres Picazo
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/06/04
*
* ABAP language file for GeSHi.
@@ -1405,5 +1405,3 @@ $language_data = array(
),
'TAB_WIDTH' => 4
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/actionscript.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/actionscript.php
index 08e5b49a..e8521f24 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/actionscript.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/actionscript.php
@@ -4,7 +4,7 @@
* ----------------
* Author: Steffen Krause (Steffen.krause@muse.de)
* Copyright: (c) 2004 Steffen Krause, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/06/20
*
* Actionscript language file for GeSHi.
@@ -193,5 +193,3 @@ $language_data = array (
'SCRIPT_DELIMITERS' => array(),
'HIGHLIGHT_STRICT_BLOCK' => array()
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/actionscript3.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/actionscript3.php
index 189d714b..f8425f1f 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/actionscript3.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/actionscript3.php
@@ -4,7 +4,7 @@
* ----------------
* Author: Jordi Boggiano (j.boggiano@seld.be)
* Copyright: (c) 2007 Jordi Boggiano (http://www.seld.be/), Benny Baumann (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2007/11/26
*
* ActionScript3 language file for GeSHi.
@@ -469,5 +469,3 @@ $language_data = array (
'SCRIPT_DELIMITERS' => array(),
'HIGHLIGHT_STRICT_BLOCK' => array()
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/ada.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/ada.php
index c4ef2c39..3e48fd13 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/ada.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/ada.php
@@ -4,7 +4,7 @@
* -------
* Author: Tux (tux@inmail.cz)
* Copyright: (c) 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/07/29
*
* Ada language file for GeSHi.
@@ -94,9 +94,6 @@ $language_data = array (
'ESCAPE_CHAR' => array(
0 => 'color: #000099; font-weight: bold;'
),
- 'BRACKETS' => array(
- 0 => 'color: #66cc66;'
- ),
'STRINGS' => array(
0 => 'color: #7f007f;'
),
@@ -131,5 +128,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/aimms.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/aimms.php
new file mode 100644
index 00000000..f46bdd0b
--- /dev/null
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/aimms.php
@@ -0,0 +1,316 @@
+<?php
+/*************************************************************************************
+ * aimms.php
+ * --------
+ * Author: Guido Diepen (guido.diepen@aimms.com)
+ * Copyright: (c) 2011 Guido Diepen (http://www.aimms.com)
+ * Release Version: 1.0.8.12
+ * Date Started: 2011/05/05
+ *
+ * AIMMS language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2004/07/14 (1.0.0)
+ * - First Release
+ *
+ * TODO (updated 2004/07/14)
+ * -------------------------
+ * * Make sure the last few function I may have missed
+ * (like eval()) are included for highlighting
+ * * Split to several files - php4, php5 etc
+ *
+ *************************************************************************************
+ *
+ * This file is part of GeSHi.
+ *
+ * GeSHi is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * GeSHi is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GeSHi; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ ************************************************************************************/
+
+$language_data = array(
+ 'LANG_NAME' => 'AIMMS3',
+ 'COMMENT_SINGLE' => array(1 => '!'),
+ 'COMMENT_MULTI' => array('/*' => '*/'),
+ 'HARDQUOTE' => array("'", "'"),
+ 'HARDESCAPE' => array("'", "\\"),
+ 'HARDCHAR' => "\\",
+ 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
+ 'QUOTEMARKS' => array('"'),
+ 'OBJECT_SPLITTERS' => array(),
+ 'REGEXPS' => array(),
+ 'STRICT_MODE_APPLIES' => GESHI_MAYBE,
+ 'SCRIPT_DELIMITERS' => array(),
+ 'HIGHLIGHT_STRICT_BLOCK' => array(),
+ 'ESCAPE_CHAR' => '',
+ 'KEYWORDS' => array(
+ 1 => array(
+ 'if', 'then', 'else', 'endif', 'elseif', 'for', 'do', 'while' , 'endfor' , 'endwhile', 'break', 'switch', 'endswitch',
+ 'display', 'return', 'in', 'apply'
+
+ ),
+ 2 => array(
+ 'main model' , 'declaration section', 'procedure', 'endprocedure', 'endmodel', 'endsection' , 'set', 'parameter',
+ 'string parameter', 'element parameter', 'quantity'
+ ),
+ 3 => array(
+ 'identifier', 'index', 'index domain', 'body'
+ ),
+ 4 => array(
+ 'ActiveCard','Card','ConvertUnit','DistributionCumulative','DistributionDensity','DistributionDeviation',
+ 'DistributionInverseCumulative','DistributionInverseDensity','DistributionKurtosis','DistributionMean',
+ 'DistributionSkewness','DistributionVariance','Element','EvaluateUnit','First','FormatString','Last',
+ 'Ord','Unit','Val','Aggregate','AttributeToString','CaseCompareIdentifier','CaseCreateDifferenceFile',
+ 'CloseDataSource','CreateTimeTable','ConstraintVariables','ConvertReferenceDate','CloneElement',
+ 'FindNthString','FindReplaceNthString','FindReplaceStrings','FindString','StringOccurrences',
+ 'CurrentToMoment','CurrentToString','CurrentToTimeSlot','DaylightsavingEndDate','DaylightsavingStartDate',
+ 'DeclaredSubset','DomainIndex','IndexRange','IsRunningAsViewer','ListingFileCopy','ListingFileDelete',
+ 'DirectoryGetFiles','DirectoryGetSubdirectories','DirectSQL','Disaggregate','ElementCast','ElementRange',
+ 'EnvironmentGetString','EnvironmentSetString','errh::Adapt','errh::Attribute','errh::Category',
+ 'errh::Code','errh::Column','errh::CreationTime','errh::Filename','errh::InsideCategory',
+ 'errh::IsMarkedAsHandled','errh::Line','errh::MarkAsHandled','errh::Message','errh::Multiplicity',
+ 'errh::Node','errh::NumberOfLocations','errh::Severity','ExcelAddNewSheet','ExcelAssignParameter',
+ 'ExcelAssignSet','ExcelAssignTable','ExcelAssignValue','ExcelClearRange','ExcelCloseWorkbook',
+ 'ExcelColumnName','ExcelColumnNumber','ExcelCopyRange','ExcelCreateWorkbook','ExcelDeleteSheet',
+ 'ExcelPrint','ExcelRetrieveParameter','ExcelRetrieveSet','ExcelRetrieveTable','ExcelRetrieveValue',
+ 'ExcelRunMacro','ExcelSaveWorkbook','ExcelSetActiveSheet','ExcelSetUpdateLinksBehavior',
+ 'ExcelSetVisibility','FindUsedElements','GenerateCUT','GMP::Coefficient::Get',
+ 'GMP::Coefficient::GetQuadratic','GMP::Coefficient::Set','GMP::Coefficient::SetQuadratic',
+ 'GMP::Column::Add','GMP::Column::Delete','GMP::Column::Freeze','GMP::Column::GetLowerbound',
+ 'GMP::Column::GetScale','GMP::Column::GetStatus','GMP::Column::GetType','GMP::Column::GetUpperbound',
+ 'GMP::Column::SetAsObjective','GMP::Column::SetLowerbound','GMP::Column::SetType',
+ 'GMP::Column::SetUpperbound','GMP::Column::Unfreeze','GMP::Instance::AddIntegerEliminationRows',
+ 'GMP::Instance::CalculateSubGradient','GMP::Instance::Copy','GMP::Instance::CreateDual',
+ 'GMP::Instance::CreateMasterMip','GMP::Instance::CreatePresolved',
+ 'GMP::SolverSession::CreateProgressCategory','GMP::Instance::CreateProgressCategory',
+ 'GMP::Instance::CreateSolverSession','GMP::Stochastic::CreateBendersRootproblem',
+ 'GMP::Instance::Delete','GMP::Instance::DeleteIntegerEliminationRows',
+ 'GMP::Instance::DeleteSolverSession','GMP::Instance::FindApproximatelyFeasibleSolution',
+ 'GMP::Instance::FixColumns','GMP::Instance::Generate','GMP::Instance::GenerateRobustCounterpart',
+ 'GMP::Instance::GenerateStochasticProgram','GMP::SolverSession::GetCallbackInterruptStatus',
+ 'GMP::SolverSession::WaitForCompletion','GMP::SolverSession::WaitForSingleCompletion',
+ 'GMP::SolverSession::ExecutionStatus','GMP::Instance::GetDirection','GMP::Instance::GetLinearObjective',
+ 'GMP::Instance::GetMathematicalProgrammingType','GMP::Instance::GetMemoryUsed',
+ 'GMP::Instance::GetNumberOfColumns','GMP::Instance::GetNumberOfIndicatorRows',
+ 'GMP::Instance::GetNumberOfIntegerColumns','GMP::Instance::GetNumberOfNonlinearColumns',
+ 'GMP::Instance::GetNumberOfNonlinearNonzeros','GMP::Instance::GetNumberOfNonlinearRows',
+ 'GMP::Instance::GetNumberOfNonzeros','GMP::Instance::GetNumberOfRows',
+ 'GMP::Instance::GetNumberOfSOS1Rows','GMP::Instance::GetNumberOfSOS2Rows',
+ 'GMP::Instance::GetObjective','GMP::Instance::GetOptionValue','GMP::Instance::GetSolver',
+ 'GMP::Instance::GetSymbolicMathematicalProgram','GMP::Instance::MemoryStatistics',
+ 'GMP::Instance::Rename','GMP::Instance::SetCallbackAddCut','GMP::Instance::SetCallbackBranch',
+ 'GMP::Instance::SetCallbackHeuristic','GMP::Instance::SetCallbackIncumbent',
+ 'GMP::Instance::SetCallbackIterations','GMP::Instance::SetCallbackNewIncumbent',
+ 'GMP::Instance::SetCallbackStatusChange','GMP::Instance::SetCutoff','GMP::Instance::SetDirection',
+ 'GMP::Instance::SetMathematicalProgrammingType','GMP::Instance::SetSolver','GMP::Instance::Solve',
+ 'GMP::Stochastic::GetObjectiveBound','GMP::Stochastic::GetRelativeWeight',
+ 'GMP::Stochastic::GetRepresentativeScenario','GMP::Stochastic::UpdateBendersSubproblem',
+ 'GMP::Linearization::Add','GMP::Linearization::AddSingle','GMP::Linearization::Delete',
+ 'GMP::Linearization::GetDeviation','GMP::Linearization::GetDeviationBound',
+ 'GMP::Linearization::GetLagrangeMultiplier','GMP::Linearization::GetType',
+ 'GMP::Linearization::GetWeight','GMP::Linearization::RemoveDeviation',
+ 'GMP::Linearization::SetDeviationBound','GMP::Linearization::SetType',
+ 'GMP::Linearization::SetWeight','GMP::ProgressWindow::DeleteCategory',
+ 'GMP::ProgressWindow::DisplayLine','GMP::ProgressWindow::DisplayProgramStatus',
+ 'GMP::ProgressWindow::DisplaySolver','GMP::ProgressWindow::DisplaySolverStatus',
+ 'GMP::ProgressWindow::FreezeLine','GMP::ProgressWindow::UnfreezeLine',
+ 'GMP::QuadraticCoefficient::Get','GMP::QuadraticCoefficient::Set','GMP::Row::Activate',
+ 'GMP::Stochastic::AddBendersFeasibilityCut','GMP::Stochastic::AddBendersOptimalityCut',
+ 'GMP::Stochastic::BendersFindFeasibilityReference','GMP::Stochastic::MergeSolution',
+ 'GMP::Row::Add','GMP::Row::Deactivate','GMP::Row::Delete','GMP::Row::DeleteIndicatorCondition',
+ 'GMP::Row::Generate','GMP::Row::GetConvex','GMP::Row::GetIndicatorColumn',
+ 'GMP::Row::GetIndicatorCondition','GMP::Row::GetLeftHandSide','GMP::Row::GetRelaxationOnly',
+ 'GMP::Row::GetRightHandSide','GMP::Row::GetScale','GMP::Row::GetStatus','GMP::Row::GetType',
+ 'GMP::Row::SetConvex','GMP::Row::SetIndicatorCondition','GMP::Row::SetLeftHandSide',
+ 'GMP::Row::SetRelaxationOnly','GMP::Row::SetRightHandSide','GMP::Row::SetType',
+ 'GMP::Solution::Check','GMP::Solution::Copy','GMP::Solution::Count','GMP::Solution::Delete',
+ 'GMP::Solution::DeleteAll','GMP::Solution::GetColumnValue','GMP::Solution::GetCPUSecondsUsed',
+ 'GMP::Solution::GetDistance','GMP::Solution::GetFirstOrderDerivative',
+ 'GMP::Solution::GetIterationsUsed','GMP::Solution::GetNodesUsed','GMP::Solution::GetLinearObjective',
+ 'GMP::Solution::GetMemoryUsed','GMP::Solution::GetObjective','GMP::Solution::GetPenalizedObjective',
+ 'GMP::Solution::GetProgramStatus','GMP::Solution::GetRowValue','GMP::Solution::GetSolutionsSet',
+ 'GMP::Solution::GetSolverStatus','GMP::Solution::IsDualDegenerated','GMP::Solution::IsInteger',
+ 'GMP::Solution::IsPrimalDegenerated','GMP::Solution::SetMIPStartFlag','GMP::Solution::Move',
+ 'GMP::Solution::RandomlyGenerate','GMP::Solution::RetrieveFromModel',
+ 'GMP::Solution::RetrieveFromSolverSession','GMP::Solution::SendToModel',
+ 'GMP::Solution::SendToModelSelection','GMP::Solution::SendToSolverSession',
+ 'GMP::Solution::SetIterationCount','GMP::Solution::SetProgramStatus','GMP::Solution::SetSolverStatus',
+ 'GMP::Solution::UpdatePenaltyWeights','GMP::Solution::ConstructMean',
+ 'GMP::SolverSession::AsynchronousExecute','GMP::SolverSession::Execute',
+ 'GMP::SolverSession::Interrupt','GMP::SolverSession::AddLinearization',
+ 'GMP::SolverSession::GenerateBranchLowerBound','GMP::SolverSession::GenerateBranchUpperBound',
+ 'GMP::SolverSession::GenerateBranchRow','GMP::SolverSession::GenerateCut',
+ 'GMP::SolverSession::GenerateBinaryEliminationRow','GMP::SolverSession::GetCPUSecondsUsed',
+ 'GMP::SolverSession::GetHost','GMP::SolverSession::GetInstance',
+ 'GMP::SolverSession::GetIterationsUsed','GMP::SolverSession::GetNodesLeft',
+ 'GMP::SolverSession::GetNodesUsed','GMP::SolverSession::GetNodeNumber',
+ 'GMP::SolverSession::GetNodeObjective','GMP::SolverSession::GetNumberOfBranchNodes',
+ 'GMP::SolverSession::GetLinearObjective','GMP::SolverSession::GetMemoryUsed',
+ 'GMP::SolverSession::GetObjective','GMP::SolverSession::GetOptionValue',
+ 'GMP::SolverSession::GetProgramStatus','GMP::SolverSession::GetSolver',
+ 'GMP::SolverSession::GetSolverStatus','GMP::SolverSession::RejectIncumbent',
+ 'GMP::Event::Create','GMP::Event::Delete','GMP::Event::Reset','GMP::Event::Set',
+ 'GMP::SolverSession::SetObjective','GMP::SolverSession::SetOptionValue',
+ 'GMP::Instance::SetCPUSecondsLimit','GMP::Instance::SetIterationLimit',
+ 'GMP::Instance::SetMemoryLimit','GMP::Instance::SetOptionValue','GMP::Tuning::SolveSingleMPS',
+ 'GMP::Tuning::TuneMultipleMPS','GMP::Tuning::TuneSingleGMP',
+ 'GMP::Solver::GetAsynchronousSessionsLimit','GMP::Robust::EvaluateAdjustableVariables',
+ 'GenerateXML','GetDatasourceProperty','ReadGeneratedXML','ReadXML','ReferencedIdentifiers',
+ 'WriteXML','IdentifierAttributes','IdentifierDimension','IsRuntimeIdentifier','IdentifierMemory',
+ 'IdentifierMemoryStatistics','IdentifierText','IdentifierType','IdentifierUnit','ScalarValue',
+ 'SectionIdentifiers','SubRange','MemoryInUse','CommitTransaction','RollbackTransaction',
+ 'MemoryStatistics','me::AllowedAttribute','me::ChangeType','me::ChangeTypeAllowed','me::Children',
+ 'me::ChildTypeAllowed','me::Compile','me::Create','me::CreateLibrary','me::Delete','me::ExportNode',
+ 'me::GetAttribute','me::ImportLibrary','me::ImportNode','me::IsRunnable','me::Move','me::Parent',
+ 'me::Rename','me::SetAttribute','MomentToString','MomentToTimeSlot','OptionGetValue',
+ 'OptionGetKeywords','OptionGetString','OptionSetString','OptionSetValue','PeriodToString',
+ 'ProfilerContinue','ProfilerPause','ProfilerRestart','RestoreInactiveElements',
+ 'RetrieveCurrentVariableValues','SetAddRecursive','SetElementAdd','SetElementRename',
+ 'SQLColumnData','SQLCreateConnectionString','SQLDriverName','SQLNumberOfColumns',
+ 'SQLNumberOfDrivers','SQLNumberOfTables','SQLNumberOfViews','SQLTableName','SQLViewName',
+ 'StartTransaction','StringToElement','StringToMoment','StringToTimeSlot','TestDatabaseColumn',
+ 'TestDatabaseTable','TestDataSource','TestDate','TimeslotCharacteristic','TimeslotToMoment',
+ 'TimeslotToString','TimeZoneOffset','VariableConstraints','PageOpen','PageOpenSingle','PageClose',
+ 'PageGetActive','PageSetFocus','PageGetFocus','PageSetCursor','PageRefreshAll','PageGetChild',
+ 'PageGetParent','PageGetNext','PageGetPrevious','PageGetNextInTreeWalk','PageGetUsedIdentifiers',
+ 'PageGetTitle','PageGetAll','PageCopyTableToClipboard','PageCopyTableToExcel','PrintPage',
+ 'PrintPageCount','PrintStartReport','PrintEndReport','PivotTableReloadState','PivotTableSaveState',
+ 'PivotTableDeleteState','FileSelect','FileSelectNew','FileDelete','FileExists','FileCopy',
+ 'FileMove','FileView','FileEdit','FilePrint','FileTime','FileTouch','FileAppend','FileGetSize',
+ 'DirectorySelect','DirectoryCreate','DirectoryDelete','DirectoryExists','DirectoryCopy',
+ 'DirectoryMove','DirectoryGetCurrent','DialogProgress','DialogMessage','DialogError',
+ 'StatusMessage','DialogAsk','DialogGetString','DialogGetDate','DialogGetNumber','DialogGetElement',
+ 'DialogGetElementByText','DialogGetElementByData','DialogGetPassword','DialogGetColor','CaseNew',
+ 'CaseFind','CaseCreate','CaseLoadCurrent','CaseMerge','CaseLoadIntoCurrent','CaseSelect',
+ 'CaseSelectNew','CaseSetCurrent','CaseSave','CaseSaveAll','CaseSaveAs','CaseSelectMultiple',
+ 'CaseGetChangedStatus','CaseSetChangedStatus','CaseDelete','CaseGetType','CaseGetDatasetReference',
+ 'CaseWriteToSingleFile','CaseReadFromSingleFile','DatasetNew','DatasetFind','DatasetCreate',
+ 'DatasetLoadCurrent','DatasetMerge','DatasetLoadIntoCurrent','DatasetSelect','DatasetSelectNew',
+ 'DatasetSetCurrent','DatasetSave','DatasetSaveAll','DatasetSaveAs','DatasetGetChangedStatus',
+ 'DatasetSetChangedStatus','DatasetDelete','DatasetGetCategory','DataFileGetName',
+ 'DataFileGetAcronym','DataFileSetAcronym','DataFileGetComment','DataFileSetComment',
+ 'DataFileGetPath','DataFileGetTime','DataFileGetOwner','DataFileGetGroup','DataFileReadPermitted',
+ 'DataFileWritePermitted','DataFileExists','DataFileCopy','DataCategoryContents','CaseTypeContents',
+ 'CaseTypeCategories','Execute','OpenDocument','TestInternetConnection','GeoFindCoordinates',
+ 'ShowHelpTopic','Delay','ScheduleAt','ExitAimms','SessionArgument','SessionHasVisibleGUI',
+ 'ProjectDeveloperMode','DebuggerBreakpoint','ShowProgressWindow','ShowMessageWindow',
+ 'SolverGetControl','SolverReleaseControl','ProfilerStart','DataManagerImport','DataManagerExport',
+ 'DataManagerFileNew','DataManagerFileOpen','DataManagerFileGetCurrent','DataImport220',
+ 'SecurityGetUsers','SecurityGetGroups','UserColorAdd','UserColorDelete','UserColorGetRGB',
+ 'UserColorModify','LicenseNumber','LicenseType','LicenseStartDate','LicenseExpirationDate',
+ 'LicenseMaintenanceExpirationDate','VARLicenseExpirationDate','AimmsRevisionString',
+ 'VARLicenseCreate','HistogramCreate','HistogramDelete','HistogramSetDomain',
+ 'HistogramAddObservation','HistogramGetFrequencies','HistogramGetBounds',
+ 'HistogramGetObservationCount','HistogramGetAverage','HistogramGetDeviation',
+ 'HistogramGetSkewness','HistogramGetKurtosis','DateDifferenceDays','DateDifferenceYearFraction',
+ 'PriceFractional','PriceDecimal','RateEffective','RateNominal','DepreciationLinearLife',
+ 'DepreciationLinearRate','DepreciationNonLinearSumOfYear','DepreciationNonLinearLife',
+ 'DepreciationNonLinearFactor','DepreciationNonLinearRate','DepreciationSum',
+ 'InvestmentConstantPresentValue','InvestmentConstantFutureValue',
+ 'InvestmentConstantPeriodicPayment','InvestmentConstantInterestPayment',
+ 'InvestmentConstantPrincipalPayment','InvestmentConstantCumulativePrincipalPayment',
+ 'InvestmentConstantCumulativeInterestPayment','InvestmentConstantNumberPeriods',
+ 'InvestmentConstantRateAll','InvestmentConstantRate','InvestmentVariablePresentValue',
+ 'InvestmentVariablePresentValueInperiodic','InvestmentSingleFutureValue',
+ 'InvestmentVariableInternalRateReturnAll','InvestmentVariableInternalRateReturn',
+ 'InvestmentVariableInternalRateReturnInperiodicAll','InvestmentVariableInternalRateReturnInperiodic',
+ 'InvestmentVariableInternalRateReturnModified','SecurityDiscountedPrice',
+ 'SecurityDiscountedRedemption','SecurityDiscountedYield','SecurityDiscountedRate',
+ 'TreasuryBillPrice','TreasuryBillYield','TreasuryBillBondEquivalent','SecurityMaturityPrice',
+ 'SecurityMaturityCouponRate','SecurityMaturityYield','SecurityMaturityAccruedInterest',
+ 'SecurityCouponNumber','SecurityCouponPreviousDate','SecurityCouponNextDate','SecurityCouponDays',
+ 'SecurityCouponDaysPreSettlement','SecurityCouponDaysPostSettlement','SecurityPeriodicPrice',
+ 'SecurityPeriodicRedemption','SecurityPeriodicCouponRate','SecurityPeriodicYieldAll',
+ 'SecurityPeriodicYield','SecurityPeriodicAccruedInterest','SecurityPeriodicDuration',
+ 'SecurityPeriodicDurationModified','Abs','AtomicUnit','Ceil','Character','CharacterNumber','Cube',
+ 'Degrees','Div','Exp','FileRead','Floor','Log','Log10','Mapval','Max','Min','Mod','Power',
+ 'Radians','Round','Sign','Sqr','Sqrt','StringCapitalize','StringLength','StringToLower',
+ 'StringToUnit','StringToUpper','SubString','Trunc','Binomial','NegativeBinomial','Poisson',
+ 'Geometric','HyperGeometric','Uniform','Normal','LogNormal','Triangular','Exponential','Weibull',
+ 'Beta','Gamma','Logistic','Pareto','ExtremeValue','Precision','Factorial','Combination',
+ 'Permutation','Errorf','Cos','Sin','Tan','ArcCos','ArcSin','ArcTan','Cosh','Sinh','Tanh',
+ 'ArcCosh','ArcSinh','ArcTanh'
+ )
+ ),
+ 'SYMBOLS' => array(
+ 0 => array(
+ '(', ')', '[', ']', '{', '}',
+ '%', '&', '|', '/',
+ '<', '>', '>=' , '<=', ':=',
+ '=', '-', '+', '*',
+ '.', ','
+ )
+ ),
+ 'CASE_SENSITIVE' => array(
+ GESHI_COMMENTS => false,
+ 1 => false,
+ 2 => false,
+ 3 => false,
+ 4 => false
+ ),
+ 'STYLES' => array(
+ 'KEYWORDS' => array(
+ 1 => 'color: #0000FF;',
+ 2 => 'color: #000000; font-weight: bold;',
+ 3 => 'color: #404040;',
+ 4 => 'color: #990000; font-weight: bold;'
+ ),
+ 'BRACKETS' => array(
+ 0 => 'color: #009900;'
+ ),
+ 'STRINGS' => array(
+ 0 => 'color: #808080; font-style: italic ',
+ 'HARD' => 'color: #808080; font-style: italic'
+ ),
+ 'NUMBERS' => array(
+ 0 => 'color: #cc66cc;',
+ GESHI_NUMBER_OCT_PREFIX => 'color: #208080;',
+ GESHI_NUMBER_HEX_PREFIX => 'color: #208080;',
+ GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;',
+ ),
+ 'COMMENTS' => array(
+ 1 => 'color: #008000; font-style: italic;',
+ 'MULTI' => 'color: #008000; font-style: italic;'
+ ),
+
+ 'METHODS' => array(
+ 1 => 'color: #004000;',
+ 2 => 'color: #004000;'
+ ),
+ 'SYMBOLS' => array(
+ 0 => 'color: #339933;',
+ 1 => 'color: #000000; font-weight: bold;'
+ ),
+ 'REGEXPS' => array(
+ ),
+ 'SCRIPT' => array(
+ 0 => '',
+ 1 => '',
+ 2 => '',
+ 3 => '',
+ 4 => '',
+ 5 => ''
+ ),
+ 'ESCAPE_CHAR' => array()
+ ),
+ 'URLS' => array(
+ 1 => '',
+ 2 => '',
+ 3 => '',
+ 4 => ''
+ ),
+ 'OOLANG' => false,
+ 'TAB_WIDTH' => 4
+);
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/algol68.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/algol68.php
index 5b1e5aa7..2aadb0ce 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/algol68.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/algol68.php
@@ -4,7 +4,7 @@
* --------
* Author: Neville Dempsey (NevilleD.sourceforge@sgr-a.net)
* Copyright: (c) 2010 Neville Dempsey (https://sourceforge.net/projects/algol68/files/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2010/04/24
*
* ALGOL 68 language file for GeSHi.
@@ -89,14 +89,14 @@ if(!function_exists('geshi_langfile_algol68_vars')) {
# for some reason ".0 e - 2" is not recognised, but ".0 e + 2" IS!
# work around: remove spaces between sign and digits! Maybe because
# of the Unary '-' Operator
- $sign_="(?:-|\-|[-]|[\-]|\+|)"; # attempts #
+ $sign_="(?:-|\-|[-]|[\-]|\+|)"; # attempts # // FIXME: This should be used or removed. Assignment beneath
$sign_="(?:-\s*|\+\s*|)"; # n.b. sign is followed by white space #
$_int=$sign_.$_dec;
$il= $_int; # +_9 #
- $GESHI_NUMBER_INT_BASIC='(?:(?<![0-9a-z_\.%])|(?<=\.\.))(?<![\d\.]e[+\-])([1-9]\d*?|0)(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)';
+ //$GESHI_NUMBER_INT_BASIC='(?:(?<![0-9a-z_\.%])|(?<=\.\.))(?<![\d\.]e[+\-])([1-9]\d*?|0)(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)';
# Define REAL: #
$prereal=$pre; $postreal=$post;
@@ -326,4 +326,3 @@ $language_data = array(
);
unset($a68);
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/apache.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/apache.php
index c944443c..799f2501 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/apache.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/apache.php
@@ -4,7 +4,7 @@
* ----------
* Author: Tux (tux@inmail.cz)
* Copyright: (c) 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/29/07
*
* Apache language file for GeSHi.
@@ -479,5 +479,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/applescript.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/applescript.php
index 603fa4a3..fae9bb80 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/applescript.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/applescript.php
@@ -4,7 +4,7 @@
* --------
* Author: Stephan Klimek (http://www.initware.org)
* Copyright: Stephan Klimek (http://www.initware.org)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2005/07/20
*
* AppleScript language file for GeSHi.
@@ -153,5 +153,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/apt_sources.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/apt_sources.php
index 9f1ed045..f270ea3d 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/apt_sources.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/apt_sources.php
@@ -4,7 +4,7 @@
* ----------
* Author: Milian Wolff (mail@milianw.de)
* Copyright: (c) 2008 Milian Wolff (http://milianw.de)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2008/06/17
*
* Apt sources.list language file for GeSHi.
@@ -55,7 +55,7 @@ $language_data = array (
'stable/updates',
//Debian
'buzz', 'rex', 'bo', 'hamm', 'slink', 'potato', 'woody', 'sarge',
- 'etch', 'lenny', 'wheezy', 'sid',
+ 'etch', 'lenny', 'wheezy', 'jessie', 'sid',
//Ubuntu
'warty', 'warty-updates', 'warty-security', 'warty-proposed', 'warty-backports',
'hoary', 'hoary-updates', 'hoary-security', 'hoary-proposed', 'hoary-backports',
@@ -69,13 +69,20 @@ $language_data = array (
'jaunty', 'jaunty-updates', 'jaunty-security', 'jaunty-proposed', 'jaunty-backports',
'karmic', 'karmic-updates', 'karmic-security', 'karmic-proposed', 'karmic-backports',
'lucid', 'lucid-updates', 'lucid-security', 'lucid-proposed', 'lucid-backports',
- 'maverick', 'maverick-updates', 'maverick-security', 'maverick-proposed', 'maverick-backports'
+ 'maverick', 'maverick-updates', 'maverick-security', 'maverick-proposed', 'maverick-backports',
+ 'natty', 'natty-updates', 'natty-security', 'natty-proposed', 'natty-backports',
+ 'oneiric', 'oneiric-updates', 'oneiric-security', 'oneiric-proposed', 'oneiric-backports',
+ 'precise', 'precise-updates', 'precise-security', 'precise-proposed', 'precise-backports',
+ 'quantal', 'quantal-updates', 'quantal-security', 'quantal-proposed', 'quantal-backports',
+ 'raring', 'raring-updates', 'raring-security', 'raring-proposed', 'raring-backports',
+ 'saucy', 'saucy-updates', 'saucy-security', 'saucy-proposed', 'saucy-backports',
+ 'trusty', 'trusty-updates', 'trusty-security', 'trusty-proposed', 'trusty-backports'
),
3 => array(
'main', 'restricted', 'preview', 'contrib', 'non-free',
'commercial', 'universe', 'multiverse'
)
- ),
+ ),
'REGEXPS' => array(
0 => "(((http|ftp):\/\/|file:\/)[^\s]+)|(cdrom:\[[^\]]*\][^\s]*)",
),
@@ -144,5 +151,3 @@ $language_data = array (
),
'TAB_WIDTH' => 4
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/arm.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/arm.php
index 8e3c0a37..dd2870cd 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/arm.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/arm.php
@@ -4,7 +4,7 @@
* -------
* Author: Marat Dukhan (mdukhan3.at.gatech.dot.edu)
* Copyright: (c) Marat Dukhan (mdukhan3.at.gatech.dot.edu)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2011/10/06
*
* ARM Assembler language file for GeSHi.
@@ -3314,5 +3314,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/asm.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/asm.php
index dd0a7ec5..b602830f 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/asm.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/asm.php
@@ -8,7 +8,7 @@
* 2009-2011 Benny Baumann (http://qbnz.com/highlighter),
* 2011 Dennis Yurichev (dennis@conus.info),
* 2011 Marat Dukhan (mdukhan3.at.gatech.dot.edu)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/07/27
*
* x86 Assembler language file for GeSHi.
@@ -599,5 +599,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/asp.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/asp.php
index 0096a169..c68ba07b 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/asp.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/asp.php
@@ -4,7 +4,7 @@
* --------
* Author: Amit Gupta (http://blog.igeek.info/)
* Copyright: (c) 2004 Amit Gupta (http://blog.igeek.info/), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/08/13
*
* ASP language file for GeSHi.
@@ -160,5 +160,3 @@ $language_data = array (
3 => true
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/asymptote.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/asymptote.php
index 8683588e..1c5c56a1 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/asymptote.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/asymptote.php
@@ -4,7 +4,7 @@
* -------------
* Author: Manuel Yguel (manuel.yguel.robotics@gmail.com)
* Copyright: (c) 2012 Manuel Yguel (http://manuelyguel.eu)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2012/05/24
*
* asymptote language file for GeSHi.
@@ -190,5 +190,3 @@ $language_data = array(
)
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/autoconf.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/autoconf.php
index 7a0f1ee9..ec1cd0a6 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/autoconf.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/autoconf.php
@@ -4,7 +4,7 @@
* -----
* Author: Mihai Vasilian (grayasm@gmail.com)
* Copyright: (c) 2010 Mihai Vasilian
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2010/01/25
*
* autoconf language file for GeSHi.
@@ -508,5 +508,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/autohotkey.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/autohotkey.php
index 970684da..f6318af9 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/autohotkey.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/autohotkey.php
@@ -4,7 +4,7 @@
* --------
* Author: Naveen Garg (naveen.garg@gmail.com)
* Copyright: (c) 2009 Naveen Garg and GeSHi
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2009/06/11
*
* Autohotkey language file for GeSHi.
@@ -369,5 +369,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/autoit.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/autoit.php
index ab401b4c..e794102e 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/autoit.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/autoit.php
@@ -4,7 +4,7 @@
* --------
* Author: big_daddy (robert.i.anthony@gmail.com)
* Copyright: (c) 2006 and to GESHi ;)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2006/01/26
*
* AutoIT language file for GeSHi.
@@ -1171,5 +1171,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/avisynth.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/avisynth.php
index 88f66288..f259b5c4 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/avisynth.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/avisynth.php
@@ -4,7 +4,7 @@
* --------
* Author: Ryan Jones (sciguyryan@gmail.com)
* Copyright: (c) 2008 Ryan Jones
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2008/10/08
*
* AviSynth language file for GeSHi.
@@ -191,4 +191,3 @@ $language_data = array (
),
'TAB_WIDTH' => 4
);
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/awk.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/awk.php
index 1ec239b7..d1bc141f 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/awk.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/awk.php
@@ -4,7 +4,7 @@
* -------
* Author: George Pollard (porges@porg.es)
* Copyright: (c) 2009 George Pollard
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2009/01/28
*
* Awk language file for GeSHi.
@@ -154,5 +154,3 @@ $language_data = array (
'SCRIPT_DELIMITERS' => array (),
'HIGHLIGHT_STRICT_BLOCK' => array()
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/bascomavr.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/bascomavr.php
index 864f74e8..d913135a 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/bascomavr.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/bascomavr.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: aquaticus.info
* Copyright: (c) 2008 aquaticus.info
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2008/01/09
*
* BASCOM AVR language file for GeSHi.
@@ -181,5 +181,3 @@ $language_data = array (
),
'TAB_WIDTH' => 4
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/bash.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/bash.php
index c69f0054..e81b75a3 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/bash.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/bash.php
@@ -4,7 +4,7 @@
* --------
* Author: Andreas Gohr (andi@splitbrain.org)
* Copyright: (c) 2004 Andreas Gohr, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/08/20
*
* BASH language file for GeSHi.
@@ -132,7 +132,16 @@ $language_data = array (
'apt-src remove', 'apt-src update', 'apt-src upgrade',
'apt-src version',
- 'basename', 'bash', 'bc', 'bison', 'bunzip2', 'bzcat',
+ 'aptitude autoclean', 'aptitude build-dep', 'aptitude changelog',
+ 'aptitude clean', 'aptitude download', 'aptitude forbid-version',
+ 'aptitude forget-new', 'aptitude full-upgrade', 'aptitude hold',
+ 'aptitude install', 'aptitude markauto', 'aptitude purge',
+ 'aptitude reinstall', 'aptitude remove', 'aptitude safe-upgrade',
+ 'aptitude search', 'aptitude show', 'aptitude unhold',
+ 'aptitude unmarkauto', 'aptitude update', 'aptitude versions',
+ 'aptitude why', 'aptitude why-not',
+
+ 'basename', 'bash', 'batctl', 'bc', 'bison', 'bunzip2', 'bzcat',
'bzcmp', 'bzdiff', 'bzegrep', 'bzfgrep', 'bzgrep',
'bzip2', 'bzip2recover', 'bzless', 'bzmore',
@@ -160,7 +169,7 @@ $language_data = array (
'false', 'fbset', 'fdisk', 'ffmpeg', 'fgconsole','fgrep', 'file',
'find', 'flex', 'flex++', 'fmt', 'free', 'ftp', 'funzip', 'fuser',
- 'g++', 'gawk', 'gc','gcc', 'gdb', 'getent', 'getkeycodes',
+ 'g++', 'gawk', 'gc','gcc', 'gdb', 'gdisk', 'getent', 'getkeycodes',
'getopt', 'gettext', 'gettextize', 'gimp', 'gimp-remote',
'gimptool', 'gmake', 'gocr', 'grep', 'groups', 'gs', 'gunzip',
'gzexe', 'gzip',
@@ -176,7 +185,7 @@ $language_data = array (
'git difftool--helper', 'git diff-tree', 'git fast-export',
'git fast-import', 'git fetch', 'git fetch-pack',
'git filter-branch', 'git fmt-merge-msg', 'git for-each-ref',
- 'git format-patch', 'git fsck', 'git fsck-objects', 'git gc',
+ 'git format-patch', 'git fsck', 'git fsck-objects', 'git gc', 'git gui',
'git get-tar-commit-id', 'git grep', 'git hash-object', 'git help',
'git http-backend', 'git http-fetch', 'git http-push',
'git imap-send', 'git index-pack', 'git init', 'git init-db',
@@ -247,14 +256,14 @@ $language_data = array (
'git-web--browse', 'git-whatchanged', 'gitwhich', 'gitwipe',
'git-write-tree', 'gitxgrep',
- 'head', 'hexdump', 'hostname',
+ 'head', 'hexdump', 'hostname', 'htop',
'id', 'ifconfig', 'ifdown', 'ifup', 'igawk', 'install',
'ip', 'ip addr', 'ip addrlabel', 'ip link', 'ip maddr', 'ip mroute',
'ip neigh', 'ip route', 'ip rule', 'ip tunnel', 'ip xfrm',
- 'join',
+ 'jar', 'java', 'javac', 'join',
'kbd_mode','kbdrate', 'kdialog', 'kfile', 'kill', 'killall',
@@ -271,10 +280,11 @@ $language_data = array (
'od', 'openvt',
- 'passwd', 'patch', 'pcregrep', 'pcretest', 'perl', 'perror',
- 'pgawk', 'pidof', 'ping', 'pr', 'procmail', 'prune', 'ps', 'pstree',
- 'ps2ascii', 'ps2epsi', 'ps2frag', 'ps2pdf', 'ps2ps', 'psbook',
- 'psmerge', 'psnup', 'psresize', 'psselect', 'pstops',
+ 'passwd', 'patch', 'pbzip2', 'pcregrep', 'pcretest', 'perl',
+ 'perror', 'pgawk', 'pidof', 'pigz', 'ping', 'pr', 'procmail',
+ 'prune', 'ps', 'pstree', 'ps2ascii', 'ps2epsi', 'ps2frag',
+ 'ps2pdf', 'ps2ps', 'psbook', 'psmerge', 'psnup', 'psresize',
+ 'psselect', 'pstops',
'rbash', 'rcs', 'rcs2log', 'read', 'readlink', 'red', 'resizecons',
'rev', 'rm', 'rmdir', 'rsh', 'run-parts',
@@ -283,7 +293,7 @@ $language_data = array (
'setkeycodes', 'setleds', 'setmetamode', 'setserial', 'setterm',
'sh', 'showkey', 'shred', 'size', 'size86', 'skill', 'sleep',
'slogin', 'snice', 'sort', 'sox', 'split', 'ssed', 'ssh', 'ssh-add',
- 'ssh-agent', 'ssh-keygen', 'ssh-keyscan', 'stat', 'strace',
+ 'ssh-agent', 'ssh-keygen', 'ssh-keyscan', 'sshfs', 'stat', 'strace',
'strings', 'strip', 'stty', 'su', 'sudo', 'suidperl', 'sum', 'svn',
'svnadmin', 'svndumpfilter', 'svnlook', 'svnmerge', 'svnmucc',
'svnserve', 'svnshell', 'svnsync', 'svnversion', 'svnwrap', 'sync',
@@ -291,16 +301,40 @@ $language_data = array (
'svn add', 'svn ann', 'svn annotate', 'svn blame', 'svn cat',
'svn changelist', 'svn checkout', 'svn ci', 'svn cl', 'svn cleanup',
'svn co', 'svn commit', 'svn copy', 'svn cp', 'svn del',
- 'svn delete', 'svn di', 'svn diff', 'svn export', 'svn h',
- 'svn help', 'svn import', 'svn info', 'svn list', 'svn lock',
- 'svn log', 'svn ls', 'svn merge', 'svn mergeinfo', 'svn mkdir',
- 'svn move', 'svn mv', 'svn pd', 'svn pdel', 'svn pe', 'svn pedit',
+ 'svn delete', 'svn di', 'svn diff', 'svn export', 'svn help',
+ 'svn import', 'svn info', 'svn list', 'svn lock', 'svn log',
+ 'svn ls', 'svn merge', 'svn mergeinfo', 'svn mkdir', 'svn move',
+ 'svn mv', 'svn patch', 'svn pd', 'svn pdel', 'svn pe', 'svn pedit',
'svn pg', 'svn pget', 'svn pl', 'svn plist', 'svn praise',
'svn propdel', 'svn propedit', 'svn propget', 'svn proplist',
- 'svn propset', 'svn ps', 'svn pset', 'svn remove', 'svn ren',
+ 'svn propset', 'svn ps', 'svn pset', 'svn relocate', 'svn remove',
'svn rename', 'svn resolve', 'svn resolved', 'svn revert', 'svn rm',
'svn st', 'svn stat', 'svn status', 'svn sw', 'svn switch',
- 'svn unlock', 'svn up', 'svn update',
+ 'svn unlock', 'svn up', 'svn update', 'svn upgrade',
+
+ 'svnadmin crashtest', 'svnadmin create', 'svnadmin deltify',
+ 'svnadmin dump', 'svnadmin help', 'svnadmin hotcopy',
+ 'svnadmin list-dblogs', 'svnadmin list-unused-dblogs',
+ 'svnadmin load', 'svnadmin lslocks', 'svnadmin lstxns',
+ 'svnadmin pack', 'svnadmin recover', 'svnadmin rmlocks',
+ 'svnadmin rmtxns', 'svnadmin setlog', 'svnadmin setrevprop',
+ 'svnadmin setuuid', 'svnadmin upgrade', 'svnadmin verify',
+
+ 'svndumpfilter exclude', 'svndumpfilter help',
+ 'svndumpfilter include',
+
+ 'svnlook author', 'svnlook cat', 'svnlook changed', 'svnlook date',
+ 'svnlook diff', 'svnlook dirs-changed', 'svnlook filesize',
+ 'svnlook help', 'svnlook history', 'svnlook info', 'svnlook lock',
+ 'svnlook log', 'svnlook pg', 'svnlook pget', 'svnlook pl',
+ 'svnlook plist', 'svnlook propget', 'svnlook proplist',
+ 'svnlook tree', 'svnlook uuid', 'svnlook youngest',
+
+ 'svnrdump dump', 'svnrdump help', 'svnrdump load',
+
+ 'svnsync copy-revprops', 'svnsync help', 'svnsync info',
+ 'svnsync init', 'svnsync initialize', 'svnsync sync',
+ 'svnsync synchronize',
'tac', 'tail', 'tar', 'tee', 'tempfile', 'touch', 'tr', 'tree',
'true',
@@ -436,5 +470,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/basic4gl.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/basic4gl.php
index 35c92740..b0574cec 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/basic4gl.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/basic4gl.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: Matthew Webb (bmatthew1@blueyonder.co.uk)
* Copyright: (c) 2004 Matthew Webb (http://matthew-4gl.wikispaces.com)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2007/09/15
*
* Basic4GL language file for GeSHi.
@@ -337,5 +337,3 @@ $language_data = array (
),
'TAB_WIDTH' => 4
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/bf.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/bf.php
index c06ca5bf..023c059a 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/bf.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/bf.php
@@ -4,7 +4,7 @@
* ----------
* Author: Benny Baumann (BenBE@geshi.org)
* Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2009/10/31
*
* Brainfuck language file for GeSHi.
@@ -111,5 +111,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/bibtex.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/bibtex.php
index 51cb4ceb..5afecbfa 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/bibtex.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/bibtex.php
@@ -4,7 +4,7 @@
* -----
* Author: Quinn Taylor (quinntaylor@mac.com)
* Copyright: (c) 2009 Quinn Taylor (quinntaylor@mac.com), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2009/04/29
*
* BibTeX language file for GeSHi.
@@ -179,5 +179,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/blitzbasic.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/blitzbasic.php
index 1d3c08d0..8ea60632 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/blitzbasic.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/blitzbasic.php
@@ -4,7 +4,7 @@
* --------------
* Author: P�draig O`Connel (info@moonsword.info)
* Copyright: (c) 2005 P�draig O`Connel (http://moonsword.info)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 16.10.2005
*
* BlitzBasic language file for GeSHi.
@@ -181,5 +181,3 @@ $language_data = array (
1 => false
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/bnf.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/bnf.php
index ca15cf9e..0fe98d11 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/bnf.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/bnf.php
@@ -4,7 +4,7 @@
* --------
* Author: Rowan Rodrik van der Molen (rowan@bigsmoke.us)
* Copyright: (c) 2006 Rowan Rodrik van der Molen (http://www.bigsmoke.us/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2006/09/28
*
* BNF (Backus-Naur form) language file for GeSHi.
@@ -115,5 +115,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/boo.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/boo.php
index b68d442f..862881a5 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/boo.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/boo.php
@@ -4,7 +4,7 @@
* --------
* Author: Marcus Griep (neoeinstein+GeSHi@gmail.com)
* Copyright: (c) 2007 Marcus Griep (http://www.xpdm.us)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2007/09/10
*
* Boo language file for GeSHi.
@@ -213,5 +213,3 @@ $language_data = array (
),
'TAB_WIDTH' => 4
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/c.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/c.php
index 35d5b019..9dbe6104 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/c.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/c.php
@@ -7,7 +7,7 @@
* - Jack Lloyd (lloyd@randombit.net)
* - Michael Mol (mikemol@gmail.com)
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/06/04
*
* C language file for GeSHi.
@@ -277,5 +277,3 @@ $language_data = array (
),
'TAB_WIDTH' => 4
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/c_loadrunner.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/c_loadrunner.php
index 42b3d772..12c60df0 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/c_loadrunner.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/c_loadrunner.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: Stuart Moncrieff (stuart at myloadtest dot com)
* Copyright: (c) 2010 Stuart Moncrieff (http://www.myloadtest.com/loadrunner-syntax-highlighter/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2010-07-25
*
* C (for LoadRunner) language file for GeSHi.
@@ -319,5 +319,3 @@ $language_data = array (
// Note that if you are using <pre> tags for your code, then the browser chooses how many spaces your tabs will translate to.
'TAB_WIDTH' => 4
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/c_mac.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/c_mac.php
index 41c21ce5..94131a57 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/c_mac.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/c_mac.php
@@ -4,7 +4,7 @@
* ---------
* Author: M. Uli Kusterer (witness.of.teachtext@gmx.net)
* Copyright: (c) 2004 M. Uli Kusterer, Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/06/04
*
* C for Macs language file for GeSHi.
@@ -223,5 +223,3 @@ $language_data = array (
),
'TAB_WIDTH' => 4
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/c_winapi.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/c_winapi.php
new file mode 100644
index 00000000..69cad2a7
--- /dev/null
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/c_winapi.php
@@ -0,0 +1,870 @@
+<?php
+/*************************************************************************************
+ * c_winapi.php
+ * -----
+ * Author: Benny Baumann (BenBE@geshi.org)
+ * Contributors:
+ * - Jack Lloyd (lloyd@randombit.net)
+ * - Michael Mol (mikemol@gmail.com)
+ * Copyright: (c) 2012 Benny Baumann (http://qbnz.com/highlighter/)
+ * Release Version: 1.0.8.12
+ * Date Started: 2012/08/12
+ *
+ * C (WinAPI) language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2009/01/22 (1.0.8.3)
+ * - Made keywords case-sensitive.
+ * 2008/05/23 (1.0.7.22)
+ * - Added description of extra language features (SF#1970248)
+ * 2004/XX/XX (1.0.4)
+ * - Added a couple of new keywords (Jack Lloyd)
+ * 2004/11/27 (1.0.3)
+ * - Added support for multiple object splitters
+ * 2004/10/27 (1.0.2)
+ * - Added support for URLs
+ * 2004/08/05 (1.0.1)
+ * - Added support for symbols
+ * 2004/07/14 (1.0.0)
+ * - First Release
+ *
+ * TODO (updated 2009/02/08)
+ * -------------------------
+ * - Get a list of inbuilt functions to add (and explore C more
+ * to complete this rather bare language file
+ *
+ *************************************************************************************
+ *
+ * This file is part of GeSHi.
+ *
+ * GeSHi is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * GeSHi is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GeSHi; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ ************************************************************************************/
+
+$language_data = array (
+ 'LANG_NAME' => 'C (WinAPI)',
+ 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
+ 'COMMENT_MULTI' => array('/*' => '*/'),
+ 'COMMENT_REGEXP' => array(
+ //Multiline-continued single-line comments
+ 1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m',
+ //Multiline-continued preprocessor define
+ 2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m'
+ ),
+ 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
+ 'QUOTEMARKS' => array("'", '"'),
+ 'ESCAPE_CHAR' => '',
+ 'ESCAPE_REGEXP' => array(
+ //Simple Single Char Escapes
+ 1 => "#\\\\[\\\\abfnrtv\'\"?\n]#i",
+ //Hexadecimal Char Specs
+ 2 => "#\\\\x[\da-fA-F]{2}#",
+ //Hexadecimal Char Specs
+ 3 => "#\\\\u[\da-fA-F]{4}#",
+ //Hexadecimal Char Specs
+ 4 => "#\\\\U[\da-fA-F]{8}#",
+ //Octal Char Specs
+ 5 => "#\\\\[0-7]{1,3}#"
+ ),
+ 'NUMBERS' =>
+ GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B |
+ GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI |
+ GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO,
+ 'KEYWORDS' => array(
+ 1 => array(
+ 'if', 'return', 'while', 'case', 'continue', 'default',
+ 'do', 'else', 'for', 'switch', 'goto'
+ ),
+ 2 => array(
+ 'null', 'false', 'break', 'true', 'function', 'enum', 'extern', 'inline'
+ ),
+ 3 => array(
+ // assert.h
+ 'assert',
+
+ //complex.h
+ 'cabs', 'cacos', 'cacosh', 'carg', 'casin', 'casinh', 'catan',
+ 'catanh', 'ccos', 'ccosh', 'cexp', 'cimag', 'cis', 'clog', 'conj',
+ 'cpow', 'cproj', 'creal', 'csin', 'csinh', 'csqrt', 'ctan', 'ctanh',
+
+ //ctype.h
+ 'digittoint', 'isalnum', 'isalpha', 'isascii', 'isblank', 'iscntrl',
+ 'isdigit', 'isgraph', 'islower', 'isprint', 'ispunct', 'isspace',
+ 'isupper', 'isxdigit', 'toascii', 'tolower', 'toupper',
+
+ //inttypes.h
+ 'imaxabs', 'imaxdiv', 'strtoimax', 'strtoumax', 'wcstoimax',
+ 'wcstoumax',
+
+ //locale.h
+ 'localeconv', 'setlocale',
+
+ //math.h
+ 'acos', 'asin', 'atan', 'atan2', 'ceil', 'cos', 'cosh', 'exp',
+ 'fabs', 'floor', 'frexp', 'ldexp', 'log', 'log10', 'modf', 'pow',
+ 'sin', 'sinh', 'sqrt', 'tan', 'tanh',
+
+ //setjmp.h
+ 'longjmp', 'setjmp',
+
+ //signal.h
+ 'raise',
+
+ //stdarg.h
+ 'va_arg', 'va_copy', 'va_end', 'va_start',
+
+ //stddef.h
+ 'offsetof',
+
+ //stdio.h
+ 'clearerr', 'fclose', 'fdopen', 'feof', 'ferror', 'fflush', 'fgetc',
+ 'fgetpos', 'fgets', 'fopen', 'fprintf', 'fputc', 'fputchar',
+ 'fputs', 'fread', 'freopen', 'fscanf', 'fseek', 'fsetpos', 'ftell',
+ 'fwrite', 'getc', 'getch', 'getchar', 'gets', 'perror', 'printf',
+ 'putc', 'putchar', 'puts', 'remove', 'rename', 'rewind', 'scanf',
+ 'setbuf', 'setvbuf', 'snprintf', 'sprintf', 'sscanf', 'tmpfile',
+ 'tmpnam', 'ungetc', 'vfprintf', 'vfscanf', 'vprintf', 'vscanf',
+ 'vsprintf', 'vsscanf',
+
+ //stdlib.h
+ 'abort', 'abs', 'atexit', 'atof', 'atoi', 'atol', 'bsearch',
+ 'calloc', 'div', 'exit', 'free', 'getenv', 'itoa', 'labs', 'ldiv',
+ 'ltoa', 'malloc', 'qsort', 'rand', 'realloc', 'srand', 'strtod',
+ 'strtol', 'strtoul', 'system',
+
+ //string.h
+ 'memchr', 'memcmp', 'memcpy', 'memmove', 'memset', 'strcat',
+ 'strchr', 'strcmp', 'strcoll', 'strcpy', 'strcspn', 'strerror',
+ 'strlen', 'strncat', 'strncmp', 'strncpy', 'strpbrk', 'strrchr',
+ 'strspn', 'strstr', 'strtok', 'strxfrm',
+
+ //time.h
+ 'asctime', 'clock', 'ctime', 'difftime', 'gmtime', 'localtime',
+ 'mktime', 'strftime', 'time',
+
+ //wchar.h
+ 'btowc', 'fgetwc', 'fgetws', 'fputwc', 'fputws', 'fwide',
+ 'fwprintf', 'fwscanf', 'getwc', 'getwchar', 'mbrlen', 'mbrtowc',
+ 'mbsinit', 'mbsrtowcs', 'putwc', 'putwchar', 'swprintf', 'swscanf',
+ 'ungetwc', 'vfwprintf', 'vswprintf', 'vwprintf', 'wcrtomb',
+ 'wcscat', 'wcschr', 'wcscmp', 'wcscoll', 'wcscpy', 'wcscspn',
+ 'wcsftime', 'wcslen', 'wcsncat', 'wcsncmp', 'wcsncpy', 'wcspbrk',
+ 'wcsrchr', 'wcsrtombs', 'wcsspn', 'wcsstr', 'wcstod', 'wcstok',
+ 'wcstol', 'wcstoul', 'wcsxfrm', 'wctob', 'wmemchr', 'wmemcmp',
+ 'wmemcpy', 'wmemmove', 'wmemset', 'wprintf', 'wscanf',
+
+ //wctype.h
+ 'iswalnum', 'iswalpha', 'iswcntrl', 'iswctype', 'iswdigit',
+ 'iswgraph', 'iswlower', 'iswprint', 'iswpunct', 'iswspace',
+ 'iswupper', 'iswxdigit', 'towctrans', 'towlower', 'towupper',
+ 'wctrans', 'wctype'
+ ),
+ 4 => array(
+ 'auto', 'char', 'const', 'double', 'float', 'int', 'long',
+ 'register', 'short', 'signed', 'sizeof', 'static', 'struct',
+ 'typedef', 'union', 'unsigned', 'void', 'volatile', 'wchar_t',
+
+ 'int8', 'int16', 'int32', 'int64',
+ 'uint8', 'uint16', 'uint32', 'uint64',
+
+ 'int_fast8_t', 'int_fast16_t', 'int_fast32_t', 'int_fast64_t',
+ 'uint_fast8_t', 'uint_fast16_t', 'uint_fast32_t', 'uint_fast64_t',
+
+ 'int_least8_t', 'int_least16_t', 'int_least32_t', 'int_least64_t',
+ 'uint_least8_t', 'uint_least16_t', 'uint_least32_t', 'uint_least64_t',
+
+ 'int8_t', 'int16_t', 'int32_t', 'int64_t',
+ 'uint8_t', 'uint16_t', 'uint32_t', 'uint64_t',
+
+ 'intmax_t', 'uintmax_t', 'intptr_t', 'uintptr_t',
+ 'size_t', 'off_t'
+ ),
+ // Public API
+ 5 => array(
+ 'AssignProcessToJobObject', 'CommandLineToArgvW', 'ConvertThreadToFiber',
+ 'CreateFiber', 'CreateJobObjectA', 'CreateJobObjectW', 'CreateProcessA',
+ 'CreateProcessAsUserA', 'CreateProcessAsUserW', 'CreateProcessW',
+ 'CreateRemoteThread', 'CreateThread', 'DeleteFiber', 'ExitProcess',
+ 'ExitThread', 'FreeEnvironmentStringsA', 'FreeEnvironmentStringsW',
+ 'GetCommandLineA', 'GetCommandLineW', 'GetCurrentProcess',
+ 'GetCurrentProcessId', 'GetCurrentThread', 'GetCurrentThreadId',
+ 'GetEnvironmentStringsA', 'GetEnvironmentStringsW',
+ 'GetEnvironmentVariableA', 'GetEnvironmentVariableW', 'GetExitCodeProcess',
+ 'GetExitCodeThread', 'GetGuiResources', 'GetPriorityClass',
+ 'GetProcessAffinityMask', 'GetProcessPriorityBoost',
+ 'GetProcessShutdownParameters', 'GetProcessTimes', 'GetProcessVersion',
+ 'GetProcessWorkingSetSize', 'GetStartupInfoA', 'GetStartupInfoW',
+ 'GetThreadPriority', 'GetThreadPriorityBoost', 'GetThreadTimes',
+ 'OpenJobObjectA', 'OpenJobObjectW', 'OpenProcess',
+ 'QueryInformationJobObject', 'ResumeThread', 'SetEnvironmentVariableA',
+ 'SetEnvironmentVariableW', 'SetInformationJobObject', 'SetPriorityClass',
+ 'SetProcessAffinityMask', 'SetProcessPriorityBoost',
+ 'SetProcessShutdownParameters', 'SetProcessWorkingSetSize',
+ 'SetThreadAffinityMask', 'SetThreadIdealProcessor', 'SetThreadPriority',
+ 'SetThreadPriorityBoost', 'Sleep', 'SleepEx', 'SuspendThread',
+ 'SwitchToFiber', 'SwitchToThread', 'TerminateJobObject', 'TerminateProcess',
+ 'TerminateThread', 'WaitForInputIdle', 'WinExec',
+
+ '_hread', '_hwrite', '_lclose', '_lcreat', '_llseek', '_lopen', '_lread',
+ '_lwrite', 'AreFileApisANSI', 'CancelIo', 'CopyFileA', 'CopyFileW',
+ 'CreateDirectoryA', 'CreateDirectoryExA', 'CreateDirectoryExW',
+ 'CreateDirectoryW', 'CreateFileA', 'CreateFileW', 'DeleteFileA',
+ 'DeleteFileW', 'FindClose', 'FindCloseChangeNotification',
+ 'FindFirstChangeNotificationA', 'FindFirstChangeNotificationW',
+ 'FindFirstFileA', 'FindFirstFileW', 'FindNextFileA', 'FindNextFileW',
+ 'FlushFileBuffers', 'GetCurrentDirectoryA', 'GetCurrentDirectoryW',
+ 'GetDiskFreeSpaceA', 'GetDiskFreeSpaceExA', 'GetDiskFreeSpaceExW',
+ 'GetDiskFreeSpaceW', 'GetDriveTypeA', 'GetDriveTypeW', 'GetFileAttributesA',
+ 'GetFileAttributesExA', 'GetFileAttributesExW', 'GetFileAttributesW',
+ 'GetFileInformationByHandle', 'GetFileSize', 'GetFileType',
+ 'GetFullPathNameA', 'GetFullPathNameW', 'GetLogicalDrives',
+ 'GetLogicalDriveStringsA', 'GetLogicalDriveStringsW', 'GetLongPathNameA',
+ 'GetLongPathNameW', 'GetShortPathNameA', 'GetShortPathNameW',
+ 'GetTempFileNameA', 'GetTempFileNameW', 'GetTempPathA', 'GetTempPathW',
+ 'LockFile', 'MoveFileA', 'MoveFileW', 'MulDiv', 'OpenFile',
+ 'QueryDosDeviceA', 'QueryDosDeviceW', 'ReadFile', 'ReadFileEx',
+ 'RemoveDirectoryA', 'RemoveDirectoryW', 'SearchPathA', 'SearchPathW',
+ 'SetCurrentDirectoryA', 'SetCurrentDirectoryW', 'SetEndOfFile',
+ 'SetFileApisToANSI', 'SetFileApisToOEM', 'SetFileAttributesA',
+ 'SetFileAttributesW', 'SetFilePointer', 'SetHandleCount',
+ 'SetVolumeLabelA', 'SetVolumeLabelW', 'UnlockFile', 'WriteFile',
+ 'WriteFileEx',
+
+ 'DeviceIoControl',
+
+ 'GetModuleFileNameA', 'GetModuleFileNameW', 'GetProcAddress',
+ 'LoadLibraryA', 'LoadLibraryExA', 'LoadLibraryExW', 'LoadLibraryW',
+ 'LoadModule',
+
+ 'GetPrivateProfileIntA', 'GetPrivateProfileIntW',
+ 'GetPrivateProfileSectionA', 'GetPrivateProfileSectionNamesA',
+ 'GetPrivateProfileSectionNamesW', 'GetPrivateProfileSectionW',
+ 'GetPrivateProfileStringA', 'GetPrivateProfileStringW',
+ 'GetPrivateProfileStructA', 'GetPrivateProfileStructW',
+ 'GetProfileIntA', 'GetProfileIntW', 'GetProfileSectionA',
+ 'GetProfileSectionW', 'GetProfileStringA', 'GetProfileStringW',
+ 'RegCloseKey', 'RegConnectRegistryA', 'RegConnectRegistryW',
+ 'RegCreateKeyA', 'RegCreateKeyExA', 'RegCreateKeyExW',
+ 'RegCreateKeyW', 'RegDeleteKeyA', 'RegDeleteKeyW', 'RegDeleteValueA',
+ 'RegDeleteValueW', 'RegEnumKeyA', 'RegEnumKeyExA', 'RegEnumKeyExW',
+ 'RegEnumKeyW', 'RegEnumValueA', 'RegEnumValueW', 'RegFlushKey',
+ 'RegGetKeySecurity', 'RegLoadKeyA', 'RegLoadKeyW',
+ 'RegNotifyChangeKeyValue', 'RegOpenKeyA', 'RegOpenKeyExA', 'RegOpenKeyExW',
+ 'RegOpenKeyW', 'RegOverridePredefKey', 'RegQueryInfoKeyA',
+ 'RegQueryInfoKeyW', 'RegQueryMultipleValuesA', 'RegQueryMultipleValuesW',
+ 'RegQueryValueA', 'RegQueryValueExA', 'RegQueryValueExW', 'RegQueryValueW',
+ 'RegReplaceKeyA', 'RegReplaceKeyW', 'RegRestoreKeyA', 'RegRestoreKeyW',
+ 'RegSaveKeyA', 'RegSaveKeyW', 'RegSetKeySecurity', 'RegSetValueA',
+ 'RegSetValueExA', 'RegSetValueExW', 'RegSetValueW', 'RegUnLoadKeyA',
+ 'RegUnLoadKeyW', 'WritePrivateProfileSectionA', 'WritePrivateProfileSectionW',
+ 'WritePrivateProfileStringA', 'WritePrivateProfileStringW',
+ 'WritePrivateProfileStructA', 'WritePrivateProfileStructW',
+ 'WriteProfileSectionA', 'WriteProfileSectionW', 'WriteProfileStringA',
+ 'WriteProfileStringW',
+
+ 'AccessCheck', 'AccessCheckAndAuditAlarmA', 'AccessCheckAndAuditAlarmW',
+ 'AccessCheckByType', 'AccessCheckByTypeAndAuditAlarmA',
+ 'AccessCheckByTypeAndAuditAlarmW', 'AccessCheckByTypeResultList',
+ 'AccessCheckByTypeResultListAndAuditAlarmA', 'AccessCheckByTypeResultListAndAuditAlarmW',
+ 'AddAccessAllowedAce', 'AddAccessAllowedAceEx', 'AddAccessAllowedObjectAce',
+ 'AddAccessDeniedAce', 'AddAccessDeniedAceEx', 'AddAccessDeniedObjectAce',
+ 'AddAce', 'AddAuditAccessAce', 'AddAuditAccessAceEx', 'AddAuditAccessObjectAce',
+ 'AdjustTokenGroups', 'AdjustTokenPrivileges', 'AllocateAndInitializeSid',
+ 'AllocateLocallyUniqueId', 'AreAllAccessesGranted', 'AreAnyAccessesGranted',
+ 'BuildExplicitAccessWithNameA', 'BuildExplicitAccessWithNameW',
+ 'BuildImpersonateExplicitAccessWithNameA', 'BuildImpersonateExplicitAccessWithNameW',
+ 'BuildImpersonateTrusteeA', 'BuildImpersonateTrusteeW', 'BuildSecurityDescriptorA',
+ 'BuildSecurityDescriptorW', 'BuildTrusteeWithNameA', 'BuildTrusteeWithNameW',
+ 'BuildTrusteeWithSidA', 'BuildTrusteeWithSidW',
+ 'ConvertToAutoInheritPrivateObjectSecurity', 'CopySid', 'CreatePrivateObjectSecurity',
+ 'CreatePrivateObjectSecurityEx', 'CreateRestrictedToken', 'DeleteAce',
+ 'DestroyPrivateObjectSecurity', 'DuplicateToken', 'DuplicateTokenEx',
+ 'EqualPrefixSid', 'EqualSid', 'FindFirstFreeAce', 'FreeSid', 'GetAce',
+ 'GetAclInformation', 'GetAuditedPermissionsFromAclA', 'GetAuditedPermissionsFromAclW',
+ 'GetEffectiveRightsFromAclA', 'GetEffectiveRightsFromAclW',
+ 'GetExplicitEntriesFromAclA', 'GetExplicitEntriesFromAclW', 'GetFileSecurityA',
+ 'GetFileSecurityW', 'GetKernelObjectSecurity', 'GetLengthSid', 'GetMultipleTrusteeA',
+ 'GetMultipleTrusteeOperationA', 'GetMultipleTrusteeOperationW', 'GetMultipleTrusteeW',
+ 'GetNamedSecurityInfoA', 'GetNamedSecurityInfoW', 'GetPrivateObjectSecurity',
+ 'GetSecurityDescriptorControl', 'GetSecurityDescriptorDacl',
+ 'GetSecurityDescriptorGroup', 'GetSecurityDescriptorLength',
+ 'GetSecurityDescriptorOwner', 'GetSecurityDescriptorSacl', 'GetSecurityInfo',
+ 'GetSidIdentifierAuthority', 'GetSidLengthRequired', 'GetSidSubAuthority',
+ 'GetSidSubAuthorityCount', 'GetTokenInformation', 'GetTrusteeFormA',
+ 'GetTrusteeFormW', 'GetTrusteeNameA', 'GetTrusteeNameW', 'GetTrusteeTypeA',
+ 'GetTrusteeTypeW', 'GetUserObjectSecurity', 'ImpersonateLoggedOnUser',
+ 'ImpersonateNamedPipeClient', 'ImpersonateSelf', 'InitializeAcl',
+ 'InitializeSecurityDescriptor', 'InitializeSid', 'IsTokenRestricted', 'IsValidAcl',
+ 'IsValidSecurityDescriptor', 'IsValidSid', 'LogonUserA', 'LogonUserW',
+ 'LookupAccountNameA', 'LookupAccountNameW', 'LookupAccountSidA', 'LookupAccountSidW',
+ 'LookupPrivilegeDisplayNameA', 'LookupPrivilegeDisplayNameW', 'LookupPrivilegeNameA',
+ 'LookupPrivilegeNameW', 'LookupPrivilegeValueA', 'LookupPrivilegeValueW',
+ 'LookupSecurityDescriptorPartsA', 'LookupSecurityDescriptorPartsW', 'MakeAbsoluteSD',
+ 'MakeSelfRelativeSD', 'MapGenericMask', 'ObjectCloseAuditAlarmA',
+ 'ObjectCloseAuditAlarmW', 'ObjectDeleteAuditAlarmA', 'ObjectDeleteAuditAlarmW',
+ 'ObjectOpenAuditAlarmA', 'ObjectOpenAuditAlarmW', 'ObjectPrivilegeAuditAlarmA',
+ 'ObjectPrivilegeAuditAlarmW', 'OpenProcessToken', 'OpenThreadToken', 'PrivilegeCheck',
+ 'PrivilegedServiceAuditAlarmA', 'PrivilegedServiceAuditAlarmW', 'RevertToSelf',
+ 'SetAclInformation', 'SetEntriesInAclA', 'SetEntriesInAclW', 'SetFileSecurityA',
+ 'SetFileSecurityW', 'SetKernelObjectSecurity', 'SetNamedSecurityInfoA',
+ 'SetNamedSecurityInfoW', 'SetPrivateObjectSecurity', 'SetPrivateObjectSecurityEx',
+ 'SetSecurityDescriptorControl', 'SetSecurityDescriptorDacl',
+ 'SetSecurityDescriptorGroup', 'SetSecurityDescriptorOwner',
+ 'SetSecurityDescriptorSacl', 'SetSecurityInfo', 'SetThreadToken',
+ 'SetTokenInformation', 'SetUserObjectSecurity', 'ChangeServiceConfig2A',
+ 'ChangeServiceConfig2W', 'ChangeServiceConfigA', 'ChangeServiceConfigW',
+ 'CloseServiceHandle', 'ControlService', 'CreateServiceA', 'CreateServiceW',
+ 'DeleteService', 'EnumDependentServicesA', 'EnumDependentServicesW',
+ 'EnumServicesStatusA', 'EnumServicesStatusW', 'GetServiceDisplayNameA',
+ 'GetServiceDisplayNameW', 'GetServiceKeyNameA', 'GetServiceKeyNameW',
+ 'LockServiceDatabase', 'NotifyBootConfigStatus', 'OpenSCManagerA', 'OpenSCManagerW',
+ 'OpenServiceA', 'OpenServiceW', 'QueryServiceConfig2A', 'QueryServiceConfig2W',
+ 'QueryServiceConfigA', 'QueryServiceConfigW', 'QueryServiceLockStatusA',
+ 'QueryServiceLockStatusW', 'QueryServiceObjectSecurity', 'QueryServiceStatus',
+ 'RegisterServiceCtrlHandlerA', 'RegisterServiceCtrlHandlerW',
+ 'SetServiceObjectSecurity', 'SetServiceStatus', 'StartServiceA',
+ 'StartServiceCtrlDispatcherA', 'StartServiceCtrlDispatcherW', 'StartServiceW',
+ 'UnlockServiceDatabase',
+
+ 'MultinetGetConnectionPerformanceA', 'MultinetGetConnectionPerformanceW',
+ 'NetAlertRaise', 'NetAlertRaiseEx', 'NetApiBufferAllocate', 'NetApiBufferFree',
+ 'NetApiBufferReallocate', 'NetApiBufferSize', 'NetConnectionEnum', 'NetFileClose',
+ 'NetFileGetInfo', 'NetGetAnyDCName', 'NetGetDCName', 'NetGetDisplayInformationIndex',
+ 'NetGroupAdd', 'NetGroupAddUser', 'NetGroupDel', 'NetGroupDelUser', 'NetGroupEnum',
+ 'NetGroupGetInfo', 'NetGroupGetUsers', 'NetGroupSetInfo', 'NetGroupSetUsers',
+ 'NetLocalGroupAdd', 'NetLocalGroupAddMember', 'NetLocalGroupAddMembers',
+ 'NetLocalGroupDel', 'NetLocalGroupDelMember', 'NetLocalGroupDelMembers',
+ 'NetLocalGroupEnum', 'NetLocalGroupGetInfo', 'NetLocalGroupGetMembers',
+ 'NetLocalGroupSetInfo', 'NetLocalGroupSetMembers', 'NetMessageBufferSend',
+ 'NetMessageNameAdd', 'NetMessageNameDel', 'NetMessageNameEnum',
+ 'NetMessageNameGetInfo', 'NetQueryDisplayInformation', 'NetRemoteComputerSupports',
+ 'NetRemoteTOd', 'NetReplExportDirAdd', 'NetReplExportDirDel', 'NetReplExportDirEnum',
+ 'NetReplExportDirGetInfo', 'NetReplExportDirLock', 'NetReplExportDirSetInfo',
+ 'NetReplExportDirUnlock', 'NetReplGetInfo', 'NetReplImportDirAdd',
+ 'NetReplImportDirDel', 'NetReplImportDirEnum', 'NetReplImportDirGetInfo',
+ 'NetReplImportDirLock', 'NetReplImportDirUnlock', 'NetReplSetInfo',
+ 'NetScheduleJobAdd', 'NetScheduleJobDel', 'NetScheduleJobEnum',
+ 'NetScheduleJobGetInfo', 'NetServerComputerNameAdd', 'NetServerComputerNameDel',
+ 'NetServerDiskEnum', 'NetServerEnum', 'NetServerEnumEx', 'NetServerGetInfo',
+ 'NetServerSetInfo', 'NetServerTransportAdd', 'NetServerTransportAddEx',
+ 'NetServerTransportDel', 'NetServerTransportEnum', 'NetSessionDel', 'NetSessionEnum',
+ 'NetSessionGetInfo', 'NetShareAdd', 'NetShareCheck', 'NetShareDel', 'NetShareEnum',
+ 'NetShareGetInfo', 'NetShareSetInfo', 'NetStatisticsGet', 'NetUseAdd', 'NetUseDel',
+ 'NetUseEnum', 'NetUseGetInfo', 'NetUserAdd', 'NetUserChangePassword', 'NetUserDel',
+ 'NetUserEnum', 'NetUserGetGroups', 'NetUserGetInfo', 'NetUserGetLocalGroups',
+ 'NetUserModalsGet', 'NetUserModalsSet', 'NetUserSetGroups', 'NetUserSetInfo',
+ 'NetWkstaGetInfo', 'NetWkstaSetInfo', 'NetWkstaTransportAdd', 'NetWkstaTransportDel',
+ 'NetWkstaTransportEnum', 'NetWkstaUserEnum', 'NetWkstaUserGetInfo',
+ 'NetWkstaUserSetInfo', 'WNetAddConnection2A', 'WNetAddConnection2W',
+ 'WNetAddConnection3A', 'WNetAddConnection3W', 'WNetAddConnectionA',
+ 'WNetAddConnectionW', 'WNetCancelConnection2A', 'WNetCancelConnection2W',
+ 'WNetCancelConnectionA', 'WNetCancelConnectionW', 'WNetCloseEnum',
+ 'WNetConnectionDialog', 'WNetConnectionDialog1A', 'WNetConnectionDialog1W',
+ 'WNetDisconnectDialog', 'WNetDisconnectDialog1A', 'WNetDisconnectDialog1W',
+ 'WNetEnumResourceA', 'WNetEnumResourceW', 'WNetGetConnectionA', 'WNetGetConnectionW',
+ 'WNetGetLastErrorA', 'WNetGetLastErrorW', 'WNetGetNetworkInformationA',
+ 'WNetGetNetworkInformationW', 'WNetGetProviderNameA', 'WNetGetProviderNameW',
+ 'WNetGetResourceInformationA', 'WNetGetResourceInformationW',
+ 'WNetGetResourceParentA', 'WNetGetResourceParentW', 'WNetGetUniversalNameA',
+ 'WNetGetUniversalNameW', 'WNetGetUserA', 'WNetGetUserW', 'WNetOpenEnumA',
+ 'WNetOpenEnumW', 'WNetUseConnectionA', 'WnetUseConnectionW',
+
+ 'accept', 'bind', 'closesocket', 'connect', 'gethostbyaddr', 'gethostbyname',
+ 'gethostname', 'getpeername', 'getprotobyname', 'getprotobynumber', 'getservbyname',
+ 'getservbyport', 'getsockname', 'getsockopt', 'htonl', 'htons', 'inet_addr',
+ 'inet_ntoa', 'ioctlsocket', 'listen', 'ntohl', 'ntohs', 'recv', 'recvfrom', 'select',
+ 'send', 'sendto', 'setsockopt', 'shutdown', 'socket', 'WSAAccept',
+ 'WSAAddressToStringA', 'WSAAddressToStringW', 'WSAAsyncGetHostByAddr',
+ 'WSAAsyncGetHostByName', 'WSAAsyncGetProtoByName', 'WSAAsyncGetProtoByNumber',
+ 'WSAAsyncGetServByName', 'WSAAsyncGetServByPort', 'WSAAsyncSelect',
+ 'WSACancelAsyncRequest', 'WSACancelBlockingCall', 'WSACleanup', 'WSACloseEvent',
+ 'WSAConnect', 'WSACreateEvent', 'WSADuplicateSocketA', 'WSADuplicateSocketW',
+ 'WSAEnumNameSpaceProvidersA', 'WSAEnumNameSpaceProvidersW', 'WSAEnumNetworkEvents',
+ 'WSAEnumProtocolsA', 'WSAEnumProtocolsW', 'WSAEventSelect', 'WSAGetLastError',
+ 'WSAGetOverlappedResult', 'WSAGetQOSByName', 'WSAGetServiceClassInfoA',
+ 'WSAGetServiceClassInfoW', 'WSAGetServiceClassNameByClassIdA',
+ 'WSAGetServiceClassNameByClassIdW', 'WSAHtonl', 'WSAHtons', 'WSAInstallServiceClassA',
+ 'WSAInstallServiceClassW', 'WSAIoctl', 'WSAIsBlocking', 'WSAJoinLeaf',
+ 'WSALookupServiceBeginA', 'WSALookupServiceBeginW', 'WSALookupServiceEnd',
+ 'WSALookupServiceNextA', 'WSALookupServiceNextW', 'WSANtohl', 'WSANtohs',
+ 'WSAProviderConfigChange', 'WSARecv', 'WSARecvDisconnect', 'WSARecvFrom',
+ 'WSARemoveServiceClass', 'WSAResetEvent', 'WSASend', 'WSASendDisconnect', 'WSASendTo',
+ 'WSASetBlockingHook', 'WSASetEvent', 'WSASetLastError', 'WSASetServiceA',
+ 'WSASetServiceW', 'WSASocketA', 'WSASocketW', 'WSAStartup', 'WSAStringToAddressA',
+ 'WSAStringToAddressW', 'WSAUnhookBlockingHook', 'WSAWaitForMultipleEvents',
+ 'WSCDeinstallProvider', 'WSCEnableNSProvider', 'WSCEnumProtocols',
+ 'WSCGetProviderPath', 'WSCInstallNameSpace', 'WSCInstallProvider',
+ 'WSCUnInstallNameSpace',
+
+ 'ContinueDebugEvent', 'DebugActiveProcess', 'DebugBreak', 'FatalExit',
+ 'FlushInstructionCache', 'GetThreadContext', 'GetThreadSelectorEntry',
+ 'IsDebuggerPresent', 'OutputDebugStringA', 'OutputDebugStringW', 'ReadProcessMemory',
+ 'SetDebugErrorLevel', 'SetThreadContext', 'WaitForDebugEvent', 'WriteProcessMemory',
+
+ 'CloseHandle', 'DuplicateHandle', 'GetHandleInformation', 'SetHandleInformation',
+
+ 'AdjustWindowRect', 'AdjustWindowRectEx', 'AllowSetForegroundWindow',
+ 'AnimateWindow', 'AnyPopup', 'ArrangeIconicWindows', 'BeginDeferWindowPos',
+ 'BringWindowToTop', 'CascadeWindows', 'ChildWindowFromPoint',
+ 'ChildWindowFromPointEx', 'CloseWindow', 'CreateWindowExA', 'CreateWindowExW',
+ 'DeferWindowPos', 'DestroyWindow', 'EndDeferWindowPos', 'EnumChildWindows',
+ 'EnumThreadWindows', 'EnumWindows', 'FindWindowA', 'FindWindowExA', 'FindWindowExW',
+ 'FindWindowW', 'GetAltTabInfoA', 'GetAltTabInfoW', 'GetAncestor', 'GetClientRect',
+ 'GetDesktopWindow', 'GetForegroundWindow', 'GetGUIThreadInfo', 'GetLastActivePopup',
+ 'GetLayout', 'GetParent', 'GetProcessDefaultLayout', 'GetTitleBarInf', 'GetTopWindow',
+ 'GetWindow', 'GetWindowInfo', 'GetWindowModuleFileNameA', 'GetWindowModuleFileNameW',
+ 'GetWindowPlacement', 'GetWindowRect', 'GetWindowTextA', 'GetWindowTextLengthA',
+ 'GetWindowTextLengthW', 'GetWindowTextW', 'GetWindowThreadProcessId', 'IsChild',
+ 'IsIconic', 'IsWindow', 'IsWindowUnicode', 'IsWindowVisible', 'IsZoomed',
+ 'LockSetForegroundWindow', 'MoveWindow', 'OpenIcon', 'RealChildWindowFromPoint',
+ 'RealGetWindowClassA', 'RealGetWindowClassW', 'SetForegroundWindow',
+ 'SetLayeredWindowAttributes', 'SetLayout', 'SetParent', 'SetProcessDefaultLayout',
+ 'SetWindowPlacement', 'SetWindowPos', 'SetWindowTextA', 'SetWindowTextW',
+ 'ShowOwnedPopups', 'ShowWindow', 'ShowWindowAsync', 'TileWindows',
+ 'UpdateLayeredWindow', 'WindowFromPoint',
+
+ 'CreateDialogIndirectParamA', 'CreateDialogIndirectParamW', 'CreateDialogParamA',
+ 'CreateDialogParamW', 'DefDlgProcA', 'DefDlgProcW', 'DialogBoxIndirectParamA',
+ 'DialogBoxIndirectParamW', 'DialogBoxParamA', 'DialogBoxParamW', 'EndDialog',
+ 'GetDialogBaseUnits', 'GetDlgCtrlID', 'GetDlgItem', 'GetDlgItemInt',
+ 'GetDlgItemTextA', 'GetDlgItemTextW', 'GetNextDlgGroupItem', 'GetNextDlgTabItem',
+ 'IsDialogMessageA', 'IsDialogMessageW', 'MapDialogRect', 'MessageBoxA',
+ 'MessageBoxExA', 'MessageBoxExW', 'MessageBoxIndirectA', 'MessageBoxIndirectW',
+ 'MessageBoxW', 'SendDlgItemMessageA', 'SendDlgItemMessageW', 'SetDlgItemInt',
+ 'SetDlgItemTextA', 'SetDlgItemTextW',
+
+ 'GetWriteWatch', 'GlobalMemoryStatus', 'GlobalMemoryStatusEx', 'IsBadCodePtr',
+ 'IsBadReadPtr', 'IsBadStringPtrA', 'IsBadStringPtrW', 'IsBadWritePtr',
+ 'ResetWriteWatch', 'AllocateUserPhysicalPages', 'FreeUserPhysicalPages',
+ 'MapUserPhysicalPages', 'MapUserPhysicalPagesScatter', 'GlobalAlloc', 'GlobalFlags',
+ 'GlobalFree', 'GlobalHandle', 'GlobalLock', 'GlobalReAlloc', 'GlobalSize',
+ 'GlobalUnlock', 'LocalAlloc', 'LocalFlags', 'LocalFree', 'LocalHandle', 'LocalLock',
+ 'LocalReAlloc', 'LocalSize', 'LocalUnlock', 'GetProcessHeap', 'GetProcessHeaps',
+ 'HeapAlloc', 'HeapCompact', 'HeapCreate', 'HeapDestroy', 'HeapFree', 'HeapLock',
+ 'HeapReAlloc', 'HeapSize', 'HeapUnlock', 'HeapValidate', 'HeapWalk', 'VirtualAlloc',
+ 'VirtualAllocEx', 'VirtualFree', 'VirtualFreeEx', 'VirtualLock', 'VirtualProtect',
+ 'VirtualProtectEx', 'VirtualQuery', 'VirtualQueryEx', 'VirtualUnlock',
+ 'GetFreeSpace', 'GlobalCompact', 'GlobalFix', 'GlobalUnfix', 'GlobalUnWire',
+ 'GlobalWire', 'IsBadHugeReadPtr', 'IsBadHugeWritePtr', 'LocalCompact', 'LocalShrink',
+
+ 'GetClassInfoA', 'GetClassInfoW', 'GetClassInfoExA', 'GetClassInfoExW',
+ 'GetClassLongA', 'GetClassLongW', 'GetClassLongPtrA', 'GetClassLongPtrW',
+ 'RegisterClassA', 'RegisterClassW', 'RegisterClassExA', 'RegisterClassExW',
+ 'SetClassLongA', 'SetClassLongW', 'SetClassLongPtrA', 'SetClassLongPtrW',
+ 'SetWindowLongA', 'SetWindowLongW', 'SetWindowLongPtrA', 'SetWindowLongPtrW',
+ 'UnregisterClassA', 'UnregisterClassW', 'GetClassWord', 'GetWindowWord',
+ 'SetClassWord', 'SetWindowWord'
+ ),
+ // Native API
+ 6 => array(
+ 'CsrAllocateCaptureBuffer', 'CsrAllocateCapturePointer', 'CsrAllocateMessagePointer',
+ 'CsrCaptureMessageBuffer', 'CsrCaptureMessageString', 'CsrCaptureTimeout',
+ 'CsrClientCallServer', 'CsrClientConnectToServer', 'CsrFreeCaptureBuffer',
+ 'CsrIdentifyAlertableThread', 'CsrNewThread', 'CsrProbeForRead', 'CsrProbeForWrite',
+ 'CsrSetPriorityClass',
+
+ 'LdrAccessResource', 'LdrDisableThreadCalloutsForDll', 'LdrEnumResources',
+ 'LdrFindEntryForAddress', 'LdrFindResource_U', 'LdrFindResourceDirectory_U',
+ 'LdrGetDllHandle', 'LdrGetProcedureAddress', 'LdrInitializeThunk', 'LdrLoadDll',
+ 'LdrProcessRelocationBlock', 'LdrQueryImageFileExecutionOptions',
+ 'LdrQueryProcessModuleInformation', 'LdrShutdownProcess', 'LdrShutdownThread',
+ 'LdrUnloadDll', 'LdrVerifyImageMatchesChecksum',
+
+ 'NtAcceptConnectPort', 'ZwAcceptConnectPort', 'NtCompleteConnectPort',
+ 'ZwCompleteConnectPort', 'NtConnectPort', 'ZwConnectPort', 'NtCreatePort',
+ 'ZwCreatePort', 'NtImpersonateClientOfPort', 'ZwImpersonateClientOfPort',
+ 'NtListenPort', 'ZwListenPort', 'NtQueryInformationPort', 'ZwQueryInformationPort',
+ 'NtReadRequestData', 'ZwReadRequestData', 'NtReplyPort', 'ZwReplyPort',
+ 'NtReplyWaitReceivePort', 'ZwReplyWaitReceivePort', 'NtReplyWaitReplyPort',
+ 'ZwReplyWaitReplyPort', 'NtRequestPort', 'ZwRequestPort', 'NtRequestWaitReplyPort',
+ 'ZwRequestWaitReplyPort', 'NtSecureConnectPort', 'ZwSecureConnectPort',
+ 'NtWriteRequestData', 'ZwWriteRequestData',
+
+ 'NtAccessCheck', 'ZwAccessCheck', 'NtAccessCheckAndAuditAlarm',
+ 'ZwAccessCheckAndAuditAlarm', 'NtAccessCheckByType', 'ZwAccessCheckByType',
+ 'NtAccessCheckByTypeAndAuditAlarm', 'ZwAccessCheckByTypeAndAuditAlarm',
+ 'NtAccessCheckByTypeResultList', 'ZwAccessCheckByTypeResultList',
+ 'NtAdjustGroupsToken', 'ZwAdjustGroupsToken', 'NtAdjustPrivilegesToken',
+ 'ZwAdjustPrivilegesToken', 'NtCloseObjectAuditAlarm', 'ZwCloseObjectAuditAlarm',
+ 'NtCreateToken', 'ZwCreateToken', 'NtDeleteObjectAuditAlarm',
+ 'ZwDeleteObjectAuditAlarm', 'NtDuplicateToken', 'ZwDuplicateToken',
+ 'NtFilterToken', 'ZwFilterToken', 'NtImpersonateThread', 'ZwImpersonateThread',
+ 'NtOpenObjectAuditAlarm', 'ZwOpenObjectAuditAlarm', 'NtOpenProcessToken',
+ 'ZwOpenProcessToken', 'NtOpenThreadToken', 'ZwOpenThreadToken', 'NtPrivilegeCheck',
+ 'ZwPrivilegeCheck', 'NtPrivilegedServiceAuditAlarm', 'ZwPrivilegedServiceAuditAlarm',
+ 'NtPrivilegeObjectAuditAlarm', 'ZwPrivilegeObjectAuditAlarm',
+ 'NtQueryInformationToken', 'ZwQueryInformationToken', 'NtQuerySecurityObject',
+ 'ZwQuerySecurityObject', 'NtSetInformationToken', 'ZwSetInformationToken',
+ 'NtSetSecurityObject', 'ZwSetSecurityObject',
+
+ 'NtAddAtom', 'ZwAddAtom', 'NtDeleteAtom', 'ZwDeleteAtom', 'NtFindAtom', 'ZwFindAtom',
+ 'NtQueryInformationAtom', 'ZwQueryInformationAtom',
+
+ 'NtAlertResumeThread', 'ZwAlertResumeThread', 'NtAlertThread', 'ZwAlertThread',
+ 'NtCreateProcess', 'ZwCreateProcess', 'NtCreateThread', 'ZwCreateThread',
+ 'NtCurrentTeb', 'NtDelayExecution', 'ZwDelayExecution', 'NtGetContextThread',
+ 'ZwGetContextThread', 'NtOpenProcess', 'ZwOpenProcess', 'NtOpenThread',
+ 'ZwOpenThread', 'NtQueryInformationProcess', 'ZwQueryInformationProcess',
+ 'NtQueryInformationThread', 'ZwQueryInformationThread', 'NtQueueApcThread',
+ 'ZwQueueApcThread', 'NtResumeThread', 'ZwResumeThread', 'NtSetContextThread',
+ 'ZwSetContextThread', 'NtSetHighWaitLowThread', 'ZwSetHighWaitLowThread',
+ 'NtSetInformationProcess', 'ZwSetInformationProcess', 'NtSetInformationThread',
+ 'ZwSetInformationThread', 'NtSetLowWaitHighThread', 'ZwSetLowWaitHighThread',
+ 'NtSuspendThread', 'ZwSuspendThread', 'NtTerminateProcess', 'ZwTerminateProcess',
+ 'NtTerminateThread', 'ZwTerminateThread', 'NtTestAlert', 'ZwTestAlert',
+ 'NtYieldExecution', 'ZwYieldExecution',
+
+ 'NtAllocateVirtualMemory', 'ZwAllocateVirtualMemory', 'NtAllocateVirtualMemory64',
+ 'ZwAllocateVirtualMemory64', 'NtAreMappedFilesTheSame', 'ZwAreMappedFilesTheSame',
+ 'NtCreateSection', 'ZwCreateSection', 'NtExtendSection', 'ZwExtendSection',
+ 'NtFlushVirtualMemory', 'ZwFlushVirtualMemory', 'NtFreeVirtualMemory',
+ 'ZwFreeVirtualMemory', 'NtFreeVirtualMemory64', 'ZwFreeVirtualMemory64',
+ 'NtLockVirtualMemory', 'ZwLockVirtualMemory', 'NtMapViewOfSection',
+ 'ZwMapViewOfSection', 'NtMapViewOfVlmSection', 'ZwMapViewOfVlmSection',
+ 'NtOpenSection', 'ZwOpenSection', 'NtProtectVirtualMemory', 'ZwProtectVirtualMemory',
+ 'NtProtectVirtualMemory64', 'ZwProtectVirtualMemory64', 'NtQueryVirtualMemory',
+ 'ZwQueryVirtualMemory', 'NtQueryVirtualMemory64', 'ZwQueryVirtualMemory64',
+ 'NtReadVirtualMemory', 'ZwReadVirtualMemory', 'NtReadVirtualMemory64',
+ 'ZwReadVirtualMemory64', 'NtUnlockVirtualMemory', 'ZwUnlockVirtualMemory',
+ 'NtUnmapViewOfSection', 'ZwUnmapViewOfSection', 'NtUnmapViewOfVlmSection',
+ 'ZwUnmapViewOfVlmSection', 'NtWriteVirtualMemory', 'ZwWriteVirtualMemory',
+ 'NtWriteVirtualMemory64', 'ZwWriteVirtualMemory64',
+
+ 'NtAssignProcessToJobObject', 'ZwAssignProcessToJobObject', 'NtCreateJobObject',
+ 'ZwCreateJobObject', 'NtOpenJobObject', 'ZwOpenJobObject',
+ 'NtQueryInformationJobObject', 'ZwQueryInformationJobObject',
+ 'NtSetInformationJobObject', 'ZwSetInformationJobObject', 'NtTerminateJobObject',
+ 'ZwTerminateJobObject',
+
+ 'NtCancelIoFile', 'ZwCancelIoFile', 'NtCreateFile', 'ZwCreateFile',
+ 'NtCreateIoCompletion', 'ZwCreateIoCompletion', 'NtDeleteFile', 'ZwDeleteFile',
+ 'NtDeviceIoControlFile', 'ZwDeviceIoControlFile', 'NtFlushBuffersFile',
+ 'ZwFlushBuffersFile', 'NtFsControlFile', 'ZwFsControlFile', 'NtLockFile', 'ZwLockFile',
+ 'NtNotifyChangeDirectoryFile', 'ZwNotifyChangeDirectoryFile', 'NtOpenFile',
+ 'ZwOpenFile', 'NtOpenIoCompletion', 'ZwOpenIoCompletion', 'NtQueryAttributesFile',
+ 'ZwQueryAttributesFile', 'NtQueryDirectoryFile', 'ZwQueryDirectoryFile',
+ 'NtQueryEaFile', 'ZwQueryEaFile', 'NtQueryIoCompletion', 'ZwQueryIoCompletion',
+ 'NtQueryQuotaInformationFile', 'ZwQueryQuotaInformationFile',
+ 'NtQueryVolumeInformationFile', 'ZwQueryVolumeInformationFile', 'NtReadFile',
+ 'ZwReadFile', 'NtReadFile64', 'ZwReadFile64', 'NtReadFileScatter', 'ZwReadFileScatter',
+ 'NtRemoveIoCompletion', 'ZwRemoveIoCompletion', 'NtSetEaFile', 'ZwSetEaFile',
+ 'NtSetInformationFile', 'ZwSetInformationFile', 'NtSetIoCompletion',
+ 'ZwSetIoCompletion', 'NtSetQuotaInformationFile', 'ZwSetQuotaInformationFile',
+ 'NtSetVolumeInformationFile', 'ZwSetVolumeInformationFile', 'NtUnlockFile',
+ 'ZwUnlockFile', 'NtWriteFile', 'ZwWriteFile', 'NtWriteFile64','ZwWriteFile64',
+ 'NtWriteFileGather', 'ZwWriteFileGather', 'NtQueryFullAttributesFile',
+ 'ZwQueryFullAttributesFile', 'NtQueryInformationFile', 'ZwQueryInformationFile',
+
+ 'RtlAbortRXact', 'RtlAbsoluteToSelfRelativeSD', 'RtlAcquirePebLock',
+ 'RtlAcquireResourceExclusive', 'RtlAcquireResourceShared', 'RtlAddAccessAllowedAce',
+ 'RtlAddAccessDeniedAce', 'RtlAddAce', 'RtlAddActionToRXact', 'RtlAddAtomToAtomTable',
+ 'RtlAddAttributeActionToRXact', 'RtlAddAuditAccessAce', 'RtlAddCompoundAce',
+ 'RtlAdjustPrivilege', 'RtlAllocateAndInitializeSid', 'RtlAllocateHandle',
+ 'RtlAllocateHeap', 'RtlAnsiCharToUnicodeChar', 'RtlAnsiStringToUnicodeSize',
+ 'RtlAnsiStringToUnicodeString', 'RtlAppendAsciizToString', 'RtlAppendStringToString',
+ 'RtlAppendUnicodeStringToString', 'RtlAppendUnicodeToString', 'RtlApplyRXact',
+ 'RtlApplyRXactNoFlush', 'RtlAreAllAccessesGranted', 'RtlAreAnyAccessesGranted',
+ 'RtlAreBitsClear', 'RtlAreBitsSet', 'RtlAssert', 'RtlCaptureStackBackTrace',
+ 'RtlCharToInteger', 'RtlCheckRegistryKey', 'RtlClearAllBits', 'RtlClearBits',
+ 'RtlClosePropertySet', 'RtlCompactHeap', 'RtlCompareMemory', 'RtlCompareMemoryUlong',
+ 'RtlCompareString', 'RtlCompareUnicodeString', 'RtlCompareVariants',
+ 'RtlCompressBuffer', 'RtlConsoleMultiByteToUnicodeN', 'RtlConvertExclusiveToShared',
+ 'RtlConvertLongToLargeInteger', 'RtlConvertPropertyToVariant',
+ 'RtlConvertSharedToExclusive', 'RtlConvertSidToUnicodeString',
+ 'RtlConvertUiListToApiList', 'RtlConvertUlongToLargeInteger',
+ 'RtlConvertVariantToProperty', 'RtlCopyLuid', 'RtlCopyLuidAndAttributesArray',
+ 'RtlCopySecurityDescriptor', 'RtlCopySid', 'RtlCopySidAndAttributesArray',
+ 'RtlCopyString', 'RtlCopyUnicodeString', 'RtlCreateAcl', 'RtlCreateAndSetSD',
+ 'RtlCreateAtomTable', 'RtlCreateEnvironment', 'RtlCreateHeap',
+ 'RtlCreateProcessParameters', 'RtlCreatePropertySet', 'RtlCreateQueryDebugBuffer',
+ 'RtlCreateRegistryKey', 'RtlCreateSecurityDescriptor', 'RtlCreateTagHeap',
+ 'RtlCreateUnicodeString', 'RtlCreateUnicodeStringFromAsciiz', 'RtlCreateUserProcess',
+ 'RtlCreateUserSecurityObject', 'RtlCreateUserThread', 'RtlCustomCPToUnicodeN',
+ 'RtlCutoverTimeToSystemTime', 'RtlDecompressBuffer', 'RtlDecompressFragment',
+ 'RtlDelete', 'RtlDeleteAce', 'RtlDeleteAtomFromAtomTable', 'RtlDeleteCriticalSection',
+ 'RtlDeleteElementGenericTable', 'RtlDeleteNoSplay', 'RtlDeleteRegistryValue',
+ 'RtlDeleteResource', 'RtlDeleteSecurityObject', 'RtlDeNormalizeProcessParams',
+ 'RtlDestroyAtomTable', 'RtlDestroyEnvironment', 'RtlDestroyHandleTable',
+ 'RtlDestroyHeap', 'RtlDestroyProcessParameters', 'RtlDestroyQueryDebugBuffer',
+ 'RtlDetermineDosPathNameType_U', 'RtlDoesFileExists_U', 'RtlDosPathNameToNtPathName_U',
+ 'RtlDosSearchPath_U', 'RtlDowncaseUnicodeString', 'RtlDumpResource',
+ 'RtlEmptyAtomTable', 'RtlEnlargedIntegerMultiply', 'RtlEnlargedUnsignedDivide',
+ 'RtlEnlargedUnsignedMultiply', 'RtlEnterCriticalSection', 'RtlEnumerateGenericTable',
+ 'RtlEnumerateGenericTableWithoutSplaying', 'RtlEnumerateProperties',
+ 'RtlEnumProcessHeaps', 'RtlEqualComputerName', 'RtlEqualDomainName', 'RtlEqualLuid',
+ 'RtlEqualPrefixSid', 'RtlEqualSid', 'RtlEqualString', 'RtlEqualUnicodeString',
+ 'RtlEraseUnicodeString', 'RtlExpandEnvironmentStrings_U', 'RtlExtendedIntegerMultiply',
+ 'RtlExtendedLargeIntegerDivide', 'RtlExtendedMagicDivide', 'RtlExtendHeap',
+ 'RtlFillMemory', 'RtlFillMemoryUlong', 'RtlFindClearBits', 'RtlFindClearBitsAndSet',
+ 'RtlFindLongestRunClear', 'RtlFindLongestRunSet', 'RtlFindMessage', 'RtlFindSetBits',
+ 'RtlFindSetBitsAndClear', 'RtlFirstFreeAce', 'RtlFlushPropertySet',
+ 'RtlFormatCurrentUserKeyPath', 'RtlFormatMessage', 'RtlFreeAnsiString',
+ 'RtlFreeHandle', 'RtlFreeHeap', 'RtlFreeOemString', 'RtlFreeSid',
+ 'RtlFreeUnicodeString', 'RtlFreeUserThreadStack', 'RtlGenerate8dot3Name', 'RtlGetAce',
+ 'RtlGetCallersAddress', 'RtlGetCompressionWorkSpaceSize',
+ 'RtlGetControlSecurityDescriptor', 'RtlGetCurrentDirectory_U',
+ 'RtlGetDaclSecurityDescriptor', 'RtlGetElementGenericTable', 'RtlGetFullPathName_U',
+ 'RtlGetGroupSecurityDescriptor', 'RtlGetLongestNtPathLength', 'RtlGetNtGlobalFlags',
+ 'RtlGetNtProductType', 'RtlGetOwnerSecurityDescriptor', 'RtlGetProcessHeaps',
+ 'RtlGetSaclSecurityDescriptor', 'RtlGetUserInfoHeap', 'RtlGuidToPropertySetName',
+ 'RtlIdentifierAuthoritySid', 'RtlImageDirectoryEntryToData', 'RtlImageNtHeader',
+ 'RtlImageRvaToSection', 'RtlImageRvaToVa', 'RtlImpersonateSelf', 'RtlInitAnsiString',
+ 'RtlInitCodePageTable', 'RtlInitializeAtomPackage', 'RtlInitializeBitMap',
+ 'RtlInitializeContext', 'RtlInitializeCriticalSection',
+ 'RtlInitializeCriticalSectionAndSpinCount', 'RtlInitializeGenericTable',
+ 'RtlInitializeHandleTable', 'RtlInitializeResource', 'RtlInitializeRXact',
+ 'RtlInitializeSid', 'RtlInitNlsTables', 'RtlInitString', 'RtlInitUnicodeString',
+ 'RtlInsertElementGenericTable', 'RtlIntegerToChar', 'RtlIntegerToUnicodeString',
+ 'RtlIsDosDeviceName_U', 'RtlIsGenericTableEmpty', 'RtlIsNameLegalDOS8Dot3',
+ 'RtlIsTextUnicode', 'RtlIsValidHandle', 'RtlIsValidIndexHandle', 'RtlLargeIntegerAdd',
+ 'RtlLargeIntegerArithmeticShift', 'RtlLargeIntegerDivide', 'RtlLargeIntegerNegate',
+ 'RtlLargeIntegerShiftLeft', 'RtlLargeIntegerShiftRight', 'RtlLargeIntegerSubtract',
+ 'RtlLargeIntegerToChar', 'RtlLeaveCriticalSection', 'RtlLengthRequiredSid',
+ 'RtlLengthSecurityDescriptor', 'RtlLengthSid', 'RtlLocalTimeToSystemTime',
+ 'RtlLockHeap', 'RtlLookupAtomInAtomTable', 'RtlLookupElementGenericTable',
+ 'RtlMakeSelfRelativeSD', 'RtlMapGenericMask', 'RtlMoveMemory',
+ 'RtlMultiByteToUnicodeN', 'RtlMultiByteToUnicodeSize', 'RtlNewInstanceSecurityObject',
+ 'RtlNewSecurityGrantedAccess', 'RtlNewSecurityObject', 'RtlNormalizeProcessParams',
+ 'RtlNtStatusToDosError', 'RtlNumberGenericTableElements', 'RtlNumberOfClearBits',
+ 'RtlNumberOfSetBits', 'RtlOemStringToUnicodeSize', 'RtlOemStringToUnicodeString',
+ 'RtlOemToUnicodeN', 'RtlOnMappedStreamEvent', 'RtlOpenCurrentUser',
+ 'RtlPcToFileHeader', 'RtlPinAtomInAtomTable', 'RtlpNtCreateKey',
+ 'RtlpNtEnumerateSubKey', 'RtlpNtMakeTemporaryKey', 'RtlpNtOpenKey',
+ 'RtlpNtQueryValueKey', 'RtlpNtSetValueKey', 'RtlPrefixString',
+ 'RtlPrefixUnicodeString', 'RtlPropertySetNameToGuid', 'RtlProtectHeap',
+ 'RtlpUnWaitCriticalSection', 'RtlpWaitForCriticalSection', 'RtlQueryAtomInAtomTable',
+ 'RtlQueryEnvironmentVariable_U', 'RtlQueryInformationAcl',
+ 'RtlQueryProcessBackTraceInformation', 'RtlQueryProcessDebugInformation',
+ 'RtlQueryProcessHeapInformation', 'RtlQueryProcessLockInformation',
+ 'RtlQueryProperties', 'RtlQueryPropertyNames', 'RtlQueryPropertySet',
+ 'RtlQueryRegistryValues', 'RtlQuerySecurityObject', 'RtlQueryTagHeap',
+ 'RtlQueryTimeZoneInformation', 'RtlRaiseException', 'RtlRaiseStatus', 'RtlRandom',
+ 'RtlReAllocateHeap', 'RtlRealPredecessor', 'RtlRealSuccessor', 'RtlReleasePebLock',
+ 'RtlReleaseResource', 'RtlRemoteCall', 'RtlResetRtlTranslations',
+ 'RtlRunDecodeUnicodeString', 'RtlRunEncodeUnicodeString', 'RtlSecondsSince1970ToTime',
+ 'RtlSecondsSince1980ToTime', 'RtlSelfRelativeToAbsoluteSD', 'RtlSetAllBits',
+ 'RtlSetAttributesSecurityDescriptor', 'RtlSetBits', 'RtlSetCriticalSectionSpinCount',
+ 'RtlSetCurrentDirectory_U', 'RtlSetCurrentEnvironment', 'RtlSetDaclSecurityDescriptor',
+ 'RtlSetEnvironmentVariable', 'RtlSetGroupSecurityDescriptor', 'RtlSetInformationAcl',
+ 'RtlSetOwnerSecurityDescriptor', 'RtlSetProperties', 'RtlSetPropertyNames',
+ 'RtlSetPropertySetClassId', 'RtlSetSaclSecurityDescriptor', 'RtlSetSecurityObject',
+ 'RtlSetTimeZoneInformation', 'RtlSetUnicodeCallouts', 'RtlSetUserFlagsHeap',
+ 'RtlSetUserValueHeap', 'RtlSizeHeap', 'RtlSplay', 'RtlStartRXact',
+ 'RtlSubAuthorityCountSid', 'RtlSubAuthoritySid', 'RtlSubtreePredecessor',
+ 'RtlSubtreeSuccessor', 'RtlSystemTimeToLocalTime', 'RtlTimeFieldsToTime',
+ 'RtlTimeToElapsedTimeFields', 'RtlTimeToSecondsSince1970', 'RtlTimeToSecondsSince1980',
+ 'RtlTimeToTimeFields', 'RtlTryEnterCriticalSection', 'RtlUnicodeStringToAnsiSize',
+ 'RtlUnicodeStringToAnsiString', 'RtlUnicodeStringToCountedOemString',
+ 'RtlUnicodeStringToInteger', 'RtlUnicodeStringToOemSize',
+ 'RtlUnicodeStringToOemString', 'RtlUnicodeToCustomCPN', 'RtlUnicodeToMultiByteN',
+ 'RtlUnicodeToMultiByteSize', 'RtlUnicodeToOemN', 'RtlUniform', 'RtlUnlockHeap',
+ 'RtlUnwind', 'RtlUpcaseUnicodeChar', 'RtlUpcaseUnicodeString',
+ 'RtlUpcaseUnicodeStringToAnsiString', 'RtlUpcaseUnicodeStringToCountedOemString',
+ 'RtlUpcaseUnicodeStringToOemString', 'RtlUpcaseUnicodeToCustomCPN',
+ 'RtlUpcaseUnicodeToMultiByteN', 'RtlUpcaseUnicodeToOemN', 'RtlUpperChar',
+ 'RtlUpperString', 'RtlUsageHeap', 'RtlValidAcl', 'RtlValidateHeap',
+ 'RtlValidateProcessHeaps', 'RtlValidSecurityDescriptor', 'RtlValidSid', 'RtlWalkHeap',
+ 'RtlWriteRegistryValue', 'RtlxAnsiStringToUnicodeSize', 'RtlxOemStringToUnicodeSize',
+ 'RtlxUnicodeStringToAnsiSize', 'RtlxUnicodeStringToOemSize', 'RtlZeroHeap',
+ 'RtlZeroMemory',
+
+ 'NtCancelTimer', 'ZwCancelTimer', 'NtCreateTimer', 'ZwCreateTimer', 'NtGetTickCount',
+ 'ZwGetTickCount', 'NtOpenTimer', 'ZwOpenTimer', 'NtQueryPerformanceCounter',
+ 'ZwQueryPerformanceCounter', 'NtQuerySystemTime', 'ZwQuerySystemTime', 'NtQueryTimer',
+ 'ZwQueryTimer', 'NtQueryTimerResolution', 'ZwQueryTimerResolution', 'NtSetSystemTime',
+ 'ZwSetSystemTime', 'NtSetTimer', 'ZwSetTimer', 'NtSetTimerResolution',
+ 'ZwSetTimerResolution',
+
+ 'NtClearEvent', 'ZwClearEvent', 'NtCreateEvent', 'ZwCreateEvent', 'NtCreateEventPair',
+ 'ZwCreateEventPair', 'NtCreateMutant', 'ZwCreateMutant', 'NtCreateSemaphore',
+ 'ZwCreateSemaphore', 'NtOpenEvent', 'ZwOpenEvent', 'NtOpenEventPair',
+ 'ZwOpenEventPair', 'NtOpenMutant', 'ZwOpenMutant', 'NtOpenSemaphore',
+ 'ZwOpenSemaphore', 'NtPulseEvent', 'ZwPulseEvent', 'NtQueryEvent', 'ZwQueryEvent',
+ 'NtQueryMutant', 'ZwQueryMutant', 'NtQuerySemaphore', 'ZwQuerySemaphore',
+ 'NtReleaseMutant', 'ZwReleaseMutant', 'NtReleaseProcessMutant',
+ 'ZwReleaseProcessMutant', 'NtReleaseSemaphore', 'ZwReleaseSemaphore',
+ 'NtReleaseThreadMutant', 'ZwReleaseThreadMutant', 'NtResetEvent', 'ZwResetEvent',
+ 'NtSetEvent', 'ZwSetEvent', 'NtSetHighEventPair', 'ZwSetHighEventPair',
+ 'NtSetHighWaitLowEventPair', 'ZwSetHighWaitLowEventPair', 'NtSetLowEventPair',
+ 'ZwSetLowEventPair', 'NtSetLowWaitHighEventPair', 'ZwSetLowWaitHighEventPair',
+ 'NtSignalAndWaitForSingleObject', 'ZwSignalAndWaitForSingleObject',
+ 'NtWaitForMultipleObjects', 'ZwWaitForMultipleObjects', 'NtWaitForSingleObject',
+ 'ZwWaitForSingleObject', 'NtWaitHighEventPair', 'ZwWaitHighEventPair',
+ 'NtWaitLowEventPair', 'ZwWaitLowEventPair',
+
+ 'NtClose', 'ZwClose', 'NtCreateDirectoryObject', 'ZwCreateDirectoryObject',
+ 'NtCreateSymbolicLinkObject', 'ZwCreateSymbolicLinkObject',
+ 'NtDuplicateObject', 'ZwDuplicateObject', 'NtMakeTemporaryObject',
+ 'ZwMakeTemporaryObject', 'NtOpenDirectoryObject', 'ZwOpenDirectoryObject',
+ 'NtOpenSymbolicLinkObject', 'ZwOpenSymbolicLinkObject', 'NtQueryDirectoryObject',
+ 'ZwQueryDirectoryObject', 'NtQueryObject', 'ZwQueryObject',
+ 'NtQuerySymbolicLinkObject', 'ZwQuerySymbolicLinkObject', 'NtSetInformationObject',
+ 'ZwSetInformationObject',
+
+ 'NtContinue', 'ZwContinue', 'NtRaiseException', 'ZwRaiseException',
+ 'NtRaiseHardError', 'ZwRaiseHardError', 'NtSetDefaultHardErrorPort',
+ 'ZwSetDefaultHardErrorPort',
+
+ 'NtCreateChannel', 'ZwCreateChannel', 'NtListenChannel', 'ZwListenChannel',
+ 'NtOpenChannel', 'ZwOpenChannel', 'NtReplyWaitSendChannel', 'ZwReplyWaitSendChannel',
+ 'NtSendWaitReplyChannel', 'ZwSendWaitReplyChannel', 'NtSetContextChannel',
+ 'ZwSetContextChannel',
+
+ 'NtCreateKey', 'ZwCreateKey', 'NtDeleteKey', 'ZwDeleteKey', 'NtDeleteValueKey',
+ 'ZwDeleteValueKey', 'NtEnumerateKey', 'ZwEnumerateKey', 'NtEnumerateValueKey',
+ 'ZwEnumerateValueKey', 'NtFlushKey', 'ZwFlushKey', 'NtInitializeRegistry',
+ 'ZwInitializeRegistry', 'NtLoadKey', 'ZwLoadKey', 'NtLoadKey2', 'ZwLoadKey2',
+ 'NtNotifyChangeKey', 'ZwNotifyChangeKey', 'NtOpenKey', 'ZwOpenKey', 'NtQueryKey',
+ 'ZwQueryKey', 'NtQueryMultipleValueKey', 'ZwQueryMultipleValueKey',
+ 'NtQueryMultiplValueKey', 'ZwQueryMultiplValueKey', 'NtQueryValueKey',
+ 'ZwQueryValueKey', 'NtReplaceKey', 'ZwReplaceKey', 'NtRestoreKey', 'ZwRestoreKey',
+ 'NtSaveKey', 'ZwSaveKey', 'NtSetInformationKey', 'ZwSetInformationKey',
+ 'NtSetValueKey', 'ZwSetValueKey', 'NtUnloadKey', 'ZwUnloadKey',
+
+ 'NtCreateMailslotFile', 'ZwCreateMailslotFile', 'NtCreateNamedPipeFile',
+ 'ZwCreateNamedPipeFile', 'NtCreatePagingFile', 'ZwCreatePagingFile',
+
+ 'NtCreateProfile', 'ZwCreateProfile', 'NtQueryIntervalProfile',
+ 'ZwQueryIntervalProfile', 'NtRegisterThreadTerminatePort',
+ 'ZwRegisterThreadTerminatePort', 'NtSetIntervalProfile', 'ZwSetIntervalProfile',
+ 'NtStartProfile', 'ZwStartProfile', 'NtStopProfile', 'ZwStopProfile',
+ 'NtSystemDebugControl', 'ZwSystemDebugControl',
+
+ 'NtEnumerateBus', 'ZwEnumerateBus', 'NtFlushInstructionCache',
+ 'ZwFlushInstructionCache', 'NtFlushWriteBuffer', 'ZwFlushWriteBuffer',
+ 'NtSetLdtEntries', 'ZwSetLdtEntries',
+
+ 'NtGetPlugPlayEvent', 'ZwGetPlugPlayEvent', 'NtPlugPlayControl', 'ZwPlugPlayControl',
+
+ 'NtInitiatePowerAction', 'ZwInitiatePowerAction', 'NtPowerInformation',
+ 'ZwPowerInformation', 'NtRequestWakeupLatency', 'ZwRequestWakeupLatency',
+ 'NtSetSystemPowerState', 'ZwSetSystemPowerState', 'NtSetThreadExecutionState',
+ 'ZwSetThreadExecutionState',
+
+ 'NtLoadDriver', 'ZwLoadDriver', 'NtRegisterNewDevice', 'ZwRegisterNewDevice',
+ 'NtUnloadDriver', 'ZwUnloadDriver',
+
+ 'NtQueryDefaultLocale', 'ZwQueryDefaultLocale', 'NtQueryDefaultUILanguage',
+ 'ZwQueryDefaultUILanguage', 'NtQuerySystemEnvironmentValue',
+ 'ZwQuerySystemEnvironmentValue', 'NtSetDefaultLocale', 'ZwSetDefaultLocale',
+ 'NtSetDefaultUILanguage', 'ZwSetDefaultUILanguage', 'NtSetSystemEnvironmentValue',
+ 'ZwSetSystemEnvironmentValue',
+
+ 'DbgBreakPoint', 'DbgPrint', 'DbgPrompt', 'DbgSsHandleKmApiMsg', 'DbgSsInitialize',
+ 'DbgUiConnectToDbg', 'DbgUiContinue', 'DbgUiWaitStateChange', 'DbgUserBreakPoint',
+ 'KiRaiseUserExceptionDispatcher', 'KiUserApcDispatcher', 'KiUserCallbackDispatcher',
+ 'KiUserExceptionDispatcher', 'NlsAnsiCodePage', 'NlsMbCodePageTag',
+ 'NlsMbOemCodePageTag', 'NtAllocateLocallyUniqueId', 'ZwAllocateLocallyUniqueId',
+ 'NtAllocateUuids', 'ZwAllocateUuids', 'NtCallbackReturn', 'ZwCallbackReturn',
+ 'NtDisplayString', 'ZwDisplayString', 'NtQueryOleDirectoryFile',
+ 'ZwQueryOleDirectoryFile', 'NtQuerySection', 'ZwQuerySection',
+ 'NtQuerySystemInformation', 'ZwQuerySystemInformation', 'NtSetSystemInformation',
+ 'ZwSetSystemInformation', 'NtShutdownSystem', 'ZwShutdownSystem', 'NtVdmControl',
+ 'ZwVdmControl', 'NtW32Call', 'ZwW32Call', 'PfxFindPrefix', 'PfxInitialize',
+ 'PfxInsertPrefix', 'PfxRemovePrefix', 'PropertyLengthAsVariant', 'RestoreEm87Context',
+ 'SaveEm87Context'
+ )
+ ),
+ 'SYMBOLS' => array(
+ '(', ')', '{', '}', '[', ']',
+ '+', '-', '*', '/', '%',
+ '=', '<', '>',
+ '!', '^', '&', '|',
+ '?', ':',
+ ';', ','
+ ),
+ 'CASE_SENSITIVE' => array(
+ GESHI_COMMENTS => false,
+ 1 => true,
+ 2 => true,
+ 3 => true,
+ 4 => true,
+ 5 => true,
+ 6 => true
+ ),
+ 'STYLES' => array(
+ 'KEYWORDS' => array(
+ 1 => 'color: #b1b100;',
+ 2 => 'color: #000000; font-weight: bold;',
+ 3 => 'color: #000066;',
+ 4 => 'color: #993333;',
+ 5 => 'color: #4000dd;',
+ 6 => 'color: #4000dd;'
+ ),
+ 'COMMENTS' => array(
+ 1 => 'color: #666666; font-style: italic;',
+ 2 => 'color: #339933;',
+ 'MULTI' => 'color: #808080; font-style: italic;'
+ ),
+ 'ESCAPE_CHAR' => array(
+ 0 => 'color: #000099; font-weight: bold;',
+ 1 => 'color: #000099; font-weight: bold;',
+ 2 => 'color: #660099; font-weight: bold;',
+ 3 => 'color: #660099; font-weight: bold;',
+ 4 => 'color: #660099; font-weight: bold;',
+ 5 => 'color: #006699; font-weight: bold;',
+ 'HARD' => '',
+ ),
+ 'BRACKETS' => array(
+ 0 => 'color: #009900;'
+ ),
+ 'STRINGS' => array(
+ 0 => 'color: #ff0000;'
+ ),
+ 'NUMBERS' => array(
+ 0 => 'color: #0000dd;',
+ GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;',
+ GESHI_NUMBER_OCT_PREFIX => 'color: #208080;',
+ GESHI_NUMBER_HEX_PREFIX => 'color: #208080;',
+ GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;',
+ GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;',
+ GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;',
+ GESHI_NUMBER_FLT_NONSCI => 'color:#800080;'
+ ),
+ 'METHODS' => array(
+ 1 => 'color: #202020;',
+ 2 => 'color: #202020;'
+ ),
+ 'SYMBOLS' => array(
+ 0 => 'color: #339933;'
+ ),
+ 'REGEXPS' => array(
+ ),
+ 'SCRIPT' => array(
+ )
+ ),
+ 'URLS' => array(
+ 1 => '',
+ 2 => '',
+ 3 => 'http://www.opengroup.org/onlinepubs/009695399/functions/{FNAMEL}.html',
+ 4 => '',
+ 5 => 'http://www.google.com/search?q={FNAMEL}+msdn.microsoft.com',
+ 6 => 'http://www.google.com/search?q={FNAMEL}+msdn.microsoft.com'
+ ),
+ 'OOLANG' => true,
+ 'OBJECT_SPLITTERS' => array(
+ 1 => '.',
+ 2 => '::'
+ ),
+ 'REGEXPS' => array(
+ ),
+ 'STRICT_MODE_APPLIES' => GESHI_NEVER,
+ 'SCRIPT_DELIMITERS' => array(
+ ),
+ 'HIGHLIGHT_STRICT_BLOCK' => array(
+ ),
+ 'TAB_WIDTH' => 4
+);
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/caddcl.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/caddcl.php
index 8b8b2f24..8408f29c 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/caddcl.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/caddcl.php
@@ -4,7 +4,7 @@
* ----------
* Author: Roberto Rossi (rsoftware@altervista.org)
* Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/08/30
*
* CAD DCL (Dialog Control Language) language file for GeSHi.
@@ -122,5 +122,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cadlisp.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cadlisp.php
index 3fa7ead0..6a913753 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cadlisp.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cadlisp.php
@@ -4,7 +4,7 @@
* -----------
* Author: Roberto Rossi (rsoftware@altervista.org)
* Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/blog)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/08/30
*
* AutoCAD/IntelliCAD Lisp language file for GeSHi.
@@ -182,5 +182,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cfdg.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cfdg.php
index e40963f0..788e0564 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cfdg.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cfdg.php
@@ -4,7 +4,7 @@
* --------
* Author: John Horigan <john@glyphic.com>
* Copyright: (c) 2006 John Horigan http://www.ozonehouse.com/john/
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2006/03/11
*
* CFDG language file for GeSHi.
@@ -120,5 +120,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cfm.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cfm.php
index 2d165bd6..c0454660 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cfm.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cfm.php
@@ -4,7 +4,7 @@
* -------
* Author: Diego
* Copyright: (c) 2006 Diego
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2006/02/25
*
* ColdFusion language file for GeSHi.
@@ -295,5 +295,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/chaiscript.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/chaiscript.php
index f9d0a868..677f2afb 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/chaiscript.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/chaiscript.php
@@ -6,7 +6,7 @@
* Copyright: (c) 2010 Jason Turner (lefticus@gmail.com),
* (c) 2009 Jonathan Turner,
* (c) 2004 Ben Keen (ben.keen@gmail.com), Benny Baumann (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2009/07/03
*
* ChaiScript language file for GeSHi.
@@ -136,5 +136,3 @@ $language_data = array (
1 => true
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/chapel.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/chapel.php
new file mode 100644
index 00000000..d0e50e61
--- /dev/null
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/chapel.php
@@ -0,0 +1,169 @@
+<?php
+/*************************************************************************************
+ * chapel.php
+ * -----
+ * Author: Richard Molitor (richard.molitor@student.kit.edu)
+ * Copyright: (c) 2013 Richard Molitor
+ * Release Version: 1.0.8.12
+ * Date Started: 2013/06/22
+ *
+ * Chapel language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2013/06/22 (1.0.8.12)
+ * - First Release
+ *
+ * TODO (updated 2013/06/22)
+ * -------------------------
+ *
+ *************************************************************************************
+ *
+ * This file is part of GeSHi.
+ *
+ * GeSHi is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * GeSHi is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GeSHi; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ ************************************************************************************/
+
+$language_data = array (
+ 'LANG_NAME' => 'Chapel',
+ 'COMMENT_SINGLE' => array(1 => '//'),
+ 'COMMENT_MULTI' => array('/*' => '*/'),
+ 'COMMENT_REGEXP' => array(
+ ),
+ 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
+ 'QUOTEMARKS' => array("'", '"'),
+ 'ESCAPE_CHAR' => '',
+ 'ESCAPE_REGEXP' => array(
+ ),
+ 'NUMBERS' =>
+ GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B |
+ GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI | GESHI_NUMBER_FLT_NONSCI_F |
+ GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO,
+ 'KEYWORDS' => array(
+ // statements
+ 1 => array(
+ 'atomic', 'begin', 'break', 'class', 'cobegin', 'coforall',
+ 'continue', 'do', 'else', 'export', 'extern', 'for', 'forall', 'if',
+ 'iter', 'inline', 'label', 'let', 'local', 'module',
+ 'otherwise', 'proc', 'record', 'return', 'select', 'serial',
+ 'then', 'use', 'var', 'when', 'where', 'while', 'yield'
+ ),
+ // literals
+ 2 => array(
+ 'nil', 'true', 'false'
+ ),
+ // built-in functions
+ 3 => array(
+ 'by', 'delete', 'dmapped', 'domain', 'enum', 'index', 'min',
+ 'minloc', 'max', 'maxloc', 'new', 'range', 'reduce', 'scan',
+ 'sparse', 'subdomain', 'sync', 'union', 'zip'
+ ),
+ // built-in types
+ 4 => array(
+ 'config', 'const', 'in', 'inout', 'opaque', 'on', 'out', 'param',
+ 'ref', 'single', 'type'
+ ),
+ // library types
+ 5 => array(
+ 'void', 'bool', 'int', 'uint', 'real', 'imag', 'complex', 'string',
+ 'locale'
+ ),
+ ),
+ 'SYMBOLS' => array(
+ '(', ')', '{', '}', '[', ']',
+ '+', '-', '*', '/', '%',
+ '=', '<', '>',
+ '!', '^', '&', '|',
+ '?', ':',
+ ';', ','
+ ),
+ 'CASE_SENSITIVE' => array(
+ GESHI_COMMENTS => false,
+ 1 => true,
+ 2 => true,
+ 3 => true,
+ 4 => true,
+ 5 => true
+ ),
+ 'STYLES' => array(
+ 'KEYWORDS' => array(
+ 1 => 'color: #b1b100;',
+ 2 => 'color: #000000; font-weight: bold;',
+ 3 => 'color: #000066;',
+ 4 => 'color: #993333;'
+ ),
+ 'COMMENTS' => array(
+ 1 => 'color: #666666; font-style: italic;',
+ //2 => 'color: #339933;',
+ 'MULTI' => 'color: #808080; font-style: italic;'
+ ),
+ 'ESCAPE_CHAR' => array(
+ 0 => 'color: #000099; font-weight: bold;',
+ 1 => 'color: #000099; font-weight: bold;',
+ 2 => 'color: #660099; font-weight: bold;',
+ 3 => 'color: #660099; font-weight: bold;',
+ 4 => 'color: #660099; font-weight: bold;',
+ 5 => 'color: #006699; font-weight: bold;',
+ 'HARD' => '',
+ ),
+ 'BRACKETS' => array(
+ 0 => 'color: #009900;'
+ ),
+ 'STRINGS' => array(
+ 0 => 'color: #ff0000;'
+ ),
+ 'NUMBERS' => array(
+ 0 => 'color: #0000dd;',
+ GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;',
+ GESHI_NUMBER_OCT_PREFIX => 'color: #208080;',
+ GESHI_NUMBER_HEX_PREFIX => 'color: #208080;',
+ GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;',
+ GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;',
+ GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;',
+ GESHI_NUMBER_FLT_NONSCI => 'color:#800080;'
+ ),
+ 'METHODS' => array(
+ 1 => 'color: #202020;',
+ 2 => 'color: #202020;'
+ ),
+ 'SYMBOLS' => array(
+ 0 => 'color: #339933;'
+ ),
+ 'REGEXPS' => array(
+ ),
+ 'SCRIPT' => array(
+ )
+ ),
+ 'URLS' => array(
+ 1 => '',
+ 2 => '',
+ 3 => '',
+ 4 => '',
+ 5 => ''
+ ),
+ 'OOLANG' => true,
+ 'OBJECT_SPLITTERS' => array(
+ 1 => '.',
+ ),
+ 'REGEXPS' => array(
+ ),
+ 'STRICT_MODE_APPLIES' => GESHI_NEVER,
+ 'SCRIPT_DELIMITERS' => array(
+ ),
+ 'HIGHLIGHT_STRICT_BLOCK' => array(
+ ),
+ 'TAB_WIDTH' => 4
+);
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cil.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cil.php
index 9872e755..c1fe8a9a 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cil.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cil.php
@@ -4,7 +4,7 @@
* --------
* Author: Marcus Griep (neoeinstein+GeSHi@gmail.com)
* Copyright: (c) 2007 Marcus Griep (http://www.xpdm.us)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2007/10/24
*
* CIL (Common Intermediate Language) language file for GeSHi.
@@ -192,5 +192,3 @@ $language_data = array (
),
'TAB_WIDTH' => 4
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/clojure.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/clojure.php
index 0ad4e4ad..0b9ed44c 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/clojure.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/clojure.php
@@ -4,7 +4,7 @@
* --------
* Author: Jess Johnson (jess@grok-code.com)
* Copyright: (c) 2009 Jess Johnson (http://grok-code.com)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2009/09/20
*
* Clojure language file for GeSHi.
@@ -130,5 +130,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cmake.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cmake.php
index 67277aa9..21552165 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cmake.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cmake.php
@@ -4,7 +4,7 @@
* -------
* Author: Daniel Nelson (danieln@eng.utah.edu)
* Copyright: (c) 2009 Daniel Nelson
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2009/04/06
*
* CMake language file for GeSHi.
@@ -177,5 +177,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cobol.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cobol.php
index b07be48a..1280a4c7 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cobol.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cobol.php
@@ -4,15 +4,33 @@
* ----------
* Author: BenBE (BenBE@omorphia.org)
* Copyright: (c) 2007-2008 BenBE (http://www.omorphia.de/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2007/07/02
*
* COBOL language file for GeSHi.
*
+ * Most of the compiler directives, reserved words and intrinsic functions are
+ * from the 2009 COBOL Draft Standard, Micro Focus, and GNU Cobol. The lists of
+ * these were found in the draft standard (Sections 8.9, 8.10, 8.11 and 8.12),
+ * Micro Focus' COBOL Language Reference and the GNU Cobol FAQ.
+ *
* CHANGES
* -------
+ * 2013/11/17 (1.0.8.12)
+ * - Changed compiler directives to be handled like comments.
+ * - Fixed bug where keywords in identifiers were highlighted.
+ * 2013/08/19 (1.0.8.12)
+ * - Added more intrinsic functions, reserved words, and compiler directives
+ * from the (upcoming) standard.
+ * 2013/07/07 (1.0.8.12)
+ * - Added more reserved words, compiler directives and intrinsic functions.
+ * - Added modern comment syntax and corrected the other one.
+ * - Set OOLANG to true and added an object splitter.
+ * - Added extra symbols.
+ * - Fixed bug where scope terminators were only the statement in
+ * end-statement was highlighted.
*
- * TODO (updated 2007/07/02)
+ * TODO (updated 2013/11/17)
* -------------------------
*
*************************************************************************************
@@ -37,145 +55,340 @@
$language_data = array (
'LANG_NAME' => 'COBOL',
- 'COMMENT_SINGLE' => array(),
+ 'COMMENT_SINGLE' => array(
+ 1 => '*>', // COBOL 2002 inline comment
+ 2 => '>>' // COBOL compiler directive indicator
+ ),
'COMMENT_MULTI' => array(),
- 'COMMENT_REGEXP' => array(1 => '/^\*.*?$/m'),
+ 'COMMENT_REGEXP' => array(
+ 1 => '/^......(\*.*?$)/m', // Fixed-form comment
+ 2 => '/\$SET.*/i' // MF compiler directive indicator
+ ),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array('"', "'"),
- 'ESCAPE_CHAR' => '\\',
+ 'ESCAPE_CHAR' => '',
'NUMBERS' =>
GESHI_NUMBER_INT_BASIC |
GESHI_NUMBER_FLT_NONSCI |
GESHI_NUMBER_FLT_SCI_SHORT |
GESHI_NUMBER_FLT_SCI_ZERO,
'KEYWORDS' => array(
- 1 => array( //Compiler Directives
- 'ANSI', 'BLANK', 'NOBLANK', 'CALL-SHARED', 'CANCEL', 'NOCANCEL',
- 'CHECK', 'CODE', 'NOCODE', 'COLUMNS', 'COMPACT', 'NOCOMPACT',
- 'COMPILE', 'CONSULT', 'NOCONSULT', 'CROSSREF', 'NOCROSSREF',
- 'DIAGNOSE-74', 'NODIAGNOSE-74', 'DIAGNOSE-85', 'NODIAGNOSE-85',
- 'DIAGNOSEALL', 'NODIAGNOSEALL', 'ENDIF', 'ENDUNIT', 'ENV',
- 'ERRORFILE', 'ERRORS', 'FIPS', 'NOFIPS', 'FMAP', 'HEADING', 'HEAP',
- 'HIGHPIN', 'HIGHREQUESTERS', 'ICODE', 'NOICODE', 'IF', 'IFNOT',
- 'INNERLIST', 'NOINNERLIST', 'INSPECT', 'NOINSPECT', 'LARGEDATA',
- 'LD', 'LESS-CODE', 'LIBRARY', 'LINES', 'LIST', 'NOLIST', 'LMAP',
- 'NOLMAP', 'MAIN', 'MAP', 'NOMAP', 'NLD', 'NONSTOP', 'NON-SHARED',
- 'OPTIMIZE', 'PERFORM-TRACE', 'PORT', 'NOPORT', 'RESETTOG',
- 'RUNNABLE', 'RUNNAMED', 'SAVE', 'SAVEABEND', 'NOSAVEABEND',
- 'SEARCH', 'NOSEARCH', 'SECTION', 'SETTOG', 'SHARED', 'SHOWCOPY',
- 'NOSHOWCOPY', 'SHOWFILE', 'NOSHOWFILE', 'SOURCE', 'SQL', 'NOSQL',
- 'SQLMEM', 'SUBSET', 'SUBTYPE', 'SUPPRESS', 'NOSUPPRESS', 'SYMBOLS',
- 'NOSYMBOLS', 'SYNTAX', 'TANDEM', 'TRAP2', 'NOTRAP2', 'TRAP2-74',
- 'NOTRAP2-74', 'UL', 'WARN', 'NOWARN'
+ // Statements containing spaces. These are separate to other statements
+ // so that they are highlighted correctly.
+ 1 => array(
+ 'DELETE FILE', 'GO TO', 'NEXT SENTENCE', 'XML GENERATE',
+ 'XML PARSE'
),
- 2 => array( //Statement Keywords
- 'ACCEPT', 'ADD', 'TO', 'GIVING', 'CORRESPONDING', 'ALTER', 'CALL',
- 'CHECKPOINT', 'CLOSE', 'COMPUTE', 'CONTINUE', 'COPY',
- 'DELETE', 'DISPLAY', 'DIVIDE', 'INTO', 'REMAINDER', 'ENTER',
- 'COBOL', 'EVALUATE', 'EXIT', 'GO', 'INITIALIZE',
- 'TALLYING', 'REPLACING', 'CONVERTING', 'LOCKFILE', 'MERGE', 'MOVE',
- 'MULTIPLY', 'OPEN', 'PERFORM', 'TIMES',
- 'UNTIL', 'VARYING', 'RETURN',
+
+ 2 => array( // Other Reserved Words
+ '3-D', 'ABSENT', 'ABSTRACT', 'ACCESS', 'ACQUIRE',
+ 'ACTION', 'ACTIVE-CLASS', 'ACTIVE-X', 'ACTUAL', 'ADDRESS',
+ 'ADDRESS-ARRAY', 'ADDRESS-OFFSET', 'ADJUSTABLE-COLUMNS',
+ 'ADVANCING', 'AFP-5A', 'AFTER', 'ALIGNED', 'ALIGNMENT', 'ALL',
+ 'ALLOW', 'ALLOWING', 'ALPHABET', 'ALPHABETIC',
+ 'ALPHABETIC-LOWER', 'ALPHABETIC-UPPER', 'ALPHANUMERIC',
+ 'ALPHANUMERIC-EDITED', 'ALSO', 'ALTERNATE', 'AND', 'ANY',
+ 'ANYCASE',
+ 'APPLY', 'ARE', 'AREA', 'AREAS', 'ARGUMENT-NUMBER',
+ 'ARGUMENT-VALUE',
+ 'ARITHMETIC', 'AS', 'ASCENDING',
+ 'ASSEMBLY-ATTRIBUTES', 'ASSIGN', 'AT', 'ATTRIBUTE', 'AUTHOR',
+ 'AUTO', 'AUTO-DECIMAL', 'AUTO-HYPHEN-SKIP', 'AUTO-MINIMIZE',
+ 'AUTO-RESIZE', 'AUTO-SKIP', 'AUTO-SPIN', 'AUTOMATIC',
+ 'AUTOTERMINATE', 'AWAY-FROM-ZERO',
+ 'AX-EVENT-LIST', 'B-AND', 'B-EXOR', 'B-LEFT',
+ 'B-NOT', 'B-OR', 'B-RIGHT', 'B-XOR', 'BACKGROUND-COLOR',
+ 'BACKGROUND-COLOUR', 'BACKGROUND-HIGH', 'BACKGROUND-LOW',
+ 'BACKGROUND-STANDARD', 'BACKWARD', 'BAR', 'BASED', 'BASIS', 'BEEP',
+ 'BEFORE', 'BEGINNING', 'BELL', 'BINARY', 'BINARY-CHAR',
+ 'BINARY-DOUBLE', 'BINARY-LONG', 'BINARY-SHORT', 'BIND', 'BIT',
+ 'BITMAP', 'BITMAP-END', 'BITMAP-HANDLE', 'BITMAP-NUMBER',
+ 'BITMAP-RAW-HEIGHT', 'BITMAP-RAW-WIDTH', 'BITMAP-SCALE',
+ 'BITMAP-START', 'BITMAP-TIMER', 'BITMAP-TRAILING', 'BITMAP-WIDTH',
+ 'BLANK', 'BLINK', 'BLINKING', 'BLOB', 'BLOB-FILE', 'BLOB-LOCATOR',
+ 'BLOCK', 'BOLD', 'BOOLEAN', 'BOTTOM', 'BOX', 'BOXED', 'BROWSING',
+ 'BUSY', 'BUTTONS', 'BY', 'C01', 'C02', 'C03', 'C04',
+ 'C05',
+ 'C06', 'C07', 'C08', 'C09', 'C10', 'C11', 'C12', 'CALENDAR-FONT',
+ 'CALLED', 'CANCEL-BUTTON', 'CAPACITY', 'CATCH', 'CBL',
+ 'CBL-CTR', 'CCOL', 'CD', 'CELL', 'CELL-COLOR', 'CELL-DATA',
+ 'CELL-FONT', 'CELL-PROTECTION', 'CELLS', 'CENTER', 'CENTERED',
+ 'CENTERED-HEADINGS', 'CENTURY-DATE', 'CENTURY-DAY', 'CF', 'CH',
+ 'CHAINING', 'CHANGED', 'CHAR-VARYING',
+ 'CHARACTER',
+ 'CHARACTERS', 'CHART', 'CHECK-BOX', 'CHECKING', 'CLASS',
+ 'CLASS-ATTRIBUTES', 'CLASS-CONTROL', 'CLASS-ID', 'CLASS-OBJECT',
+ 'CLASSIFICATION',
+ 'CLEAR-SELECTION', 'CLINE', 'CLINES', 'CLOB', 'CLOB-FILE',
+ 'CLOB-LOCATOR', 'CLOCK-UNITS', 'COBOL', 'CODE', 'CODE-SET',
+ 'COERCION', 'COL', 'COLLATING', 'COLORS', 'COLOUR',
+ 'COLOURS', 'COLS', 'COLUMN', 'COLUMN-COLOR', 'COLUMN-DIVIDERS',
+ 'COLUMN-FONT', 'COLUMN-HEADINGS', 'COLUMN-PROTECTION', 'COLUMNS',
+ 'COM-REG', 'COMBO-BOX', 'COMMA', 'COMMITMENT', 'COMMON',
+ 'COMMUNICATION', 'COMP', 'COMP-0', 'COMP-1', 'COMP-2', 'COMP-3',
+ 'COMP-4', 'COMP-5', 'COMP-6', 'COMP-X', 'COMPRESSION',
+ 'COMPUTATIONAL', 'COMPUTATIONAL-0', 'COMPUTATIONAL-1',
+ 'COMPUTATIONAL-2', 'COMPUTATIONAL-3', 'COMPUTATIONAL-4',
+ 'COMPUTATIONAL-5', 'COMPUTATIONAL-6', 'COMPUTATIONAL-X',
+ 'CONDITION-VALUE', 'CONFIGURATION', 'CONSOLE', 'CONSTANT',
+ 'CONSTRAIN', 'CONSTRAINTS', 'CONTAINS', 'CONTENT',
+ 'CONTROL', 'CONTROL-AREA', 'CONTROLS', 'CONTROLS-UNCROPPED',
+ 'CONVERSION', 'CONVERT', 'CONVERTING', 'COPY-SELECTION',
+ 'CORE-INDEX', 'CORR', 'CORRESPONDING', 'COUNT',
+ 'CREATING', 'CRT', 'CRT-UNDER', 'CSIZE', 'CSP', 'CURRENCY',
+ 'CURSOR', 'CURSOR-COL', 'CURSOR-COLOR',
+ 'CURSOR-FRAME-WIDTH', 'CURSOR-ROW', 'CURSOR-X', 'CURSOR-Y',
+ 'CUSTOM-ATTRIBUTE', 'CUSTOM-PRINT-TEMPLATE', 'CYCLE', 'CYL-INDEX',
+ 'CYL-OVERFLOW', 'DASHED', 'DATA', 'DATA-COLUMNS',
+ 'DATA-POINTER', 'DATA-TYPES', 'DATABASE-KEY', 'DATABASE-KEY-LONG',
+ 'DATE', 'DATE-COMPILED', 'DATE-ENTRY', 'DATE-RECORD',
+ 'DATE-WRITTEN', 'DAY', 'DAY-OF-WEEK', 'DBCLOB', 'DBCLOB-FILE',
+ 'DBCLOB-LOCATOR', 'DBCS', 'DE', 'DEBUG', 'DEBUG-CONTENTS',
+ 'DEBUG-ITEM', 'DEBUG-LINE', 'DEBUG-NAME', 'DEBUG-SUB-1',
+ 'DEBUG-SUB-2', 'DEBUG-SUB-3', 'DEBUGGING', 'DECIMAL',
+ 'DECIMAL-POINT', 'DECLARATIVES', 'DEFAULT',
+ 'DEFAULT-BUTTON', 'DEFAULT-FONT', 'DEFINITION',
+ 'DELEGATE-ID', 'DELIMITED', 'DELIMITER', 'DEPENDING',
+ 'DESCENDING', 'DESTINATION', 'DESTROY', 'DETAIL', 'DICTIONARY',
+ 'DISABLE', 'DISC', 'DISJOINING', 'DISK', 'DISP',
+ 'DISPLAY-1', 'DISPLAY-COLUMNS', 'DISPLAY-FORMAT', 'DISPLAY-ST',
+ 'DIVIDER-COLOR', 'DIVIDERS', 'DIVISION', 'DOT-DASH',
+ 'DOTTED', 'DOWN', 'DRAG-COLOR', 'DRAW', 'DROP', 'DROP-DOWN',
+ 'DROP-LIST', 'DUPLICATES', 'DYNAMIC', 'EBCDIC', 'EC', 'ECHO', 'EGCS',
+ 'EGI', 'EJECT', 'ELEMENTARY', 'ELSE', 'EMI', 'EMPTY-CHECK',
+ 'ENABLE', 'ENABLED', 'END', 'END-ACCEPT', 'END-ADD', 'END-CALL',
+ 'END-CHAIN', 'END-COLOR', 'END-COMPUTE', 'END-DELEGATE',
+ 'END-DELETE', 'END-DISPLAY', 'END-DIVIDE', 'END-EVALUATE',
+ 'END-IF', 'END-INVOKE', 'END-MODIFY', 'END-MOVE', 'END-MULTIPLY',
+ 'END-OF-PAGE', 'END-PERFORM', 'END-READ', 'END-RECEIVE',
+ 'END-RETURN', 'END-REWRITE', 'END-SEARCH', 'END-START',
+ 'END-STRING', 'END-SUBTRACT', 'END-SYNC', 'END-TRY',
+ 'END-UNSTRING', 'END-WAIT', 'END-WRITE', 'END-XML', 'ENDING',
+ 'ENGRAVED', 'ENSURE-VISIBLE', 'ENTRY-CONVENTION',
+ 'ENTRY-FIELD',
+ 'ENTRY-REASON', 'ENUM', 'ENUM-ID', 'ENVIRONMENT',
+ 'ENVIRONMENT-NAME', 'ENVIRONMENT-VALUE', 'EOL', 'EOP',
+ 'EOS', 'EQUAL', 'EQUALS', 'ERASE', 'ERROR', 'ESCAPE',
+ 'ESCAPE-BUTTON', 'ESI', 'EVENT', 'EVENT-LIST',
+ 'EVENT-POINTER', 'EVERY', 'EXCEEDS', 'EXCEPTION',
+ 'EXCEPTION-OBJECT', 'EXCEPTION-VALUE', 'EXCESS-3',
+ 'EXCLUDE-EVENT-LIST', 'EXCLUSIVE',
+ 'EXPAND', 'EXPANDS', 'EXTEND', 'EXTENDED',
+ 'EXTENDED-SEARCH', 'EXTENSION', 'EXTERNAL', 'EXTERNAL-FORM',
+ 'EXTERNALLY-DESCRIBED-KEY', 'FACTORY', 'FALSE', 'FD',
+ 'FH--FCD', 'FH--KEYDEF', 'FILE', 'FILE-CONTROL', 'FILE-ID',
+ 'FILE-LIMIT', 'FILE-LIMITS', 'FILE-NAME', 'FILE-POS', 'FILL-COLOR',
+ 'FILL-COLOR2', 'FILL-PERCENT', 'FILLER', 'FINAL', 'FINALLY',
+ 'FINISH-REASON', 'FIRST', 'FIXED', 'FIXED-FONT', 'FIXED-WIDTH',
+ 'FLAT', 'FLAT-BUTTONS', 'FLOAT-BINARY-7', 'FLOAT-BINARY-16',
+ 'FLOAT-BINARY-34', 'FLOAT-DECIMAL-16', 'FLOAT-DECIMAL-34',
+ 'FLOAT-EXTENDED', 'FLOAT-LONG',
+ 'FLOAT-SHORT', 'FLOATING', 'FONT', 'FOOTING', 'FOR',
+ 'FOREGROUND-COLOR', 'FOREGROUND-COLOUR', 'FOREVER', 'FORMAT',
+ 'FRAME', 'FRAMED', 'FROM', 'FULL', 'FULL-HEIGHT',
+ 'FUNCTION', 'FUNCTION-ID', 'FUNCTION-POINTER', 'GENERATE',
+ 'GET', 'GETTER', 'GIVING', 'GLOBAL', 'GO-BACK', 'GO-FORWARD',
+ 'GO-HOME', 'GO-SEARCH', 'GRAPHICAL', 'GREATER', 'GRID',
+ 'GRIP', 'GROUP', 'GROUP-USAGE', 'GROUP-VALUE', 'HANDLE',
+ 'HAS-CHILDREN', 'HEADING', 'HEADING-COLOR', 'HEADING-DIVIDER-COLOR',
+ 'HEADING-FONT', 'HEAVY', 'HEIGHT', 'HEIGHT-IN-CELLS', 'HELP-ID',
+ 'HIDDEN-DATA', 'HIGH', 'HIGH-COLOR', 'HIGH-VALUE', 'HIGH-VALUES',
+ 'HIGHLIGHT', 'HORIZONTAL', 'HOT-TRACK', 'HSCROLL', 'HSCROLL-POS',
+ 'I-O', 'I-O-CONTROL', 'ICON', 'ID', 'IDENTIFICATION',
+ 'IDENTIFIED', 'IFINITY', 'IGNORE', 'IGNORING', 'IMPLEMENTS', 'IN',
+ 'INDEPENDENT', 'INDEX', 'INDEXED', 'INDEXER', 'INDEXER-ID', 'INDIC',
+ 'INDICATE', 'INDICATOR', 'INDICATORS', 'INDIRECT',
+ 'INHERITING', 'INHERITS',
+ 'INITIAL', 'INITIALIZED', 'INPUT',
+ 'INPUT-OUTPUT', 'INQUIRE', 'INSERT', 'INSERT-ROWS',
+ 'INSERTION-INDEX', 'INSTALLATION', 'INSTANCE',
+ 'INTERFACE', 'INTERFACE-ID', 'INTERMEDIATE',
+ 'INTERNAL', 'INTO', 'INTRINSIC',
+ 'INVALID', 'INVOKED', 'IS', 'ITEM', 'ITEM-BOLD',
+ 'ITEM-ID', 'ITEM-TEXT', 'ITEM-TO-ADD', 'ITEM-TO-DELETE',
+ 'ITEM-TO-EMPTY', 'ITEM-VALUE', 'ITERATOR', 'ITERATOR-ID', 'J',
+ 'JOINED', 'JOINING', 'JUST', 'JUSTIFIED', 'KANJI',
+ 'KEPT', 'KEY', 'KEY-YY', 'KEYBOARD', 'LABEL', 'LABEL-OFFSET',
+ 'LARGE-FONT', 'LAST', 'LAST-ROW', 'LAYOUT-DATA', 'LAYOUT-MANAGER',
+ 'LC_ALL', 'LC_COLLATE', 'LC_CTYPE', 'LC_CURRENCY', 'LC_MESSAGES',
+ 'LC_MONETARY', 'LC_NUMERIC', 'LC_TIME', 'LEADING', 'LEADING-SHIFT',
+ 'LEAVE', 'LEFT', 'LEFT-JUSTIFY', 'LEFT-TEXT', 'LEFTLINE',
+ 'LENGTH-CHECK', 'LESS', 'LIMIT', 'LIMITS', 'LIN', 'LINAGE',
+ 'LINAGE-COUNTER', 'LINE', 'LINE-COUNTER', 'LINES', 'LINES-AT-ROOT',
+ 'LINK', 'LINKAGE', 'LIST', 'LIST-BOX', 'LM-RESIZE', 'LOCAL-STORAGE',
+ 'LOCALE', 'LOCK', 'LOCKING', 'LONG-DATE', 'LONG-VARBINARY',
+ 'LONG-VARCHAR', 'LOW', 'LOW-COLOR', 'LOW-VALUE', 'LOW-VALUES',
+ 'LOWER', 'LOWERED', 'LOWLIGHT', 'MANUAL', 'MASS-UPDATE',
+ 'MASTER-INDEX', 'MAX-HEIGHT', 'MAX-LINES', 'MAX-PROGRESS',
+ 'MAX-SIZE', 'MAX-TEXT', 'MAX-VAL', 'MAX-WIDTH', 'MDI-CHILD',
+ 'MDI-FRAME', 'MEDIUM-FONT', 'MEMORY', 'MENU', 'MESSAGE',
+ 'MESSAGES', 'METACLASS', 'METHOD', 'METHOD-ID', 'MIN-HEIGHT',
+ 'MIN-LINES', 'MIN-SIZE', 'MIN-VAL', 'MIN-WIDTH', 'MODAL', 'MODE',
+ 'MODELESS', 'MODIFIED', 'MODULES', 'MONITOR-POINTER',
+ 'MORE-LABELS', 'MULTILINE',
+ 'MUTEX-POINTER', 'NAME', 'NAMED', 'NATIONAL',
+ 'NATIONAL-EDITED', 'NATIVE', 'NAVIGATE-URL', 'NCHAR',
+ 'NEAREST-AWAY-FROM-ZERO', 'NEAREST-EVEN', 'NEAREST-TOWARD-ZERO',
+ 'NEGATIVE', 'NEGATIVE-INFINITY',
+ 'NESTED', 'NET-EVENT-LIST', 'NEW', 'NEWABLE', 'NEXT ', 'NEXT-ITEM',
+ 'NO', 'NO-AUTO-DEFAULT', 'NO-AUTOSEL', 'NO-BOX', 'NO-CELL-DRAG',
+ 'NO-CLOSE', 'NO-DIVIDERS', 'NO-ECHO', 'NO-F4', 'NO-FOCUS',
+ 'NO-GROUP-TAB', 'NO-KEY-LETTER', 'NO-SEARCH', 'NO-TAB', 'NO-UPDOWN',
+ 'NOMINAL', 'NONE', 'NORMAL', 'NOT', 'NOT-A-NUMBER', 'NOTIFY',
+ 'NOTIFY-CHANGE', 'NOTIFY-DBLCLICK', 'NOTIFY-SELCHANGE',
+ 'NSTD-REELS', 'NULL', 'NULLS', 'NUM-COL-HEADINGS',
+ 'NUM-ROW-HEADINGS', 'NUM-ROWS', 'NUMBER', 'NUMBERS', 'NUMERIC',
+ 'NUMERIC-EDITED', 'NUMERIC-FILL', 'O-FILL', 'OBJECT',
+ 'OBJECT-COMPUTER', 'OBJECT-ID', 'OBJECT-REFERENCE',
+ 'OBJECT-STORAGE', 'OCCURS', 'OF', 'OFF', 'OK-BUTTON', 'OMITTED',
+ 'ONLY', 'OOSTACKPTR', 'OPERATOR', 'OPERATOR-ID',
+ 'OPTIONAL', 'OPTIONS', 'OR', 'ORDER', 'ORGANIZATION', 'OTHER',
+ 'OTHERWISE', 'OUTPUT', 'OVERFLOW', 'OVERLAP-LEFT', 'OVERLAP-TOP',
+ 'OVERLAPPED', 'OVERLINE', 'OVERRIDE', 'PACKED-DECIMAL',
+ 'PADDING', 'PAGE', 'PAGE-COUNTER', 'PAGE-SETUP', 'PAGE-SIZE',
+ 'PAGED', 'PANEL-INDEX', 'PANEL-STYLE', 'PANEL-TEXT', 'PANEL-WIDTHS',
+ 'PARAGRAPH', 'PARAMS', 'PARENT', 'PARSE', 'PARTIAL', 'PASSWORD',
+ 'PERMANENT', 'PF', 'PH', 'PIC', 'PICTURE', 'PIXEL',
+ 'PIXELS', 'PLACEMENT', 'PLUS', 'POINTER', 'POP-UP', 'POSITION',
+ 'POSITION-SHIFT', 'POSITIONING', 'POSITIVE', 'POSITIVE-INFINITY',
+ 'PREFIXED', 'PREFIXING', 'PRESENT',
+ 'PREVIOUS', 'PRINT', 'PRINT-CONTROL', 'PRINT-NO-PROMPT',
+ 'PRINT-PREVIEW', 'PRINT-SWITCH', 'PRINTER', 'PRINTER-1', 'PRINTING',
+ 'PRIOR', 'PRIORITY', 'PRIVATE', 'PROCEDURE', 'PROCEDURE-POINTER',
+ 'PROCEDURES', 'PROCEED', 'PROCESS', 'PROCESSING', 'PROGRAM',
+ 'PROGRAM-ID', 'PROGRAM-POINTER', 'PROGRESS', 'PROHIBITED',
+ 'PROMPT', 'PROPERTIES',
+ 'PROPERTY', 'PROPERTY-ID', 'PROPERTY-VALUE', 'PROTECTED',
+ 'PROTOTYPE', 'PUBLIC', 'PURGE', 'PUSH-BUTTON', 'QUERY-INDEX',
+ 'QUEUE', 'QUOTE', 'QUOTES', 'RADIO-BUTTON', 'RAISED',
+ 'RAISING', 'RD', 'READ-ONLY', 'READING',
+ 'READY', 'RECORD', 'RECORD-DATA', 'RECORD-OVERFLOW',
+ 'RECORD-TO-ADD', 'RECORD-TO-DELETE', 'RECORDING', 'RECORDS',
+ 'RECURSIVE', 'REDEFINE', 'REDEFINES', 'REDEFINITION', 'REEL',
+ 'REFERENCE', 'REFERENCES', 'REFRESH', 'REGION-COLOR', 'RELATION',
+ 'RELATIVE', 'RELOAD', 'REMAINDER', 'REMARKS', 'REMOVAL',
+ 'RENAMES', 'REORG-CRITERIA', 'REPEATED', 'REPLACE', 'REPLACING',
+ 'REPORT', 'REPORTING', 'REPORTS', 'REPOSITORY', 'REQUIRED',
+ 'REPRESENTS-NOT-A-NUMBER',
+ 'REREAD', 'RERUN', 'RESERVE', 'RESET-GRID', 'RESET-LIST',
+ 'RESET-TABS', 'RESIZABLE', 'RESTRICTED', 'RESULT-SET-LOCATOR',
+ 'RETRY', 'RETURN-CODE', 'RETURNING',
+ 'REVERSE-VIDEO', 'REVERSED', 'REWIND', 'RF', 'RH',
+ 'RIGHT', 'RIGHT-ALIGN', 'RIGHT-JUSTIFY', 'RIMMED',
+ 'ROLLING', 'ROUNDED', 'ROUNDING', 'ROW-COLOR', 'ROW-COLOR-PATTERN',
+ 'ROW-DIVIDERS', 'ROW-FONT', 'ROW-HEADINGS', 'ROW-PROTECTION',
+ 'ROWID', 'RUN', 'S01', 'S02', 'S03', 'S04', 'S05', 'SAME',
+ 'SAVE-AS', 'SAVE-AS-NO-PROMPT', 'SCREEN', 'SCROLL', 'SCROLL-BAR',
+ 'SD', 'SEARCH-OPTIONS', 'SEARCH-TEXT', 'SECONDS',
+ 'SECTION', 'SECURE', 'SECURITY', 'SEEK', 'SEGMENT', 'SEGMENT-LIMIT',
+ 'SELECT-ALL', 'SELECTION-INDEX', 'SELECTION-TEXT',
+ 'SELECTIVE', 'SELF', 'SELF-ACT', 'SELFCLASS', 'SEMAPHORE-POINTER',
+ 'SEND', 'SENTENCE', 'SEPARATE', 'SEPARATION', 'SEQUENCE',
+ 'SEQUENTIAL', 'SETTER', 'SHADING', 'SHADOW',
+ 'SHARING', 'SHIFT-IN', 'SHIFT-OUT', 'SHORT-DATE', 'SHOW-LINES',
+ 'SHOW-NONE', 'SHOW-SEL-ALWAYS', 'SIGNED', 'SIGNED-INT',
+ 'SIGNED-LONG', 'SIGNED-SHORT', 'SIZE', 'SKIP1',
+ 'SKIP2', 'SKIP3', 'SMALL-FONT', 'SORT-CONTROL',
+ 'SORT-CORE-SIZE', 'SORT-FILE-SIZE', 'SORT-MERGE', 'SORT-MESSAGE',
+ 'SORT-MODE-SIZE', 'SORT-OPTION', 'SORT-ORDER', 'SORT-RETURN',
+ 'SORT-TAPE', 'SORT-TAPES', 'SOURCE', 'SOURCE-COMPUTER', 'SOURCES',
+ 'SPACE', 'SPACE-FILL', 'SPACES', 'SPECIAL-NAMES', 'SPINNER', 'SQL',
+ 'SQUARE', 'STANDARD', 'STANDARD-1', 'STANDARD-2', 'STANDARD-3',
+ 'STANDARD-BINARY', 'STANDARD-DECIMAL',
+ 'START-X', 'START-Y', 'STARTING', 'STATEMENT', 'STATIC',
+ 'STATIC-LIST',
+ 'STATUS', 'STATUS-BAR', 'STATUS-TEXT', 'STEP',
+ 'STOP-BROWSER', 'STRONG', 'STYLE', 'SUB-QUEUE-1',
+ 'SUB-QUEUE-2', 'SUB-QUEUE-3', 'SUBFILE', 'SUBWINDOW',
+ 'SUFFIXING', 'SUPER', 'SYMBOL', 'SYMBOLIC',
+ 'SYNCHRONIZED', 'SYSIN', 'SYSIPT', 'SYSLST', 'SYSOUT',
+ 'SYSPCH', 'SYSPUNCH', 'SYSTEM', 'SYSTEM-DEFAULT', 'SYSTEM-INFO',
+ 'TAB', 'TAB-CONTROL', 'TAB-TO-ADD', 'TAB-TO-DELETE', 'TABLE',
+ 'TALLY', 'TALLYING', 'TAPE', 'TAPES', 'TEMPORARY', 'TERMINAL',
+ 'TERMINAL-INFO', 'TERMINATION-VALUE', 'TEST', 'TEXT',
+ 'THAN', 'THEN', 'THREAD', 'THREAD-LOCAL', 'THREAD-LOCAL-STORAGE',
+ 'THREAD-POINTER', 'THROUGH', 'THRU', 'THUMB-POSITION',
+ 'TILED-HEADINGS', 'TIME', 'TIME-OF-DAY', 'TIME-OUT', 'TIME-RECORD',
+ 'TIMEOUT', 'TIMES', 'TIMESTAMP', 'TIMESTAMP-OFFSET',
+ 'TIMESTAMP-OFFSET-RECORD', 'TIMESTAMP-RECORD', 'TITLE', 'TITLE-BAR',
+ 'TITLE-POSITION', 'TO', 'TOOL-BAR', 'TOP', 'TOTALED', 'TOTALING',
+ 'TOWARD-GREATER', 'TOWARD-LESSER',
+ 'TRACE', 'TRACK-AREA', 'TRACK-LIMIT', 'TRACK-THUMB', 'TRACKS',
+ 'TRADITIONAL-FONT', 'TRAILING', 'TRAILING-SHIFT', 'TRAILING-SIGN',
+ 'TRANSACTION', 'TRANSPARENT', 'TRANSPARENT-COLOR',
+ 'TREE-VIEW', 'TRUE', 'TRUNCATION', 'TYPE', 'TYPEDEF', 'UCS-4',
+ 'UNDERLINE', 'UNDERLINED', 'UNEQUAL', 'UNFRAMED', 'UNIT', 'UNITS',
+ 'UNIVERSAL', 'UNSIGNED', 'UNSIGNED-INT', 'UNSIGNED-LONG',
+ 'UNSIGNED-SHORT',
+ 'UNSORTED', 'UP', 'UPDATE', 'UNTIL', 'UPON', 'UPPER',
+ 'UPSI-0', 'UPSI-1', 'UPSI-2', 'UPSI-3', 'UPSI-4', 'UPSI-5',
+ 'UPSI-6', 'UPSI-7', 'USAGE', 'USE-ALT', 'USE-RETURN',
+ 'USE-TAB', 'USER', 'USER-COLORS', 'USER-DEFAULT', 'USER-GRAY',
+ 'USER-WHITE', 'USING', 'UTF-16', 'UTF-8', 'VALID',
+ 'VAL-STATUS', 'VALIDATE-STATUS',
+ 'VALUE', 'VALUE-FORMAT', 'VALUES', 'VALUETYPE', 'VALUETYPE-ID',
+ 'VARBINARY', 'VARIABLE', 'VARIANT', 'VARYING', 'VERTICAL',
+ 'VERY-HEAVY', 'VIRTUAL-WIDTH', 'VISIBLE', 'VPADDING', 'VSCROLL',
+ 'VSCROLL-BAR', 'VSCROLL-POS', 'VTOP', 'WEB-BROWSER', 'WHEN',
+ 'WHERE', 'WIDTH', 'WIDTH-IN-CELLS', 'WINDOW',
+ 'WITH', 'WORDS', 'WORKING-STORAGE', 'WRAP', 'WRITE-ONLY',
+ 'WRITE-VERIFY', 'WRITING', ' XML', 'XML ', 'XML-CODE', 'XML-EVENT',
+ 'XML-NTEXT', 'XML-TEXT', 'YIELDING', 'YYYYDDD', 'YYYYMMDD', 'ZERO',
+ 'ZERO-FILL', 'ZEROES', 'ZEROS'
),
- 3 => array( //Reserved in some contexts
- 'ACCESS', 'ADDRESS', 'ADVANCING', 'AFTER', 'ALL',
- 'ALPHABET', 'ALPHABETIC', 'ALPHABETIC-LOWER', 'ALPHABETIC-UPPER',
- 'ALPHANUMERIC', 'ALPHANUMERIC-EDITED', 'ALSO', 'ALTERNATE',
- 'AND', 'ANY', 'APPROXIMATE', 'AREA', 'AREAS', 'ASCENDING', 'ASSIGN',
- 'AT', 'AUTHOR', 'BEFORE', 'BINARY', 'BLOCK', 'BOTTOM', 'BY',
- 'CD', 'CF', 'CH', 'CHARACTER', 'CHARACTERS',
- 'CHARACTER-SET', 'CLASS', 'CLOCK-UNITS',
- 'CODE-SET', 'COLLATING', 'COLUMN', 'COMMA',
- 'COMMON', 'COMMUNICATION', 'COMP', 'COMP-3', 'COMP-5',
- 'COMPUTATIONAL', 'COMPUTATIONAL-3', 'COMPUTATIONAL-5',
- 'CONFIGURATION', 'CONTAINS', 'CONTENT', 'CONTROL',
- 'CONTROLS', 'CORR', 'COUNT',
- 'CURRENCY', 'DATA', 'DATE', 'DATE-COMPILED', 'DATE-WRITTEN', 'DAY',
- 'DAY-OF-WEEK', 'DE', 'DEBUG-CONTENTS', 'DEBUG-ITEM', 'DEBUG-LINE',
- 'DEBUG-SUB-2', 'DEBUG-SUB-3', 'DEBUGGING', 'DECIMAL-POINT',
- 'DECLARATIVES', 'DEBUG-NAME', 'DEBUG-SUB-1', 'DELIMITED',
- 'DELIMITER', 'DEPENDING', 'DESCENDING', 'DESTINATION', 'DETAIL',
- 'DISABLE', 'DIVISION', 'DOWN', 'DUPLICATES',
- 'DYNAMIC', 'EGI', 'ELSE', 'EMI', 'ENABLE', 'END', 'END-ADD',
- 'END-COMPUTE', 'END-DELETE', 'END-DIVIDE', 'END-EVALUATE', 'END-IF',
- 'END-MULTIPLY', 'END-OF-PAGE', 'END-PERFORM', 'END-READ',
- 'END-RECEIVE', 'END-RETURN', 'END-REWRITE', 'END-SEARCH',
- 'END-START', 'END-STRING', 'END-SUBTRACT', 'END-UNSTRING',
- 'END-WRITE', 'EOP', 'EQUAL', 'ERROR', 'ESI',
- 'EVERY', 'EXCEPTION', 'EXCLUSIVE', 'EXTEND',
- 'EXTENDED-STORAGE', 'EXTERNAL', 'FALSE', 'FD', 'FILE',
- 'FILE-CONTROL', 'FILLER', 'FINAL', 'FIRST', 'FOOTING', 'FOR',
- 'FROM', 'FUNCTION', 'GENERATE', 'GENERIC', 'GLOBAL',
- 'GREATER', 'GROUP', 'GUARDIAN-ERR', 'HIGH-VALUE',
- 'HIGH-VALUES', 'I-O', 'I-O-CONTROL', 'IDENTIFICATION', 'IN',
- 'INDEX', 'INDEXED', 'INDICATE', 'INITIAL', 'INITIATE',
- 'INPUT', 'INPUT-OUTPUT', 'INSTALLATION',
- 'INVALID', 'IS', 'JUST', 'JUSTIFIED', 'KEY', 'LABEL', 'LAST',
- 'LEADING', 'LEFT', 'LESS', 'LIMIT', 'LIMITS', 'LINAGE',
- 'LINAGE-COUNTER', 'LINE', 'LINE-COUNTER', 'LINKAGE', 'LOCK',
- 'LOW-VALUE', 'LOW-VALUES', 'MEMORY', 'MESSAGE',
- 'MODE', 'MODULES', 'MULTIPLE', 'NATIVE',
- 'NEGATIVE', 'NEXT', 'NO', 'NOT', 'NULL', 'NULLS', 'NUMBER',
- 'NUMERIC', 'NUMERIC-EDITED', 'OBJECT-COMPUTER', 'OCCURS', 'OF',
- 'OFF', 'OMITTED', 'ON', 'OPTIONAL', 'OR', 'ORDER',
- 'ORGANIZATION', 'OTHER', 'OUTPUT', 'OVERFLOW', 'PACKED-DECIMAL',
- 'PADDING', 'PAGE', 'PAGE-COUNTER', 'PF', 'PH', 'PIC',
- 'PICTURE', 'PLUS', 'POINTER', 'POSITION', 'POSITIVE', 'PRINTING',
- 'PROCEDURE', 'PROCEDURES', 'PROCEED', 'PROGRAM', 'PROGRAM-ID',
- 'PROGRAM-STATUS', 'PROGRAM-STATUS-1', 'PROGRAM-STATUS-2', 'PROMPT',
- 'PROTECTED', 'PURGE', 'QUEUE', 'QUOTE', 'QUOTES', 'RD',
- 'RECEIVE', 'RECEIVE-CONTROL', 'RECORD', 'RECORDS',
- 'REDEFINES', 'REEL', 'REFERENCE', 'REFERENCES', 'RELATIVE',
- 'REMOVAL', 'RENAMES', 'REPLACE',
- 'REPLY', 'REPORT', 'REPORTING', 'REPORTS', 'RERUN',
- 'RESERVE', 'RESET', 'REVERSED', 'REWIND', 'REWRITE', 'RF',
- 'RH', 'RIGHT', 'ROUNDED', 'RUN', 'SAME', 'SD',
- 'SECURITY', 'SEGMENT', 'SEGMENT-LIMIT', 'SELECT', 'SEND',
- 'SENTENCE', 'SEPARATE', 'SEQUENCE', 'SEQUENTIAL', 'SET',
- 'SIGN', 'SIZE', 'SORT', 'SORT-MERGE', 'SOURCE-COMPUTER',
- 'SPACE', 'SPACES', 'SPECIAL-NAMES', 'STANDARD', 'STANDARD-1',
- 'STANDARD-2', 'START', 'STARTBACKUP', 'STATUS', 'STOP', 'STRING',
- 'SUB-QUEUE-1', 'SUB-QUEUE-2', 'SUB-QUEUE-3', 'SUBTRACT',
- 'SYMBOLIC', 'SYNC', 'SYNCDEPTH', 'SYNCHRONIZED',
- 'TABLE', 'TAL', 'TAPE', 'TERMINAL', 'TERMINATE', 'TEST',
- 'TEXT', 'THAN', 'THEN', 'THROUGH', 'THRU', 'TIME',
- 'TOP', 'TRAILING', 'TRUE', 'TYPE', 'UNIT', 'UNLOCK', 'UNLOCKFILE',
- 'UNLOCKRECORD', 'UNSTRING', 'UP', 'UPON', 'USAGE', 'USE',
- 'USING', 'VALUE', 'VALUES', 'WHEN', 'WITH', 'WORDS',
- 'WORKING-STORAGE', 'WRITE', 'ZERO', 'ZEROES'
+ 3 => array( // Statement Keywords containing no spaces.
+ 'ACCEPT', 'ADD', 'ALTER', 'ALLOCATE', 'ATTACH', 'CALL', 'CANCEL',
+ 'CHAIN', 'CREATE',
+ 'CLOSE', 'COLOR', 'COMPUTE', 'COMMIT', 'CONTINUE',
+ 'COPY', 'DECLARE', 'DELEGATE', 'DELETE', 'DETACH', 'DISPLAY',
+ 'DIVIDE',
+ 'ENTER', 'ENTRY', 'EVALUATE', 'EXAMINE',
+ 'EXEC', 'EXECUTE', 'EXHIBIT', 'EXIT', 'FREE', 'GOBACK',
+ 'IF', 'INITIALIZE', 'INITIATE', 'INSPECT', 'INVOKE', 'MERGE',
+ 'MODIFY', 'MOVE', 'MULTIPLY', 'NOTE', 'ON', 'OPEN',
+ 'PERFORM', 'RAISE', 'READ', 'RECEIVE', 'RELEASE', 'RETURN',
+ 'RESET', 'RESUME',
+ 'REWRITE', 'ROLLBACK', 'SEARCH', 'SELECT', 'SERVICE', 'SET', 'SORT',
+ 'START', 'STOP', 'STRING', 'SUBTRACT', 'SYNC',
+ 'SUPPRESS', 'TERMINATE',
+ 'TRANSFORM', 'TRY', 'UNLOCKFILE', 'UNLOCK', 'UNSTRING', 'USE',
+ 'VALIDATE', 'WAIT', 'WRITE'
),
- 4 => array( //Standard functions
- 'ACOS', 'ANNUITY', 'ASIN', 'ATAN', 'CHAR', 'COS', 'CURRENT-DATE',
- 'DATE-OF-INTEGER', 'DAY-OF-INTEGER', 'FACTORIAL', 'INTEGER',
- 'INTEGER-OF-DATE', 'INTEGER-OF-DAY', 'INTEGER-PART', 'LENGTH',
- 'LOG', 'LOG10', 'LOWER-CASE', 'MAX', 'MEAN', 'MEDIAN', 'MIDRANGE',
- 'MIN', 'MOD', 'NUMVAL', 'NUMVAL-C', 'ORD', 'ORD-MAX', 'ORD-MIN',
- 'PRESENT-VALUE', 'RANDOM', 'RANGE', 'REM', 'REVERSE', 'SIN', 'SQRT',
- 'STANDARD-DEVIATION', 'SUM', 'TAN', 'UPPER-CASE', 'VARIANCE',
- 'WHEN-COMPILED'
+ 4 => array( // Intrinsic functions
+ 'ABS', 'ACOS', 'ANNUITY', 'ASIN', 'ATAN', 'BOOLEAN-OF-INTEGER',
+ 'BYTE-LENGTH', 'CHAR', 'CHAR-NATIONAL',
+ 'COS', 'COMBINED-DATETIME', 'CONCATENATE', 'CURRENT-DATE',
+ 'DATE-OF-INTEGER', 'DATE-TO-YYYYMMDD', 'DAY-TO-YYYYDDD',
+ 'DAY-OF-INTEGER', 'DISPLAY-OF', 'E', 'EXCEPTION-FILE',
+ 'EXCEPTION-FILE-N', 'EXCEPTION-LOCATION',
+ 'EXCEPTION-LOCATION-N', 'EXCEPTION-STATEMENT', 'EXCEPTION-STATUS',
+ 'EXP', 'EXP10', 'FACTORIAL', 'FORMATTED-CURRENT-DATE',
+ 'FORMATTED-DATE', 'FORMATTED-DATETIME', 'FORMATTED-TIME',
+ 'FRACTION-PART', 'HIGHEST-ALGEBRAIC', 'INTEGER',
+ 'INTEGER-OF-BOOLEAN', 'INTEGER-OF-DATE', 'INTEGER-OF-DAY',
+ 'INTEGER-OF-FORMATTED-DATE', 'INTEGER-PART', 'LENGTH',
+ 'LOCALE-COMPARE',
+ 'LOCALE-DATE', 'LOCALE-TIME', 'LOCALE-TIME-FROM-SECONDS',
+ 'LOCALE-TIME-FROM-SECS', 'LOG',
+ 'LOG10', 'LOWER-CASE', 'LOWEST-ALGEBRAIC',
+ 'MAX', 'MEAN', 'MEDIAN', 'MIDRANGE',
+ 'MIN', 'MOD', 'NATIONAL-OF', 'NUMVAL', 'NUMVAL-C', 'NUMVAL-F',
+ 'ORD', 'ORD-MAX', 'ORD-MIN',
+ 'PI', 'PRESENT-VALUE', 'RANDOM', 'RANGE', 'REM', 'REVERSE',
+ 'SECONDS-FROM-FORMATTED-TIME', 'SIGN', 'SIN', 'SQRT',
+ 'SECONDS-PAST-MIDNIGHT', 'STANDARD-DEVIATION', 'STANDARD-COMPARE',
+ 'STORED-CHAR-LENGTH',
+ 'SUBSTITUTE', 'SUBSTITUE-CASE', 'SUM', 'TAN', 'TEST-DATE-YYYYMMDD',
+ 'TEST-DAY-YYYYDDD', 'TEST-FORMATTED-TIME', 'TEST-NUMVAL',
+ 'TEST-NUMVAL-C', 'TEST-NUMVAL-F',
+ 'TRIM', 'UPPER-CASE', 'VARIANCE', 'YEAR-TO-YYYY', 'WHEN-COMPILED'
),
- 5 => array( //Privileged Built-in Functions
- '#IN', '#OUT', '#TERM', '#TEMP', '#DYNAMIC', 'COBOL85^ARMTRAP',
- 'COBOL85^COMPLETION', 'COBOL_COMPLETION_', 'COBOL_CONTROL_',
- 'COBOL_GETENV_', 'COBOL_PUTENV_', 'COBOL85^RETURN^SORT^ERRORS',
- 'COBOL_RETURN_SORT_ERRORS_', 'COBOL85^REWIND^SEQUENTIAL',
- 'COBOL_REWIND_SEQUENTIAL_', 'COBOL85^SET^SORT^PARAM^TEXT',
- 'COBOL_SET_SORT_PARAM_TEXT_', 'COBOL85^SET^SORT^PARAM^VALUE',
- 'COBOL_SET_SORT_PARAM_VALUE_', 'COBOL_SET_MAX_RECORD_',
- 'COBOL_SETMODE_', 'COBOL85^SPECIAL^OPEN', 'COBOL_SPECIAL_OPEN_',
- 'COBOLASSIGN', 'COBOL_ASSIGN_', 'COBOLFILEINFO', 'COBOL_FILE_INFO_',
- 'COBOLSPOOLOPEN', 'CREATEPROCESS', 'ALTERPARAMTEXT',
- 'CHECKLOGICALNAME', 'CHECKMESSAGE', 'DELETEASSIGN', 'DELETEPARAM',
- 'DELETESTARTUP', 'GETASSIGNTEXT', 'GETASSIGNVALUE', 'GETBACKUPCPU',
- 'GETPARAMTEXT', 'GETSTARTUPTEXT', 'PUTASSIGNTEXT', 'PUTASSIGNVALUE',
- 'PUTPARAMTEXT', 'PUTSTARTUPTEXT'
- )
),
'SYMBOLS' => array(
- //Avoid having - in identifiers marked as symbols
- ' + ', ' - ', ' * ', ' / ', ' ** ',
+ // Arithmetic and comparison operators must be surrounded by spaces.
+ ' + ', ' - ', ' * ', ' / ', ' ** ', ' ^ ',
'.', ',',
- '=',
+ ' = ', ' < ', ' > ', ' >= ', ' <= ', ' <> ',
'(', ')', '[', ']'
),
'CASE_SENSITIVE' => array(
@@ -184,22 +397,19 @@ $language_data = array (
2 => false,
3 => false,
4 => false,
- 5 => false
),
'STYLES' => array(
'KEYWORDS' => array(
- 1 => 'color: #000080; font-weight: bold;',
- 2 => 'color: #000000; font-weight: bold;',
- 3 => 'color: #008000; font-weight: bold;',
- 4 => 'color: #000080;',
- 5 => 'color: #008000;',
+ 1 => 'color: #000000; font-weight: bold;',
+ 2 => 'color: #008000; font-weight: bold;',
+ 3 => 'color: #000000; font-weight: bold;',
+ 4 => 'color: #9d7700;',
),
'COMMENTS' => array(
1 => 'color: #a0a0a0; font-style: italic;',
- 'MULTI' => 'color: #a0a0a0; font-style: italic;'
+ 2 => 'color: #000080; font-weight: bold;',
),
'ESCAPE_CHAR' => array(
- 0 => 'color: #000099; font-weight: bold;'
),
'BRACKETS' => array(
0 => 'color: #339933;'
@@ -211,7 +421,7 @@ $language_data = array (
0 => 'color: #993399;'
),
'METHODS' => array(
- 1 => 'color: #202020;'
+ 1 => 'color: #800080;'
),
'SYMBOLS' => array(
0 => 'color: #000066;'
@@ -225,11 +435,11 @@ $language_data = array (
1 => '',
2 => '',
3 => '',
- 4 => '',
- 5 => ''
+ 4 => ''
),
- 'OOLANG' => false,
+ 'OOLANG' => true,
'OBJECT_SPLITTERS' => array(
+ 1 => '::'
),
'REGEXPS' => array(
),
@@ -238,7 +448,10 @@ $language_data = array (
),
'HIGHLIGHT_STRICT_BLOCK' => array(
),
- 'TAB_WIDTH' => 4
- );
-
-?>
+ 'TAB_WIDTH' => 4,
+ 'PARSER_CONTROL' => array(
+ 'KEYWORDS' => array(
+ 'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9-\$_\|\#|^&])',
+ ),
+ ),
+);
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/coffeescript.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/coffeescript.php
index 194aecd0..7a69e216 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/coffeescript.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/coffeescript.php
@@ -4,7 +4,7 @@
* ----------
* Author: Trevor Burnham (trevorburnham@gmail.com)
* Copyright: (c) 2010 Trevor Burnham (http://iterative.ly)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2010/06/08
*
* CoffeeScript language file for GeSHi.
@@ -142,5 +142,3 @@ $language_data = array (
0 => true
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cpp-qt.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cpp-qt.php
index 36626c90..fbd5c842 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cpp-qt.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cpp-qt.php
@@ -4,7 +4,7 @@
* -------
* Author: Iulian M
* Copyright: (c) 2006 Iulian M
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/09/27
*
* C++ (with Qt extensions) language file for GeSHi.
@@ -48,7 +48,11 @@ $language_data = array (
//Multiline-continued single-line comments
1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m',
//Multiline-continued preprocessor define
- 2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m'
+ 2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m',
+ //C++ 11 string literal extensions
+ 3 => '/(?:L|u8?|U)(?=")/',
+ //C++ 11 string literal extensions (raw)
+ 4 => '/R"([^()\s\\\\]*)\((?:(?!\)\\1").)*\)\\1"/ms'
),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array("'", '"'),
@@ -489,6 +493,8 @@ $language_data = array (
'COMMENTS' => array(
1 => 'color: #888888;',
2 => 'color: #006E28;',
+ 3 => 'color: #BF0303;',
+ 4 => 'color: #BF0303;',
'MULTI' => 'color: #888888; font-style: italic;'
),
'ESCAPE_CHAR' => array(
@@ -534,7 +540,7 @@ $language_data = array (
2 => '',
3 => '',
4 => '',
- 5 => 'http://doc.trolltech.com/latest/{FNAMEL}.html'
+ 5 => 'http://qt-project.org/doc/latest/{FNAMEL}.html'
),
'OOLANG' => true,
'OBJECT_SPLITTERS' => array(
@@ -560,5 +566,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cpp-winapi.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cpp-winapi.php
new file mode 100644
index 00000000..f642616a
--- /dev/null
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cpp-winapi.php
@@ -0,0 +1,836 @@
+<?php
+/*************************************************************************************
+ * cpp-winapi.php
+ * -------
+ * Author: Dennis Bayer (Dennis.Bayer@mnifh-giessen.de)
+ * Contributors:
+ * - M. Uli Kusterer (witness.of.teachtext@gmx.net)
+ * - Jack Lloyd (lloyd@randombit.net)
+ * - Benny Baumann (BenBE@geshi.org)
+ * Copyright: (c) 2004 Dennis Bayer, Nigel McNie, 2012 Benny Baumann (http://qbnz.com/highlighter)
+ * Release Version: 1.0.8.12
+ * Date Started: 2004/09/27
+ *
+ * C++ language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2008/05/23 (1.0.7.22)
+ * - Added description of extra language features (SF#1970248)
+ * 2004/XX/XX (1.0.2)
+ * - Added several new keywords (Jack Lloyd)
+ * 2004/11/27 (1.0.1)
+ * - Added StdCLib function and constant names, changed color scheme to
+ * a cleaner one. (M. Uli Kusterer)
+ * - Added support for multiple object splitters
+ * 2004/10/27 (1.0.0)
+ * - First Release
+ *
+ * TODO (updated 2004/11/27)
+ * -------------------------
+ *
+ *************************************************************************************
+ *
+ * This file is part of GeSHi.
+ *
+ * GeSHi is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * GeSHi is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GeSHi; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ ************************************************************************************/
+
+$language_data = array (
+ 'LANG_NAME' => 'C++ (WinAPI)',
+ 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
+ 'COMMENT_MULTI' => array('/*' => '*/'),
+ 'COMMENT_REGEXP' => array(
+ //Multiline-continued single-line comments
+ 1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m',
+ //Multiline-continued preprocessor define
+ 2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m',
+ //C++ 11 string literal extensions
+ 3 => '/(?:L|u8?|U)(?=")/',
+ //C++ 11 string literal extensions (raw)
+ 4 => '/R"([^()\s\\\\]*)\((?:(?!\)\\1").)*\)\\1"/ms'
+ ),
+ 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
+ 'QUOTEMARKS' => array("'", '"'),
+ 'ESCAPE_CHAR' => '',
+ 'ESCAPE_REGEXP' => array(
+ //Simple Single Char Escapes
+ 1 => "#\\\\[abfnrtv\\\'\"?\n]#i",
+ //Hexadecimal Char Specs
+ 2 => "#\\\\x[\da-fA-F]{2}#",
+ //Hexadecimal Char Specs
+ 3 => "#\\\\u[\da-fA-F]{4}#",
+ //Hexadecimal Char Specs
+ 4 => "#\\\\U[\da-fA-F]{8}#",
+ //Octal Char Specs
+ 5 => "#\\\\[0-7]{1,3}#"
+ ),
+ 'NUMBERS' =>
+ GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B |
+ GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI |
+ GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO,
+ 'KEYWORDS' => array(
+ 1 => array(
+ 'break', 'case', 'continue', 'default', 'do', 'else', 'for', 'goto', 'if', 'return',
+ 'switch', 'throw', 'while'
+ ),
+ 2 => array(
+ 'NULL', 'false', 'true', 'enum', 'errno', 'EDOM',
+ 'ERANGE', 'FLT_RADIX', 'FLT_ROUNDS', 'FLT_DIG', 'DBL_DIG', 'LDBL_DIG',
+ 'FLT_EPSILON', 'DBL_EPSILON', 'LDBL_EPSILON', 'FLT_MANT_DIG', 'DBL_MANT_DIG',
+ 'LDBL_MANT_DIG', 'FLT_MAX', 'DBL_MAX', 'LDBL_MAX', 'FLT_MAX_EXP', 'DBL_MAX_EXP',
+ 'LDBL_MAX_EXP', 'FLT_MIN', 'DBL_MIN', 'LDBL_MIN', 'FLT_MIN_EXP', 'DBL_MIN_EXP',
+ 'LDBL_MIN_EXP', 'CHAR_BIT', 'CHAR_MAX', 'CHAR_MIN', 'SCHAR_MAX', 'SCHAR_MIN',
+ 'UCHAR_MAX', 'SHRT_MAX', 'SHRT_MIN', 'USHRT_MAX', 'INT_MAX', 'INT_MIN',
+ 'UINT_MAX', 'LONG_MAX', 'LONG_MIN', 'ULONG_MAX', 'HUGE_VAL', 'SIGABRT',
+ 'SIGFPE', 'SIGILL', 'SIGINT', 'SIGSEGV', 'SIGTERM', 'SIG_DFL', 'SIG_ERR',
+ 'SIG_IGN', 'BUFSIZ', 'EOF', 'FILENAME_MAX', 'FOPEN_MAX', 'L_tmpnam',
+ 'SEEK_CUR', 'SEEK_END', 'SEEK_SET', 'TMP_MAX', 'stdin', 'stdout', 'stderr',
+ 'EXIT_FAILURE', 'EXIT_SUCCESS', 'RAND_MAX', 'CLOCKS_PER_SEC',
+ 'virtual', 'public', 'private', 'protected', 'template', 'using', 'namespace',
+ 'try', 'catch', 'inline', 'dynamic_cast', 'const_cast', 'reinterpret_cast',
+ 'static_cast', 'explicit', 'friend', 'typename', 'typeid', 'class'
+ ),
+ 3 => array(
+ 'cin', 'cerr', 'clog', 'cout', 'delete', 'new', 'this',
+ 'printf', 'fprintf', 'snprintf', 'sprintf', 'assert',
+ 'isalnum', 'isalpha', 'isdigit', 'iscntrl', 'isgraph', 'islower', 'isprint',
+ 'ispunct', 'isspace', 'isupper', 'isxdigit', 'tolower', 'toupper',
+ 'exp', 'log', 'log10', 'pow', 'sqrt', 'ceil', 'floor', 'fabs', 'ldexp',
+ 'frexp', 'modf', 'fmod', 'sin', 'cos', 'tan', 'asin', 'acos', 'atan', 'atan2',
+ 'sinh', 'cosh', 'tanh', 'setjmp', 'longjmp',
+ 'va_start', 'va_arg', 'va_end', 'offsetof', 'sizeof', 'fopen', 'freopen',
+ 'fflush', 'fclose', 'remove', 'rename', 'tmpfile', 'tmpname', 'setvbuf',
+ 'setbuf', 'vfprintf', 'vprintf', 'vsprintf', 'fscanf', 'scanf', 'sscanf',
+ 'fgetc', 'fgets', 'fputc', 'fputs', 'getc', 'getchar', 'gets', 'putc',
+ 'putchar', 'puts', 'ungetc', 'fread', 'fwrite', 'fseek', 'ftell', 'rewind',
+ 'fgetpos', 'fsetpos', 'clearerr', 'feof', 'ferror', 'perror', 'abs', 'labs',
+ 'div', 'ldiv', 'atof', 'atoi', 'atol', 'strtod', 'strtol', 'strtoul', 'calloc',
+ 'malloc', 'realloc', 'free', 'abort', 'exit', 'atexit', 'system', 'getenv',
+ 'bsearch', 'qsort', 'rand', 'srand', 'strcpy', 'strncpy', 'strcat', 'strncat',
+ 'strcmp', 'strncmp', 'strcoll', 'strchr', 'strrchr', 'strspn', 'strcspn',
+ 'strpbrk', 'strstr', 'strlen', 'strerror', 'strtok', 'strxfrm', 'memcpy',
+ 'memmove', 'memcmp', 'memchr', 'memset', 'clock', 'time', 'difftime', 'mktime',
+ 'asctime', 'ctime', 'gmtime', 'localtime', 'strftime'
+ ),
+ 4 => array(
+ 'auto', 'bool', 'char', 'const', 'double', 'float', 'int', 'long', 'longint',
+ 'register', 'short', 'shortint', 'signed', 'static', 'struct',
+ 'typedef', 'union', 'unsigned', 'void', 'volatile', 'extern', 'jmp_buf',
+ 'signal', 'raise', 'va_list', 'ptrdiff_t', 'size_t', 'FILE', 'fpos_t',
+ 'div_t', 'ldiv_t', 'clock_t', 'time_t', 'tm', 'wchar_t',
+
+ 'int8', 'int16', 'int32', 'int64',
+ 'uint8', 'uint16', 'uint32', 'uint64',
+
+ 'int_fast8_t', 'int_fast16_t', 'int_fast32_t', 'int_fast64_t',
+ 'uint_fast8_t', 'uint_fast16_t', 'uint_fast32_t', 'uint_fast64_t',
+
+ 'int_least8_t', 'int_least16_t', 'int_least32_t', 'int_least64_t',
+ 'uint_least8_t', 'uint_least16_t', 'uint_least32_t', 'uint_least64_t',
+
+ 'int8_t', 'int16_t', 'int32_t', 'int64_t',
+ 'uint8_t', 'uint16_t', 'uint32_t', 'uint64_t',
+
+ 'intmax_t', 'uintmax_t', 'intptr_t', 'uintptr_t'
+ ),
+ // Public API
+ 5 => array(
+ 'AssignProcessToJobObject', 'CommandLineToArgvW', 'ConvertThreadToFiber',
+ 'CreateFiber', 'CreateJobObjectA', 'CreateJobObjectW', 'CreateProcessA',
+ 'CreateProcessAsUserA', 'CreateProcessAsUserW', 'CreateProcessW',
+ 'CreateRemoteThread', 'CreateThread', 'DeleteFiber', 'ExitProcess',
+ 'ExitThread', 'FreeEnvironmentStringsA', 'FreeEnvironmentStringsW',
+ 'GetCommandLineA', 'GetCommandLineW', 'GetCurrentProcess',
+ 'GetCurrentProcessId', 'GetCurrentThread', 'GetCurrentThreadId',
+ 'GetEnvironmentStringsA', 'GetEnvironmentStringsW',
+ 'GetEnvironmentVariableA', 'GetEnvironmentVariableW', 'GetExitCodeProcess',
+ 'GetExitCodeThread', 'GetGuiResources', 'GetPriorityClass',
+ 'GetProcessAffinityMask', 'GetProcessPriorityBoost',
+ 'GetProcessShutdownParameters', 'GetProcessTimes', 'GetProcessVersion',
+ 'GetProcessWorkingSetSize', 'GetStartupInfoA', 'GetStartupInfoW',
+ 'GetThreadPriority', 'GetThreadPriorityBoost', 'GetThreadTimes',
+ 'OpenJobObjectA', 'OpenJobObjectW', 'OpenProcess',
+ 'QueryInformationJobObject', 'ResumeThread', 'SetEnvironmentVariableA',
+ 'SetEnvironmentVariableW', 'SetInformationJobObject', 'SetPriorityClass',
+ 'SetProcessAffinityMask', 'SetProcessPriorityBoost',
+ 'SetProcessShutdownParameters', 'SetProcessWorkingSetSize',
+ 'SetThreadAffinityMask', 'SetThreadIdealProcessor', 'SetThreadPriority',
+ 'SetThreadPriorityBoost', 'Sleep', 'SleepEx', 'SuspendThread',
+ 'SwitchToFiber', 'SwitchToThread', 'TerminateJobObject', 'TerminateProcess',
+ 'TerminateThread', 'WaitForInputIdle', 'WinExec',
+
+ '_hread', '_hwrite', '_lclose', '_lcreat', '_llseek', '_lopen', '_lread',
+ '_lwrite', 'AreFileApisANSI', 'CancelIo', 'CopyFileA', 'CopyFileW',
+ 'CreateDirectoryA', 'CreateDirectoryExA', 'CreateDirectoryExW',
+ 'CreateDirectoryW', 'CreateFileA', 'CreateFileW', 'DeleteFileA',
+ 'DeleteFileW', 'FindClose', 'FindCloseChangeNotification',
+ 'FindFirstChangeNotificationA', 'FindFirstChangeNotificationW',
+ 'FindFirstFileA', 'FindFirstFileW', 'FindNextFileA', 'FindNextFileW',
+ 'FlushFileBuffers', 'GetCurrentDirectoryA', 'GetCurrentDirectoryW',
+ 'GetDiskFreeSpaceA', 'GetDiskFreeSpaceExA', 'GetDiskFreeSpaceExW',
+ 'GetDiskFreeSpaceW', 'GetDriveTypeA', 'GetDriveTypeW', 'GetFileAttributesA',
+ 'GetFileAttributesExA', 'GetFileAttributesExW', 'GetFileAttributesW',
+ 'GetFileInformationByHandle', 'GetFileSize', 'GetFileType',
+ 'GetFullPathNameA', 'GetFullPathNameW', 'GetLogicalDrives',
+ 'GetLogicalDriveStringsA', 'GetLogicalDriveStringsW', 'GetLongPathNameA',
+ 'GetLongPathNameW', 'GetShortPathNameA', 'GetShortPathNameW',
+ 'GetTempFileNameA', 'GetTempFileNameW', 'GetTempPathA', 'GetTempPathW',
+ 'LockFile', 'MoveFileA', 'MoveFileW', 'MulDiv', 'OpenFile',
+ 'QueryDosDeviceA', 'QueryDosDeviceW', 'ReadFile', 'ReadFileEx',
+ 'RemoveDirectoryA', 'RemoveDirectoryW', 'SearchPathA', 'SearchPathW',
+ 'SetCurrentDirectoryA', 'SetCurrentDirectoryW', 'SetEndOfFile',
+ 'SetFileApisToANSI', 'SetFileApisToOEM', 'SetFileAttributesA',
+ 'SetFileAttributesW', 'SetFilePointer', 'SetHandleCount',
+ 'SetVolumeLabelA', 'SetVolumeLabelW', 'UnlockFile', 'WriteFile',
+ 'WriteFileEx',
+
+ 'DeviceIoControl',
+
+ 'GetModuleFileNameA', 'GetModuleFileNameW', 'GetProcAddress',
+ 'LoadLibraryA', 'LoadLibraryExA', 'LoadLibraryExW', 'LoadLibraryW',
+ 'LoadModule',
+
+ 'GetPrivateProfileIntA', 'GetPrivateProfileIntW',
+ 'GetPrivateProfileSectionA', 'GetPrivateProfileSectionNamesA',
+ 'GetPrivateProfileSectionNamesW', 'GetPrivateProfileSectionW',
+ 'GetPrivateProfileStringA', 'GetPrivateProfileStringW',
+ 'GetPrivateProfileStructA', 'GetPrivateProfileStructW',
+ 'GetProfileIntA', 'GetProfileIntW', 'GetProfileSectionA',
+ 'GetProfileSectionW', 'GetProfileStringA', 'GetProfileStringW',
+ 'RegCloseKey', 'RegConnectRegistryA', 'RegConnectRegistryW',
+ 'RegCreateKeyA', 'RegCreateKeyExA', 'RegCreateKeyExW',
+ 'RegCreateKeyW', 'RegDeleteKeyA', 'RegDeleteKeyW', 'RegDeleteValueA',
+ 'RegDeleteValueW', 'RegEnumKeyA', 'RegEnumKeyExA', 'RegEnumKeyExW',
+ 'RegEnumKeyW', 'RegEnumValueA', 'RegEnumValueW', 'RegFlushKey',
+ 'RegGetKeySecurity', 'RegLoadKeyA', 'RegLoadKeyW',
+ 'RegNotifyChangeKeyValue', 'RegOpenKeyA', 'RegOpenKeyExA', 'RegOpenKeyExW',
+ 'RegOpenKeyW', 'RegOverridePredefKey', 'RegQueryInfoKeyA',
+ 'RegQueryInfoKeyW', 'RegQueryMultipleValuesA', 'RegQueryMultipleValuesW',
+ 'RegQueryValueA', 'RegQueryValueExA', 'RegQueryValueExW', 'RegQueryValueW',
+ 'RegReplaceKeyA', 'RegReplaceKeyW', 'RegRestoreKeyA', 'RegRestoreKeyW',
+ 'RegSaveKeyA', 'RegSaveKeyW', 'RegSetKeySecurity', 'RegSetValueA',
+ 'RegSetValueExA', 'RegSetValueExW', 'RegSetValueW', 'RegUnLoadKeyA',
+ 'RegUnLoadKeyW', 'WritePrivateProfileSectionA', 'WritePrivateProfileSectionW',
+ 'WritePrivateProfileStringA', 'WritePrivateProfileStringW',
+ 'WritePrivateProfileStructA', 'WritePrivateProfileStructW',
+ 'WriteProfileSectionA', 'WriteProfileSectionW', 'WriteProfileStringA',
+ 'WriteProfileStringW',
+
+ 'AccessCheck', 'AccessCheckAndAuditAlarmA', 'AccessCheckAndAuditAlarmW',
+ 'AccessCheckByType', 'AccessCheckByTypeAndAuditAlarmA',
+ 'AccessCheckByTypeAndAuditAlarmW', 'AccessCheckByTypeResultList',
+ 'AccessCheckByTypeResultListAndAuditAlarmA', 'AccessCheckByTypeResultListAndAuditAlarmW',
+ 'AddAccessAllowedAce', 'AddAccessAllowedAceEx', 'AddAccessAllowedObjectAce',
+ 'AddAccessDeniedAce', 'AddAccessDeniedAceEx', 'AddAccessDeniedObjectAce',
+ 'AddAce', 'AddAuditAccessAce', 'AddAuditAccessAceEx', 'AddAuditAccessObjectAce',
+ 'AdjustTokenGroups', 'AdjustTokenPrivileges', 'AllocateAndInitializeSid',
+ 'AllocateLocallyUniqueId', 'AreAllAccessesGranted', 'AreAnyAccessesGranted',
+ 'BuildExplicitAccessWithNameA', 'BuildExplicitAccessWithNameW',
+ 'BuildImpersonateExplicitAccessWithNameA', 'BuildImpersonateExplicitAccessWithNameW',
+ 'BuildImpersonateTrusteeA', 'BuildImpersonateTrusteeW', 'BuildSecurityDescriptorA',
+ 'BuildSecurityDescriptorW', 'BuildTrusteeWithNameA', 'BuildTrusteeWithNameW',
+ 'BuildTrusteeWithSidA', 'BuildTrusteeWithSidW',
+ 'ConvertToAutoInheritPrivateObjectSecurity', 'CopySid', 'CreatePrivateObjectSecurity',
+ 'CreatePrivateObjectSecurityEx', 'CreateRestrictedToken', 'DeleteAce',
+ 'DestroyPrivateObjectSecurity', 'DuplicateToken', 'DuplicateTokenEx',
+ 'EqualPrefixSid', 'EqualSid', 'FindFirstFreeAce', 'FreeSid', 'GetAce',
+ 'GetAclInformation', 'GetAuditedPermissionsFromAclA', 'GetAuditedPermissionsFromAclW',
+ 'GetEffectiveRightsFromAclA', 'GetEffectiveRightsFromAclW',
+ 'GetExplicitEntriesFromAclA', 'GetExplicitEntriesFromAclW', 'GetFileSecurityA',
+ 'GetFileSecurityW', 'GetKernelObjectSecurity', 'GetLengthSid', 'GetMultipleTrusteeA',
+ 'GetMultipleTrusteeOperationA', 'GetMultipleTrusteeOperationW', 'GetMultipleTrusteeW',
+ 'GetNamedSecurityInfoA', 'GetNamedSecurityInfoW', 'GetPrivateObjectSecurity',
+ 'GetSecurityDescriptorControl', 'GetSecurityDescriptorDacl',
+ 'GetSecurityDescriptorGroup', 'GetSecurityDescriptorLength',
+ 'GetSecurityDescriptorOwner', 'GetSecurityDescriptorSacl', 'GetSecurityInfo',
+ 'GetSidIdentifierAuthority', 'GetSidLengthRequired', 'GetSidSubAuthority',
+ 'GetSidSubAuthorityCount', 'GetTokenInformation', 'GetTrusteeFormA',
+ 'GetTrusteeFormW', 'GetTrusteeNameA', 'GetTrusteeNameW', 'GetTrusteeTypeA',
+ 'GetTrusteeTypeW', 'GetUserObjectSecurity', 'ImpersonateLoggedOnUser',
+ 'ImpersonateNamedPipeClient', 'ImpersonateSelf', 'InitializeAcl',
+ 'InitializeSecurityDescriptor', 'InitializeSid', 'IsTokenRestricted', 'IsValidAcl',
+ 'IsValidSecurityDescriptor', 'IsValidSid', 'LogonUserA', 'LogonUserW',
+ 'LookupAccountNameA', 'LookupAccountNameW', 'LookupAccountSidA', 'LookupAccountSidW',
+ 'LookupPrivilegeDisplayNameA', 'LookupPrivilegeDisplayNameW', 'LookupPrivilegeNameA',
+ 'LookupPrivilegeNameW', 'LookupPrivilegeValueA', 'LookupPrivilegeValueW',
+ 'LookupSecurityDescriptorPartsA', 'LookupSecurityDescriptorPartsW', 'MakeAbsoluteSD',
+ 'MakeSelfRelativeSD', 'MapGenericMask', 'ObjectCloseAuditAlarmA',
+ 'ObjectCloseAuditAlarmW', 'ObjectDeleteAuditAlarmA', 'ObjectDeleteAuditAlarmW',
+ 'ObjectOpenAuditAlarmA', 'ObjectOpenAuditAlarmW', 'ObjectPrivilegeAuditAlarmA',
+ 'ObjectPrivilegeAuditAlarmW', 'OpenProcessToken', 'OpenThreadToken', 'PrivilegeCheck',
+ 'PrivilegedServiceAuditAlarmA', 'PrivilegedServiceAuditAlarmW', 'RevertToSelf',
+ 'SetAclInformation', 'SetEntriesInAclA', 'SetEntriesInAclW', 'SetFileSecurityA',
+ 'SetFileSecurityW', 'SetKernelObjectSecurity', 'SetNamedSecurityInfoA',
+ 'SetNamedSecurityInfoW', 'SetPrivateObjectSecurity', 'SetPrivateObjectSecurityEx',
+ 'SetSecurityDescriptorControl', 'SetSecurityDescriptorDacl',
+ 'SetSecurityDescriptorGroup', 'SetSecurityDescriptorOwner',
+ 'SetSecurityDescriptorSacl', 'SetSecurityInfo', 'SetThreadToken',
+ 'SetTokenInformation', 'SetUserObjectSecurity', 'ChangeServiceConfig2A',
+ 'ChangeServiceConfig2W', 'ChangeServiceConfigA', 'ChangeServiceConfigW',
+ 'CloseServiceHandle', 'ControlService', 'CreateServiceA', 'CreateServiceW',
+ 'DeleteService', 'EnumDependentServicesA', 'EnumDependentServicesW',
+ 'EnumServicesStatusA', 'EnumServicesStatusW', 'GetServiceDisplayNameA',
+ 'GetServiceDisplayNameW', 'GetServiceKeyNameA', 'GetServiceKeyNameW',
+ 'LockServiceDatabase', 'NotifyBootConfigStatus', 'OpenSCManagerA', 'OpenSCManagerW',
+ 'OpenServiceA', 'OpenServiceW', 'QueryServiceConfig2A', 'QueryServiceConfig2W',
+ 'QueryServiceConfigA', 'QueryServiceConfigW', 'QueryServiceLockStatusA',
+ 'QueryServiceLockStatusW', 'QueryServiceObjectSecurity', 'QueryServiceStatus',
+ 'RegisterServiceCtrlHandlerA', 'RegisterServiceCtrlHandlerW',
+ 'SetServiceObjectSecurity', 'SetServiceStatus', 'StartServiceA',
+ 'StartServiceCtrlDispatcherA', 'StartServiceCtrlDispatcherW', 'StartServiceW',
+ 'UnlockServiceDatabase',
+
+ 'MultinetGetConnectionPerformanceA', 'MultinetGetConnectionPerformanceW',
+ 'NetAlertRaise', 'NetAlertRaiseEx', 'NetApiBufferAllocate', 'NetApiBufferFree',
+ 'NetApiBufferReallocate', 'NetApiBufferSize', 'NetConnectionEnum', 'NetFileClose',
+ 'NetFileGetInfo', 'NetGetAnyDCName', 'NetGetDCName', 'NetGetDisplayInformationIndex',
+ 'NetGroupAdd', 'NetGroupAddUser', 'NetGroupDel', 'NetGroupDelUser', 'NetGroupEnum',
+ 'NetGroupGetInfo', 'NetGroupGetUsers', 'NetGroupSetInfo', 'NetGroupSetUsers',
+ 'NetLocalGroupAdd', 'NetLocalGroupAddMember', 'NetLocalGroupAddMembers',
+ 'NetLocalGroupDel', 'NetLocalGroupDelMember', 'NetLocalGroupDelMembers',
+ 'NetLocalGroupEnum', 'NetLocalGroupGetInfo', 'NetLocalGroupGetMembers',
+ 'NetLocalGroupSetInfo', 'NetLocalGroupSetMembers', 'NetMessageBufferSend',
+ 'NetMessageNameAdd', 'NetMessageNameDel', 'NetMessageNameEnum',
+ 'NetMessageNameGetInfo', 'NetQueryDisplayInformation', 'NetRemoteComputerSupports',
+ 'NetRemoteTOd', 'NetReplExportDirAdd', 'NetReplExportDirDel', 'NetReplExportDirEnum',
+ 'NetReplExportDirGetInfo', 'NetReplExportDirLock', 'NetReplExportDirSetInfo',
+ 'NetReplExportDirUnlock', 'NetReplGetInfo', 'NetReplImportDirAdd',
+ 'NetReplImportDirDel', 'NetReplImportDirEnum', 'NetReplImportDirGetInfo',
+ 'NetReplImportDirLock', 'NetReplImportDirUnlock', 'NetReplSetInfo',
+ 'NetScheduleJobAdd', 'NetScheduleJobDel', 'NetScheduleJobEnum',
+ 'NetScheduleJobGetInfo', 'NetServerComputerNameAdd', 'NetServerComputerNameDel',
+ 'NetServerDiskEnum', 'NetServerEnum', 'NetServerEnumEx', 'NetServerGetInfo',
+ 'NetServerSetInfo', 'NetServerTransportAdd', 'NetServerTransportAddEx',
+ 'NetServerTransportDel', 'NetServerTransportEnum', 'NetSessionDel', 'NetSessionEnum',
+ 'NetSessionGetInfo', 'NetShareAdd', 'NetShareCheck', 'NetShareDel', 'NetShareEnum',
+ 'NetShareGetInfo', 'NetShareSetInfo', 'NetStatisticsGet', 'NetUseAdd', 'NetUseDel',
+ 'NetUseEnum', 'NetUseGetInfo', 'NetUserAdd', 'NetUserChangePassword', 'NetUserDel',
+ 'NetUserEnum', 'NetUserGetGroups', 'NetUserGetInfo', 'NetUserGetLocalGroups',
+ 'NetUserModalsGet', 'NetUserModalsSet', 'NetUserSetGroups', 'NetUserSetInfo',
+ 'NetWkstaGetInfo', 'NetWkstaSetInfo', 'NetWkstaTransportAdd', 'NetWkstaTransportDel',
+ 'NetWkstaTransportEnum', 'NetWkstaUserEnum', 'NetWkstaUserGetInfo',
+ 'NetWkstaUserSetInfo', 'WNetAddConnection2A', 'WNetAddConnection2W',
+ 'WNetAddConnection3A', 'WNetAddConnection3W', 'WNetAddConnectionA',
+ 'WNetAddConnectionW', 'WNetCancelConnection2A', 'WNetCancelConnection2W',
+ 'WNetCancelConnectionA', 'WNetCancelConnectionW', 'WNetCloseEnum',
+ 'WNetConnectionDialog', 'WNetConnectionDialog1A', 'WNetConnectionDialog1W',
+ 'WNetDisconnectDialog', 'WNetDisconnectDialog1A', 'WNetDisconnectDialog1W',
+ 'WNetEnumResourceA', 'WNetEnumResourceW', 'WNetGetConnectionA', 'WNetGetConnectionW',
+ 'WNetGetLastErrorA', 'WNetGetLastErrorW', 'WNetGetNetworkInformationA',
+ 'WNetGetNetworkInformationW', 'WNetGetProviderNameA', 'WNetGetProviderNameW',
+ 'WNetGetResourceInformationA', 'WNetGetResourceInformationW',
+ 'WNetGetResourceParentA', 'WNetGetResourceParentW', 'WNetGetUniversalNameA',
+ 'WNetGetUniversalNameW', 'WNetGetUserA', 'WNetGetUserW', 'WNetOpenEnumA',
+ 'WNetOpenEnumW', 'WNetUseConnectionA', 'WnetUseConnectionW',
+
+ 'accept', 'bind', 'closesocket', 'connect', 'gethostbyaddr', 'gethostbyname',
+ 'gethostname', 'getpeername', 'getprotobyname', 'getprotobynumber', 'getservbyname',
+ 'getservbyport', 'getsockname', 'getsockopt', 'htonl', 'htons', 'inet_addr',
+ 'inet_ntoa', 'ioctlsocket', 'listen', 'ntohl', 'ntohs', 'recv', 'recvfrom', 'select',
+ 'send', 'sendto', 'setsockopt', 'shutdown', 'socket', 'WSAAccept',
+ 'WSAAddressToStringA', 'WSAAddressToStringW', 'WSAAsyncGetHostByAddr',
+ 'WSAAsyncGetHostByName', 'WSAAsyncGetProtoByName', 'WSAAsyncGetProtoByNumber',
+ 'WSAAsyncGetServByName', 'WSAAsyncGetServByPort', 'WSAAsyncSelect',
+ 'WSACancelAsyncRequest', 'WSACancelBlockingCall', 'WSACleanup', 'WSACloseEvent',
+ 'WSAConnect', 'WSACreateEvent', 'WSADuplicateSocketA', 'WSADuplicateSocketW',
+ 'WSAEnumNameSpaceProvidersA', 'WSAEnumNameSpaceProvidersW', 'WSAEnumNetworkEvents',
+ 'WSAEnumProtocolsA', 'WSAEnumProtocolsW', 'WSAEventSelect', 'WSAGetLastError',
+ 'WSAGetOverlappedResult', 'WSAGetQOSByName', 'WSAGetServiceClassInfoA',
+ 'WSAGetServiceClassInfoW', 'WSAGetServiceClassNameByClassIdA',
+ 'WSAGetServiceClassNameByClassIdW', 'WSAHtonl', 'WSAHtons', 'WSAInstallServiceClassA',
+ 'WSAInstallServiceClassW', 'WSAIoctl', 'WSAIsBlocking', 'WSAJoinLeaf',
+ 'WSALookupServiceBeginA', 'WSALookupServiceBeginW', 'WSALookupServiceEnd',
+ 'WSALookupServiceNextA', 'WSALookupServiceNextW', 'WSANtohl', 'WSANtohs',
+ 'WSAProviderConfigChange', 'WSARecv', 'WSARecvDisconnect', 'WSARecvFrom',
+ 'WSARemoveServiceClass', 'WSAResetEvent', 'WSASend', 'WSASendDisconnect', 'WSASendTo',
+ 'WSASetBlockingHook', 'WSASetEvent', 'WSASetLastError', 'WSASetServiceA',
+ 'WSASetServiceW', 'WSASocketA', 'WSASocketW', 'WSAStartup', 'WSAStringToAddressA',
+ 'WSAStringToAddressW', 'WSAUnhookBlockingHook', 'WSAWaitForMultipleEvents',
+ 'WSCDeinstallProvider', 'WSCEnableNSProvider', 'WSCEnumProtocols',
+ 'WSCGetProviderPath', 'WSCInstallNameSpace', 'WSCInstallProvider',
+ 'WSCUnInstallNameSpace',
+
+ 'ContinueDebugEvent', 'DebugActiveProcess', 'DebugBreak', 'FatalExit',
+ 'FlushInstructionCache', 'GetThreadContext', 'GetThreadSelectorEntry',
+ 'IsDebuggerPresent', 'OutputDebugStringA', 'OutputDebugStringW', 'ReadProcessMemory',
+ 'SetDebugErrorLevel', 'SetThreadContext', 'WaitForDebugEvent', 'WriteProcessMemory',
+
+ 'CloseHandle', 'DuplicateHandle', 'GetHandleInformation', 'SetHandleInformation',
+
+ 'AdjustWindowRect', 'AdjustWindowRectEx', 'AllowSetForegroundWindow',
+ 'AnimateWindow', 'AnyPopup', 'ArrangeIconicWindows', 'BeginDeferWindowPos',
+ 'BringWindowToTop', 'CascadeWindows', 'ChildWindowFromPoint',
+ 'ChildWindowFromPointEx', 'CloseWindow', 'CreateWindowExA', 'CreateWindowExW',
+ 'DeferWindowPos', 'DestroyWindow', 'EndDeferWindowPos', 'EnumChildWindows',
+ 'EnumThreadWindows', 'EnumWindows', 'FindWindowA', 'FindWindowExA', 'FindWindowExW',
+ 'FindWindowW', 'GetAltTabInfoA', 'GetAltTabInfoW', 'GetAncestor', 'GetClientRect',
+ 'GetDesktopWindow', 'GetForegroundWindow', 'GetGUIThreadInfo', 'GetLastActivePopup',
+ 'GetLayout', 'GetParent', 'GetProcessDefaultLayout', 'GetTitleBarInf', 'GetTopWindow',
+ 'GetWindow', 'GetWindowInfo', 'GetWindowModuleFileNameA', 'GetWindowModuleFileNameW',
+ 'GetWindowPlacement', 'GetWindowRect', 'GetWindowTextA', 'GetWindowTextLengthA',
+ 'GetWindowTextLengthW', 'GetWindowTextW', 'GetWindowThreadProcessId', 'IsChild',
+ 'IsIconic', 'IsWindow', 'IsWindowUnicode', 'IsWindowVisible', 'IsZoomed',
+ 'LockSetForegroundWindow', 'MoveWindow', 'OpenIcon', 'RealChildWindowFromPoint',
+ 'RealGetWindowClassA', 'RealGetWindowClassW', 'SetForegroundWindow',
+ 'SetLayeredWindowAttributes', 'SetLayout', 'SetParent', 'SetProcessDefaultLayout',
+ 'SetWindowPlacement', 'SetWindowPos', 'SetWindowTextA', 'SetWindowTextW',
+ 'ShowOwnedPopups', 'ShowWindow', 'ShowWindowAsync', 'TileWindows',
+ 'UpdateLayeredWindow', 'WindowFromPoint',
+
+ 'CreateDialogIndirectParamA', 'CreateDialogIndirectParamW', 'CreateDialogParamA',
+ 'CreateDialogParamW', 'DefDlgProcA', 'DefDlgProcW', 'DialogBoxIndirectParamA',
+ 'DialogBoxIndirectParamW', 'DialogBoxParamA', 'DialogBoxParamW', 'EndDialog',
+ 'GetDialogBaseUnits', 'GetDlgCtrlID', 'GetDlgItem', 'GetDlgItemInt',
+ 'GetDlgItemTextA', 'GetDlgItemTextW', 'GetNextDlgGroupItem', 'GetNextDlgTabItem',
+ 'IsDialogMessageA', 'IsDialogMessageW', 'MapDialogRect', 'MessageBoxA',
+ 'MessageBoxExA', 'MessageBoxExW', 'MessageBoxIndirectA', 'MessageBoxIndirectW',
+ 'MessageBoxW', 'SendDlgItemMessageA', 'SendDlgItemMessageW', 'SetDlgItemInt',
+ 'SetDlgItemTextA', 'SetDlgItemTextW',
+
+ 'GetWriteWatch', 'GlobalMemoryStatus', 'GlobalMemoryStatusEx', 'IsBadCodePtr',
+ 'IsBadReadPtr', 'IsBadStringPtrA', 'IsBadStringPtrW', 'IsBadWritePtr',
+ 'ResetWriteWatch', 'AllocateUserPhysicalPages', 'FreeUserPhysicalPages',
+ 'MapUserPhysicalPages', 'MapUserPhysicalPagesScatter', 'GlobalAlloc', 'GlobalFlags',
+ 'GlobalFree', 'GlobalHandle', 'GlobalLock', 'GlobalReAlloc', 'GlobalSize',
+ 'GlobalUnlock', 'LocalAlloc', 'LocalFlags', 'LocalFree', 'LocalHandle', 'LocalLock',
+ 'LocalReAlloc', 'LocalSize', 'LocalUnlock', 'GetProcessHeap', 'GetProcessHeaps',
+ 'HeapAlloc', 'HeapCompact', 'HeapCreate', 'HeapDestroy', 'HeapFree', 'HeapLock',
+ 'HeapReAlloc', 'HeapSize', 'HeapUnlock', 'HeapValidate', 'HeapWalk', 'VirtualAlloc',
+ 'VirtualAllocEx', 'VirtualFree', 'VirtualFreeEx', 'VirtualLock', 'VirtualProtect',
+ 'VirtualProtectEx', 'VirtualQuery', 'VirtualQueryEx', 'VirtualUnlock',
+ 'GetFreeSpace', 'GlobalCompact', 'GlobalFix', 'GlobalUnfix', 'GlobalUnWire',
+ 'GlobalWire', 'IsBadHugeReadPtr', 'IsBadHugeWritePtr', 'LocalCompact', 'LocalShrink',
+
+ 'GetClassInfoA', 'GetClassInfoW', 'GetClassInfoExA', 'GetClassInfoExW',
+ 'GetClassLongA', 'GetClassLongW', 'GetClassLongPtrA', 'GetClassLongPtrW',
+ 'RegisterClassA', 'RegisterClassW', 'RegisterClassExA', 'RegisterClassExW',
+ 'SetClassLongA', 'SetClassLongW', 'SetClassLongPtrA', 'SetClassLongPtrW',
+ 'SetWindowLongA', 'SetWindowLongW', 'SetWindowLongPtrA', 'SetWindowLongPtrW',
+ 'UnregisterClassA', 'UnregisterClassW', 'GetClassWord', 'GetWindowWord',
+ 'SetClassWord', 'SetWindowWord'
+ ),
+ // Native API
+ 6 => array(
+ 'CsrAllocateCaptureBuffer', 'CsrAllocateCapturePointer', 'CsrAllocateMessagePointer',
+ 'CsrCaptureMessageBuffer', 'CsrCaptureMessageString', 'CsrCaptureTimeout',
+ 'CsrClientCallServer', 'CsrClientConnectToServer', 'CsrFreeCaptureBuffer',
+ 'CsrIdentifyAlertableThread', 'CsrNewThread', 'CsrProbeForRead', 'CsrProbeForWrite',
+ 'CsrSetPriorityClass',
+
+ 'LdrAccessResource', 'LdrDisableThreadCalloutsForDll', 'LdrEnumResources',
+ 'LdrFindEntryForAddress', 'LdrFindResource_U', 'LdrFindResourceDirectory_U',
+ 'LdrGetDllHandle', 'LdrGetProcedureAddress', 'LdrInitializeThunk', 'LdrLoadDll',
+ 'LdrProcessRelocationBlock', 'LdrQueryImageFileExecutionOptions',
+ 'LdrQueryProcessModuleInformation', 'LdrShutdownProcess', 'LdrShutdownThread',
+ 'LdrUnloadDll', 'LdrVerifyImageMatchesChecksum',
+
+ 'NtAcceptConnectPort', 'ZwAcceptConnectPort', 'NtCompleteConnectPort',
+ 'ZwCompleteConnectPort', 'NtConnectPort', 'ZwConnectPort', 'NtCreatePort',
+ 'ZwCreatePort', 'NtImpersonateClientOfPort', 'ZwImpersonateClientOfPort',
+ 'NtListenPort', 'ZwListenPort', 'NtQueryInformationPort', 'ZwQueryInformationPort',
+ 'NtReadRequestData', 'ZwReadRequestData', 'NtReplyPort', 'ZwReplyPort',
+ 'NtReplyWaitReceivePort', 'ZwReplyWaitReceivePort', 'NtReplyWaitReplyPort',
+ 'ZwReplyWaitReplyPort', 'NtRequestPort', 'ZwRequestPort', 'NtRequestWaitReplyPort',
+ 'ZwRequestWaitReplyPort', 'NtSecureConnectPort', 'ZwSecureConnectPort',
+ 'NtWriteRequestData', 'ZwWriteRequestData',
+
+ 'NtAccessCheck', 'ZwAccessCheck', 'NtAccessCheckAndAuditAlarm',
+ 'ZwAccessCheckAndAuditAlarm', 'NtAccessCheckByType', 'ZwAccessCheckByType',
+ 'NtAccessCheckByTypeAndAuditAlarm', 'ZwAccessCheckByTypeAndAuditAlarm',
+ 'NtAccessCheckByTypeResultList', 'ZwAccessCheckByTypeResultList',
+ 'NtAdjustGroupsToken', 'ZwAdjustGroupsToken', 'NtAdjustPrivilegesToken',
+ 'ZwAdjustPrivilegesToken', 'NtCloseObjectAuditAlarm', 'ZwCloseObjectAuditAlarm',
+ 'NtCreateToken', 'ZwCreateToken', 'NtDeleteObjectAuditAlarm',
+ 'ZwDeleteObjectAuditAlarm', 'NtDuplicateToken', 'ZwDuplicateToken',
+ 'NtFilterToken', 'ZwFilterToken', 'NtImpersonateThread', 'ZwImpersonateThread',
+ 'NtOpenObjectAuditAlarm', 'ZwOpenObjectAuditAlarm', 'NtOpenProcessToken',
+ 'ZwOpenProcessToken', 'NtOpenThreadToken', 'ZwOpenThreadToken', 'NtPrivilegeCheck',
+ 'ZwPrivilegeCheck', 'NtPrivilegedServiceAuditAlarm', 'ZwPrivilegedServiceAuditAlarm',
+ 'NtPrivilegeObjectAuditAlarm', 'ZwPrivilegeObjectAuditAlarm',
+ 'NtQueryInformationToken', 'ZwQueryInformationToken', 'NtQuerySecurityObject',
+ 'ZwQuerySecurityObject', 'NtSetInformationToken', 'ZwSetInformationToken',
+ 'NtSetSecurityObject', 'ZwSetSecurityObject',
+
+ 'NtAddAtom', 'ZwAddAtom', 'NtDeleteAtom', 'ZwDeleteAtom', 'NtFindAtom', 'ZwFindAtom',
+ 'NtQueryInformationAtom', 'ZwQueryInformationAtom',
+
+ 'NtAlertResumeThread', 'ZwAlertResumeThread', 'NtAlertThread', 'ZwAlertThread',
+ 'NtCreateProcess', 'ZwCreateProcess', 'NtCreateThread', 'ZwCreateThread',
+ 'NtCurrentTeb', 'NtDelayExecution', 'ZwDelayExecution', 'NtGetContextThread',
+ 'ZwGetContextThread', 'NtOpenProcess', 'ZwOpenProcess', 'NtOpenThread',
+ 'ZwOpenThread', 'NtQueryInformationProcess', 'ZwQueryInformationProcess',
+ 'NtQueryInformationThread', 'ZwQueryInformationThread', 'NtQueueApcThread',
+ 'ZwQueueApcThread', 'NtResumeThread', 'ZwResumeThread', 'NtSetContextThread',
+ 'ZwSetContextThread', 'NtSetHighWaitLowThread', 'ZwSetHighWaitLowThread',
+ 'NtSetInformationProcess', 'ZwSetInformationProcess', 'NtSetInformationThread',
+ 'ZwSetInformationThread', 'NtSetLowWaitHighThread', 'ZwSetLowWaitHighThread',
+ 'NtSuspendThread', 'ZwSuspendThread', 'NtTerminateProcess', 'ZwTerminateProcess',
+ 'NtTerminateThread', 'ZwTerminateThread', 'NtTestAlert', 'ZwTestAlert',
+ 'NtYieldExecution', 'ZwYieldExecution',
+
+ 'NtAllocateVirtualMemory', 'ZwAllocateVirtualMemory', 'NtAllocateVirtualMemory64',
+ 'ZwAllocateVirtualMemory64', 'NtAreMappedFilesTheSame', 'ZwAreMappedFilesTheSame',
+ 'NtCreateSection', 'ZwCreateSection', 'NtExtendSection', 'ZwExtendSection',
+ 'NtFlushVirtualMemory', 'ZwFlushVirtualMemory', 'NtFreeVirtualMemory',
+ 'ZwFreeVirtualMemory', 'NtFreeVirtualMemory64', 'ZwFreeVirtualMemory64',
+ 'NtLockVirtualMemory', 'ZwLockVirtualMemory', 'NtMapViewOfSection',
+ 'ZwMapViewOfSection', 'NtMapViewOfVlmSection', 'ZwMapViewOfVlmSection',
+ 'NtOpenSection', 'ZwOpenSection', 'NtProtectVirtualMemory', 'ZwProtectVirtualMemory',
+ 'NtProtectVirtualMemory64', 'ZwProtectVirtualMemory64', 'NtQueryVirtualMemory',
+ 'ZwQueryVirtualMemory', 'NtQueryVirtualMemory64', 'ZwQueryVirtualMemory64',
+ 'NtReadVirtualMemory', 'ZwReadVirtualMemory', 'NtReadVirtualMemory64',
+ 'ZwReadVirtualMemory64', 'NtUnlockVirtualMemory', 'ZwUnlockVirtualMemory',
+ 'NtUnmapViewOfSection', 'ZwUnmapViewOfSection', 'NtUnmapViewOfVlmSection',
+ 'ZwUnmapViewOfVlmSection', 'NtWriteVirtualMemory', 'ZwWriteVirtualMemory',
+ 'NtWriteVirtualMemory64', 'ZwWriteVirtualMemory64',
+
+ 'NtAssignProcessToJobObject', 'ZwAssignProcessToJobObject', 'NtCreateJobObject',
+ 'ZwCreateJobObject', 'NtOpenJobObject', 'ZwOpenJobObject',
+ 'NtQueryInformationJobObject', 'ZwQueryInformationJobObject',
+ 'NtSetInformationJobObject', 'ZwSetInformationJobObject', 'NtTerminateJobObject',
+ 'ZwTerminateJobObject',
+
+ 'NtCancelIoFile', 'ZwCancelIoFile', 'NtCreateFile', 'ZwCreateFile',
+ 'NtCreateIoCompletion', 'ZwCreateIoCompletion', 'NtDeleteFile', 'ZwDeleteFile',
+ 'NtDeviceIoControlFile', 'ZwDeviceIoControlFile', 'NtFlushBuffersFile',
+ 'ZwFlushBuffersFile', 'NtFsControlFile', 'ZwFsControlFile', 'NtLockFile', 'ZwLockFile',
+ 'NtNotifyChangeDirectoryFile', 'ZwNotifyChangeDirectoryFile', 'NtOpenFile',
+ 'ZwOpenFile', 'NtOpenIoCompletion', 'ZwOpenIoCompletion', 'NtQueryAttributesFile',
+ 'ZwQueryAttributesFile', 'NtQueryDirectoryFile', 'ZwQueryDirectoryFile',
+ 'NtQueryEaFile', 'ZwQueryEaFile', 'NtQueryIoCompletion', 'ZwQueryIoCompletion',
+ 'NtQueryQuotaInformationFile', 'ZwQueryQuotaInformationFile',
+ 'NtQueryVolumeInformationFile', 'ZwQueryVolumeInformationFile', 'NtReadFile',
+ 'ZwReadFile', 'NtReadFile64', 'ZwReadFile64', 'NtReadFileScatter', 'ZwReadFileScatter',
+ 'NtRemoveIoCompletion', 'ZwRemoveIoCompletion', 'NtSetEaFile', 'ZwSetEaFile',
+ 'NtSetInformationFile', 'ZwSetInformationFile', 'NtSetIoCompletion',
+ 'ZwSetIoCompletion', 'NtSetQuotaInformationFile', 'ZwSetQuotaInformationFile',
+ 'NtSetVolumeInformationFile', 'ZwSetVolumeInformationFile', 'NtUnlockFile',
+ 'ZwUnlockFile', 'NtWriteFile', 'ZwWriteFile', 'NtWriteFile64','ZwWriteFile64',
+ 'NtWriteFileGather', 'ZwWriteFileGather', 'NtQueryFullAttributesFile',
+ 'ZwQueryFullAttributesFile', 'NtQueryInformationFile', 'ZwQueryInformationFile',
+
+ 'RtlAbortRXact', 'RtlAbsoluteToSelfRelativeSD', 'RtlAcquirePebLock',
+ 'RtlAcquireResourceExclusive', 'RtlAcquireResourceShared', 'RtlAddAccessAllowedAce',
+ 'RtlAddAccessDeniedAce', 'RtlAddAce', 'RtlAddActionToRXact', 'RtlAddAtomToAtomTable',
+ 'RtlAddAttributeActionToRXact', 'RtlAddAuditAccessAce', 'RtlAddCompoundAce',
+ 'RtlAdjustPrivilege', 'RtlAllocateAndInitializeSid', 'RtlAllocateHandle',
+ 'RtlAllocateHeap', 'RtlAnsiCharToUnicodeChar', 'RtlAnsiStringToUnicodeSize',
+ 'RtlAnsiStringToUnicodeString', 'RtlAppendAsciizToString', 'RtlAppendStringToString',
+ 'RtlAppendUnicodeStringToString', 'RtlAppendUnicodeToString', 'RtlApplyRXact',
+ 'RtlApplyRXactNoFlush', 'RtlAreAllAccessesGranted', 'RtlAreAnyAccessesGranted',
+ 'RtlAreBitsClear', 'RtlAreBitsSet', 'RtlAssert', 'RtlCaptureStackBackTrace',
+ 'RtlCharToInteger', 'RtlCheckRegistryKey', 'RtlClearAllBits', 'RtlClearBits',
+ 'RtlClosePropertySet', 'RtlCompactHeap', 'RtlCompareMemory', 'RtlCompareMemoryUlong',
+ 'RtlCompareString', 'RtlCompareUnicodeString', 'RtlCompareVariants',
+ 'RtlCompressBuffer', 'RtlConsoleMultiByteToUnicodeN', 'RtlConvertExclusiveToShared',
+ 'RtlConvertLongToLargeInteger', 'RtlConvertPropertyToVariant',
+ 'RtlConvertSharedToExclusive', 'RtlConvertSidToUnicodeString',
+ 'RtlConvertUiListToApiList', 'RtlConvertUlongToLargeInteger',
+ 'RtlConvertVariantToProperty', 'RtlCopyLuid', 'RtlCopyLuidAndAttributesArray',
+ 'RtlCopySecurityDescriptor', 'RtlCopySid', 'RtlCopySidAndAttributesArray',
+ 'RtlCopyString', 'RtlCopyUnicodeString', 'RtlCreateAcl', 'RtlCreateAndSetSD',
+ 'RtlCreateAtomTable', 'RtlCreateEnvironment', 'RtlCreateHeap',
+ 'RtlCreateProcessParameters', 'RtlCreatePropertySet', 'RtlCreateQueryDebugBuffer',
+ 'RtlCreateRegistryKey', 'RtlCreateSecurityDescriptor', 'RtlCreateTagHeap',
+ 'RtlCreateUnicodeString', 'RtlCreateUnicodeStringFromAsciiz', 'RtlCreateUserProcess',
+ 'RtlCreateUserSecurityObject', 'RtlCreateUserThread', 'RtlCustomCPToUnicodeN',
+ 'RtlCutoverTimeToSystemTime', 'RtlDecompressBuffer', 'RtlDecompressFragment',
+ 'RtlDelete', 'RtlDeleteAce', 'RtlDeleteAtomFromAtomTable', 'RtlDeleteCriticalSection',
+ 'RtlDeleteElementGenericTable', 'RtlDeleteNoSplay', 'RtlDeleteRegistryValue',
+ 'RtlDeleteResource', 'RtlDeleteSecurityObject', 'RtlDeNormalizeProcessParams',
+ 'RtlDestroyAtomTable', 'RtlDestroyEnvironment', 'RtlDestroyHandleTable',
+ 'RtlDestroyHeap', 'RtlDestroyProcessParameters', 'RtlDestroyQueryDebugBuffer',
+ 'RtlDetermineDosPathNameType_U', 'RtlDoesFileExists_U', 'RtlDosPathNameToNtPathName_U',
+ 'RtlDosSearchPath_U', 'RtlDowncaseUnicodeString', 'RtlDumpResource',
+ 'RtlEmptyAtomTable', 'RtlEnlargedIntegerMultiply', 'RtlEnlargedUnsignedDivide',
+ 'RtlEnlargedUnsignedMultiply', 'RtlEnterCriticalSection', 'RtlEnumerateGenericTable',
+ 'RtlEnumerateGenericTableWithoutSplaying', 'RtlEnumerateProperties',
+ 'RtlEnumProcessHeaps', 'RtlEqualComputerName', 'RtlEqualDomainName', 'RtlEqualLuid',
+ 'RtlEqualPrefixSid', 'RtlEqualSid', 'RtlEqualString', 'RtlEqualUnicodeString',
+ 'RtlEraseUnicodeString', 'RtlExpandEnvironmentStrings_U', 'RtlExtendedIntegerMultiply',
+ 'RtlExtendedLargeIntegerDivide', 'RtlExtendedMagicDivide', 'RtlExtendHeap',
+ 'RtlFillMemory', 'RtlFillMemoryUlong', 'RtlFindClearBits', 'RtlFindClearBitsAndSet',
+ 'RtlFindLongestRunClear', 'RtlFindLongestRunSet', 'RtlFindMessage', 'RtlFindSetBits',
+ 'RtlFindSetBitsAndClear', 'RtlFirstFreeAce', 'RtlFlushPropertySet',
+ 'RtlFormatCurrentUserKeyPath', 'RtlFormatMessage', 'RtlFreeAnsiString',
+ 'RtlFreeHandle', 'RtlFreeHeap', 'RtlFreeOemString', 'RtlFreeSid',
+ 'RtlFreeUnicodeString', 'RtlFreeUserThreadStack', 'RtlGenerate8dot3Name', 'RtlGetAce',
+ 'RtlGetCallersAddress', 'RtlGetCompressionWorkSpaceSize',
+ 'RtlGetControlSecurityDescriptor', 'RtlGetCurrentDirectory_U',
+ 'RtlGetDaclSecurityDescriptor', 'RtlGetElementGenericTable', 'RtlGetFullPathName_U',
+ 'RtlGetGroupSecurityDescriptor', 'RtlGetLongestNtPathLength', 'RtlGetNtGlobalFlags',
+ 'RtlGetNtProductType', 'RtlGetOwnerSecurityDescriptor', 'RtlGetProcessHeaps',
+ 'RtlGetSaclSecurityDescriptor', 'RtlGetUserInfoHeap', 'RtlGuidToPropertySetName',
+ 'RtlIdentifierAuthoritySid', 'RtlImageDirectoryEntryToData', 'RtlImageNtHeader',
+ 'RtlImageRvaToSection', 'RtlImageRvaToVa', 'RtlImpersonateSelf', 'RtlInitAnsiString',
+ 'RtlInitCodePageTable', 'RtlInitializeAtomPackage', 'RtlInitializeBitMap',
+ 'RtlInitializeContext', 'RtlInitializeCriticalSection',
+ 'RtlInitializeCriticalSectionAndSpinCount', 'RtlInitializeGenericTable',
+ 'RtlInitializeHandleTable', 'RtlInitializeResource', 'RtlInitializeRXact',
+ 'RtlInitializeSid', 'RtlInitNlsTables', 'RtlInitString', 'RtlInitUnicodeString',
+ 'RtlInsertElementGenericTable', 'RtlIntegerToChar', 'RtlIntegerToUnicodeString',
+ 'RtlIsDosDeviceName_U', 'RtlIsGenericTableEmpty', 'RtlIsNameLegalDOS8Dot3',
+ 'RtlIsTextUnicode', 'RtlIsValidHandle', 'RtlIsValidIndexHandle', 'RtlLargeIntegerAdd',
+ 'RtlLargeIntegerArithmeticShift', 'RtlLargeIntegerDivide', 'RtlLargeIntegerNegate',
+ 'RtlLargeIntegerShiftLeft', 'RtlLargeIntegerShiftRight', 'RtlLargeIntegerSubtract',
+ 'RtlLargeIntegerToChar', 'RtlLeaveCriticalSection', 'RtlLengthRequiredSid',
+ 'RtlLengthSecurityDescriptor', 'RtlLengthSid', 'RtlLocalTimeToSystemTime',
+ 'RtlLockHeap', 'RtlLookupAtomInAtomTable', 'RtlLookupElementGenericTable',
+ 'RtlMakeSelfRelativeSD', 'RtlMapGenericMask', 'RtlMoveMemory',
+ 'RtlMultiByteToUnicodeN', 'RtlMultiByteToUnicodeSize', 'RtlNewInstanceSecurityObject',
+ 'RtlNewSecurityGrantedAccess', 'RtlNewSecurityObject', 'RtlNormalizeProcessParams',
+ 'RtlNtStatusToDosError', 'RtlNumberGenericTableElements', 'RtlNumberOfClearBits',
+ 'RtlNumberOfSetBits', 'RtlOemStringToUnicodeSize', 'RtlOemStringToUnicodeString',
+ 'RtlOemToUnicodeN', 'RtlOnMappedStreamEvent', 'RtlOpenCurrentUser',
+ 'RtlPcToFileHeader', 'RtlPinAtomInAtomTable', 'RtlpNtCreateKey',
+ 'RtlpNtEnumerateSubKey', 'RtlpNtMakeTemporaryKey', 'RtlpNtOpenKey',
+ 'RtlpNtQueryValueKey', 'RtlpNtSetValueKey', 'RtlPrefixString',
+ 'RtlPrefixUnicodeString', 'RtlPropertySetNameToGuid', 'RtlProtectHeap',
+ 'RtlpUnWaitCriticalSection', 'RtlpWaitForCriticalSection', 'RtlQueryAtomInAtomTable',
+ 'RtlQueryEnvironmentVariable_U', 'RtlQueryInformationAcl',
+ 'RtlQueryProcessBackTraceInformation', 'RtlQueryProcessDebugInformation',
+ 'RtlQueryProcessHeapInformation', 'RtlQueryProcessLockInformation',
+ 'RtlQueryProperties', 'RtlQueryPropertyNames', 'RtlQueryPropertySet',
+ 'RtlQueryRegistryValues', 'RtlQuerySecurityObject', 'RtlQueryTagHeap',
+ 'RtlQueryTimeZoneInformation', 'RtlRaiseException', 'RtlRaiseStatus', 'RtlRandom',
+ 'RtlReAllocateHeap', 'RtlRealPredecessor', 'RtlRealSuccessor', 'RtlReleasePebLock',
+ 'RtlReleaseResource', 'RtlRemoteCall', 'RtlResetRtlTranslations',
+ 'RtlRunDecodeUnicodeString', 'RtlRunEncodeUnicodeString', 'RtlSecondsSince1970ToTime',
+ 'RtlSecondsSince1980ToTime', 'RtlSelfRelativeToAbsoluteSD', 'RtlSetAllBits',
+ 'RtlSetAttributesSecurityDescriptor', 'RtlSetBits', 'RtlSetCriticalSectionSpinCount',
+ 'RtlSetCurrentDirectory_U', 'RtlSetCurrentEnvironment', 'RtlSetDaclSecurityDescriptor',
+ 'RtlSetEnvironmentVariable', 'RtlSetGroupSecurityDescriptor', 'RtlSetInformationAcl',
+ 'RtlSetOwnerSecurityDescriptor', 'RtlSetProperties', 'RtlSetPropertyNames',
+ 'RtlSetPropertySetClassId', 'RtlSetSaclSecurityDescriptor', 'RtlSetSecurityObject',
+ 'RtlSetTimeZoneInformation', 'RtlSetUnicodeCallouts', 'RtlSetUserFlagsHeap',
+ 'RtlSetUserValueHeap', 'RtlSizeHeap', 'RtlSplay', 'RtlStartRXact',
+ 'RtlSubAuthorityCountSid', 'RtlSubAuthoritySid', 'RtlSubtreePredecessor',
+ 'RtlSubtreeSuccessor', 'RtlSystemTimeToLocalTime', 'RtlTimeFieldsToTime',
+ 'RtlTimeToElapsedTimeFields', 'RtlTimeToSecondsSince1970', 'RtlTimeToSecondsSince1980',
+ 'RtlTimeToTimeFields', 'RtlTryEnterCriticalSection', 'RtlUnicodeStringToAnsiSize',
+ 'RtlUnicodeStringToAnsiString', 'RtlUnicodeStringToCountedOemString',
+ 'RtlUnicodeStringToInteger', 'RtlUnicodeStringToOemSize',
+ 'RtlUnicodeStringToOemString', 'RtlUnicodeToCustomCPN', 'RtlUnicodeToMultiByteN',
+ 'RtlUnicodeToMultiByteSize', 'RtlUnicodeToOemN', 'RtlUniform', 'RtlUnlockHeap',
+ 'RtlUnwind', 'RtlUpcaseUnicodeChar', 'RtlUpcaseUnicodeString',
+ 'RtlUpcaseUnicodeStringToAnsiString', 'RtlUpcaseUnicodeStringToCountedOemString',
+ 'RtlUpcaseUnicodeStringToOemString', 'RtlUpcaseUnicodeToCustomCPN',
+ 'RtlUpcaseUnicodeToMultiByteN', 'RtlUpcaseUnicodeToOemN', 'RtlUpperChar',
+ 'RtlUpperString', 'RtlUsageHeap', 'RtlValidAcl', 'RtlValidateHeap',
+ 'RtlValidateProcessHeaps', 'RtlValidSecurityDescriptor', 'RtlValidSid', 'RtlWalkHeap',
+ 'RtlWriteRegistryValue', 'RtlxAnsiStringToUnicodeSize', 'RtlxOemStringToUnicodeSize',
+ 'RtlxUnicodeStringToAnsiSize', 'RtlxUnicodeStringToOemSize', 'RtlZeroHeap',
+ 'RtlZeroMemory',
+
+ 'NtCancelTimer', 'ZwCancelTimer', 'NtCreateTimer', 'ZwCreateTimer', 'NtGetTickCount',
+ 'ZwGetTickCount', 'NtOpenTimer', 'ZwOpenTimer', 'NtQueryPerformanceCounter',
+ 'ZwQueryPerformanceCounter', 'NtQuerySystemTime', 'ZwQuerySystemTime', 'NtQueryTimer',
+ 'ZwQueryTimer', 'NtQueryTimerResolution', 'ZwQueryTimerResolution', 'NtSetSystemTime',
+ 'ZwSetSystemTime', 'NtSetTimer', 'ZwSetTimer', 'NtSetTimerResolution',
+ 'ZwSetTimerResolution',
+
+ 'NtClearEvent', 'ZwClearEvent', 'NtCreateEvent', 'ZwCreateEvent', 'NtCreateEventPair',
+ 'ZwCreateEventPair', 'NtCreateMutant', 'ZwCreateMutant', 'NtCreateSemaphore',
+ 'ZwCreateSemaphore', 'NtOpenEvent', 'ZwOpenEvent', 'NtOpenEventPair',
+ 'ZwOpenEventPair', 'NtOpenMutant', 'ZwOpenMutant', 'NtOpenSemaphore',
+ 'ZwOpenSemaphore', 'NtPulseEvent', 'ZwPulseEvent', 'NtQueryEvent', 'ZwQueryEvent',
+ 'NtQueryMutant', 'ZwQueryMutant', 'NtQuerySemaphore', 'ZwQuerySemaphore',
+ 'NtReleaseMutant', 'ZwReleaseMutant', 'NtReleaseProcessMutant',
+ 'ZwReleaseProcessMutant', 'NtReleaseSemaphore', 'ZwReleaseSemaphore',
+ 'NtReleaseThreadMutant', 'ZwReleaseThreadMutant', 'NtResetEvent', 'ZwResetEvent',
+ 'NtSetEvent', 'ZwSetEvent', 'NtSetHighEventPair', 'ZwSetHighEventPair',
+ 'NtSetHighWaitLowEventPair', 'ZwSetHighWaitLowEventPair', 'NtSetLowEventPair',
+ 'ZwSetLowEventPair', 'NtSetLowWaitHighEventPair', 'ZwSetLowWaitHighEventPair',
+ 'NtSignalAndWaitForSingleObject', 'ZwSignalAndWaitForSingleObject',
+ 'NtWaitForMultipleObjects', 'ZwWaitForMultipleObjects', 'NtWaitForSingleObject',
+ 'ZwWaitForSingleObject', 'NtWaitHighEventPair', 'ZwWaitHighEventPair',
+ 'NtWaitLowEventPair', 'ZwWaitLowEventPair',
+
+ 'NtClose', 'ZwClose', 'NtCreateDirectoryObject', 'ZwCreateDirectoryObject',
+ 'NtCreateSymbolicLinkObject', 'ZwCreateSymbolicLinkObject',
+ 'NtDuplicateObject', 'ZwDuplicateObject', 'NtMakeTemporaryObject',
+ 'ZwMakeTemporaryObject', 'NtOpenDirectoryObject', 'ZwOpenDirectoryObject',
+ 'NtOpenSymbolicLinkObject', 'ZwOpenSymbolicLinkObject', 'NtQueryDirectoryObject',
+ 'ZwQueryDirectoryObject', 'NtQueryObject', 'ZwQueryObject',
+ 'NtQuerySymbolicLinkObject', 'ZwQuerySymbolicLinkObject', 'NtSetInformationObject',
+ 'ZwSetInformationObject',
+
+ 'NtContinue', 'ZwContinue', 'NtRaiseException', 'ZwRaiseException',
+ 'NtRaiseHardError', 'ZwRaiseHardError', 'NtSetDefaultHardErrorPort',
+ 'ZwSetDefaultHardErrorPort',
+
+ 'NtCreateChannel', 'ZwCreateChannel', 'NtListenChannel', 'ZwListenChannel',
+ 'NtOpenChannel', 'ZwOpenChannel', 'NtReplyWaitSendChannel', 'ZwReplyWaitSendChannel',
+ 'NtSendWaitReplyChannel', 'ZwSendWaitReplyChannel', 'NtSetContextChannel',
+ 'ZwSetContextChannel',
+
+ 'NtCreateKey', 'ZwCreateKey', 'NtDeleteKey', 'ZwDeleteKey', 'NtDeleteValueKey',
+ 'ZwDeleteValueKey', 'NtEnumerateKey', 'ZwEnumerateKey', 'NtEnumerateValueKey',
+ 'ZwEnumerateValueKey', 'NtFlushKey', 'ZwFlushKey', 'NtInitializeRegistry',
+ 'ZwInitializeRegistry', 'NtLoadKey', 'ZwLoadKey', 'NtLoadKey2', 'ZwLoadKey2',
+ 'NtNotifyChangeKey', 'ZwNotifyChangeKey', 'NtOpenKey', 'ZwOpenKey', 'NtQueryKey',
+ 'ZwQueryKey', 'NtQueryMultipleValueKey', 'ZwQueryMultipleValueKey',
+ 'NtQueryMultiplValueKey', 'ZwQueryMultiplValueKey', 'NtQueryValueKey',
+ 'ZwQueryValueKey', 'NtReplaceKey', 'ZwReplaceKey', 'NtRestoreKey', 'ZwRestoreKey',
+ 'NtSaveKey', 'ZwSaveKey', 'NtSetInformationKey', 'ZwSetInformationKey',
+ 'NtSetValueKey', 'ZwSetValueKey', 'NtUnloadKey', 'ZwUnloadKey',
+
+ 'NtCreateMailslotFile', 'ZwCreateMailslotFile', 'NtCreateNamedPipeFile',
+ 'ZwCreateNamedPipeFile', 'NtCreatePagingFile', 'ZwCreatePagingFile',
+
+ 'NtCreateProfile', 'ZwCreateProfile', 'NtQueryIntervalProfile',
+ 'ZwQueryIntervalProfile', 'NtRegisterThreadTerminatePort',
+ 'ZwRegisterThreadTerminatePort', 'NtSetIntervalProfile', 'ZwSetIntervalProfile',
+ 'NtStartProfile', 'ZwStartProfile', 'NtStopProfile', 'ZwStopProfile',
+ 'NtSystemDebugControl', 'ZwSystemDebugControl',
+
+ 'NtEnumerateBus', 'ZwEnumerateBus', 'NtFlushInstructionCache',
+ 'ZwFlushInstructionCache', 'NtFlushWriteBuffer', 'ZwFlushWriteBuffer',
+ 'NtSetLdtEntries', 'ZwSetLdtEntries',
+
+ 'NtGetPlugPlayEvent', 'ZwGetPlugPlayEvent', 'NtPlugPlayControl', 'ZwPlugPlayControl',
+
+ 'NtInitiatePowerAction', 'ZwInitiatePowerAction', 'NtPowerInformation',
+ 'ZwPowerInformation', 'NtRequestWakeupLatency', 'ZwRequestWakeupLatency',
+ 'NtSetSystemPowerState', 'ZwSetSystemPowerState', 'NtSetThreadExecutionState',
+ 'ZwSetThreadExecutionState',
+
+ 'NtLoadDriver', 'ZwLoadDriver', 'NtRegisterNewDevice', 'ZwRegisterNewDevice',
+ 'NtUnloadDriver', 'ZwUnloadDriver',
+
+ 'NtQueryDefaultLocale', 'ZwQueryDefaultLocale', 'NtQueryDefaultUILanguage',
+ 'ZwQueryDefaultUILanguage', 'NtQuerySystemEnvironmentValue',
+ 'ZwQuerySystemEnvironmentValue', 'NtSetDefaultLocale', 'ZwSetDefaultLocale',
+ 'NtSetDefaultUILanguage', 'ZwSetDefaultUILanguage', 'NtSetSystemEnvironmentValue',
+ 'ZwSetSystemEnvironmentValue',
+
+ 'DbgBreakPoint', 'DbgPrint', 'DbgPrompt', 'DbgSsHandleKmApiMsg', 'DbgSsInitialize',
+ 'DbgUiConnectToDbg', 'DbgUiContinue', 'DbgUiWaitStateChange', 'DbgUserBreakPoint',
+ 'KiRaiseUserExceptionDispatcher', 'KiUserApcDispatcher', 'KiUserCallbackDispatcher',
+ 'KiUserExceptionDispatcher', 'NlsAnsiCodePage', 'NlsMbCodePageTag',
+ 'NlsMbOemCodePageTag', 'NtAllocateLocallyUniqueId', 'ZwAllocateLocallyUniqueId',
+ 'NtAllocateUuids', 'ZwAllocateUuids', 'NtCallbackReturn', 'ZwCallbackReturn',
+ 'NtDisplayString', 'ZwDisplayString', 'NtQueryOleDirectoryFile',
+ 'ZwQueryOleDirectoryFile', 'NtQuerySection', 'ZwQuerySection',
+ 'NtQuerySystemInformation', 'ZwQuerySystemInformation', 'NtSetSystemInformation',
+ 'ZwSetSystemInformation', 'NtShutdownSystem', 'ZwShutdownSystem', 'NtVdmControl',
+ 'ZwVdmControl', 'NtW32Call', 'ZwW32Call', 'PfxFindPrefix', 'PfxInitialize',
+ 'PfxInsertPrefix', 'PfxRemovePrefix', 'PropertyLengthAsVariant', 'RestoreEm87Context',
+ 'SaveEm87Context'
+ )
+ ),
+ 'SYMBOLS' => array(
+ 0 => array('(', ')', '{', '}', '[', ']'),
+ 1 => array('<', '>','='),
+ 2 => array('+', '-', '*', '/', '%'),
+ 3 => array('!', '^', '&', '|'),
+ 4 => array('?', ':', ';')
+ ),
+ 'CASE_SENSITIVE' => array(
+ GESHI_COMMENTS => false,
+ 1 => true,
+ 2 => true,
+ 3 => true,
+ 4 => true,
+ 5 => true,
+ 6 => true
+ ),
+ 'STYLES' => array(
+ 'KEYWORDS' => array(
+ 1 => 'color: #0000ff;',
+ 2 => 'color: #0000ff;',
+ 3 => 'color: #0000dd;',
+ 4 => 'color: #0000ff;',
+ 5 => 'color: #4000dd;',
+ 6 => 'color: #4000dd;'
+ ),
+ 'COMMENTS' => array(
+ 1 => 'color: #666666;',
+ 2 => 'color: #339900;',
+ 3 => 'color: #FF0000;',
+ 4 => 'color: #FF0000;',
+ 'MULTI' => 'color: #ff0000; font-style: italic;'
+ ),
+ 'ESCAPE_CHAR' => array(
+ 0 => 'color: #000099; font-weight: bold;',
+ 1 => 'color: #000099; font-weight: bold;',
+ 2 => 'color: #660099; font-weight: bold;',
+ 3 => 'color: #660099; font-weight: bold;',
+ 4 => 'color: #660099; font-weight: bold;',
+ 5 => 'color: #006699; font-weight: bold;',
+ 'HARD' => '',
+ ),
+ 'BRACKETS' => array(
+ 0 => 'color: #008000;'
+ ),
+ 'STRINGS' => array(
+ 0 => 'color: #FF0000;'
+ ),
+ 'NUMBERS' => array(
+ 0 => 'color: #0000dd;',
+ GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;',
+ GESHI_NUMBER_OCT_PREFIX => 'color: #208080;',
+ GESHI_NUMBER_HEX_PREFIX => 'color: #208080;',
+ GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;',
+ GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;',
+ GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;',
+ GESHI_NUMBER_FLT_NONSCI => 'color:#800080;'
+ ),
+ 'METHODS' => array(
+ 1 => 'color: #007788;',
+ 2 => 'color: #007788;'
+ ),
+ 'SYMBOLS' => array(
+ 0 => 'color: #008000;',
+ 1 => 'color: #000080;',
+ 2 => 'color: #000040;',
+ 3 => 'color: #000040;',
+ 4 => 'color: #008080;'
+ ),
+ 'REGEXPS' => array(
+ ),
+ 'SCRIPT' => array(
+ )
+ ),
+ 'URLS' => array(
+ 1 => '',
+ 2 => '',
+ 3 => '',
+ 4 => '',
+ 5 => 'http://www.google.com/search?q={FNAMEL}+msdn.microsoft.com',
+ 6 => 'http://www.google.com/search?q={FNAMEL}+msdn.microsoft.com'
+ ),
+ 'OOLANG' => true,
+ 'OBJECT_SPLITTERS' => array(
+ 1 => '.',
+ 2 => '::'
+ ),
+ 'REGEXPS' => array(
+ ),
+ 'STRICT_MODE_APPLIES' => GESHI_NEVER,
+ 'SCRIPT_DELIMITERS' => array(
+ ),
+ 'HIGHLIGHT_STRICT_BLOCK' => array(
+ ),
+ 'TAB_WIDTH' => 4,
+ 'PARSER_CONTROL' => array(
+ 'KEYWORDS' => array(
+ 'DISALLOWED_BEFORE' => "(?<![a-zA-Z0-9\$_\|\#])",
+ 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_\|%\\-])"
+ )
+ )
+);
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cpp.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cpp.php
index 42ab311c..05cadf06 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cpp.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cpp.php
@@ -7,7 +7,7 @@
* - M. Uli Kusterer (witness.of.teachtext@gmx.net)
* - Jack Lloyd (lloyd@randombit.net)
* Copyright: (c) 2004 Dennis Bayer, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/09/27
*
* C++ language file for GeSHi.
@@ -56,14 +56,18 @@ $language_data = array (
//Multiline-continued single-line comments
1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m',
//Multiline-continued preprocessor define
- 2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m'
+ 2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m',
+ //C++ 11 string literal extensions
+ 3 => '/(?:L|u8?|U)(?=")/',
+ //C++ 11 string literal extensions (raw)
+ 4 => '/R"([^()\s\\\\]*)\((?:(?!\)\\1").)*\)\\1"/ms'
),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array("'", '"'),
'ESCAPE_CHAR' => '',
'ESCAPE_REGEXP' => array(
//Simple Single Char Escapes
- 1 => "#\\\\[abfnrtv\\\'\"?\n]#i",
+ 1 => "#\\\\[abfnrtv\\\'\"?\n]#",
//Hexadecimal Char Specs
2 => "#\\\\x[\da-fA-F]{2}#",
//Hexadecimal Char Specs
@@ -167,6 +171,8 @@ $language_data = array (
'COMMENTS' => array(
1 => 'color: #666666;',
2 => 'color: #339900;',
+ 3 => 'color: #FF0000;',
+ 4 => 'color: #FF0000;',
'MULTI' => 'color: #ff0000; font-style: italic;'
),
'ESCAPE_CHAR' => array(
@@ -236,5 +242,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/csharp.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/csharp.php
index 26024e91..14f0fa0d 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/csharp.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/csharp.php
@@ -5,7 +5,7 @@
* Author: Alan Juden (alan@judenware.org)
* Revised by: Michael Mol (mikemol@gmail.com)
* Copyright: (c) 2004 Alan Juden, Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/06/04
*
* C# language file for GeSHi.
@@ -252,5 +252,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/css.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/css.php
index d09bea7d..bfb6e0e1 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/css.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/css.php
@@ -2,15 +2,19 @@
/*************************************************************************************
* css.php
* -------
- * Author: Nigel McNie (nigel@geshi.org)
+ * Author: Nigel McNie (nigel@geshi.org), Zéfling (zefling@ikilote.net)
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/06/18
*
* CSS language file for GeSHi.
*
* CHANGES
* -------
+ * 2014/07/14 (1.0.8.12)
+ * - update for current CSS3 (properties, value, expression, unites & color)
+ * - remove pseudo class regex
+ * - add rules regex
* 2008/05/23 (1.0.7.22)
* - Added description of extra language features (SF#1970248)
* 2004/11/27 (1.0.3)
@@ -25,7 +29,7 @@
*
* TODO (updated 2004/11/27)
* -------------------------
- * * Improve or drop regexps for class/id/psuedoclass highlighting
+ * * Improve or drop regexps for class/id highlighting
* * Re-look at keywords - possibly to make several CSS language
* files, all with different versions of CSS in them
*
@@ -51,7 +55,7 @@
$language_data = array (
'LANG_NAME' => 'CSS',
- 'COMMENT_SINGLE' => array(1 => '@'),
+ 'COMMENT_SINGLE' => array(),
'COMMENT_MULTI' => array('/*' => '*/'),
'COMMENT_REGEXP' => array(
2 => "/(?<=\\()\\s*(?:(?:[a-z0-9]+?:\\/\\/)?[a-z0-9_\\-\\.\\/:]+?)?[a-z]+?\\.[a-z]+?(\\?[^\)]+?)?\\s*?(?=\\))/i"
@@ -68,79 +72,186 @@ $language_data = array (
//3 => "#\\\\u[\da-fA-F]{1,8}#i",
),
'KEYWORDS' => array(
+ // properties
1 => array(
- 'aqua', 'azimuth', 'background-attachment', 'background-color',
- 'background-image', 'background-position', 'background-repeat',
- 'background', 'black', 'blue', 'border-bottom-color',
- 'border-radius', 'border-top-left-radius', 'border-top-right-radius',
- 'border-bottom-right-radius', 'border-bottom-left-radius',
- 'border-bottom-style', 'border-bottom-width', 'border-left-color',
- 'border-left-style', 'border-left-width', 'border-right',
- 'border-right-color', 'border-right-style', 'border-right-width',
- 'border-top-color', 'border-top-style',
- 'border-top-width','border-bottom', 'border-collapse',
- 'border-left', 'border-width', 'border-color', 'border-spacing',
- 'border-style', 'border-top', 'border', 'caption-side', 'clear',
- 'clip', 'color', 'content', 'counter-increment', 'counter-reset',
- 'cue-after', 'cue-before', 'cue', 'cursor', 'direction', 'display',
- 'elevation', 'empty-cells', 'float', 'font-family', 'font-size',
- 'font-size-adjust', 'font-stretch', 'font-style', 'font-variant',
- 'font-weight', 'font', 'line-height', 'letter-spacing',
- 'list-style', 'list-style-image', 'list-style-position',
- 'list-style-type', 'margin-bottom', 'margin-left', 'margin-right',
- 'margin-top', 'margin', 'marker-offset', 'marks', 'max-height',
- 'max-width', 'min-height', 'min-width', 'orphans', 'outline',
- 'outline-color', 'outline-style', 'outline-width', 'overflow',
- 'padding-bottom', 'padding-left', 'padding-right', 'padding-top',
- 'padding', 'page', 'page-break-after', 'page-break-before',
- 'page-break-inside', 'pause-after', 'pause-before', 'pause',
- 'pitch', 'pitch-range', 'play-during', 'position', 'quotes',
- 'richness', 'right', 'size', 'speak-header', 'speak-numeral',
- 'speak-punctuation', 'speak', 'speech-rate', 'stress',
- 'table-layout', 'text-align', 'text-decoration', 'text-indent',
- 'text-shadow', 'text-transform', 'top', 'unicode-bidi',
- 'vertical-align', 'visibility', 'voice-family', 'volume',
- 'white-space', 'widows', 'width', 'word-spacing', 'z-index',
- 'bottom', 'left', 'height'
+ 'align-content','align-items','align-self','all','animation',
+ 'animation-delay','animation-direction','animation-duration',
+ 'animation-fill-mode','animation-iteration-count','animation-name',
+ 'animation-play-state','animation-timing-function',
+ 'backface-visibility','background','background-attachment',
+ 'background-blend-mode','background-clip','background-color',
+ 'background-image','background-origin','background-position',
+ 'background-repeat','background-size','border','border-bottom',
+ 'border-bottom-color','border-bottom-left-radius',
+ 'border-bottom-right-radius','border-bottom-style',
+ 'border-bottom-width','border-collapse','border-color',
+ 'border-image','border-image-outset','border-image-repeat',
+ 'border-image-slice','border-image-source','border-image-width',
+ 'border-left','border-left-color','border-left-style',
+ 'border-left-width','border-radius','border-right',
+ 'border-right-color','border-right-style','border-right-width',
+ 'border-spacing','border-style','border-top','border-top-color',
+ 'border-top-left-radius','border-top-right-radius',
+ 'border-top-style','border-top-width','border-width','bottom',
+ 'box-decoration-break','box-shadow','box-sizing','break-after',
+ 'break-before','break-inside','caption-side','clear','clip',
+ 'clip-path','color','columns','column-count','column-fill',
+ 'column-gap','column-rule','column-rule-color','column-rule-style',
+ 'column-rule-width','column-span','column-width','content',
+ 'counter-increment','counter-reset','cursor','direction','display',
+ 'empty-cells','filter','flex','flex-basis','flex-direction',
+ 'flex-flow','flex-grow','flex-shrink','flex-wrap','float','font',
+ 'font-family','font-feature-settings','font-kerning',
+ 'font-language-override','font-size','font-size-adjust',
+ 'font-stretch','font-style','font-synthesis','font-variant',
+ 'font-variant-alternates','font-variant-caps',
+ 'font-variant-east-asian','font-variant-ligatures',
+ 'font-variant-numeric','font-variant-position','font-weight','grid',
+ 'grid-area','grid-auto-columns','grid-auto-flow',
+ 'grid-auto-position','grid-auto-rows','grid-column',
+ 'grid-column-start','grid-column-end','grid-row','grid-row-start',
+ 'grid-row-end','grid-template','grid-template-areas',
+ 'grid-template-rows','grid-template-columns','height','hyphens',
+ 'icon','image-rendering','image-resolution','image-orientation',
+ 'ime-mode','justify-content','left','letter-spacing','line-break',
+ 'line-height','list-style','list-style-image','list-style-position',
+ 'list-style-type','margin','margin-bottom','margin-left',
+ 'margin-right','margin-top','marks','mask','mask-type','max-height',
+ 'max-width','min-height','min-width','mix-blend-mode','nav-down',
+ 'nav-index','nav-left','nav-right','nav-up','object-fit',
+ 'object-position','opacity','order','orphans','outline',
+ 'outline-color','outline-offset','outline-style','outline-width',
+ 'overflow','overflow-wrap','overflow-x','overflow-y',
+ 'overflow-clip-box','padding','padding-bottom','padding-left',
+ 'padding-right','padding-top','page-break-after','page-break-before',
+ 'page-break-inside','perspective','perspective-origin',
+ 'pointer-events','position','quotes','resize','right',
+ 'shape-image-threshold','shape-margin','shape-outside',
+ 'table-layout','tab-size','text-align','text-align-last',
+ 'text-combine-horizontal','text-decoration','text-decoration-color',
+ 'text-decoration-line','text-decoration-style','text-indent',
+ 'text-orientation','text-overflow','text-rendering','text-shadow',
+ 'text-transform','text-underline-position','top','touch-action',
+ 'transform','transform-origin','transform-style','transition',
+ 'transition-delay','transition-duration','transition-property',
+ 'transition-timing-function','unicode-bidi','unicode-range',
+ 'vertical-align','visibility','white-space','widows','width',
+ 'will-change','word-break','word-spacing','word-wrap',
+ 'writing-mode','z-index'
),
+ // value
2 => array(
- 'above', 'absolute', 'always', 'armenian', 'aural', 'auto',
- 'avoid', 'baseline', 'behind', 'below', 'bidi-override', 'blink',
- 'block', 'bold', 'bolder', 'both', 'capitalize', 'center-left',
- 'center-right', 'center', 'circle', 'cjk-ideographic',
- 'close-quote', 'collapse', 'condensed', 'continuous', 'crop',
- 'crosshair', 'cross', 'cursive', 'dashed', 'decimal-leading-zero',
- 'decimal', 'default', 'digits', 'disc', 'dotted', 'double',
- 'e-resize', 'embed', 'extra-condensed', 'extra-expanded',
- 'expanded', 'fantasy', 'far-left', 'far-right', 'faster', 'fast',
- 'fixed', 'fuchsia', 'georgian', 'gray', 'green', 'groove',
- 'hebrew', 'help', 'hidden', 'hide', 'higher', 'high',
- 'hiragana-iroha', 'hiragana', 'icon', 'inherit', 'inline-table',
- 'inline', 'inset', 'inside', 'invert', 'italic', 'justify',
- 'katakana-iroha', 'katakana', 'landscape', 'larger', 'large',
- 'left-side', 'leftwards', 'level', 'lighter', 'lime',
- 'line-through', 'list-item', 'loud', 'lower-alpha', 'lower-greek',
- 'lower-roman', 'lowercase', 'ltr', 'lower', 'low', 'maroon',
- 'medium', 'message-box', 'middle', 'mix', 'monospace', 'n-resize',
- 'narrower', 'navy', 'ne-resize', 'no-close-quote',
- 'no-open-quote', 'no-repeat', 'none', 'normal', 'nowrap',
- 'nw-resize', 'oblique', 'olive', 'once', 'open-quote', 'outset',
- 'outside', 'overline', 'pointer', 'portrait', 'purple', 'px',
- 'red', 'relative', 'repeat-x', 'repeat-y', 'repeat', 'rgb',
- 'ridge', 'right-side', 'rightwards', 's-resize', 'sans-serif',
- 'scroll', 'se-resize', 'semi-condensed', 'semi-expanded',
- 'separate', 'serif', 'show', 'silent', 'silver', 'slow', 'slower',
- 'small-caps', 'small-caption', 'smaller', 'soft', 'solid',
- 'spell-out', 'square', 'static', 'status-bar', 'super',
- 'sw-resize', 'table-caption', 'table-cell', 'table-column',
- 'table-column-group', 'table-footer-group', 'table-header-group',
- 'table-row', 'table-row-group', 'teal', 'text', 'text-bottom',
- 'text-top', 'thick', 'thin', 'transparent', 'ultra-condensed',
- 'ultra-expanded', 'underline', 'upper-alpha', 'upper-latin',
- 'upper-roman', 'uppercase', 'url', 'visible', 'w-resize', 'wait',
- 'white', 'wider', 'x-fast', 'x-high', 'x-large', 'x-loud',
- 'x-low', 'x-small', 'x-soft', 'xx-large', 'xx-small', 'yellow',
- 'yes'
+ 'absolute','activeborder','activecaption','after-white-space',
+ 'ahead','alternate','always','appworkspace','aqua','armenian','auto',
+ 'avoid','background','backwards','baseline','below','bidi-override',
+ 'blink','block','block clear','block width','block-axis','bold',
+ 'bolder','border','border-box','both','bottom','break-word','button',
+ 'button-bevel','buttonface','buttonhighlight','buttonshadow',
+ 'buttontext','capitalize','caption','captiontext','caret','center',
+ 'checkbox','circle','cjk-ideographic','clip','close-quote',
+ 'collapse','compact','condensed','content','content-box',
+ 'continuous','crop','cross','crosshair','cursive','dashed','decimal',
+ 'decimal-leading-zero','default','disc','discard','dot-dash',
+ 'dot-dot-dash','dotted','double','down','e-resize','element',
+ 'ellipsis','embed','end','expanded','extra-condensed',
+ 'extra-expanded','fantasy','fast','fixed','forwards','georgian',
+ 'graytext','groove','hand','hebrew','help','hidden','hide','higher',
+ 'highlight','highlighttext','hiragana','hiragana-iroha',
+ 'horizontal','icon','ignore','inactiveborder','inactivecaption',
+ 'inactivecaptiontext','infinite','infobackground','infotext',
+ 'inherit','initial','inline','inline-axis','inline-block',
+ 'inline-table','inset','inside','intrinsic','invert','italic',
+ 'justify','katakana','katakana-iroha','landscape','large','larger',
+ 'left','level','lighter','lime','line-through','list-item','listbox',
+ 'listitem','logical','loud','lower','lower-alpha','lower-greek',
+ 'lower-latin','lower-roman','lowercase','ltr','marker','match',
+ 'medium','menu','menulist','menulist-button','menulist-text',
+ 'menulist-textfield','menutext','message-box','middle',
+ 'min-intrinsic','mix','monospace','move','multiple','n-resize',
+ 'narrower','ne-resize','no-close','no-close-quote','no-open-quote',
+ 'no-repeat','none','normal','nowrap','nw-resize','oblique','once',
+ 'open-quote','outset','outside','overline','padding','pointer',
+ 'portrait','pre','pre-line','pre-wrap','push-button','radio',
+ 'read-only','read-write','read-write-plaintext-only','relative',
+ 'repeat','repeat-x','repeat-y','reverse','ridge','right','round',
+ 'rtl','run-in','s-resize','sans-serif','scroll','scrollbar',
+ 'scrollbarbutton-down','scrollbarbutton-left',
+ 'scrollbarbutton-right','scrollbarbutton-up',
+ 'scrollbargripper-horizontal','scrollbargripper-vertical',
+ 'scrollbarthumb-horizontal','scrollbarthumb-vertical',
+ 'scrollbartrack-horizontal','scrollbartrack-vertical',
+ 'se-resize','searchfield','searchfield-close','searchfield-results',
+ 'semi-condensed','semi-expanded','separate','serif','show','single',
+ 'skip-white-space','slide','slider-horizontal','slider-vertical',
+ 'sliderthumb-horizontal','sliderthumb-vertical','slow','small',
+ 'small-caps','small-caption','smaller','solid','space','square',
+ 'square-button','start','static','status-bar','stretch','sub',
+ 'super','sw-resize','table','table-caption','table-cell',
+ 'table-column','table-column-group','table-footer-group',
+ 'table-header-group','table-row','table-row-group','text',
+ 'text-bottom','text-top','textfield','thick','thin',
+ 'threeddarkshadow','threedface','threedhighlight',
+ 'threedlightshadow','threedshadow','top','ultra-condensed',
+ 'ultra-expanded','underline','unfurl','up','upper-alpha',
+ 'upper-latin','upper-roman','uppercase','vertical','visible',
+ 'visual','w-resize','wait','wave','wider','window','windowframe',
+ 'windowtext','x-large','x-small','xx-large','xx-small'
+ ),
+ // function xxx()
+ 3 => array(
+ 'attr','calc','contrast','cross-fade','cubic-bezier','cycle',
+ 'device-cmyk','drop-shadow','element','ellipse','hsl','hsla','hwb',
+ 'image','matrix','matrix3d','minmax','gray','grayscale',
+ 'perspective','polygon','radial-gradient','translate','translatex',
+ 'translatey','translatez','translate3d','skew','skewx','skewy',
+ 'saturate','sepia','scale','scalex','scaley','scalez','scale3d',
+ 'steps','rect','repeating-linear-gradient',
+ 'repeating-radial-gradient','repeat','rgb','rgba','rotate','rotatex',
+ 'rotatey','rotatez','rotate3d','url','var'
+ ),
+ // colors
+ 4 => array(
+ 'aliceblue','antiquewhite','aqua','aquamarine','azure','beige',
+ 'bisque','black','blanchedalmond','blue','blueviolet','brown',
+ 'burlywood','cadetblue','chartreuse','chocolate','coral',
+ 'cornflowerblue','cornsilk','crimson','cyan','darkblue','darkcyan',
+ 'darkgoldenrod','darkgray','darkgreen','darkgrey','darkkhaki',
+ 'darkmagenta','darkolivegreen','darkorange','darkorchid','darkred',
+ 'darksalmon','darkseagreen','darkslateblue','darkslategray',
+ 'darkslategrey','darkturquoise','darkviolet','deeppink',
+ 'deepskyblue','dimgray','dimgrey','dodgerblue','firebrick',
+ 'floralwhite','forestgreen','fuchsia','gainsboro','ghostwhite',
+ 'gold','goldenrod','gray','green','greenyellow','grey','honeydew',
+ 'hotpink','indianred','indigo','ivory','khaki','lavender',
+ 'lavenderblush','lawngreen','lemonchiffon','lightblue','lightcoral',
+ 'lightcyan','lightgoldenrodyellow','lightgray','lightgreen',
+ 'lightgrey','lightpink','lightsalmon','lightseagreen','lightskyblue',
+ 'lightslategray','lightslategrey','lightsteelblue','lightyellow',
+ 'lime','limegreen','linen','magenta','maroon','mediumaquamarine',
+ 'mediumblue','mediumorchid','mediumpurple','mediumseagreen',
+ 'mediumslateblue','mediumspringgreen','mediumturquoise',
+ 'mediumvioletred','midnightblue','mintcream','mistyrose','moccasin',
+ 'navajowhite','navy','oldlace','olive','olivedrab','orange',
+ 'orangered','orchid','palegoldenrod','palegreen','paleturquoise',
+ 'palevioletred','papayawhip','peachpuff','peru','pink','plum',
+ 'powderblue','purple','rebeccapurple','red','rosybrown','royalblue',
+ 'saddlebrown','salmon','sandybrown','seagreen','seashell','sienna',
+ 'silver','skyblue','slateblue','slategray','slategrey','snow',
+ 'springgreen','steelblue','tan','teal','thistle','transparent',
+ 'tomato','turquoise','violet','wheat','white','whitesmoke','yellow',
+ 'yellowgreen'
+ ),
+ // pseudo class
+ 5 => array(
+ 'active','after','before','checked','choices','default','dir',
+ 'disabled','empty','enabled','first','first-child','first-letter',
+ 'first-line','first-of-type','focus','fullscreen','hover',
+ 'indeterminate','in-range','invalid','lang','last-child',
+ 'last-of-type','left','link','not','nth-child','nth-last-child',
+ 'nth-last-of-type','nth-of-type','only-child','only-of-type',
+ 'optional','out-of-range','read-only','read-write','repeat-index',
+ 'repeat-item','required','right','root','scope','selection','target',
+ 'valid','value','visited'
)
),
'SYMBOLS' => array(
@@ -150,12 +261,18 @@ $language_data = array (
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => false,
1 => true,
- 2 => true
+ 2 => true,
+ 3 => true,
+ 4 => true,
+ 5 => true
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #000000; font-weight: bold;',
- 2 => 'color: #993333;'
+ 2 => 'color: #993333;',
+ 3 => 'color: #9932cc;',
+ 4 => 'color: #dc143c;',
+ 5 => 'color: #F5758F;',
),
'COMMENTS' => array(
1 => 'color: #a1a100;',
@@ -187,13 +304,17 @@ $language_data = array (
'REGEXPS' => array(
0 => 'color: #cc00cc;',
1 => 'color: #6666ff;',
- 2 => 'color: #3333ff;',
- 3 => 'color: #933;'
+ 2 => 'color: #3F84D9; font-weight: bold;',
+ 3 => 'color: #933;',
+ 4 => 'color: #444;'
)
),
'URLS' => array(
1 => '',
- 2 => ''
+ 2 => '',
+ 3 => '',
+ 4 => '',
+ 5 => ''
),
'OOLANG' => false,
'OBJECT_SPLITTERS' => array(
@@ -203,11 +324,12 @@ $language_data = array (
0 => '\#[a-zA-Z0-9\-_]+(?:\\\\:[a-zA-Z0-9\-_]+)*',
//CSS classname
1 => '\.(?!\d)[a-zA-Z0-9\-_]+(?:\\\\:[a-zA-Z0-9\-_]+)*\b(?=[\{\.#\s,:].|<\|)',
- //CSS Pseudo classes
- //note: & is needed for &gt; (i.e. > )
- 2 => '(?<!\\\\):(?!\d)[a-zA-Z0-9\-]+\b(?:\s*(?=[\{\.#a-zA-Z,:+*&](.|\n)|<\|))',
+ //CSS rules
+ 2 => '\@(?!\d)[a-zA-Z0-9\-_]+(?:\\\\:[a-zA-Z0-9\-_]+)*\b(?=[\{\.#\s,:].|<\|)',
//Measurements
- 3 => '[+\-]?(\d+|(\d*\.\d+))(em|ex|pt|px|cm|in|%)',
+ 3 => '[+\-]?(\d+|(\d*\.\d+))(em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx|%)',
+ //var
+ 4 => '(--[a-zA-Z0-9\-]*)'
),
'STRICT_MODE_APPLIES' => GESHI_NEVER,
'SCRIPT_DELIMITERS' => array(
@@ -222,5 +344,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cuesheet.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cuesheet.php
index ebaca955..675264dc 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cuesheet.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/cuesheet.php
@@ -4,7 +4,7 @@
* ----------
* Author: Benny Baumann (benbe@geshi.org)
* Copyright: (c) 2009 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2009/12/21
*
* Cuesheet language file for GeSHi.
@@ -134,5 +134,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/d.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/d.php
index 7f3e9857..eb68ea58 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/d.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/d.php
@@ -6,7 +6,7 @@
* Contributors:
* - Jimmy Cao
* Copyright: (c) 2005 Thomas Kuehne (http://thomas.kuehne.cn/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2005/04/22
*
* D language file for GeSHi.
@@ -248,5 +248,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dart.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dart.php
new file mode 100644
index 00000000..932e13e8
--- /dev/null
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dart.php
@@ -0,0 +1,159 @@
+<?php
+/*************************************************************************************
+ * dart.php
+ * --------
+ * Author: Edward Hart (edward.dan.hart@gmail.com)
+ * Copyright: (c) 2013 Edward Hart
+ * Release Version: 1.0.8.12
+ * Date Started: 2013/10/25
+ *
+ * Dart language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2013/10/25
+ * - First Release
+ *
+ * TODO (updated 2013/10/25)
+ * -------------------------
+ * - Highlight standard library types.
+ *
+ *************************************************************************************
+ *
+ * This file is part of GeSHi.
+ *
+ * GeSHi is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * GeSHi is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GeSHi; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ ************************************************************************************/
+
+$language_data = array(
+ 'LANG_NAME' => 'Dart',
+
+ 'COMMENT_SINGLE' => array('//'),
+ 'COMMENT_MULTI' => array('/*' => '*/'),
+ 'COMMENT_REGEXP' => array(),
+
+ 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
+ 'QUOTEMARKS' => array("'", '"'),
+ 'ESCAPE_CHAR' => '',
+ 'ESCAPE_REGEXP' => array(
+ //Simple Single Char Escapes
+ 1 => "#\\\\[\\\\nrfbtv\'\"?\n]#i",
+ //Hexadecimal Char Specs
+ 2 => "#\\\\x[\da-fA-F]{2}#",
+ //Hexadecimal Char Specs
+ 3 => "#\\\\u[\da-fA-F]{4}#",
+ 4 => "#\\\\u\\{[\da-fA-F]*\\}#"
+ ),
+ 'NUMBERS' =>
+ GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE |
+ GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI |
+ GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO,
+
+ 'KEYWORDS' => array(
+ 1 => array(
+ 'abstract', 'as', 'assert', 'break', 'case', 'catch', 'class',
+ 'const', 'continue', 'default', 'do', 'dynamic', 'else', 'export',
+ 'extends', 'external', 'factory', 'false', 'final', 'finally',
+ 'for', 'get', 'if', 'implements', 'import', 'in', 'is', 'library',
+ 'new', 'null', 'operator', 'part', 'return', 'set', 'static',
+ 'super', 'switch', 'this', 'throw', 'true', 'try', 'typedef', 'var',
+ 'while', 'with'
+ ),
+ 2 => array(
+ 'double', 'bool', 'int', 'num', 'void'
+ ),
+ ),
+
+ 'SYMBOLS' => array(
+ 0 => array('(', ')', '{', '}', '[', ']'),
+ 1 => array('+', '-', '*', '/', '%', '~'),
+ 2 => array('&', '|', '^'),
+ 3 => array('=', '!', '<', '>'),
+ 4 => array('?', ':'),
+ 5 => array('..'),
+ 6 => array(';', ',')
+ ),
+
+ 'CASE_SENSITIVE' => array(
+ GESHI_COMMENTS => false,
+ 1 => true,
+ 2 => true,
+ ),
+
+ 'STYLES' => array(
+ 'KEYWORDS' => array(
+ 1 => 'font-weight: bold;',
+ 2 => 'color: #445588; font-weight: bold;'
+ ),
+ 'COMMENTS' => array(
+ 0 => 'color: #999988; font-style: italic;',
+ 'MULTI' => 'color: #999988; font-style: italic;'
+ ),
+ 'ESCAPE_CHAR' => array(
+ 0 => 'color: #000099; font-weight: bold;',
+ 1 => 'color: #000099; font-weight: bold;',
+ 2 => 'color: #660099; font-weight: bold;',
+ 3 => 'color: #660099; font-weight: bold;',
+ 4 => 'color: #660099; font-weight: bold;',
+ 5 => 'color: #006699; font-weight: bold;',
+ 'HARD' => ''
+ ),
+ 'STRINGS' => array(
+ 0 => 'color: #d14;'
+ ),
+ 'NUMBERS' => array(
+ 0 => 'color: #009999;',
+ GESHI_NUMBER_HEX_PREFIX => 'color: #208080;',
+ GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;',
+ GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;',
+ GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;',
+ GESHI_NUMBER_FLT_NONSCI => 'color:#800080;'
+ ),
+ 'BRACKETS' => array(''),
+ 'METHODS' => array(
+ 1 => 'color: #006633;'
+ ),
+ 'SYMBOLS' => array(
+ 0 => 'font-weight: bold;',
+ 1 => 'font-weight: bold;',
+ 2 => 'font-weight: bold;',
+ 3 => 'font-weight: bold;',
+ 4 => 'font-weight: bold;',
+ 5 => 'font-weight: bold;',
+ 6 => 'font-weight: bold;'
+ ),
+ 'REGEXPS' => array(
+ ),
+ 'SCRIPT' => array(
+ )
+ ),
+ 'URLS' => array(
+ 1 => '',
+ 2 => ''
+ ),
+ 'OOLANG' => true,
+ 'OBJECT_SPLITTERS' => array(
+ 1 => '.'
+ ),
+ 'REGEXPS' => array(
+ ),
+ 'STRICT_MODE_APPLIES' => GESHI_NEVER,
+ 'SCRIPT_DELIMITERS' => array(
+ ),
+ 'HIGHLIGHT_STRICT_BLOCK' => array(
+ ),
+ 'TAB_WIDTH' => 4
+);
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dcl.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dcl.php
index db12a4c4..90de8732 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dcl.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dcl.php
@@ -4,7 +4,7 @@
* --------
* Author: Petr Hendl (petr@hendl.cz)
* Copyright: (c) 2011 Petr Hendl http://hendl.cz/geshi/
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2011/02/17
*
* DCL language file for GeSHi.
@@ -188,5 +188,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dcpu16.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dcpu16.php
index 5fcb25e5..4dec5a85 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dcpu16.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dcpu16.php
@@ -3,8 +3,8 @@
* dcpu16.php
* -------
* Author: Benny Baumann (BenBE@omorphia.de)
- * Copyright: (c) 2007-2012 Benny Baumann (http://geshi.org/)
- * Release Version: 1.0.8.11
+ * Copyright: (c) 2007-2014 Benny Baumann (http://geshi.org/)
+ * Release Version: 1.0.8.12
* Date Started: 2012/04/12
*
* DCPU/16 Assembly language file for GeSHi.
@@ -127,5 +127,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dcs.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dcs.php
index d32cfc5b..99fa6280 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dcs.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dcs.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: Stelio Passaris (GeSHi@stelio.net)
* Copyright: (c) 2009 Stelio Passaris (http://stelio.net/stiki/GeSHi)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2009/01/20
*
* DCS language file for GeSHi.
@@ -178,5 +178,3 @@ $language_data = array (
),
'TAB_WIDTH' => 4
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/delphi.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/delphi.php
index d5596e0c..a0cd36eb 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/delphi.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/delphi.php
@@ -4,7 +4,7 @@
* ----------
* Author: J�rja Norbert (jnorbi@vipmail.hu), Benny Baumann (BenBE@omorphia.de)
* Copyright: (c) 2004 J�rja Norbert, Benny Baumann (BenBE@omorphia.de), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/07/26
*
* Delphi (Object Pascal) language file for GeSHi.
@@ -297,5 +297,3 @@ $language_data = array (
)
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/diff.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/diff.php
index 5b681717..e4bfc6f4 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/diff.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/diff.php
@@ -4,7 +4,7 @@
* --------
* Author: Conny Brunnkvist (conny@fuchsia.se), W. Tasin (tasin@fhm.edu)
* Copyright: (c) 2004 Fuchsia Open Source Solutions (http://www.fuchsia.se/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/12/29
*
* Diff-output language file for GeSHi.
@@ -192,5 +192,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/div.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/div.php
index aa11795a..8b230da9 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/div.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/div.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: Gabriel Lorenzo (ermakina@gmail.com)
* Copyright: (c) 2005 Gabriel Lorenzo (http://ermakina.gazpachito.net)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2005/06/19
*
* DIV language file for GeSHi.
@@ -122,5 +122,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dos.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dos.php
index 36d99836..080f300d 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dos.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dos.php
@@ -4,7 +4,7 @@
* -------
* Author: Alessandro Staltari (staltari@geocities.com)
* Copyright: (c) 2005 Alessandro Staltari (http://www.geocities.com/SiliconValley/Vista/8155/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2005/07/05
*
* DOS language file for GeSHi.
@@ -223,5 +223,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dot.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dot.php
index bdf240a1..430ea244 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dot.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/dot.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: Adrien Friggeri (adrien@friggeri.net)
* Copyright: (c) 2007 Adrien Friggeri (http://www.friggeri.net)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2007/05/30
*
* dot language file for GeSHi.
@@ -160,5 +160,3 @@ $language_data = array (
3 => true
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/e.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/e.php
index 319bee01..4d4c539c 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/e.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/e.php
@@ -4,7 +4,7 @@
* --------
* Author: Kevin Reid (kpreid@switchb.org)
* Copyright: (c) 2010 Kevin Reid (http://switchb.org/kpreid/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2010/04/16
*
* E language file for GeSHi.
@@ -204,5 +204,3 @@ $language_data = array(
'SCRIPT_DELIMITERS' => array(),
'HIGHLIGHT_STRICT_BLOCK' => array()
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/ecmascript.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/ecmascript.php
index 69a55c9a..7a1da92d 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/ecmascript.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/ecmascript.php
@@ -4,7 +4,7 @@
* --------------
* Author: Michel Mariani (http://www.tonton-pixel.com/site/)
* Copyright: (c) 2010 Michel Mariani (http://www.tonton-pixel.com/site/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2010/01/08
*
* ECMAScript language file for GeSHi.
@@ -206,5 +206,3 @@ $language_data = array (
),
'TAB_WIDTH' => 4
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/eiffel.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/eiffel.php
index baa13c31..5142e797 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/eiffel.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/eiffel.php
@@ -4,7 +4,7 @@
* ----------
* Author: Zoran Simic (zsimic@axarosenberg.com)
* Copyright: (c) 2005 Zoran Simic
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2005/06/30
*
* Eiffel language file for GeSHi.
@@ -391,5 +391,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/email.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/email.php
index 8a313d48..4ddc6ab6 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/email.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/email.php
@@ -4,7 +4,7 @@
* ---------------
* Author: Benny Baumann (BenBE@geshi.org)
* Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2008/10/19
*
* Email (mbox \ eml \ RFC format) language file for GeSHi.
@@ -218,5 +218,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/epc.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/epc.php
index c575c0c6..2db41fed 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/epc.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/epc.php
@@ -4,7 +4,7 @@
* --------
* Author: Thorsten Muehlfelder (muehlfelder@enertex.de)
* Copyright: (c) 2010 Enertex Bayern GmbH
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2010/08/26
*
* Enerscript language file for GeSHi.
@@ -150,5 +150,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/erlang.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/erlang.php
index 4b8d406b..9939d1a7 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/erlang.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/erlang.php
@@ -7,7 +7,7 @@
* - Uwe Dauernheim (uwe@dauernheim.net)
* - Dan Forest-Barbier (dan@twisted.in)
* Copyright: (c) 2008 Uwe Dauernheim (http://www.kreisquadratur.de/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2008-09-27
*
* Erlang language file for GeSHi.
@@ -425,17 +425,15 @@ $language_data = array(
3 => array(
'DISALLOWED_BEFORE' => '(?<![\w])',
'DISALLOWED_AFTER' => ''//'(?=\s*\()'
- ),
+ ),
5 => array(
'DISALLOWED_BEFORE' => '(?<=\'|)',
'DISALLOWED_AFTER' => '(?=(\'|):)'
- ),
+ ),
6 => array(
'DISALLOWED_BEFORE' => '(?<=\/|-)',
'DISALLOWED_AFTER' => ''
+ )
)
)
- ),
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/euphoria.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/euphoria.php
index 7bbf8846..19897554 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/euphoria.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/euphoria.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: Nicholas Koceja (nerketur@hotmail.com)
* Copyright: (c) 2010 Nicholas Koceja
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 11/24/2010
*
* Euphoria language file for GeSHi.
@@ -136,5 +136,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/ezt.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/ezt.php
new file mode 100644
index 00000000..196a56b8
--- /dev/null
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/ezt.php
@@ -0,0 +1,134 @@
+<?php
+/*************************************************************************************
+ * ezt.php
+ * -----------
+ * Author: Ramesh Vishveshwar (ramesh.vishveshwar@gmail.com)
+ * Copyright: (c) 2012 Ramesh Vishveshwar (http://thecodeisclear.in)
+ * Release Version: 1.0.8.12
+ * Date Started: 2012/09/01
+ *
+ * Easytrieve language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2012/09/22 (1.0.0)
+ * - First Release
+ *
+ *************************************************************************************
+ *
+ * This file is part of GeSHi.
+ *
+ * GeSHi is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * GeSHi is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GeSHi; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ ************************************************************************************/
+
+$language_data = array (
+ 'LANG_NAME' => 'EZT',
+ 'COMMENT_SINGLE' => array(),
+ 'COMMENT_MULTI' => array(),
+ 'CASE_KEYWORDS' => GESHI_CAPS_UPPER,
+ 'COMMENT_REGEXP' => array(
+ // First character of the line is an asterisk. Rest of the line is spaces/null
+ 0 => '/\*(\s|\D)?(\n)/',
+ // Asterisk followed by any character & then a non numeric character.
+ // This is to prevent expressions such as 25 * 4 from being marked as a comment
+ // Note: 25*4 - 100 will mark *4 - 100 as a comment. Pls. space out expressions
+ // In any case, 25*4 will result in an Easytrieve error
+ 1 => '/\*.([^0-9\n])+.*(\n)/'
+ ),
+ 'QUOTEMARKS' => array("'", '"'),
+ 'ESCAPE_CHAR' => '',
+ 'KEYWORDS' => array(
+ 1 => array(
+ 'CONTROL','DEFINE','DISPLAY','DO','ELSE','END-DO','END-IF',
+ 'END-PROC','FILE','GET','GOTO','HEADING','IF','JOB','LINE',
+ 'PARM','PERFORM','POINT','PRINT','PROC','PUT','READ','RECORD',
+ 'REPORT','RETRIEVE','SEARCH','SELECT','SEQUENCE','SORT','STOP',
+ 'TITLE','WRITE'
+ ),
+ // Procedure Keywords (Names of specific procedures)
+ 2 => array (
+ 'AFTER-BREAK','AFTER-LINE','BEFORE-BREAK','BEFORE-LINE',
+ 'ENDPAGE','REPORT-INPUT','TERMINATION',
+ ),
+ // Macro names, Parameters
+ 3 => array (
+ 'COMPILE','CONCAT','DESC','GETDATE','MASK','PUNCH',
+ 'VALUE','SYNTAX','NEWPAGE','SKIP','COL','TALLY',
+ 'WITH'
+ )
+ ),
+ 'SYMBOLS' => array(
+ '(',')','=','&',',','*','>','<','%'
+ ),
+ 'CASE_SENSITIVE' => array(
+ GESHI_COMMENTS => false,
+ 1 => false,
+ 2 => false,
+ 3 => false
+ //4 => false,
+ ),
+ 'STYLES' => array(
+ 'KEYWORDS' => array(
+ 1 => 'color: #FF0000;',
+ 2 => 'color: #21A502;',
+ 3 => 'color: #FF00FF;'
+ ),
+ 'COMMENTS' => array(
+ 0 => 'color: #0000FF; font-style: italic;',
+ 1 => 'color: #0000FF; font-style: italic;'
+ ),
+ 'ESCAPE_CHAR' => array(
+ 0 => ''
+ ),
+ 'BRACKETS' => array(
+ 0 => 'color: #FF7400;'
+ ),
+ 'STRINGS' => array(
+ 0 => 'color: #66CC66;'
+ ),
+ 'NUMBERS' => array(
+ 0 => 'color: #736205;'
+ ),
+ 'METHODS' => array(
+ 1 => '',
+ 2 => ''
+ ),
+ 'SYMBOLS' => array(
+ 0 => 'color: #FF7400;'
+ ),
+ 'REGEXPS' => array(
+ 0 => 'color: #E01B6A;'
+ ),
+ 'SCRIPT' => array(
+ 0 => ''
+ )
+ ),
+ 'URLS' => array(
+ 1 => '',
+ 2 => '',
+ 3 => ''
+ ),
+ 'OOLANG' => false,
+ 'OBJECT_SPLITTERS' => array(),
+ 'REGEXPS' => array(
+ // We are trying to highlight Macro names here which preceded by %
+ 0 => '(%)([a-zA-Z0-9])+(\s|\n)'
+ ),
+ 'STRICT_MODE_APPLIES' => GESHI_NEVER,
+ 'SCRIPT_DELIMITERS' => array(
+ ),
+ 'HIGHLIGHT_STRICT_BLOCK' => array()
+);
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/f1.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/f1.php
index 7d767608..75a7cd5c 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/f1.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/f1.php
@@ -4,7 +4,7 @@
* -------
* Author: Juro Bystricky (juro@f1compiler.com)
* Copyright: K2 Software Corp.
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2010/07/06
*
* Formula One language file for GeSHi.
@@ -147,5 +147,3 @@ $language_data = array(
),
'TAB_WIDTH' => 4
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/falcon.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/falcon.php
index 2111d9e8..aeb41332 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/falcon.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/falcon.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: billykater (billykater+geshi@gmail.com)
* Copyright: (c) 2010 billykater (http://falconpl.org/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2010/06/07
*
* Falcon language file for GeSHi.
@@ -215,4 +215,3 @@ $language_data = array (
'.'
)
);
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/fo.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/fo.php
index ba4a5924..661f5bb3 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/fo.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/fo.php
@@ -4,7 +4,7 @@
* --------
* Author: Tan-Vinh Nguyen (tvnguyen@web.de)
* Copyright: (c) 2009 Tan-Vinh Nguyen
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2009/03/23
*
* fo language file for GeSHi.
@@ -324,4 +324,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/fortran.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/fortran.php
index c21ccd19..c3bd402a 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/fortran.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/fortran.php
@@ -4,7 +4,7 @@
* -----------
* Author: Cedric Arrabie (cedric.arrabie@univ-pau.fr)
* Copyright: (C) 2006 Cetric Arrabie
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2006/04/22
*
* Fortran language file for GeSHi.
@@ -156,5 +156,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK'=> array(
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/freebasic.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/freebasic.php
index b23f39bc..842a8057 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/freebasic.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/freebasic.php
@@ -4,7 +4,7 @@
* -------------
* Author: Roberto Rossi
* Copyright: (c) 2005 Roberto Rossi (http://rsoftware.altervista.org)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2005/08/19
*
* FreeBasic (http://www.freebasic.net/) language file for GeSHi.
@@ -137,5 +137,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/freeswitch.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/freeswitch.php
index c6fff276..efeceddb 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/freeswitch.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/freeswitch.php
@@ -4,7 +4,7 @@
* --------
* Author: James Rose (james.gs@stubbornroses.com)
* Copyright: (c) 2006 Christian Lescuyer http://xtian.goelette.info
- * Release Version: 1.0.8.11n/a
+ * Release Version: 1.0.8.12
* Date Started: 2011/11/18
*
* FreeSWITCH language file for GeSHi.
@@ -164,5 +164,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/fsharp.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/fsharp.php
index d85a7c75..33aa1220 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/fsharp.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/fsharp.php
@@ -4,7 +4,7 @@
* ----------
* Author: julien ortin (jo_spam-divers@yahoo.fr)
* Copyright: (c) 2009 julien ortin
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2009/09/20
*
* F# language file for GeSHi.
@@ -209,5 +209,3 @@ $language_data = array(
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gambas.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gambas.php
index 352830eb..4bb582e6 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gambas.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gambas.php
@@ -5,7 +5,7 @@
* Author: Jesus Guardon (jguardon@telefonica.net)
* Copyright: (c) 2009 Jesus Guardon (http://gambas-es.org),
* Benny Baumann (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/08/20
*
* GAMBAS language file for GeSHi.
@@ -210,5 +210,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gdb.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gdb.php
index 0a5e32c3..16cc9fb4 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gdb.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gdb.php
@@ -4,7 +4,7 @@
* --------
* Author: Milian Wolff (mail@milianw.de)
* Copyright: (c) 2009 Milian Wolff
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2009/06/24
*
* GDB language file for GeSHi.
@@ -189,10 +189,6 @@ $language_data = array (
'PARSER_CONTROL' => array(
'ENABLE_FLAGS' => array(
'NUMBERS' => false
- ),
+ )
)
);
-
-// kate: replace-tabs on; indent-width 4;
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/genero.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/genero.php
index e1b20b3e..faac5e88 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/genero.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/genero.php
@@ -4,7 +4,7 @@
* ----------
* Author: Lars Gersmann (lars.gersmann@gmail.com)
* Copyright: (c) 2007 Lars Gersmann, Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2007/07/01
*
* Genero (FOURJ's Genero 4GL) language file for GeSHi.
@@ -459,5 +459,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/genie.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/genie.php
index db05ec06..38495627 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/genie.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/genie.php
@@ -4,7 +4,7 @@
* ----------
* Author: Nicolas Joseph (nicolas.joseph@valaide.org)
* Copyright: (c) 2009 Nicolas Joseph
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2009/04/29
*
* Genie language file for GeSHi.
@@ -150,8 +150,6 @@ $language_data = array (
'KEYWORDS' => array(
'DISALLOWED_BEFORE' => "(?<![a-zA-Z0-9\$_\|\#>|^])",
'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%\\-])"
+ )
)
- )
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gettext.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gettext.php
index 80b531c1..ef4dd96b 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gettext.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gettext.php
@@ -4,7 +4,7 @@
* --------
* Author: Milian Wolff (mail@milianw.de)
* Copyright: (c) 2008 Milian Wolff
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2008/05/25
*
* GNU Gettext .po/.pot language file for GeSHi.
@@ -91,7 +91,5 @@ $language_data = array (
),
'HIGHLIGHT_STRICT_BLOCK' => array(
),
- 'TAB_WIDTH' => 4,
+ 'TAB_WIDTH' => 4
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/glsl.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/glsl.php
index 3615cfe7..1eb3918e 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/glsl.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/glsl.php
@@ -4,7 +4,7 @@
* -----
* Author: Benny Baumann (BenBE@omorphia.de)
* Copyright: (c) 2008 Benny Baumann (BenBE@omorphia.de)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2008/03/20
*
* glSlang language file for GeSHi.
@@ -201,5 +201,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gml.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gml.php
index 999251b2..26c913b6 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gml.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gml.php
@@ -1,10 +1,10 @@
<?php
/*************************************************************************************
* gml.php
- * --------
- * Author: Jos� Jorge Enr�quez (jenriquez@users.sourceforge.net)
- * Copyright: (c) 2005 Jos� Jorge Enr�quez Rodr�guez (http://www.zonamakers.com)
- * Release Version: 1.0.8.11
+ * -------
+ * Author: José Jorge Enríquez <jenriquez@users.sourceforge.net>, Timon Knigge <timonknigge@live.nl>
+ * Copyright: (c) 2005 José Jorge Enríquez Rodríguez (http://www.zonamakers.com), (c) 2013 Timon Knigge (http://www.bluemoonproductions.nl)
+ * Release Version: 1.0.8.12
* Date Started: 2005/06/21
*
* GML language file for GeSHi.
@@ -61,388 +61,256 @@
*
************************************************************************************/
-$language_data = array (
+$language_data = array(
'LANG_NAME' => 'GML',
'COMMENT_SINGLE' => array(1 => '//'),
'COMMENT_MULTI' => array('/*' => '*/'),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
- 'QUOTEMARKS' => array("'"),
- 'ESCAPE_CHAR' => '\\',
+ 'QUOTEMARKS' => array('"', "'"),
+ 'ESCAPE_CHAR' => '',
'KEYWORDS' => array(
- // language keywords
+ // Variables
1 => array(
- 'break', 'continue', 'do', 'until', 'if', 'else',
- 'exit', 'for', 'repeat', 'return', 'switch',
- 'case', 'default', 'var', 'while', 'with', 'div', 'mod',
- // GML Language overview
- 'self', 'other', 'all', 'noone', 'global',
+ 'argument','argument0','argument1','argument10','argument11','argument12','argument13','argument14','argument15','argument2','argument3','argument4','argument5','argument6','argument7',
+ 'argument8','argument9','argument_count','argument_relative','async_load','background_alpha','background_blend','background_color','background_foreground','background_height','background_hspeed',
+ 'background_htiled','background_index','background_showcolor','background_visible','background_vspeed','background_vtiled','background_width','background_x','background_xscale','background_y',
+ 'background_yscale','browser_height','browser_width','caption_health','caption_lives','caption_score','current_day','current_hour','current_minute','current_month','current_second','current_time',
+ 'current_weekday','current_year','cursor_sprite','debug_mode','delta_time','display_aa','error_last','error_occurred','event_action','event_number','event_object','event_type','fps','fps_real',
+ 'game_id','gamemaker_pro','gamemaker_registered','gamemaker_version','health','instance_count','instance_id','keyboard_key','keyboard_lastchar','keyboard_lastkey','keyboard_string','lives',
+ 'mouse_button','mouse_lastbutton','mouse_x','mouse_y','os_browser','os_device','os_type','os_version','program_directory','room','room_caption','room_first','room_height','room_last',
+ 'room_persistent','room_speed','room_width','score','secure_mode','show_health','show_lives','show_score','temp_directory','transition_color','transition_kind','transition_steps','view_angle',
+ 'view_current','view_enabled','view_hborder','view_hport','view_hspeed','view_hview','view_object','view_surface_id','view_vborder','view_visible','view_vspeed','view_wport','view_wview','view_xport',
+ 'view_xview','view_yport','view_yview','webgl_enabled','working_directory','alarm','bbox_bottom','bbox_left','bbox_right','bbox_top','depth','direction','friction','gravity','gravity_direction',
+ 'hspeed','id','image_alpha','image_angle','image_blend','image_index','image_number','image_single','image_speed','image_xscale','image_yscale','mask_index','object_index','path_endaction','path_index',
+ 'path_orientation','path_position','path_positionprevious','path_scale','path_speed','persistent','phy_active','phy_angular_damping','phy_angular_velocity','phy_bullet','phy_col_normal_x',
+ 'phy_col_normal_y','phy_collision_points','phy_collision_x','phy_collision_y','phy_com_x','phy_com_y','phy_dynamic','phy_fixed_rotation','phy_inertia','phy_kinematic','phy_linear_damping',
+ 'phy_linear_velocity_x','phy_linear_velocity_y','phy_mass','phy_position_x','phy_position_xprevious','phy_position_y','phy_position_yprevious','phy_rotation','phy_sleeping','phy_speed','phy_speed_x',
+ 'phy_speed_y','solid','speed','sprite_height','sprite_index','sprite_width','sprite_xoffset','sprite_yoffset','timeline_index','timeline_loop','timeline_position','timeline_running','timeline_speed',
+ 'visible','vspeed','x','xprevious','xstart','y','yprevious','ystart'
),
- // modifiers and built-in variables
+
+ // Functions
2 => array(
- // Game play
- 'x','y','xprevious','yprevious','xstart','ystart','hspeed','vspeed','direction','speed',
- 'friction','gravity','gravity_direction',
- 'path_index','path_position','path_positionprevious','path_speed','path_orientation',
- 'path_endaction',
- 'object_index','id','mask_index','solid','persistent','instance_count','instance_id',
- 'room_speed','fps','current_time','current_year','current_month','current_day','current_weekday',
- 'current_hour','current_minute','current_second','alarm','timeline_index','timeline_position',
- 'timeline_speed',
- 'room','room_first','room_last','room_width','room_height','room_caption','room_persistent',
- 'score','lives','health','show_score','show_lives','show_health','caption_score','caption_lives',
- 'caption_health',
- 'event_type','event_number','event_object','event_action',
- 'error_occurred','error_last',
- // User interaction
- 'keyboard_lastkey','keyboard_key','keyboard_lastchar','keyboard_string',
- 'mouse_x','mouse_y','mouse_button','mouse_lastbutton',
- // Game Graphics
- 'sprite_index','sprite_width','sprite_height','sprite_xoffset','sprite_yoffset',
- 'image_number','image_index','image_speed','image_xscale','image_yscale','image_angle',
- 'image_alpha','image_blend','bbox_left','bbox_right','bbox_top','bbox_bottom',
- 'background_color','background_showcolor','background_visible','background_foreground',
- 'background_index','background_x','background_y','background_width','background_height',
- 'background_htiled','background_vtiled','background_xscale','background_yscale',
- 'background_hspeed','background_vspeed','background_blend','background_alpha',
- 'background','left, top, width, height','depth','visible','xscale','yscale','blend','alpha',
- 'view_enabled','view_current','view_visible','view_yview','view_wview','view_hview','view_xport',
- 'view_yport','view_wport','view_hport','view_angle','view_hborder','view_vborder','view_hspeed',
- 'view_vspeed','view_object',
- 'transition_kind',
- // Files, registry and executing programs
- 'game_id','working_directory','temp_directory',
- 'secure_mode',
- // Creating particles
- 'xmin', 'xmax', 'ymin', 'ymax','shape','distribution','particle type','number',
- 'force','dist','kind','additive', 'parttype1', 'parttype2'
+ 'YoYo_AchievementsAvailable','YoYo_AddVirtualKey','YoYo_CheckSecurity','YoYo_DeleteVirtualKey','YoYo_DisableAds','YoYo_EnableAds','YoYo_EnableAlphaBlend','YoYo_GetCPUDetails','YoYo_GetConfig',
+ 'YoYo_GetDevice','YoYo_GetDomain','YoYo_GetPictureSprite','YoYo_GetPlatform','YoYo_GetSessionKey','YoYo_GetTiltX','YoYo_GetTiltY','YoYo_GetTiltZ','YoYo_GetTimer','YoYo_HideVirtualKey','YoYo_IsKeypadOpen',
+ 'YoYo_LeaveRating','YoYo_LoginAchievements','YoYo_LogoutAchievements','YoYo_MouseCheckButton','YoYo_MouseCheckButtonPressed','YoYo_MouseCheckButtonReleased','YoYo_MouseX','YoYo_MouseXRaw','YoYo_MouseY',
+ 'YoYo_MouseYRaw','YoYo_OSPauseEvent','YoYo_OpenURL','YoYo_OpenURL_ext','YoYo_OpenURL_full','YoYo_PostAchievement','YoYo_PostScore','YoYo_SelectPicture','YoYo_ShowVirtualKey','abs','achievement_available',
+ 'achievement_event','achievement_get_challenges','achievement_get_info','achievement_get_pic','achievement_increment','achievement_load_friends','achievement_load_leaderboard','achievement_load_progress',
+ 'achievement_login','achievement_login_status','achievement_logout','achievement_post','achievement_post_score','achievement_reset','achievement_send_challenge','achievement_show',
+ 'achievement_show_achievements','achievement_show_challenge_notifications','achievement_show_leaderboards','action_another_room','action_bounce','action_change_object','action_color','action_create_object',
+ 'action_create_object_motion','action_create_object_random','action_current_room','action_draw_arrow','action_draw_background','action_draw_ellipse','action_draw_ellipse_gradient','action_draw_gradient_hor',
+ 'action_draw_gradient_vert','action_draw_health','action_draw_life','action_draw_life_images','action_draw_line','action_draw_rectangle','action_draw_score','action_draw_sprite','action_draw_text',
+ 'action_draw_text_transformed','action_draw_variable','action_effect','action_end_game','action_end_sound','action_execute_script','action_font','action_fullscreen','action_highscore_clear','action_if',
+ 'action_if_aligned','action_if_collision','action_if_dice','action_if_empty','action_if_health','action_if_life','action_if_mouse','action_if_next_room','action_if_number','action_if_object',
+ 'action_if_previous_room','action_if_question','action_if_score','action_if_sound','action_if_variable','action_inherited','action_kill_object','action_kill_position','action_linear_step','action_load_game',
+ 'action_message','action_move','action_move_contact','action_move_point','action_move_random','action_move_start','action_move_to','action_next_room','action_partemit_burst','action_partemit_create',
+ 'action_partemit_destroy','action_partemit_stream','action_partsyst_clear','action_partsyst_create','action_partsyst_destroy','action_parttype_color','action_parttype_create','action_parttype_gravity',
+ 'action_parttype_life','action_parttype_secondary','action_parttype_speed','action_path','action_path_end','action_path_position','action_path_speed','action_potential_step','action_previous_room',
+ 'action_replace_background','action_replace_sound','action_replace_sprite','action_restart_game','action_reverse_xdir','action_reverse_ydir','action_save_game','action_set_alarm','action_set_cursor',
+ 'action_set_friction','action_set_gravity','action_set_health','action_set_hspeed','action_set_life','action_set_motion','action_set_score','action_set_timeline_position','action_set_timeline_speed',
+ 'action_set_vspeed','action_snap','action_snapshot','action_sound','action_sprite_color','action_sprite_set','action_sprite_transform','action_timeline_pause','action_timeline_set','action_timeline_start',
+ 'action_timeline_stop','action_webpage','action_wrap','ads_disable','ads_enable','ads_engagement_active','ads_engagement_available','ads_engagement_launch','ads_event','ads_event_preload',
+ 'ads_get_display_height','ads_get_display_width','ads_interstitial_available','ads_interstitial_display','ads_move','ads_set_reward_callback','ads_setup','analytics_event','analytics_event_ext','ansi_char',
+ 'arccos','arcsin','arctan','arctan2','array_height_2d','array_length_1d','array_length_2d','asset_get_index','asset_get_type','audio_channel_num','audio_emitter_create','audio_emitter_exists',
+ 'audio_emitter_falloff','audio_emitter_free','audio_emitter_gain','audio_emitter_pitch','audio_emitter_position','audio_emitter_velocity','audio_exists','audio_falloff_set_model','audio_get_type',
+ 'audio_is_paused','audio_is_playing','audio_listener_orientation','audio_listener_position','audio_listener_velocity','audio_master_gain','audio_music_gain','audio_music_is_playing','audio_pause_all',
+ 'audio_pause_music','audio_pause_sound','audio_play_music','audio_play_sound','audio_play_sound_at','audio_play_sound_on','audio_resume_all','audio_resume_music','audio_resume_sound','audio_sound_gain',
+ 'audio_sound_length','audio_sound_pitch','audio_stop_all','audio_stop_music','audio_stop_sound','audio_system','background_add','background_assign','background_create_color','background_create_from_surface',
+ 'background_create_gradient','background_delete','background_duplicate','background_exists','background_get_height','background_get_name','background_get_texture','background_get_uvs','background_get_width',
+ 'background_replace','background_save','background_set_alpha_from_background','base64_decode','base64_encode','buffer_base64_decode','buffer_base64_decode_ext','buffer_base64_encode','buffer_copy',
+ 'buffer_create','buffer_delete','buffer_fill','buffer_get_size','buffer_get_surface','buffer_load','buffer_load_ext','buffer_md5','buffer_peek','buffer_poke','buffer_read','buffer_resize','buffer_save',
+ 'buffer_save_ext','buffer_seek','buffer_set_surface','buffer_sha1','buffer_sizeof','buffer_tell','buffer_write','ceil','choose','chr','clamp','clickable_add','clickable_add_ext','clickable_change',
+ 'clickable_change_ext','clickable_delete','clickable_exists','clipboard_get_text','clipboard_has_text','clipboard_set_text','cloud_file_save','cloud_string_save','cloud_synchronise','code_is_compiled',
+ 'collision_circle','collision_ellipse','collision_line','collision_point','collision_rectangle','color_get_blue','color_get_green','color_get_hue','color_get_red','color_get_saturation','color_get_value',
+ 'cos','d3d_draw_block','d3d_draw_cone','d3d_draw_cylinder','d3d_draw_ellipsoid','d3d_draw_floor','d3d_draw_wall','d3d_end','d3d_light_define_ambient','d3d_light_define_direction','d3d_light_define_point',
+ 'd3d_light_enable','d3d_model_block','d3d_model_clear','d3d_model_cone','d3d_model_create','d3d_model_cylinder','d3d_model_destroy','d3d_model_draw','d3d_model_ellipsoid','d3d_model_floor','d3d_model_load',
+ 'd3d_model_primitive_begin','d3d_model_primitive_end','d3d_model_save','d3d_model_vertex','d3d_model_vertex_color','d3d_model_vertex_normal','d3d_model_vertex_normal_color','d3d_model_vertex_normal_texture',
+ 'd3d_model_vertex_normal_texture_color','d3d_model_vertex_texture','d3d_model_vertex_texture_color','d3d_model_wall','d3d_primitive_begin','d3d_primitive_begin_texture','d3d_primitive_end','d3d_set_culling',
+ 'd3d_set_depth','d3d_set_fog','d3d_set_hidden','d3d_set_lighting','d3d_set_perspective','d3d_set_projection','d3d_set_projection_ext','d3d_set_projection_ortho','d3d_set_projection_perspective',
+ 'd3d_set_shading','d3d_set_zwriteenable','d3d_start','d3d_transform_add_rotation_axis','d3d_transform_add_rotation_x','d3d_transform_add_rotation_y','d3d_transform_add_rotation_z','d3d_transform_add_scaling',
+ 'd3d_transform_add_translation','d3d_transform_set_identity','d3d_transform_set_rotation_axis','d3d_transform_set_rotation_x','d3d_transform_set_rotation_y','d3d_transform_set_rotation_z',
+ 'd3d_transform_set_scaling','d3d_transform_set_translation','d3d_transform_stack_clear','d3d_transform_stack_discard','d3d_transform_stack_empty','d3d_transform_stack_pop','d3d_transform_stack_push',
+ 'd3d_transform_stack_top','d3d_transform_vertex','d3d_vertex','d3d_vertex_color','d3d_vertex_normal','d3d_vertex_normal_color','d3d_vertex_normal_texture','d3d_vertex_normal_texture_color','d3d_vertex_texture',
+ 'd3d_vertex_texture_color','date_compare_date','date_compare_datetime','date_compare_time','date_create_datetime','date_current_datetime','date_date_of','date_date_string','date_datetime_string','date_day_span',
+ 'date_days_in_month','date_days_in_year','date_get_day','date_get_day_of_year','date_get_hour','date_get_hour_of_year','date_get_minute','date_get_minute_of_year','date_get_month','date_get_second',
+ 'date_get_second_of_year','date_get_week','date_get_weekday','date_get_year','date_hour_span','date_inc_day','date_inc_hour','date_inc_minute','date_inc_month','date_inc_second','date_inc_week','date_inc_year',
+ 'date_is_today','date_leap_year','date_minute_span','date_month_span','date_second_span','date_time_of','date_time_string','date_valid_datetime','date_week_span','date_year_span','degtorad','device_get_tilt_x',
+ 'device_get_tilt_y','device_get_tilt_z','device_ios_get_image','device_ios_get_imagename','device_is_keypad_open','device_mouse_check_button','device_mouse_check_button_pressed',
+ 'device_mouse_check_button_released','device_mouse_dbclick_enable','device_mouse_raw_x','device_mouse_raw_y','device_mouse_x','device_mouse_y','directory_create','directory_exists','display_get_dpi_x',
+ 'display_get_dpi_y','display_get_gui_height','display_get_gui_width','display_get_height','display_get_orientation','display_get_width','display_mouse_get_x','display_mouse_get_y','display_mouse_set',
+ 'display_reset','display_set_gui_size','distance_to_object','distance_to_point','dot_product','dot_product_3d','dot_product_3d_normalised','dot_product_normalised','draw_arrow','draw_background',
+ 'draw_background_ext','draw_background_general','draw_background_part','draw_background_part_ext','draw_background_stretched','draw_background_stretched_ext','draw_background_tiled','draw_background_tiled_ext',
+ 'draw_button','draw_circle','draw_circle_color','draw_clear','draw_clear_alpha','draw_ellipse','draw_ellipse_color','draw_enable_alphablend','draw_enable_drawevent','draw_get_alpha','draw_get_alpha_test',
+ 'draw_get_alpha_test_ref_value','draw_get_color','draw_getpixel','draw_getpixel_ext','draw_healthbar','draw_highscore','draw_line','draw_line_color','draw_line_width','draw_line_width_color','draw_path',
+ 'draw_point','draw_point_color','draw_primitive_begin','draw_primitive_begin_texture','draw_primitive_end','draw_rectangle','draw_rectangle_color','draw_roundrect','draw_roundrect_color','draw_self',
+ 'draw_set_alpha','draw_set_alpha_test','draw_set_alpha_test_ref_value','draw_set_blend_mode','draw_set_blend_mode_ext','draw_set_circle_precision','draw_set_color','draw_set_color_write_enable',
+ 'draw_set_font','draw_set_halign','draw_set_valign','draw_sprite','draw_sprite_ext','draw_sprite_general','draw_sprite_part','draw_sprite_part_ext','draw_sprite_pos','draw_sprite_stretched',
+ 'draw_sprite_stretched_ext','draw_sprite_tiled','draw_sprite_tiled_ext','draw_surface','draw_surface_ext','draw_surface_general','draw_surface_part','draw_surface_part_ext','draw_surface_stretched',
+ 'draw_surface_stretched_ext','draw_surface_tiled','draw_surface_tiled_ext','draw_text','draw_text_color','draw_text_ext','draw_text_ext_color','draw_text_ext_transformed','draw_text_ext_transformed_color',
+ 'draw_text_transformed','draw_text_transformed_color','draw_texture_flush','draw_triangle','draw_triangle_color','draw_vertex','draw_vertex_color','draw_vertex_texture','draw_vertex_texture_color',
+ 'ds_exists','ds_grid_add','ds_grid_add_disk','ds_grid_add_grid_region','ds_grid_add_region','ds_grid_clear','ds_grid_copy','ds_grid_create','ds_grid_destroy','ds_grid_get','ds_grid_get_disk_max',
+ 'ds_grid_get_disk_mean','ds_grid_get_disk_min','ds_grid_get_disk_sum','ds_grid_get_max','ds_grid_get_mean','ds_grid_get_min','ds_grid_get_sum','ds_grid_height','ds_grid_multiply','ds_grid_multiply_disk',
+ 'ds_grid_multiply_grid_region','ds_grid_multiply_region','ds_grid_read','ds_grid_resize','ds_grid_set','ds_grid_set_disk','ds_grid_set_grid_region','ds_grid_set_region','ds_grid_shuffle','ds_grid_sort',
+ 'ds_grid_value_disk_exists','ds_grid_value_disk_x','ds_grid_value_disk_y','ds_grid_value_exists','ds_grid_value_x','ds_grid_value_y','ds_grid_width','ds_grid_write','ds_list_add','ds_list_clear',
+ 'ds_list_copy','ds_list_create','ds_list_delete','ds_list_destroy','ds_list_empty','ds_list_find_index','ds_list_find_value','ds_list_insert','ds_list_mark_as_list','ds_list_mark_as_map','ds_list_read',
+ 'ds_list_replace','ds_list_shuffle','ds_list_size','ds_list_sort','ds_list_write','ds_map_add','ds_map_add_list','ds_map_add_map','ds_map_clear','ds_map_copy','ds_map_create','ds_map_delete',
+ 'ds_map_destroy','ds_map_empty','ds_map_exists','ds_map_find_first','ds_map_find_last','ds_map_find_next','ds_map_find_previous','ds_map_find_value','ds_map_read','ds_map_replace','ds_map_replace_list',
+ 'ds_map_replace_map','ds_map_size','ds_map_write','ds_priority_add','ds_priority_change_priority','ds_priority_clear','ds_priority_copy','ds_priority_create','ds_priority_delete_max','ds_priority_delete_min',
+ 'ds_priority_delete_value','ds_priority_destroy','ds_priority_empty','ds_priority_find_max','ds_priority_find_min','ds_priority_find_priority','ds_priority_read','ds_priority_size','ds_priority_write',
+ 'ds_queue_clear','ds_queue_copy','ds_queue_create','ds_queue_dequeue','ds_queue_destroy','ds_queue_empty','ds_queue_enqueue','ds_queue_head','ds_queue_read','ds_queue_size','ds_queue_tail','ds_queue_write',
+ 'ds_set_precision','ds_stack_clear','ds_stack_copy','ds_stack_create','ds_stack_destroy','ds_stack_empty','ds_stack_pop','ds_stack_push','ds_stack_read','ds_stack_size','ds_stack_top','ds_stack_write',
+ 'effect_clear','effect_create_above','effect_create_below','environment_get_variable','event_inherited','event_perform','event_perform_object','event_user','exp','external_call','external_define','external_free',
+ 'facebook_accesstoken','facebook_dialog','facebook_graph_request','facebook_init','facebook_launch_offerwall','facebook_login','facebook_logout','facebook_post_message','facebook_send_invite','facebook_status',
+ 'facebook_user_id','file_attributes','file_bin_close','file_bin_open','file_bin_position','file_bin_read_byte','file_bin_rewrite','file_bin_seek','file_bin_size','file_bin_write_byte','file_copy','file_delete',
+ 'file_exists','file_find_close','file_find_first','file_find_next','file_rename','file_text_close','file_text_eof','file_text_eoln','file_text_open_append','file_text_open_from_string','file_text_open_read',
+ 'file_text_open_write','file_text_read_real','file_text_read_string','file_text_readln','file_text_write_real','file_text_write_string','file_text_writeln','filename_change_ext','filename_dir','filename_drive',
+ 'filename_ext','filename_name','filename_path','floor','font_add','font_add_sprite','font_add_sprite_ext','font_delete','font_exists','font_get_bold','font_get_first','font_get_fontname','font_get_italic',
+ 'font_get_last','font_get_name','font_get_size','font_get_texture','font_get_uvs','font_replace','font_replace_sprite','font_replace_sprite_ext','font_set_cache_size','frac','game_end','game_load',
+ 'game_load_buffer','game_restart','game_save','game_save_buffer','gamepad_axis_count','gamepad_axis_value','gamepad_button_check','gamepad_button_check_pressed','gamepad_button_check_released',
+ 'gamepad_button_count','gamepad_button_value','gamepad_get_axis_deadzone','gamepad_get_button_threshold','gamepad_get_description','gamepad_get_device_count','gamepad_is_connected','gamepad_is_supported',
+ 'gamepad_set_axis_deadzone','gamepad_set_button_threshold','gamepad_set_vibration','get_integer','get_integer_async','get_login_async','get_open_filename','get_open_filename_ext','get_save_filename',
+ 'get_save_filename_ext','get_string','get_string_async','get_timer','highscore_add','highscore_clear','highscore_name','highscore_value','http_get','http_get_file','http_post_string','iap_acquire',
+ 'iap_activate','iap_consume','iap_event_queue','iap_files_purchased','iap_is_downloaded','iap_is_purchased','iap_product_details','iap_product_files','iap_product_status','iap_restore_all','iap_status',
+ 'iap_store_status','immersion_play_effect','immersion_stop','ini_close','ini_key_delete','ini_key_exists','ini_open','ini_open_from_string','ini_read_real','ini_read_string','ini_section_delete',
+ 'ini_section_exists','ini_write_real','ini_write_string','instance_activate_all','instance_activate_object','instance_activate_region','instance_change','instance_copy','instance_create',
+ 'instance_deactivate_all','instance_deactivate_object','instance_deactivate_region','instance_destroy','instance_exists','instance_find','instance_furthest','instance_nearest','instance_number',
+ 'instance_place','instance_position','io_clear','irandom','irandom_range','is_array','is_real','is_string','joystick_axes','joystick_buttons','joystick_check_button','joystick_direction','joystick_exists',
+ 'joystick_has_pov','joystick_name','joystick_pov','joystick_rpos','joystick_upos','joystick_vpos','joystick_xpos','joystick_ypos','joystick_zpos','json_decode','json_encode','keyboard_check',
+ 'keyboard_check_direct','keyboard_check_pressed','keyboard_check_released','keyboard_clear','keyboard_get_map','keyboard_get_numlock','keyboard_key_press','keyboard_key_release','keyboard_set_map',
+ 'keyboard_set_numlock','keyboard_unset_map','lengthdir_x','lengthdir_y','lerp','ln','log10','log2','logn','make_color_hsv','make_color_rgb','math_set_epsilon','matrix_build','matrix_get','matrix_multiply',
+ 'matrix_set','max','md5_file','md5_string_unicode','md5_string_utf8','mean','median','merge_color','message_caption','min','motion_add','motion_set','mouse_check_button','mouse_check_button_pressed',
+ 'mouse_check_button_released','mouse_clear','mouse_wheel_down','mouse_wheel_up','move_bounce','move_bounce_all','move_bounce_solid','move_contact','move_contact_all','move_contact_solid','move_outside_all',
+ 'move_outside_solid','move_random','move_snap','move_towards_point','move_wrap','mp_grid_add_cell','mp_grid_add_instances','mp_grid_add_rectangle','mp_grid_clear_all','mp_grid_clear_cell',
+ 'mp_grid_clear_rectangle','mp_grid_create','mp_grid_destroy','mp_grid_draw','mp_grid_path','mp_linear_path','mp_linear_path_object','mp_linear_step','mp_linear_step_object','mp_potential_path',
+ 'mp_potential_path_object','mp_potential_settings','mp_potential_step','mp_potential_step_object','network_connect','network_connect_raw','network_create_server','network_create_socket','network_destroy',
+ 'network_destroy','network_resolve','network_send_broadcast','network_send_packet','network_send_raw','network_send_udp','network_set_timeout','object_exists','object_get_depth','object_get_mask',
+ 'object_get_name','object_get_parent','object_get_persistent','object_get_physics','object_get_solid','object_get_sprite','object_get_visible','object_is_ancestor','object_set_depth','object_set_mask',
+ 'object_set_persistent','object_set_solid','object_set_sprite','object_set_visible','ord','os_get_config','os_get_info','os_get_language','os_is_network_connected','os_is_paused','os_lock_orientation',
+ 'os_powersave_enable','parameter_count','parameter_string','part_emitter_burst','part_emitter_clear','part_emitter_create','part_emitter_destroy','part_emitter_destroy_all','part_emitter_exists',
+ 'part_emitter_region','part_emitter_stream','part_particles_clear','part_particles_count','part_particles_create','part_particles_create_color','part_system_automatic_draw','part_system_automatic_update',
+ 'part_system_clear','part_system_create','part_system_depth','part_system_destroy','part_system_draw_order','part_system_drawit','part_system_exists','part_system_position','part_system_update',
+ 'part_type_alpha','part_type_alpha1','part_type_alpha2','part_type_alpha3','part_type_blend','part_type_clear','part_type_color','part_type_color1','part_type_color2','part_type_color3','part_type_color_hsv',
+ 'part_type_color_mix','part_type_color_rgb','part_type_create','part_type_death','part_type_destroy','part_type_direction','part_type_exists','part_type_gravity','part_type_life','part_type_orientation',
+ 'part_type_scale','part_type_shape','part_type_size','part_type_speed','part_type_sprite','part_type_step','path_add','path_add_point','path_append','path_assign','path_change_point','path_clear_points',
+ 'path_delete','path_delete_point','path_duplicate','path_end','path_exists','path_flip','path_get_closed','path_get_kind','path_get_length','path_get_name','path_get_number','path_get_point_speed',
+ 'path_get_point_x','path_get_point_y','path_get_precision','path_get_speed','path_get_x','path_get_y','path_insert_point','path_mirror','path_rescale','path_reverse','path_rotate','path_set_closed',
+ 'path_set_kind','path_set_precision','path_shift','path_start','physics_apply_force','physics_apply_impulse','physics_apply_local_force','physics_apply_local_impulse','physics_apply_torque',
+ 'physics_draw_debug','physics_fixture_add_point','physics_fixture_bind','physics_fixture_bind_ext','physics_fixture_create','physics_fixture_delete','physics_fixture_set_angular_damping',
+ 'physics_fixture_set_awake','physics_fixture_set_box_shape','physics_fixture_set_circle_shape','physics_fixture_set_collision_group','physics_fixture_set_density','physics_fixture_set_edge_shape',
+ 'physics_fixture_set_friction','physics_fixture_set_kinematic','physics_fixture_set_linear_damping','physics_fixture_set_polygon_shape','physics_fixture_set_restitution','physics_fixture_set_sensor',
+ 'physics_get_density','physics_get_friction','physics_get_restitution','physics_joint_delete','physics_joint_distance_create','physics_joint_enable_motor','physics_joint_gear_create','physics_joint_get_value',
+ 'physics_joint_prismatic_create','physics_joint_pulley_create','physics_joint_revolute_create','physics_joint_set_value','physics_mass_properties','physics_pause_enable','physics_remove_fixture','physics_set_density',
+ 'physics_set_friction','physics_set_restitution','physics_test_overlap','physics_world_create','physics_world_draw_debug','physics_world_gravity','physics_world_update_iterations','physics_world_update_speed',
+ 'place_empty','place_free','place_meeting','place_snapped','playhaven_add_notification_badge','playhaven_hide_notification_badge','playhaven_position_notification_badge','playhaven_update_notification_badge',
+ 'pocketchange_display_reward','pocketchange_display_shop','point_direction','point_distance','point_distance_3d','position_change','position_destroy','position_empty','position_meeting','power','radtodeg','random',
+ 'random_get_seed','random_range','random_set_seed','randomize','real','room_add','room_assign','room_duplicate','room_exists','room_get_name','room_goto','room_goto_next','room_goto_previous','room_instance_add',
+ 'room_instance_clear','room_next','room_previous','room_restart','room_set_background','room_set_background_color','room_set_height','room_set_persistent','room_set_view','room_set_view_enabled','room_set_width',
+ 'room_tile_add','room_tile_add_ext','room_tile_clear','round','screen_save','screen_save_part','script_execute','script_exists','script_get_name','sha1_file','sha1_string_unicode','sha1_string_utf8','shader_enable_corner_id',
+ 'shader_get_sampler_index','shader_get_uniform','shader_is_compiled','shader_reset','shader_set','shader_set_uniform_f','shader_set_uniform_f_array','shader_set_uniform_i','shader_set_uniform_i_array',
+ 'shader_set_uniform_matrix','shader_set_uniform_matrix_array','shaders_are_supported','shop_leave_rating','show_debug_message','show_debug_overlay','show_error','show_message','show_message','show_message_async',
+ 'show_question','show_question_async','sign','sin','sound_add','sound_delete','sound_exists','sound_fade','sound_get_name','sound_global_volume','sound_isplaying','sound_loop','sound_play','sound_replace',
+ 'sound_stop','sound_stop_all','sound_volume','sprite_add','sprite_add_from_surface','sprite_assign','sprite_collision_mask','sprite_create_from_surface','sprite_delete','sprite_duplicate','sprite_exists',
+ 'sprite_get_bbox_bottom','sprite_get_bbox_left','sprite_get_bbox_right','sprite_get_bbox_top','sprite_get_height','sprite_get_name','sprite_get_number','sprite_get_texture','sprite_get_tpe','sprite_get_uvs',
+ 'sprite_get_width','sprite_get_xoffset','sprite_get_yoffset','sprite_merge','sprite_replace','sprite_save','sprite_save_strip','sprite_set_alpha_from_sprite','sprite_set_cache_size','sprite_set_cache_size_ext',
+ 'sprite_set_offset','sqr','sqrt','steam_activate_overlay','steam_clear_achievement','steam_create_leaderboard','steam_download_friends_scores','steam_download_scores','steam_download_scores_around_user',
+ 'steam_file_delete','steam_file_exists','steam_file_persisted','steam_file_read','steam_file_share','steam_file_size','steam_file_write','steam_file_write_file','steam_get_achievement','steam_get_persona_name',
+ 'steam_get_quota_free','steam_get_quota_total','steam_get_stat_avg_rate','steam_get_stat_float','steam_get_stat_int','steam_get_user_steam_id','steam_initialised','steam_is_cloud_enabled_for_account',
+ 'steam_is_cloud_enabled_for_app','steam_is_overlay_activated','steam_is_overlay_enabled','steam_is_screenshot_requested','steam_is_user_logged_on','steam_publish_workshop_file','steam_reset_all_stats',
+ 'steam_reset_all_stats_achievements','steam_send_screenshot','steam_set_achievement','steam_set_stat_avg_rate','steam_set_stat_float','steam_set_stat_int','steam_stats_ready','steam_upload_score',
+ 'steam_user_installed_dlc','steam_user_owns_dlc','string','string_byte_at','string_byte_length','string_char_at','string_copy','string_count','string_delete','string_digits','string_format','string_height',
+ 'string_height_ext','string_insert','string_length','string_letters','string_lettersdigits','string_lower','string_pos','string_repeat','string_replace','string_replace_all','string_set_byte_at','string_upper',
+ 'string_width','string_width_ext','surface_copy','surface_copy_part','surface_create','surface_create_ext','surface_exists','surface_free','surface_get_height','surface_get_texture','surface_get_width',
+ 'surface_getpixel','surface_getpixel_ext','surface_reset_target','surface_save','surface_save_part','surface_set_target','surface_set_target_ext','tan','texture_exists','texture_get_height','texture_get_texel_height',
+ 'texture_get_texel_width','texture_get_width','texture_set_blending','texture_set_interpolation','texture_set_interpolation_ext','texture_set_repeat','texture_set_repeat_ext','texture_set_stage','tile_add',
+ 'tile_delete','tile_delete_at','tile_exists','tile_find','tile_get_alpha','tile_get_background','tile_get_blend','tile_get_depth','tile_get_height','tile_get_left','tile_get_top','tile_get_visible','tile_get_width',
+ 'tile_get_x','tile_get_xscale','tile_get_y','tile_get_yscale','tile_layer_delete','tile_layer_delete_at','tile_layer_depth','tile_layer_find','tile_layer_hide','tile_layer_shift','tile_layer_show','tile_set_alpha',
+ 'tile_set_background','tile_set_blend','tile_set_depth','tile_set_position','tile_set_region','tile_set_scale','tile_set_visible','timeline_add','timeline_clear','timeline_delete','timeline_exists','timeline_get_name',
+ 'timeline_moment_clear','url_get_domain','url_open','url_open_ext','url_open_full','vertex_argb','vertex_begin','vertex_colour','vertex_create_buffer','vertex_create_buffer_ext','vertex_delete_buffer','vertex_end',
+ 'vertex_float1','vertex_float2','vertex_float3','vertex_float4','vertex_format_add_colour','vertex_format_add_custom','vertex_format_add_normal','vertex_format_add_position','vertex_format_add_position_3d',
+ 'vertex_format_add_textcoord','vertex_format_begin','vertex_format_end','vertex_freeze','vertex_normal','vertex_position','vertex_position_3d','vertex_submit','vertex_texcoord','vertex_ubyte4','virtual_key_add',
+ 'virtual_key_delete','virtual_key_hide','virtual_key_show','win8_appbar_add_element','win8_appbar_enable','win8_appbar_remove_element','win8_device_touchscreen_available','win8_license_initialize_sandbox',
+ 'win8_license_trial_version','win8_livetile_badge_clear','win8_livetile_badge_notification','win8_livetile_notification_begin','win8_livetile_notification_end','win8_livetile_notification_expiry',
+ 'win8_livetile_notification_image_add','win8_livetile_notification_secondary_begin','win8_livetile_notification_tag','win8_livetile_notification_text_add','win8_livetile_queue_enable','win8_livetile_tile_clear',
+ 'win8_livetile_tile_notification','win8_search_add_suggestions','win8_search_disable','win8_search_enable','win8_secondarytile_badge_notification','win8_secondarytile_delete','win8_secondarytile_pin',
+ 'win8_settingscharm_add_entry','win8_settingscharm_add_html_entry','win8_settingscharm_add_xaml_entry','win8_settingscharm_get_xaml_property','win8_settingscharm_remove_entry','win8_settingscharm_set_xaml_property',
+ 'win8_share_file','win8_share_image','win8_share_screenshot','win8_share_text','win8_share_url','window_center','window_get_caption','window_get_color','window_get_cursor','window_get_fullscreen','window_get_height',
+ 'window_get_width','window_get_x','window_get_y','window_handle','window_has_focus','window_mouse_get_x','window_mouse_get_y','window_mouse_set','window_set_caption','window_set_color','window_set_cursor',
+ 'window_set_fullscreen','window_set_position','window_set_rectangle','window_set_size','window_view_mouse_get_x','window_view_mouse_get_y','window_views_mouse_get_x','window_views_mouse_get_y',
+ 'winphone_license_trial_version','winphone_tile_back_content','winphone_tile_back_content_wide','winphone_tile_back_image','winphone_tile_back_image_wide','winphone_tile_back_title','winphone_tile_background_color',
+ 'winphone_tile_count','winphone_tile_cycle_images','winphone_tile_front_image','winphone_tile_front_image_small','winphone_tile_front_image_wide','winphone_tile_icon_image','winphone_tile_small_background_image',
+ 'winphone_tile_small_icon_image','winphone_tile_title','winphone_tile_wide_content','zip_unzip'
),
- // functions
+
+ // Constants
3 => array(
- // Computing things
- 'random','choose','abs','sign','round','floor','ceil','frac','sqrt','sqr','power','exp','ln',
- 'log2','log10','logn','sin','cos','tan','arcsin','arccos','arctan','arctan2','degtorad',
- 'radtodeg','min','max','mean','median','point_distance','point_direction','lengthdir_x',
- 'lengthdir_y','is_real','is_string',
- 'chr','ord','real','string','string_format','string_length','string_pos','string_copy',
- 'string_char_at','string_delete','string_insert','string_replace','string_replace_all',
- 'string_count','string_lower','string_upper','string_repeat','string_letters','string_digits',
- 'string_lettersdigits','clipboard_has_text','clipboard_get_text','clipboard_set_text',
- 'date_current_datetime','date_current_date','date_current_time','date_create_datetime',
- 'date_create_date','date_create_time','date_valid_datetime','date_valid_date','date_valid_time',
- 'date_inc_year','date_inc_month','date_inc_week','date_inc_day','date_inc_hour',
- 'date_inc_minute','date_inc_second','date_get_year','date_get_month','date_get_week',
- 'date_get_day','date_get_hour', 'date_get_minute','date_get_second','date_get_weekday',
- 'date_get_day_of_year','date_get_hour_of_year','date_get_minute_of_year',
- 'date_get_second_of_year','date_year_span','date_month_span','date_week_span','date_day_span',
- 'date_hour_span','date_minute_span','date_second_span','date_compare_datetime',
- 'date_compare_date','date_compare_time','date_date_of','date_time_of','date_datetime_string',
- 'date_date_string','date_time_string','date_days_in_month','date_days_in_year','date_leap_year',
- 'date_is_today',
- // Game play
- 'motion_set','motion_add','place_free','place_empty','place_meeting','place_snapped',
- 'move_random','move_snap','move_wrap','move_towards_point','move_bounce_solid','move_bounce_all',
- 'move_contact_solid','move_contact_all','move_outside_solid','move_outside_all',
- 'distance_to_point','distance_to_object','position_empty','position_meeting',
- 'path_start','path_end',
- 'mp_linear_step','mp_linear_step_object','mp_potential_step','mp_potential_step_object',
- 'mp_potential_settings','mp_linear_path','mp_linear_path_object', 'mp_potential_path',
- 'mp_potential_path_object','mp_grid_create','mp_grid_destroy','mp_grid_clear_all',
- 'mp_grid_clear_cell','mp_grid_clear_rectangle','mp_grid_add_cell','mp_grid_add_rectangle',
- 'mp_grid_add_instances','mp_grid_path','mp_grid_draw',
- 'collision_point','collision_rectangle','collision_circle','collision_ellipse','collision_line',
- 'instance_find','instance_exists','instance_number','instance_position','instance_nearest',
- 'instance_furthest','instance_place','instance_create','instance_copy','instance_destroy',
- 'instance_change','position_destroy','position_change',
- 'instance_deactivate_all','instance_deactivate_object','instance_deactivate_region',
- 'instance_activate_all','instance_activate_object','instance_activate_region',
- 'sleep',
- 'room_goto','room_goto_previous','room_goto_next','room_restart','room_previous','room_next',
- 'game_end','game_restart','game_save','game_load',
- 'event_perform', 'event_perform_object','event_user','event_inherited',
- 'show_debug_message','variable_global_exists','variable_local_exists','variable_global_get',
- 'variable_global_array_get','variable_global_array2_get','variable_local_get',
- 'variable_local_array_get','variable_local_array2_get','variable_global_set',
- 'variable_global_array_set','variable_global_array2_set','variable_local_set',
- 'variable_local_array_set','variable_local_array2_set','set_program_priority',
- // User interaction
- 'keyboard_set_map','keyboard_get_map','keyboard_unset_map','keyboard_check',
- 'keyboard_check_pressed','keyboard_check_released','keyboard_check_direct',
- 'keyboard_get_numlock','keyboard_set_numlock','keyboard_key_press','keyboard_key_release',
- 'keyboard_clear','io_clear','io_handle','keyboard_wait',
- 'mouse_check_button','mouse_check_button_pressed','mouse_check_button_released','mouse_clear',
- 'mouse_wait',
- 'joystick_exists','joystick_name','joystick_axes','joystick_buttons','joystick_has_pov',
- 'joystick_direction','joystick_check_button','joystick_xpos','joystick_ypos','joystick_zpos',
- 'joystick_rpos','joystick_upos','joystick_vpos','joystick_pov',
- // Game Graphics
- 'draw_sprite','draw_sprite_stretched','draw_sprite_tiled','draw_sprite_part','draw_background',
- 'draw_background_stretched','draw_background_tiled','draw_background_part','draw_sprite_ext',
- 'draw_sprite_stretched_ext','draw_sprite_tiled_ext','draw_sprite_part_ext','draw_sprite_general',
- 'draw_background_ext','draw_background_stretched_ext','draw_background_tiled_ext',
- 'draw_background_part_ext','draw_background_general',
- 'draw_clear','draw_clear_alpha','draw_point','draw_line','draw_rectangle','draw_roundrect',
- 'draw_triangle','draw_circle','draw_ellipse','draw_arrow','draw_button','draw_path',
- 'draw_healthbar','draw_set_color','draw_set_alpha','draw_get_color','draw_get_alpha',
- 'make_color_rgb','make_color_hsv','color_get_red','color_get_green','color_get_blue',
- 'color_get_hue','color_get_saturation','color_get_value','merge_color','draw_getpixel',
- 'screen_save','screen_save_part',
- 'draw_set_font','draw_set_halign','draw_set_valign','draw_text','draw_text_ext','string_width',
- 'string_height','string_width_ext','string_height_ext','draw_text_transformed',
- 'draw_text_ext_transformed','draw_text_color','draw_text_ext_color',
- 'draw_text_transformed_color','draw_text_ext_transformed_color',
- 'draw_point_color','draw_line_color','draw_rectangle_color','draw_roundrect_color',
- 'draw_triangle_color','draw_circle_color','draw_ellipse_color','draw_primitive_begin',
- 'draw_vertex','draw_vertex_color','draw_primitive_end','sprite_get_texture',
- 'background_get_texture','texture_preload','texture_set_priority',
- 'texture_get_width','texture_get_height','draw_primitive_begin_texture','draw_vertex_texture',
- 'draw_vertex_texture_color','texture_set_interpolation',
- 'texture_set_blending','texture_set_repeat','draw_set_blend_mode','draw_set_blend_mode_ext',
- 'surface_create','surface_free','surface_exists','surface_get_width','surface_get_height',
- 'surface_get_texture','surface_set_target','surface_reset_target','surface_getpixel',
- 'surface_save','surface_save_part','draw_surface','draw_surface_stretched','draw_surface_tiled',
- 'draw_surface_part','draw_surface_ext','draw_surface_stretched_ext','draw_surface_tiled_ext',
- 'draw_surface_part_ext','draw_surface_general','surface_copy','surface_copy_part',
- 'tile_add','tile_delete','tile_exists','tile_get_x','tile_get_y','tile_get_left','tile_get_top',
- 'tile_get_width','tile_get_height','tile_get_depth','tile_get_visible','tile_get_xscale',
- 'tile_get_yscale','tile_get_background','tile_get_blend','tile_get_alpha','tile_set_position',
- 'tile_set_region','tile_set_background','tile_set_visible','tile_set_depth','tile_set_scale',
- 'tile_set_blend','tile_set_alpha','tile_layer_hide','tile_layer_show','tile_layer_delete',
- 'tile_layer_shift','tile_layer_find','tile_layer_delete_at','tile_layer_depth',
- 'display_get_width','display_get_height','display_get_colordepth','display_get_frequency',
- 'display_set_size','display_set_colordepth','display_set_frequency','display_set_all',
- 'display_test_all','display_reset','display_mouse_get_x','display_mouse_get_y','display_mouse_set',
- 'window_set_visible','window_get_visible','window_set_fullscreen','window_get_fullscreen',
- 'window_set_showborder','window_get_showborder','window_set_showicons','window_get_showicons',
- 'window_set_stayontop','window_get_stayontop','window_set_sizeable','window_get_sizeable',
- 'window_set_caption','window_get_caption','window_set_cursor', 'window_get_cursor',
- 'window_set_color','window_get_color','window_set_region_scale','window_get_region_scale',
- 'window_set_position','window_set_size','window_set_rectangle','window_center','window_default',
- 'window_get_x','window_get_y','window_get_width','window_get_height','window_mouse_get_x',
- 'window_mouse_get_y','window_mouse_set',
- 'window_set_region_size','window_get_region_width','window_get_region_height',
- 'window_view_mouse_get_x','window_view_mouse_get_y','window_view_mouse_set',
- 'window_views_mouse_get_x','window_views_mouse_get_y','window_views_mouse_set',
- 'screen_redraw','screen_refresh','set_automatic_draw','set_synchronization','screen_wait_vsync',
- // Sound and music)
- 'sound_play','sound_loop','sound_stop','sound_stop_all','sound_isplaying','sound_volume',
- 'sound_global_volume','sound_fade','sound_pan','sound_background_tempo','sound_set_search_directory',
- 'sound_effect_set','sound_effect_chorus','sound_effect_echo', 'sound_effect_flanger',
- 'sound_effect_gargle','sound_effect_reverb','sound_effect_compressor','sound_effect_equalizer',
- 'sound_3d_set_sound_position','sound_3d_set_sound_velocity','sound_3d_set_sound_distance',
- 'sound_3d_set_sound_cone',
- 'cd_init','cd_present','cd_number','cd_playing','cd_paused','cd_track','cd_length',
- 'cd_track_length','cd_position','cd_track_position','cd_play','cd_stop','cd_pause','cd_resume',
- 'cd_set_position','cd_set_track_position','cd_open_door','cd_close_door','MCI_command',
- // Splash screens, highscores, and other pop-ups
- 'show_text','show_image','show_video','show_info','load_info',
- 'show_message','show_message_ext','show_question','get_integer','get_string',
- 'message_background','message_alpha','message_button','message_text_font','message_button_font',
- 'message_input_font','message_mouse_color','message_input_color','message_caption',
- 'message_position','message_size','show_menu','show_menu_pos','get_color','get_open_filename',
- 'get_save_filename','get_directory','get_directory_alt','show_error',
- 'highscore_show','highscore_set_background','highscore_set_border','highscore_set_font',
- 'highscore_set_colors','highscore_set_strings','highscore_show_ext','highscore_clear',
- 'highscore_add','highscore_add_current','highscore_value','highscore_name','draw_highscore',
- // Resources
- 'sprite_exists','sprite_get_name','sprite_get_number','sprite_get_width','sprite_get_height',
- 'sprite_get_transparent','sprite_get_smooth','sprite_get_preload','sprite_get_xoffset',
- 'sprite_get_yoffset','sprite_get_bbox_left','sprite_get_bbox_right','sprite_get_bbox_top',
- 'sprite_get_bbox_bottom','sprite_get_bbox_mode','sprite_get_precise',
- 'sound_exists','sound_get_name','sound_get_kind','sound_get_preload','sound_discard',
- 'sound_restore',
- 'background_exists','background_get_name','background_get_width','background_get_height',
- 'background_get_transparent','background_get_smooth','background_get_preload',
- 'font_exists','font_get_name','font_get_fontname','font_get_bold','font_get_italic',
- 'font_get_first','font_get_last',
- 'path_exists','path_get_name','path_get_length','path_get_kind','path_get_closed',
- 'path_get_precision','path_get_number','path_get_point_x','path_get_point_y',
- 'path_get_point_speed','path_get_x','path_get_y','path_get_speed',
- 'script_exists','script_get_name','script_get_text',
- 'timeline_exists','timeline_get_name',
- 'object_exists','object_get_name','object_get_sprite','object_get_solid','object_get_visible',
- 'object_get_depth','object_get_persistent','object_get_mask','object_get_parent',
- 'object_is_ancestor',
- 'room_exists','room_get_name',
- // Changing resources
- 'sprite_set_offset','sprite_set_bbox_mode','sprite_set_bbox','sprite_set_precise',
- 'sprite_duplicate','sprite_assign','sprite_merge','sprite_add','sprite_replace',
- 'sprite_create_from_screen','sprite_add_from_screen','sprite_create_from_surface',
- 'sprite_add_from_surface','sprite_delete','sprite_set_alpha_from_sprite',
- 'sound_add','sound_replace','sound_delete',
- 'background_duplicate','background_assign','background_add','background_replace',
- 'background_create_color','background_create_gradient','background_create_from_screen',
- 'background_create_from_surface','background_delete','background_set_alpha_from_background',
- 'font_add','font_add_sprite','font_replace_sprite','font_delete',
- 'path_set_kind','path_set_closed','path_set_precision','path_add','path_delete','path_duplicate',
- 'path_assign','path_append','path_add_point','path_insert_point','path_change_point',
- 'path_delete_point','path_clear_points','path_reverse','path_mirror','path_flip','path_rotate',
- 'path_scale','path_shift',
- 'execute_string','execute_file','script_execute',
- 'timeline_add','timeline_delete','timeline_moment_add','timeline_moment_clear',
- 'object_set_sprite','object_set_solid','object_set_visible','object_set_depth',
- 'object_set_persistent','object_set_mask','object_set_parent','object_add','object_delete',
- 'object_event_add','object_event_clear',
- 'room_set_width','room_set_height','room_set_caption','room_set_persistent','room_set_code',
- 'room_set_background_color','room_set_background','room_set_view','room_set_view_enabled',
- 'room_add','room_duplicate','room_assign','room_instance_add','room_instance_clear',
- 'room_tile_add','room_tile_add_ext','room_tile_clear',
- // Files, registry and executing programs
- 'file_text_open_read','file_text_open_write','file_text_open_append','file_text_close',
- 'file_text_write_string','file_text_write_real','file_text_writeln','file_text_read_string',
- 'file_text_read_real','file_text_readln','file_text_eof','file_exists','file_delete',
- 'file_rename','file_copy','directory_exists','directory_create','file_find_first',
- 'file_find_next','file_find_close','file_attributes', 'filename_name','filename_path',
- 'filename_dir','filename_drive','filename_ext','filename_change_ext','file_bin_open',
- 'file_bin_rewrite','file_bin_close','file_bin_size','file_bin_position','file_bin_seek',
- 'file_bin_write_byte','file_bin_read_byte','parameter_count','parameter_string',
- 'environment_get_variable',
- 'registry_write_string','registry_write_real','registry_read_string','registry_read_real',
- 'registry_exists','registry_write_string_ext','registry_write_real_ext',
- 'registry_read_string_ext','registry_read_real_ext','registry_exists_ext','registry_set_root',
- 'ini_open','ini_close','ini_read_string','ini_read_real','ini_write_string','ini_write_real',
- 'ini_key_exists','ini_section_exists','ini_key_delete','ini_section_delete',
- 'execute_program','execute_shell',
- // Data structures
- 'ds_stack_create','ds_stack_destroy','ds_stack_clear','ds_stack_size','ds_stack_empty',
- 'ds_stack_push','ds_stack_pop','ds_stack_top',
- 'ds_queue_create','ds_queue_destroy','ds_queue_clear','ds_queue_size','ds_queue_empty',
- 'ds_queue_enqueue','ds_queue_dequeue','ds_queue_head','ds_queue_tail',
- 'ds_list_create','ds_list_destroy','ds_list_clear','ds_list_size','ds_list_empty','ds_list_add',
- 'ds_list_insert','ds_list_replace','ds_list_delete','ds_list_find_index','ds_list_find_value',
- 'ds_list_sort',
- 'ds_map_create','ds_map_destroy','ds_map_clear','ds_map_size','ds_map_empty','ds_map_add',
- 'ds_map_replace','ds_map_delete','ds_map_exists','ds_map_find_value','ds_map_find_previous',
- 'ds_map_find_next','ds_map_find_first','ds_map_find_last',
- 'ds_priority_create','ds_priority_destroy','ds_priority_clear','ds_priority_size',
- 'ds_priority_empty','ds_priority_add','ds_priority_change_priority','ds_priority_find_priority',
- 'ds_priority_delete_value','ds_priority_delete_min','ds_priority_find_min',
- 'ds_priority_delete_max','ds_priority_find_max',
- 'ds_grid_create','ds_grid_destroy','ds_grid_resize','ds_grid_width','ds_grid_height',
- 'ds_grid_clear','ds_grid_set','ds_grid_add','ds_grid_multiply','ds_grid_set_region',
- 'ds_grid_add_region','ds_grid_multiply_region','ds_grid_set_disk','ds_grid_add_disk',
- 'ds_grid_multiply_disk','ds_grid_get','ds_grid_get_sum','ds_grid_get_max','ds_grid_get_min',
- 'ds_grid_get_mean','ds_grid_get_disk_sum','ds_grid_get_disk_min','ds_grid_get_disk_max',
- 'ds_grid_get_disk_mean','ds_grid_value_exists','ds_grid_value_x','ds_grid_value_y',
- 'ds_grid_value_disk_exists','ds_grid_value_disk_x','ds_grid_value_disk_y',
- // Creating particles
- 'effect_create_below','effect_create_above','effect_clear',
- 'part_type_create','part_type_destroy','part_type_exists','part_type_clear','part_type_shape',
- 'part_type_sprite','part_type_size','part_type_scale',
- 'part_type_orientation','part_type_color1','part_type_color2','part_type_color3',
- 'part_type_color_mix','part_type_color_rgb','part_type_color_hsv',
- 'part_type_alpha1','part_type_alpha2','part_type_alpha3','part_type_blend','part_type_life',
- 'part_type_step','part_type_death','part_type_speed','part_type_direction','part_type_gravity',
- 'part_system_create','part_system_destroy','part_system_exists','part_system_clear',
- 'part_system_draw_order','part_system_depth','part_system_position',
- 'part_system_automatic_update','part_system_automatic_draw','part_system_update',
- 'part_system_drawit','part_particles_create','part_particles_create_color',
- 'part_particles_clear','part_particles_count',
- 'part_emitter_create','part_emitter_destroy','part_emitter_destroy_all','part_emitter_exists',
- 'part_emitter_clear','part_emitter_region','part_emitter_burst','part_emitter_stream',
- 'part_attractor_create','part_attractor_destroy','part_attractor_destroy_all',
- 'part_attractor_exists','part_attractor_clear','part_attractor_position','part_attractor_force',
- 'part_destroyer_create','part_destroyer_destroy','part_destroyer_destroy_all',
- 'part_destroyer_exists','part_destroyer_clear','part_destroyer_region',
- 'part_deflector_create','part_deflector_destroy','part_deflector_destroy_all',
- 'part_deflector_exists','part_deflector_clear','part_deflector_region','part_deflector_kind',
- 'part_deflector_friction',
- 'part_changer_create','part_changer_destroy','part_changer_destroy_all','part_changer_exists',
- 'part_changer_clear','part_changer_region','part_changer_types','part_changer_kind',
- // Multiplayer games
- 'mplay_init_ipx','mplay_init_tcpip','mplay_init_modem','mplay_init_serial',
- 'mplay_connect_status','mplay_end','mplay_ipaddress',
- 'mplay_session_create','mplay_session_find','mplay_session_name','mplay_session_join',
- 'mplay_session_mode','mplay_session_status','mplay_session_end',
- 'mplay_player_find','mplay_player_name','mplay_player_id',
- 'mplay_data_write','mplay_data_read','mplay_data_mode',
- 'mplay_message_send','mplay_message_send_guaranteed','mplay_message_receive','mplay_message_id',
- 'mplay_message_value','mplay_message_player','mplay_message_name','mplay_message_count',
- 'mplay_message_clear',
- // Using DLL's
- 'external_define','external_call','external_free','window_handle',
- // 3D Graphics
- 'd3d_start','d3d_end','d3d_set_hidden','d3d_set_perspective',
- 'd3d_set_depth',
- 'd3d_primitive_begin','d3d_vertex','d3d_vertex_color','d3d_primitive_end',
- 'd3d_primitive_begin_texture','d3d_vertex_texture','d3d_vertex_texture_color','d3d_set_culling',
- 'd3d_draw_block','d3d_draw_cylinder','d3d_draw_cone','d3d_draw_ellipsoid','d3d_draw_wall',
- 'd3d_draw_floor',
- 'd3d_set_projection','d3d_set_projection_ext','d3d_set_projection_ortho',
- 'd3d_set_projection_perspective',
- 'd3d_transform_set_identity','d3d_transform_set_translation','d3d_transform_set_scaling',
- 'd3d_transform_set_rotation_x','d3d_transform_set_rotation_y','d3d_transform_set_rotation_z',
- 'd3d_transform_set_rotation_axis','d3d_transform_add_translation','d3d_transform_add_scaling',
- 'd3d_transform_add_rotation_x','d3d_transform_add_rotation_y','d3d_transform_add_rotation_z',
- 'd3d_transform_add_rotation_axis','d3d_transform_stack_clear','d3d_transform_stack_empty',
- 'd3d_transform_stack_push','d3d_transform_stack_pop','d3d_transform_stack_top',
- 'd3d_transform_stack_discard',
- 'd3d_set_fog',
- 'd3d_set_lighting','d3d_set_shading','d3d_light_define_direction','d3d_light_define_point',
- 'd3d_light_enable','d3d_vertex_normal','d3d_vertex_normal_color','d3d_vertex_normal_texture',
- 'd3d_vertex_normal_texture_color',
- 'd3d_model_create','d3d_model_destroy','d3d_model_clear','d3d_model_save','d3d_model_load',
- 'd3d_model_draw','d3d_model_primitive_begin','d3d_model_vertex','d3d_model_vertex_color',
- 'd3d_model_vertex_texture','d3d_model_vertex_texture_color','d3d_model_vertex_normal',
- 'd3d_model_vertex_normal_color','d3d_model_vertex_normal_texture',
- 'd3d_model_vertex_normal_texture_color','d3d_model_primitive_end','d3d_model_block',
- 'd3d_model_cylinder','d3d_model_cone','d3d_model_ellipsoid','d3d_model_wall','d3d_model_floor'
+ 'ANSI_CHARSET','ARABIC_CHARSET','BALTIC_CHARSET','CHINESEBIG5_CHARSET','DEFAULT_CHARSET','EASTEUROPE_CHARSET','GB2312_CHARSET','GREEK_CHARSET','HANGEUL_CHARSET','HEBREW_CHARSET','JOHAB_CHARSET',
+ 'MAC_CHARSET','OEM_CHARSET','RUSSIAN_CHARSET','SHIFTJIS_CHARSET','SYMBOL_CHARSET','THAI_CHARSET','TURKISH_CHARSET','VIETNAMESE_CHARSET','achievement_achievement_info','achievement_challenge_completed',
+ 'achievement_challenge_completed_by_remote','achievement_challenge_launched','achievement_challenge_list_received','achievement_challenge_received','achievement_filter_all_players',
+ 'achievement_filter_friends_only','achievement_friends_info','achievement_leaderboard_info','achievement_our_info','achievement_pic_loaded','achievement_player_info','achievement_purchase_info',
+ 'achievement_show_achievement','achievement_show_bank','achievement_show_friend_picker','achievement_show_leaderboard','achievement_show_profile','achievement_show_purchase_prompt','achievement_show_ui',
+ 'achievement_type_achievement_challenge','achievement_type_score_challenge','all','asset_background','asset_font','asset_object','asset_path','asset_room','asset_script','asset_sound','asset_sprite',
+ 'asset_timeline','asset_unknown','audio_falloff_exponent_distance','audio_falloff_exponent_distance_clamped','audio_falloff_inverse_distance','audio_falloff_inverse_distance_clamped',
+ 'audio_falloff_linear_distance','audio_falloff_linear_distance_clamped','audio_falloff_none','audio_new_system','audio_old_system','bm_add','bm_dest_alpha','bm_dest_color','bm_inv_dest_alpha',
+ 'bm_inv_dest_color','bm_inv_src_alpha','bm_inv_src_color','bm_max','bm_normal','bm_one','bm_src_alpha','bm_src_alpha_sat','bm_src_color','bm_subtract','bm_zero','browser_chrome',
+ 'browser_firefox','browser_ie','browser_ie_mobile','browser_not_a_browser','browser_opera','browser_safari','browser_safari_mobile','browser_tizen','browser_unknown','browser_windows_store','buffer_bool',
+ 'buffer_f16','buffer_f32','buffer_f64','buffer_fast','buffer_fixed','buffer_generalerror','buffer_grow','buffer_invalidtype','buffer_outofbounds','buffer_outofspace','buffer_s16','buffer_s32','buffer_s8',
+ 'buffer_seek_end','buffer_seek_relative','buffer_seek_start','buffer_string','buffer_u16','buffer_u32','buffer_u8','buffer_vbuffer','buffer_wrap','button_type','c_aqua','c_black','c_blue','c_dkgray',
+ 'c_fuchsia','c_gray','c_green','c_lime','c_ltgray','c_maroon','c_navy','c_olive','c_orange','c_purple','c_red','c_silver','c_teal','c_white','c_yellow','cr_appstart','cr_arrow','cr_beam','cr_cross',
+ 'cr_default','cr_drag','cr_handpoint','cr_help','cr_hourglass','cr_hsplit','cr_multidrag','cr_no','cr_nodrop','cr_none','cr_size_all','cr_size_nesw','cr_size_ns','cr_size_nwse','cr_size_we','cr_sqlwait',
+ 'cr_uparrow','cr_vsplit','device_emulator','device_ios_ipad','device_ios_ipad_retina','device_ios_iphone','device_ios_iphone5','device_ios_iphone_retina','device_ios_unknown','device_tablet','display_landscape',
+ 'display_landscape_flipped','display_portrait','display_portrait_flipped','dll_cdecl','dll_stdcall','ds_type_grid','ds_type_list','ds_type_map','ds_type_priority','ds_type_queue','ds_type_stack','e','ef_cloud',
+ 'ef_ellipse','ef_explosion','ef_firework','ef_flare','ef_rain','ef_ring','ef_smoke','ef_smokeup','ef_snow','ef_spark','ef_star','ev_alarm','ev_animation_end','ev_boundary','ev_close_button','ev_collision',
+ 'ev_create','ev_destroy','ev_draw','ev_end_of_path','ev_game_end','ev_game_start','ev_global_left_button','ev_global_left_press','ev_global_left_release','ev_global_middle_button','ev_global_middle_press',
+ 'ev_global_middle_release','ev_global_press','ev_global_release','ev_global_right_button','ev_global_right_press','ev_global_right_release','ev_gui','ev_joystick1_button1','ev_joystick1_button2',
+ 'ev_joystick1_button3','ev_joystick1_button4','ev_joystick1_button5','ev_joystick1_button6','ev_joystick1_button7','ev_joystick1_button8','ev_joystick1_down','ev_joystick1_left','ev_joystick1_right',
+ 'ev_joystick1_up','ev_joystick2_button1','ev_joystick2_button2','ev_joystick2_button3','ev_joystick2_button4','ev_joystick2_button5','ev_joystick2_button6','ev_joystick2_button7','ev_joystick2_button8',
+ 'ev_joystick2_down','ev_joystick2_left','ev_joystick2_right','ev_joystick2_up','ev_keyboard','ev_keypress','ev_keyrelease','ev_left_button','ev_left_press','ev_left_release','ev_middle_button',
+ 'ev_middle_press','ev_middle_release','ev_mouse','ev_mouse_enter','ev_mouse_leave','ev_mouse_wheel_down','ev_mouse_wheel_up','ev_no_button','ev_no_more_health','ev_no_more_lives','ev_other','ev_outside',
+ 'ev_right_button','ev_right_press','ev_right_release','ev_room_end','ev_room_start','ev_step','ev_step_begin','ev_step_end','ev_step_normal','ev_trigger','ev_user0','ev_user1','ev_user10','ev_user11',
+ 'ev_user12','ev_user13','ev_user14','ev_user15','ev_user2','ev_user3','ev_user4','ev_user5','ev_user6','ev_user7','ev_user8','ev_user9','fa_archive','fa_bottom','fa_center','fa_directory','fa_hidden',
+ 'fa_left','fa_middle','fa_readonly','fa_right','fa_sysfile','fa_top','fa_volumeid','false','gp_axislh','gp_axislv','gp_axisrh','gp_axisrv','gp_face1','gp_face2','gp_face3','gp_face4','gp_padd',
+ 'gp_padl','gp_padr','gp_padu','gp_select','gp_shoulderl','gp_shoulderlb','gp_shoulderr','gp_shoulderrb','gp_start','gp_stickl','gp_stickr','input_type','lb_disp_none','lb_disp_numeric','lb_disp_time_ms',
+ 'lb_disp_time_sec','lb_sort_ascending','lb_sort_descending','lb_sort_none','leaderboard_type_number','leaderboard_type_time_mins_secs','matrix_projection','matrix_view','matrix_world','mb_any',
+ 'mb_left','mb_middle','mb_none','mb_right','network_socket_bluetooth','network_socket_tcp','network_socket_udp','network_type_connect','network_type_data','network_type_disconnect',
+ 'of_challenge_lose','of_challenge_tie','of_challenge_win','os_android','os_ios','os_linux','os_macosx','os_psp','os_symbian','os_tizen','os_unknown','os_win32','os_win8native','os_windows','os_winphone',
+ 'ov_achievements','ov_community','ov_friends','ov_gamegroup','ov_players','ov_settings','phy_debug_render_aabb','phy_debug_render_collision_pairs','phy_debug_render_coms',
+ 'phy_debug_render_core_shapes','phy_debug_render_joints','phy_debug_render_obb','phy_debug_render_shapes','phy_joint_anchor_1_x','phy_joint_anchor_1_y','phy_joint_anchor_2_x','phy_joint_anchor_2_y',
+ 'phy_joint_angle','phy_joint_angle_limits','phy_joint_damping_ratio','phy_joint_frequency','phy_joint_length_1','phy_joint_length_2','phy_joint_lower_angle_limit','phy_joint_max_motor_force',
+ 'phy_joint_max_motor_torque','phy_joint_motor_force','phy_joint_motor_speed','phy_joint_motor_torque','phy_joint_reaction_force_x','phy_joint_reaction_force_y','phy_joint_reaction_torque','phy_joint_speed',
+ 'phy_joint_translation','phy_joint_upper_angle_limit','pi','pr_linelist','pr_linestrip','pr_pointlist','pr_trianglefan','pr_trianglelist','pr_trianglestrip','ps_change_all','ps_change_motion',
+ 'ps_change_shape','ps_deflect_horizontal','ps_deflect_vertical','ps_distr_gaussian','ps_distr_invgaussian','ps_distr_linear','ps_force_constant','ps_force_linear','ps_force_quadratic','ps_shape_diamond',
+ 'ps_shape_ellipse','ps_shape_line','ps_shape_rectangle','pt_shape_circle','pt_shape_cloud','pt_shape_disk','pt_shape_explosion','pt_shape_flare','pt_shape_line','pt_shape_pixel','pt_shape_ring',
+ 'pt_shape_smoke','pt_shape_snow','pt_shape_spark','pt_shape_sphere','pt_shape_square','pt_shape_star','se_chorus','se_compressor','se_echo','se_equalizer','se_flanger','se_gargle','se_none','se_reverb',
+ 'text_type','true','ty_real','ty_string','vertex_type_colour','vertex_type_float1','vertex_type_float2','vertex_type_float3','vertex_type_float4','vertex_type_ubyte4','vertex_usage_binormal',
+ 'vertex_usage_blendindices','vertex_usage_blendweight','vertex_usage_colour','vertex_usage_depth','vertex_usage_fog','vertex_usage_normal','vertex_usage_position','vertex_usage_psize','vertex_usage_sample',
+ 'vertex_usage_tagnet','vertex_usage_textcoord','vk_add','vk_alt','vk_anykey','vk_backspace','vk_control','vk_decimal','vk_delete','vk_divide','vk_down','vk_end','vk_enter','vk_escape','vk_f1','vk_f10',
+ 'vk_f11','vk_f12','vk_f2','vk_f3','vk_f4','vk_f5','vk_f6','vk_f7','vk_f8','vk_f9','vk_home','vk_insert','vk_lalt','vk_lcontrol','vk_left','vk_lshift','vk_multiply','vk_nokey','vk_numpad0','vk_numpad1',
+ 'vk_numpad2','vk_numpad3','vk_numpad4','vk_numpad5','vk_numpad6','vk_numpad7','vk_numpad8','vk_numpad9','vk_pagedown','vk_pageup','vk_pause','vk_printscreen','vk_ralt','vk_rcontrol','vk_return','vk_right',
+ 'vk_rshift','vk_shift','vk_space','vk_subtract','vk_tab','vk_up'
),
- // constants
+
+ // Keywords
4 => array(
- 'true', 'false', 'pi',
- 'ev_destroy','ev_step','ev_alarm','ev_keyboard','ev_mouse','ev_collision','ev_other','ev_draw',
- 'ev_keypress','ev_keyrelease','ev_left_button','ev_right_button','ev_middle_button',
- 'ev_no_button','ev_left_press','ev_right_press','ev_middle_press','ev_left_release',
- 'ev_right_release','ev_middle_release','ev_mouse_enter','ev_mouse_leave','ev_mouse_wheel_up',
- 'ev_mouse_wheel_down','ev_global_left_button','ev_global_right_button','ev_global_middle_button',
- 'ev_global_left_press','ev_global_right_press','ev_global_middle_press','ev_global_left_release',
- 'ev_global_right_release','ev_global_middle_release','ev_joystick1_left','ev_joystick1_right',
- 'ev_joystick1_up','ev_joystick1_down','ev_joystick1_button1','ev_joystick1_button2',
- 'ev_joystick1_button3','ev_joystick1_button4','ev_joystick1_button5','ev_joystick1_button6',
- 'ev_joystick1_button7','ev_joystick1_button8','ev_joystick2_left','ev_joystick2_right',
- 'ev_joystick2_up','ev_joystick2_down','ev_joystick2_button1','ev_joystick2_button2',
- 'ev_joystick2_button3','ev_joystick2_button4','ev_joystick2_button5','ev_joystick2_button6',
- 'ev_joystick2_button7','ev_joystick2_button8',
- 'ev_outside','ev_boundary','ev_game_start','ev_game_end','ev_room_start','ev_room_end',
- 'ev_no_more_lives','ev_no_more_health','ev_animation_end','ev_end_of_path','ev_user0','ev_user1',
- 'ev_user2','ev_user3','ev_user4','ev_user5','ev_user6','ev_user7','ev_user8','ev_user9',
- 'ev_user10','ev_user11','ev_user12','ev_user13','ev_user14','ev_user15','ev_step_normal',
- 'ev_step_begin','ev_step_end',
- 'vk_nokey','vk_anykey','vk_left','vk_right','vk_up','vk_down','vk_enter','vk_escape','vk_space',
- 'vk_shift','vk_control','vk_alt','vk_backspace','vk_tab','vk_home','vk_end','vk_delete',
- 'vk_insert','vk_pageup','vk_pagedown','vk_pause','vk_printscreen',
- 'vk_f1','vk_f2','vk_f3','vk_f4','vk_f5','vk_f6','vk_f7','vk_f8','vk_f9','vk_f10','vk_f11','vk_f12',
- 'vk_numpad0','vk_numpad1','vk_numpad2','vk_numpad3','vk_numpad4','vk_numpad5','vk_numpad6',
- 'vk_numpad7','vk_numpad8','vk_numpad9', 'vk_multiply','vk_divide','vk_add','vk_subtract',
- 'vk_decimal','vk_lshift','vk_lcontrol','vk_lalt','vk_rshift','vk_rcontrol','vk_ralt',
- 'c_aqua','c_black','c_blue','c_dkgray','c_fuchsia','c_gray','c_green','c_lime','c_ltgray',
- 'c_maroon','c_navy','c_olive','c_purple','c_red','c_silver','c_teal','c_white','c_yellow',
- 'fa_left', 'fa_center','fa_right','fa_top','fa_middle','fa_bottom',
- 'pr_pointlist','pr_linelist','pr_linestrip','pr_trianglelist','pr_trianglestrip',
- 'pr_trianglefan',
- 'cr_none','cr_arrow','cr_cross','cr_beam','cr_size_nesw','cr_size_ns','cr_size_nwse',
- 'cr_size_we','cr_uparrow','cr_hourglass','cr_drag','cr_nodrop','cr_hsplit','cr_vsplit',
- 'cr_multidrag','cr_sqlwait','cr_no','cr_appstart','cr_help','cr_handpoint','cr_size_all',
- 'se_chorus','se_echo','se_flanger','se_gargle','se_reverb','se_compressor','se_equalizer',
- 'fa_readonly','fa_hidden','fa_sysfile','fa_volumeid','fa_directory','fa_archive',
- 'pt_shape_pixel','pt_shape_disk','pt_shape_square','pt_shape_line','pt_shape_star',
- 'pt_shape_circle','pt_shape_ring','pt_shape_sphere','pt_shape_flare','pt_shape_spark',
- 'pt_shape_explosion','pt_shape_cloud','pt_shape_smoke','pt_shape_snow',
- 'ps_shape_rectangle','ps_shape_ellipse ','ps_shape_diamond','ps_shape_line',
- 'ps_distr_linear','ps_distr_gaussian','ps_force_constant','ps_force_linear','ps_force_quadratic',
- 'ps_deflect_horizontal', 'ps_deflect_vertical',
- 'ps_change_motion','ps_change_shape','ps_change_all'
- ),
+ 'if','while','do','until','exit','break','continue','for','switch','case','default',
+ 'else','then','begin','end','repeat','switch','var','globalvar','with','div','mod',
+ 'self','noone','other','all','global','local','return',
+ 'and','or','xor','not'
+ )
),
+
'SYMBOLS' => array(
- '(', ')', '{', '}', '[', ']',
- '&&', '||', '^^', '&', '|', '^',
- '<', '<=', '==', '!=', '>', '>=', '=',
- '<<', '>>',
- '+=', '-=', '*=', '/=',
- '+', '-', '*', '/',
- '!', '~', ',', ';'
- ),
+ // Angled brackets
+ 0 => array('{','}'),
+ // Other brackets
+ 1 => array('(',')','[',']'),
+ // Operators (NOTE: Operators and/or/not/xor are included in the keywords section. These are non-alphanumeric operators
+ 2 => array('&&', '||', '^^', '&', '|', '^',
+ '<', '<=', '==', '!=', '>', '>=', '=',
+ '<<', '>>',
+ '+=', '-=', '*=', '/=',
+ '+', '-', '*', '/',
+ '!', '~', ',', ';'
+ )),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => false,
1 => true,
@@ -452,33 +320,28 @@ $language_data = array (
),
'STYLES' => array(
'KEYWORDS' => array(
- 1 => 'font-weight: bold; color: #000000;',
- 2 => 'font-weight: bold; color: #000000;',
- 3 => 'color: navy;',
- 4 => 'color: #663300;',
- ),
+ 1 => 'color: #800000;',
+ 2 => 'color: #800000;',
+ 3 => 'color: #800000;',
+ 4 => 'color: #000080; font-weight: bold;'),
'COMMENTS' => array(
- 1 => 'font-style: italic; color: green;',
- 'MULTI' => 'font-style: italic; color: green;'
- ),
+ 1 => 'font-style: italic; color: #008000;',
+ 'MULTI' => 'font-style: italic; color: #008000;'),
'ESCAPE_CHAR' => array(
- 0 => 'color: #000099; font-weight: bold;'
- ),
+ 0 => ''),
'BRACKETS' => array(
- 0 => 'color: #000000;' //'color: #66cc66;'
- ),
+ 0 => 'color: #000080;'),
'STRINGS' => array(
- 0 => 'color: #ff0000;'
- ),
+ 0 => 'color: #0000FF;',
+ 1 => 'color: #0000FF;'),
'NUMBERS' => array(
- 0 => 'color: #cc66cc;'
- ),
+ 0 => 'color: #0000FF;'),
'METHODS' => array(
- 1 => 'color: #202020;'
- ),
+ 0 => 'color: #800000;'),
'SYMBOLS' => array(
- 0 => 'color: #66cc66; font-weight: bold;'
- ),
+ 0 => 'color: #000080; font-weight: bold;',
+ 1 => 'color: #000000;',
+ 2 => 'color: #000000;'),
'REGEXPS' => array(
),
'SCRIPT' => array(
@@ -502,5 +365,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gnuplot.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gnuplot.php
index d8445eab..27a2a639 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gnuplot.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gnuplot.php
@@ -4,7 +4,7 @@
* ----------
* Author: Milian Wolff (mail@milianw.de)
* Copyright: (c) 2008 Milian Wolff (http://milianw.de)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2008/07/07
*
* Gnuplot script language file for GeSHi.
@@ -292,5 +292,3 @@ $language_data = array (
),
'TAB_WIDTH' => 4
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/go.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/go.php
index 5b7a47db..7f1b825f 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/go.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/go.php
@@ -4,7 +4,7 @@
* --------
* Author: Markus Jarderot (mizardx at gmail dot com)
* Copyright: (c) 2010 Markus Jarderot
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2010/05/20
*
* Go language file for GeSHi.
@@ -321,7 +321,7 @@ $language_data = array(
),
'STRINGS' => array(
0 => 'color: #0000ff;',
- 0 => 'color: #cc66cc;'
+ 0 => 'color: #cc66cc;' // FIXME: Duplicate array key
),
'NUMBERS' => array(
0 => 'color: #cc66cc;'
@@ -371,5 +371,3 @@ $language_data = array(
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/groovy.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/groovy.php
index 45290d2f..37fc8174 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/groovy.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/groovy.php
@@ -4,7 +4,7 @@
* ----------
* Author: Ivan F. Villanueva B. (geshi_groovy@artificialidea.com)
* Copyright: (c) 2006 Ivan F. Villanueva B.(http://www.artificialidea.com)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2006/04/29
*
* Groovy language file for GeSHi.
@@ -1007,5 +1007,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gwbasic.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gwbasic.php
index ecc16341..97310df1 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gwbasic.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/gwbasic.php
@@ -4,7 +4,7 @@
* ----------
* Author: José Gabriel Moya Yangüela (josemoya@gmail.com)
* Copyright: (c) 2010 José Gabriel Moya Yangüela (http://doc.apagada.com)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2010/01/30
*
* GwBasic language file for GeSHi.
@@ -149,5 +149,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/haskell.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/haskell.php
index d3b494ed..6fdc2cec 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/haskell.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/haskell.php
@@ -2,17 +2,17 @@
/*************************************************************************************
* haskell.php
* ----------
- * Author: Jason Dagit (dagit@codersbase.com) based on ocaml.php by Flaie (fireflaie@gmail.com)
+ * Author: Daniel Mlot (duplode_1 at yahoo dot com dot br)
+ * Based on haskell.php by Jason Dagit (dagit@codersbase.com), which was
+ * based on ocaml.php by Flaie (fireflaie@gmail.com).
* Copyright: (c) 2005 Flaie, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.11
- * Date Started: 2005/08/27
+ * Release Version: 1.0.8.12
+ * Date Started: 2014/05/12
*
* Haskell language file for GeSHi.
*
* CHANGES
* -------
- * 2005/08/27 (1.0.0)
- * - First Release
* 2013/09/28
* - Single quotes dropped from QUOTEMARKS to resolve <https://bugzilla.wikimedia.org/52509>.
* Change is local to SyntaxHighlight_GeSHi, made by Ori Livneh (ori@wikimedia.org), based
@@ -22,9 +22,6 @@
* Upstream patch (stalled since 2012):
* <http://sourceforge.net/p/geshi/bugs/219/>
*
- * TODO (updated 2005/08/27)
- * -------------------------
- *
*************************************************************************************
*
* This file is part of GeSHi.
@@ -66,7 +63,7 @@ $language_data = array (
'instance', 'let', 'in', 'module', 'newtype',
'qualified', 'type', 'where'
),
- /* define names of main librarys, so we can link to it */
+ /* define names of main libraries, so we can link to it */
2 => array(
'Foreign', 'Numeric', 'Prelude'
),
@@ -115,35 +112,34 @@ $language_data = array (
'interact', 'readFile', 'writeFile', 'appendFile',
'readIO', 'readLn', 'ioError', 'userError', 'catch'
),
- /* here Prelude Types */
+ /* Prelude types */
4 => array (
- 'Bool', 'Maybe', 'Either', 'Ord', 'Ordering',
- 'Char', 'String', 'Eq', 'Enum', 'Bounded',
+ 'Bool', 'Maybe', 'Either', 'Ordering',
+ 'Char', 'String',
'Int', 'Integer', 'Float', 'Double', 'Rational',
- 'Num', 'Real', 'Integral', 'Fractional',
- 'Floating', 'RealFrac', 'RealFloat', 'Monad',
- 'Functor', 'Show', 'ShowS', 'Read', 'ReadS',
- 'IO'
+ 'ShowS', 'ReadS',
+ 'IO', 'IOError', 'IOException'
),
- /* finally Prelude Exceptions */
+ /* Prelude classes */
5 => array (
- 'IOError', 'IOException'
+ 'Ord', 'Eq', 'Enum', 'Bounded',
+ 'Num', 'Real', 'Integral', 'Fractional',
+ 'Floating', 'RealFrac', 'RealFloat',
+ 'Monad', 'Functor',
+ 'Show', 'Read'
)
),
- /* highlighting symbols is really important in Haskell */
+ /* Most symbol combinations can be valid Haskell operators */
'SYMBOLS' => array(
- '|', '->', '<-', '@', '!', '::', '_', '~', '=', '?',
- '&&', '||', '==', '/=', '<', '<=', '>',
- '>=','+', '-', '*','/', '%', '**', '^', '^^',
- '>>=', '>>', '=<<', '$', '.', ',', '$!',
- '++', '!!'
+ '!', '@', '#', '$', '%', '&', '*', '-', '+', '=',
+ '^', '~', '|', '\\', '>', '<', ':', '?', '/'
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => false,
- 1 => true,
- 2 => true, /* functions name are case seinsitive */
- 3 => true, /* types name too */
- 4 => true, /* finally exceptions too */
+ 1 => true, /* Haskell is a case sensitive language */
+ 2 => true,
+ 3 => true,
+ 4 => true,
5 => true
),
'STYLES' => array(
@@ -152,7 +148,7 @@ $language_data = array (
2 => 'color: #06c; font-weight: bold;', /* blue as well */
3 => 'font-weight: bold;', /* make the preduled functions bold */
4 => 'color: #cccc00; font-weight: bold;', /* give types a different bg */
- 5 => 'color: maroon;'
+ 5 => 'color: maroon; font-weight: bold;' /* similarly for classes */
),
'COMMENTS' => array(
1 => 'color: #5d478b; font-style: italic;',
@@ -193,7 +189,7 @@ $language_data = array (
/* link to Prelude types */
4 => 'http://haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html#t:{FNAME}',
/* link to Prelude exceptions */
- 5 => 'http://haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html#t:{FNAME}',
+ 5 => 'http://haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html#t:{FNAME}'
),
'OOLANG' => false,
'OBJECT_SPLITTERS' => array(
@@ -206,5 +202,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/haxe.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/haxe.php
index 778637e2..17f8394b 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/haxe.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/haxe.php
@@ -6,7 +6,7 @@
* John Liao (colorhook@gmail.com)
* Copyright: (c) 2012 onthewings (http://www.onthewings.net/)
* 2010 colorhook (http://colorhook.com/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2010/10/05
*
* Haxe language file for GeSHi.
@@ -111,7 +111,6 @@ $language_data = array (
1 => 'color: #666666; font-style: italic;',
2 => 'color: #006699;',
3 => 'color: #008000; font-style: italic; font-weight: bold;',
- 3 => 'color: #008000; font-style: italic; font-weight: bold;',
'MULTI' => 'color: #666666; font-style: italic;',
),
'ESCAPE_CHAR' => array(
@@ -157,5 +156,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
),
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/hicest.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/hicest.php
index 78a2bc20..cc2c0172 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/hicest.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/hicest.php
@@ -4,7 +4,7 @@
* --------
* Author: Georg Petrich (spt@hicest.com)
* Copyright: (c) 2010 Georg Petrich (http://www.HicEst.com)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2010/03/15
*
* HicEst language file for GeSHi.
@@ -104,5 +104,3 @@ $language_data = array(
'SCRIPT_DELIMITERS' => array(),
'HIGHLIGHT_STRICT_BLOCK' => array()
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/hq9plus.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/hq9plus.php
index 7ba1a73c..bb461b14 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/hq9plus.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/hq9plus.php
@@ -4,7 +4,7 @@
* ----------
* Author: Benny Baumann (BenBE@geshi.org)
* Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2009/10/31
*
* HQ9+ language file for GeSHi.
@@ -100,5 +100,3 @@ $language_data = array (
)
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/html4strict.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/html4strict.php
index 97392fa8..1f01f68e 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/html4strict.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/html4strict.php
@@ -4,7 +4,7 @@
* ---------------
* Author: Nigel McNie (nigel@geshi.org)
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/07/10
*
* HTML 4.01 strict language file for GeSHi.
@@ -186,5 +186,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/html5.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/html5.php
index 0d975594..04fb8203 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/html5.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/html5.php
@@ -4,7 +4,7 @@
* ---------------
* Author: Nigel McNie (nigel@geshi.org)
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/07/10
*
* HTML 5 language file for GeSHi.
@@ -208,5 +208,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/icon.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/icon.php
index 06383ea5..eddc88bc 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/icon.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/icon.php
@@ -4,7 +4,7 @@
* --------
* Author: Matt Oates (mattoates@gmail.com)
* Copyright: (c) 2010 Matt Oates (http://mattoates.co.uk)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2010/04/24
*
* Icon language file for GeSHi.
@@ -208,5 +208,3 @@ $language_data = array(
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/idl.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/idl.php
index 69bd14ff..0bdeb9ce 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/idl.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/idl.php
@@ -4,7 +4,7 @@
* -------
* Author: Cedric Bosdonnat (cedricbosdo@openoffice.org)
* Copyright: (c) 2006 Cedric Bosdonnat
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2006/08/20
*
* Unoidl language file for GeSHi.
@@ -119,5 +119,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/ini.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/ini.php
index 8e6ca76d..914ebdfe 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/ini.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/ini.php
@@ -4,7 +4,7 @@
* --------
* Author: deguix (cevo_deguix@yahoo.com.br)
* Copyright: (c) 2005 deguix
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2005/03/27
*
* INI language file for GeSHi.
@@ -44,8 +44,9 @@
$language_data = array (
'LANG_NAME' => 'INI',
- 'COMMENT_SINGLE' => array(0 => ';'),
+ 'COMMENT_SINGLE' => array(),
'COMMENT_MULTI' => array(),
+ 'COMMENT_REGEXP' => array(0 => '/^\s*;.*?$/m'),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array('"'),
'ESCAPE_CHAR' => '',
@@ -124,5 +125,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/inno.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/inno.php
index 1e2ee8be..5fde614b 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/inno.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/inno.php
@@ -4,7 +4,7 @@
* ----------
* Author: Thomas Klingler (hotline@theratech.de) based on delphi.php from J�rja Norbert (jnorbi@vipmail.hu)
* Copyright: (c) 2004 J�rja Norbert, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2005/07/29
*
* Inno Script language inkl. Delphi (Object Pascal) language file for GeSHi.
@@ -208,5 +208,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/intercal.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/intercal.php
index 3c81b81c..c68b9791 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/intercal.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/intercal.php
@@ -4,7 +4,7 @@
* ----------
* Author: Benny Baumann (BenBE@geshi.org)
* Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2009/10/31
*
* INTERCAL language file for GeSHi.
@@ -118,5 +118,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/io.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/io.php
index 51fad43a..b57ab857 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/io.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/io.php
@@ -4,7 +4,7 @@
* -------
* Author: Nigel McNie (nigel@geshi.org)
* Copyright: (c) 2006 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2006/09/23
*
* Io language file for GeSHi. Thanks to Johnathan Wright for the suggestion and help
@@ -134,5 +134,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/ispfpanel.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/ispfpanel.php
new file mode 100644
index 00000000..a0b0541b
--- /dev/null
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/ispfpanel.php
@@ -0,0 +1,165 @@
+<?php
+/*************************************************************************************
+ * ispfpanel.php
+ * -------------
+ * Author: Ramesh Vishveshwar (ramesh.vishveshwar@gmail.com)
+ * Copyright: (c) 2012 Ramesh Vishveshwar (http://thecodeisclear.in)
+ * Release Version: 1.0.8.12
+ * Date Started: 2012/09/18
+ *
+ * ISPF Panel Definition (MVS) language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2011/09/22 (1.0.0)
+ * - First Release
+ *
+ *
+ *************************************************************************************
+ *
+ * This file is part of GeSHi.
+ *
+ * GeSHi is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * GeSHi is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GeSHi; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ ************************************************************************************/
+
+$language_data = array (
+ 'LANG_NAME' => 'ISPF Panel',
+ 'COMMENT_SINGLE' => array(),
+ 'COMMENT_MULTI' => array('/*' => '*/'),
+ 'CASE_KEYWORDS' => GESHI_CAPS_UPPER,
+ 'QUOTEMARKS' => array("'", '"'),
+ 'ESCAPE_CHAR' => '',
+ 'KEYWORDS' => array(
+ // Panel Definition Statements
+ 1 => array(
+ ')CCSID',')PANEL',')ATTR',')ABC',')ABCINIT',')ABCPROC',')BODY',')MODEL',
+ ')AREA',')INIT',')REINIT',')PROC',')FIELD',')HELP',')LIST',')PNTS',')END'
+ ),
+ // File-Tailoring Skeletons
+ 2 => array (
+ ')DEFAULT',')BLANK', ')CM', ')DO', ')DOT', ')ELSE', ')ENDSEL',
+ ')ENDDO', ')ENDDOT', ')IF', ')IM', ')ITERATE', ')LEAVE', ')NOP', ')SEL',
+ ')SET', ')TB', ')TBA'
+ ),
+ // Control Variables
+ 3 => array (
+ '.ALARM','.ATTR','.ATTRCHAR','.AUTOSEL','.CSRPOS','.CSRROW','.CURSOR','.HELP',
+ '.HHELP','.KANA','.MSG','.NRET','.PFKEY','.RESP','.TRAIL','.ZVARS'
+ ),
+ // Keywords
+ 4 => array (
+ 'WINDOW','ALARM','ATTN','BARRIER','HILITE','CAPS',
+ 'CKBOX','CLEAR','CMD','COLOR','COMBO','CSRGRP','CUADYN',
+ 'SKIP','INTENS','AREA','EXTEND',
+ 'DESC','ASIS','VGET','VPUT','JUST','BATSCRD','BATSCRW',
+ 'BDBCS','BDISPMAX','BIT','BKGRND','BREDIMAX','PAD','PADC',
+ 'PAS','CHINESES','CHINESET','DANISH','DATAMOD','DDLIST',
+ 'DEPTH','DUMP','ENGLISH','ERROR','EXIT','EXPAND','FIELD',
+ 'FORMAT','FRENCH','GE','GERMAN','IMAGE','IND','TYPE',
+ 'ITALIAN','JAPANESE','KOREAN','LCOL','LEN','LIND','LISTBOX',
+ 'MODE','NEST','NOJUMP','NOKANA','NUMERIC','OUTLINE','PARM',
+ 'PGM','PORTUGESE','RADIO','RCOL','REP','RIND','ROWS',
+ 'SCALE','SCROLL','SFIHDR','SGERMAN','SIND','SPANISH',
+ 'UPPERENG','WIDTH'
+ ),
+ // Parameters
+ 5 => array (
+ 'ADDPOP','ALPHA','ALPHAB','DYNAMIC','SCRL',
+ 'CCSID','COMMAND','DSNAME','DSNAMEF','DSNAMEFM',
+ 'DSNAMEPQ','DSNAMEQ','EBCDIC','ENBLDUMP','ENUM',// 'EXTEND',
+ 'FI','FILEID','FRAME','GUI','GUISCRD','GUISCRW','HEX',
+ 'HIGH','IDATE','IN','INCLUDE','INPUT','ITIME','JDATE',
+ 'JSTD','KEYLIST','LANG','LEFT','LIST','LISTV','LISTVX',
+ 'LISTX','LMSG','LOGO','LOW','MIX','NAME','NAMEF','NB',
+ 'NEWAPPL','NEWPOOL','NOCHECK','NOLOGO','NON','NONBLANK',
+ 'NULLS','NUM','OFF','ON','OPT','OUT','OUTPUT','PANEL',
+ /* 'PGM',*/'PICT','PICTN','POSITION','TBDISPL','PROFILE',
+ 'QUERY','RANGE','REVERSE','RIGHT','SHARED','SMSG',
+ 'STDDATE','STDTIME','TERMSTAT','TERMTRAC','TEST',
+ 'TESTX','TEXT','TRACE','TRACEX','USCORE','USER',
+ 'USERMOD','WSCMD','WSCMDV'
+ ),
+ ),
+ 'SYMBOLS' => array(
+ '(',')','=','&',',','*','#','+','&','%','_','-','@','!'
+ ),
+ 'CASE_SENSITIVE' => array(
+ GESHI_COMMENTS => false,
+ 1 => false,
+ 2 => false,
+ 3 => false,
+ 4 => false,
+ 5 => false
+ ),
+ 'STYLES' => array(
+ 'BKGROUND' => 'background-color: #000000; color: #00FFFF;',
+ 'KEYWORDS' => array(
+ 1 => 'color: #FF0000;',
+ 2 => 'color: #21A502;',
+ 3 => 'color: #FF00FF;',
+ 4 => 'color: #876C00;',
+ 5 => 'color: #00FF00;'
+ ),
+ 'COMMENTS' => array(
+ 0 => 'color: #002EB8; font-style: italic;',
+ //1 => 'color: #002EB8; font-style: italic;',
+ //2 => 'color: #002EB8; font-style: italic;',
+ 'MULTI' => 'color: #002EB8; font-style: italic;'
+ ),
+ 'ESCAPE_CHAR' => array(
+ 0 => ''
+ ),
+ 'BRACKETS' => array(
+ 0 => 'color: #FF7400;'
+ ),
+ 'STRINGS' => array(
+ 0 => 'color: #700000;'
+ ),
+ 'NUMBERS' => array(
+ 0 => 'color: #FF6633;'
+ ),
+ 'METHODS' => array(
+ 1 => '',
+ 2 => ''
+ ),
+ 'SYMBOLS' => array(
+ 0 => 'color: #FF7400;'
+ ),
+ 'REGEXPS' => array(
+ 0 => 'color: #6B1F6B;'
+ ),
+ 'SCRIPT' => array(
+ 0 => ''
+ )
+ ),
+ 'URLS' => array(
+ 1 => '',
+ 2 => '',
+ 3 => '',
+ 4 => '',
+ 5 => ''
+ ),
+ 'OOLANG' => false,
+ 'OBJECT_SPLITTERS' => array(),
+ 'REGEXPS' => array(
+ // Variables Defined in the Panel
+ 0 => '&amp;[a-zA-Z]{1,8}[0-9]{0,}',
+ ),
+ 'STRICT_MODE_APPLIES' => GESHI_NEVER,
+ 'SCRIPT_DELIMITERS' => array(
+ ),
+ 'HIGHLIGHT_STRICT_BLOCK' => array()
+);
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/j.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/j.php
index 5565bb49..4cfda8b5 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/j.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/j.php
@@ -4,7 +4,7 @@
* --------
* Author: Ric Sherlock (tikkanz@gmail.com)
* Copyright: (c) 2009 Ric Sherlock
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2009/11/10
*
* J language file for GeSHi.
@@ -186,5 +186,3 @@ $language_data = array(
)
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/java.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/java.php
index 652b8ddd..b7323cd0 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/java.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/java.php
@@ -4,7 +4,7 @@
* --------
* Author: Nigel McNie (nigel@geshi.org)
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/07/10
*
* Java language file for GeSHi.
@@ -934,7 +934,6 @@ $language_data = array (
1 => 'color: #666666; font-style: italic;',
2 => 'color: #006699;',
3 => 'color: #008000; font-style: italic; font-weight: bold;',
- 3 => 'color: #008000; font-style: italic; font-weight: bold;',
'MULTI' => 'color: #666666; font-style: italic;'
),
'ESCAPE_CHAR' => array(
@@ -979,5 +978,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/java5.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/java5.php
index af16bd1e..8f0d6704 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/java5.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/java5.php
@@ -4,7 +4,7 @@
* --------
* Author: Nigel McNie (nigel@geshi.org)
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/07/10
*
* Java language file for GeSHi.
@@ -1033,5 +1033,3 @@ $language_data = array (
)
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/javascript.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/javascript.php
index b96d1b5b..439b7a9b 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/javascript.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/javascript.php
@@ -4,7 +4,7 @@
* --------------
* Author: Ben Keen (ben.keen@gmail.com)
* Copyright: (c) 2004 Ben Keen (ben.keen@gmail.com), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2004/06/20
*
* JavaScript language file for GeSHi.
@@ -170,5 +170,3 @@ $language_data = array (
1 => true
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/jcl.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/jcl.php
new file mode 100644
index 00000000..74fe0fd8
--- /dev/null
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/jcl.php
@@ -0,0 +1,155 @@
+<?php
+/*************************************************************************************
+ * jcl.php
+ * -----------
+ * Author: Ramesh Vishveshwar (ramesh.vishveshwar@gmail.com)
+ * Copyright: (c) 2012 Ramesh Vishveshwar (http://thecodeisclear.in)
+ * Release Version: 1.0.8.12
+ * Date Started: 2011/09/16
+ *
+ * JCL (MVS), DFSORT, IDCAMS language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2011/09/16 (1.0.0)
+ * - Internal Release (for own blog/testing)
+ * 2012/09/22 (1.0.1)
+ * - Released with support for DFSORT, ICETOOL, IDCAMS
+ * - Added support for Symbolic variables in JCL
+ * - Added support for TWS OPC variables
+ *
+ *************************************************************************************
+ *
+ * This file is part of GeSHi.
+ *
+ * GeSHi is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * GeSHi is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GeSHi; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ ************************************************************************************/
+
+$language_data = array (
+ 'LANG_NAME' => 'JCL',
+ 'COMMENT_SINGLE' => array(),
+ 'COMMENT_MULTI' => array(),
+ 'COMMENT_REGEXP' => array(
+ // Comments identified using REGEX
+ // Comments start with //* but should not be followed by % (TWS) or + (some JES3 stmts)
+ 3 => "\/\/\*[^%](.*?)(\n)"
+ ),
+ 'CASE_KEYWORDS' => GESHI_CAPS_UPPER,
+ 'QUOTEMARKS' => array("'", '"'),
+ 'ESCAPE_CHAR' => '',
+ 'KEYWORDS' => array(
+ 1 => array(
+ 'COMMAND', 'CNTL', 'DD', 'ENDCNTL', 'EXEC', 'IF', 'THEN', 'ELSE',
+ 'ENDIF', 'JCLLIB', 'JOB', 'OUTPUT', 'PEND',
+ 'PROC', 'SET', 'XMIT'
+ ),
+ 2 => array (
+ 'PGM','CLASS','NOTIFY','MSGCLASS','DSN','KEYLEN','LABEL','LIKE',
+ 'RECFM','LRECL','DCB','DSORG','BLKSIZE','SPACE','STORCLAS',
+ 'DUMMY','DYNAM','AVGREC','BURST','DISP','UNIT','VOLUME',
+ 'MSGLEVEL','REGION'
+ ),
+ // Keywords set 3: DFSORT, ICETOOL
+ 3 => array (
+ 'ALTSEQ','DEBUG','END','INCLUDE','INREC','MERGE','MODS','OMIT',
+ 'OPTION','OUTFIL','OUTREC','RECORD','SORT','SUM',
+ 'COPY','COUNT','DEFAULTS','DISPLAY','MODE','OCCUR','RANGE',
+ 'SELECT','STATS','UNIQUE','VERIFY'
+ ),
+ // Keywords set 4: IDCAMS
+ 4 => array (
+ 'ALTER','BLDINDEX','CNVTCAT','DEFINE','ALIAS','ALTERNATEINDEX',
+ 'CLUSTER','GENERATIONDATAGROUP','GDG','NONVSAM','PAGESPACE','PATH',
+ /* 'SPACE',*/'USERCATALOG','DELETE','EXAMINE','EXPORT','DISCONNECT',
+ 'EXPORTRA','IMPORT','CONNECT','IMPORTRA','LISTCAT','LISTCRA',
+ 'PRINT','REPRO','RESETCAT'//,'VERIFY'
+ )
+ ),
+ 'SYMBOLS' => array(
+ '(',')','=',',','>','<'
+ ),
+ 'CASE_SENSITIVE' => array(
+ GESHI_COMMENTS => false,
+ 1 => false,
+ 2 => false,
+ 3 => false,
+ 4 => false
+ ),
+ 'STYLES' => array(
+ 'KEYWORDS' => array(
+ 1 => 'color: #FF0000;',
+ 2 => 'color: #21A502;',
+ 3 => 'color: #FF00FF;',
+ 4 => 'color: #876C00;'
+ ),
+ 'COMMENTS' => array(
+ 0 => 'color: #0000FF;',
+ //1 => 'color: #0000FF;',
+ //2 => 'color: #0000FF;',
+ 3 => 'color: #0000FF;'
+ ),
+ 'ESCAPE_CHAR' => array(
+ 0 => ''
+ ),
+ 'BRACKETS' => array(
+ 0 => 'color: #FF7400;'
+ ),
+ 'STRINGS' => array(
+ 0 => 'color: #66CC66;'
+ ),
+ 'NUMBERS' => array(
+ 0 => 'color: #336633;'
+ ),
+ 'METHODS' => array(
+ 1 => '',
+ 2 => ''
+ ),
+ 'SYMBOLS' => array(
+ 0 => 'color: #FF7400;'
+ ),
+ 'REGEXPS' => array(
+ 0 => 'color: #6B1F6B;',
+ 1 => 'color: #6B1F6B;',
+ 2 => 'color: #6B1F6B;'
+ ),
+ 'SCRIPT' => array(
+ 0 => ''
+ )
+ ),
+ 'URLS' => array(
+ 1 => '',
+ // JCL book at IBM Bookshelf is http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/handheld/Connected/BOOKS/IEA2B680/CONTENTS?SHELF=&DT=20080604022956#3.1
+ 2 => '',
+ 3 => '',
+ 4 => ''
+ ),
+ 'OOLANG' => false,
+ 'OBJECT_SPLITTERS' => array(),
+ 'REGEXPS' => array(
+ // The following regular expressions solves three purposes
+ // - Identify Temp Variables in JCL (e.g. &&TEMP)
+ // - Symbolic variables in JCL (e.g. &SYSUID)
+ // - TWS OPC Variables (e.g. %OPC)
+ // Thanks to Simon for pointing me to this
+ 0 => '&amp;&amp;[a-zA-Z]{1,8}[0-9]{0,}',
+ 1 => '&amp;[a-zA-Z]{1,8}[0-9]{0,}',
+ 2 => '&amp;|\?|%[a-zA-Z]{1,8}[0-9]{0,}'
+ ),
+ 'STRICT_MODE_APPLIES' => GESHI_NEVER,
+ 'SCRIPT_DELIMITERS' => array(
+ ),
+ 'HIGHLIGHT_STRICT_BLOCK' => array()
+);
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/jquery.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/jquery.php
index a75320d5..02a9eeef 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/jquery.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/jquery.php
@@ -4,7 +4,7 @@
* --------------
* Author: Rob Loach (http://www.robloach.net)
* Copyright: (c) 2009 Rob Loach (http://www.robloach.net)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2009/07/20
*
* jQuery 1.3 language file for GeSHi.
@@ -234,5 +234,3 @@ $language_data = array (
1 => true
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/kixtart.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/kixtart.php
index 5b909198..b2b7b935 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/kixtart.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/kixtart.php
@@ -4,7 +4,7 @@
* --------
* Author: Riley McArdle (riley@glyff.net)
* Copyright: (c) 2007 Riley McArdle (http://www.glyff.net/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2007/08/31
*
* PHP language file for GeSHi.
@@ -325,5 +325,3 @@ $language_data = array (
),
'TAB_WIDTH' => 4
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/klonec.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/klonec.php
index 5f86e78d..f4f8ac43 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/klonec.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/klonec.php
@@ -4,7 +4,7 @@
* --------
* Author: AUGER Mickael
* Copyright: Synchronic
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2008/04/16
*
* KLone with C language file for GeSHi.
@@ -278,5 +278,3 @@ $language_data = array (
)
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/klonecpp.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/klonecpp.php
index 6564c6b7..e11015e6 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/klonecpp.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/klonecpp.php
@@ -4,7 +4,7 @@
* --------
* Author: AUGER Mickael
* Copyright: Synchronic
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2008/04/16
*
* KLone with C++ language file for GeSHi.
@@ -306,5 +306,3 @@ $language_data = array (
)
)
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/latex.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/latex.php
index 386a0b98..8b28e344 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/latex.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/latex.php
@@ -4,7 +4,7 @@
* -----
* Author: efi, Matthias Pospiech (matthias@pospiech.eu)
* Copyright: (c) 2006 efi, Matthias Pospiech (matthias@pospiech.eu), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2006/09/23
*
* LaTeX language file for GeSHi.
@@ -131,7 +131,7 @@ $language_data = array (
)
),
'URLS' => array(
- 1 => 'http://www.golatex.de/wiki/index.php?title=%5C{FNAME}',
+ 1 => 'http://www.golatex.de/wiki/%5C{FNAME}',
),
'OOLANG' => false,
'OBJECT_SPLITTERS' => array(
@@ -219,5 +219,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lb.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lb.php
index 6c288289..aa3f5c0d 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lb.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lb.php
@@ -4,7 +4,7 @@
* --------
* Author: Chris Iverson (cj.no.one@gmail.com)
* Copyright: (c) 2010 Chris Iverson
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2010/07/18
*
* Liberty BASIC language file for GeSHi.
@@ -158,5 +158,3 @@ $language_data = array(
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/ldif.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/ldif.php
index 42481838..c4135137 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/ldif.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/ldif.php
@@ -4,7 +4,7 @@
* --------
* Author: Bruno Harbulot (Bruno.Harbulot@manchester.ac.uk)
* Copyright: (c) 2005 deguix, (c) 2010 Bruno Harbulot
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2010/03/01
*
* LDIF language file for GeSHi.
@@ -112,5 +112,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lisp.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lisp.php
index be823a40..a2301914 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lisp.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lisp.php
@@ -3,14 +3,16 @@
* lisp.php
* --------
* Author: Roberto Rossi (rsoftware@altervista.org)
- * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter
- * Release Version: 1.0.8.11
+ * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter)
+ * Release Version: 1.0.8.12
* Date Started: 2004/08/30
*
* Generic Lisp language file for GeSHi.
*
* CHANGES
* -------
+ * 2013/11/13 (1.0.8.12)
+ * - Fixed bug where a keyword was highlighted in identifiers (Edward Hart)
* 2005/12/9 (1.0.2)
* - Added support for :keywords and ::access (Denis Mashkevich)
* 2004/11/27 (1.0.1)
@@ -135,10 +137,11 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
),
'PARSER_CONTROL' => array(
+ 'KEYWORDS' => array(
+ 'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9-\$_\|\#|^&])',
+ ),
'OOLANG' => array(
'MATCH_AFTER' => '[a-zA-Z][a-zA-Z0-9_\-]*'
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/llvm.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/llvm.php
index 580099b5..4fc2040c 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/llvm.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/llvm.php
@@ -4,7 +4,7 @@
* --------
* Author: Benny Baumann (BenBE@geshi.org), Azriel Fasten (azriel.fasten@gmail.com)
* Copyright: (c) 2010 Benny Baumann (http://qbnz.com/highlighter/), Azriel Fasten (azriel.fasten@gmail.com)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2010/10/14
*
* LLVM language file for GeSHi.
@@ -381,5 +381,3 @@ $language_data = array(
'SCRIPT_DELIMITERS' => array(),
'TAB_WIDTH' => 4
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/locobasic.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/locobasic.php
index 61c8a3c8..686bb6c5 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/locobasic.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/locobasic.php
@@ -4,7 +4,7 @@
* -------------
* Author: Nacho Cabanes
* Copyright: (c) 2009 Nacho Cabanes (http://www.nachocabanes.com)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2009/03/22
*
* Locomotive Basic (Amstrad CPC series) language file for GeSHi.
@@ -126,5 +126,3 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/logtalk.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/logtalk.php
index 05734663..c72e548d 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/logtalk.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/logtalk.php
@@ -5,7 +5,7 @@
*
* Author: Paulo Moura (pmoura@logtalk.org)
* Copyright: (c) 2009-2011 Paulo Moura (http://logtalk.org/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2009/10/24
*
* Logtalk language file for GeSHi.
@@ -308,38 +308,36 @@ $language_data = array(
'PARSER_CONTROL' => array(
'ENABLE_FLAGS' => array(
'BRACKETS' => GESHI_NEVER
- ),
+ ),
'KEYWORDS' => array(
1 => array(
'DISALLOWED_BEFORE' => '(?<=:-\s)',
'DISALLOWED_AFTER' => '(?=\()'
- ),
+ ),
2 => array(
'DISALLOWED_BEFORE' => '(?<=:-\s)',
'DISALLOWED_AFTER' => '(?=\.)'
- ),
+ ),
3 => array(
'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#>|^&\'"])',
'DISALLOWED_AFTER' => '(?=\()'
- ),
+ ),
4 => array(
'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#>|^&\'"])',
'DISALLOWED_AFTER' => '(?=\()'
- ),
+ ),
5 => array(
'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#>|^&\'"])',
'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-&\'"])'
- ),
+ ),
6 => array(
'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#;>|^&\'"])',
'DISALLOWED_AFTER' => '(?=\()'
- ),
+ ),
7 => array(
'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#;>|^&\'"])',
'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-&\'"])'
+ )
)
)
- ),
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lolcode.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lolcode.php
index ab6088b1..3dee0921 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lolcode.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lolcode.php
@@ -4,13 +4,16 @@
* ----------
* Author: Benny Baumann (BenBE@geshi.org)
* Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2009/10/31
*
* LOLcode language file for GeSHi.
*
* CHANGES
* -------
+ * 2014/2/25
+ * - Fixed to not throw missing index exception.
+ *
* 2008/10/31 (1.0.8.1)
* - First Release
*
@@ -36,10 +39,11 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
************************************************************************************/
-$language_data = array (
+
+$language_data = array(
'LANG_NAME' => 'LOLcode',
- 'COMMENT_SINGLE' => array(),
- 'COMMENT_MULTI' => array(),
+ 'COMMENT_SINGLE' => array('BTW'),
+ 'COMMENT_MULTI' => array('BTW','WTB'),
'COMMENT_REGEXP' => array(
1 => "/\bBTW\b.*$/im",
2 => "/(^|\b)(?:OBTW\b.+?\bTLDR|LOL\b.+?\/LOL)(\b|$)/si"
@@ -102,6 +106,7 @@ $language_data = array (
4 => 'color: #800000;'
),
'COMMENTS' => array(
+ 0 => 'color: #666666; style: italic;',
1 => 'color: #666666; style: italic;',
2 => 'color: #666666; style: italic;'
),
@@ -112,15 +117,19 @@ $language_data = array (
0 => 'color: #ff0000;'
),
'NUMBERS' => array(
+ 0 => 'color: #00F;'
),
'METHODS' => array(
+ 0 => 'color: #0F0;'
),
'SYMBOLS' => array(
0 => 'color: #66cc66;'
),
'ESCAPE_CHAR' => array(
+ 0 => 'color: #00F;'
),
'SCRIPT' => array(
+ 0 => 'color: #00F;'
),
'REGEXPS' => array(
)
@@ -148,5 +157,3 @@ $language_data = array (
),
'TAB_WIDTH' => 4
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lotusformulas.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lotusformulas.php
index 12257d74..e94f5df8 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lotusformulas.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lotusformulas.php
@@ -4,7 +4,7 @@
* ------------------------
* Author: Richard Civil (info@richardcivil.net)
* Copyright: (c) 2008 Richard Civil (info@richardcivil.net), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2008/04/12
*
* @Formula/@Command language file for GeSHi.
@@ -313,6 +313,4 @@ $language_data = array (
'HIGHLIGHT_STRICT_BLOCK' => array(
),
'TAB_WIDTH' => 2
- );
-
-?>
+);
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lotusscript.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lotusscript.php
index b8b65f20..e5a8971f 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lotusscript.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lotusscript.php
@@ -4,7 +4,7 @@
* ------------------------
* Author: Richard Civil (info@richardcivil.net)
* Copyright: (c) 2008 Richard Civil (info@richardcivil.net), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2008/04/12
*
* LotusScript language file for GeSHi.
@@ -187,5 +187,3 @@ $language_data = array (
),
'TAB_WIDTH' => 2
);
-
-?>
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lscript.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lscript.php
index 298af618..acfd18e2 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lscript.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lscript.php
@@ -4,7 +4,7 @@
* ---------
* Author: Arendedwinter (admin@arendedwinter.com)
* Copyright: (c) 2008 Beau McGuigan (http://www.arendedwinter.com)
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 15/11/2008
*
* Lightwave Script language file for GeSHi.
@@ -383,5 +383,3 @@ $language_data = array (
)
)
);
-
-?> \ No newline at end of file
diff --git a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lsl2.php b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lsl2.php
index f80cf4f2..1bbf1c05 100644
--- a/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lsl2.php
+++ b/extensions/SyntaxHighlight_GeSHi/geshi/geshi/lsl2.php
@@ -4,23 +4,21 @@
* --------
* Author: William Fry (william.fry@nyu.edu)
* Copyright: (c) 2009 William Fry
- * Release Version: 1.0.8.11
+ * Release Version: 1.0.8.12
* Date Started: 2009/02/04
*
* Linden Scripting Language (LSL2) language file for GeSHi.
*
- * Data derived and validated against the following:
- * http://wiki.secondlife.com/wiki/LSL_Portal
- * http://www.lslwiki.net/lslwiki/wakka.php?wakka=HomePage
- * http://rpgstats.com/wiki/index.php?title=Main_Page
- *
* CHANGES
* -------
- * 2009/02/05 (1.0.0)
+ * 2009-02-05 (1.0.0)
* - First Release
- *
- * TODO (updated 2009/02/05)
- * -------------------------
+ * 2013-01-01
+ * - Modified by Sei Lisa for compatibility with the geshi.py output module
+ * which is part of the LSL2 Derived Files Generator, available at:
+ * http://code.google.com/p/lsl-keywords
+ * 2013-07-11
+ * - Modified by Sei Lisa to fix symbols and to add multiline comment support
*
*************************************************************************************
*
@@ -42,10 +40,12 @@
*
************************************************************************************/
-$language_data = array (
+// Generated by LSL2 Derived Files Generator. Database version: 0.0.20140116001; output module version: 0.0.20130817000
+
+$language_data = array(
'LANG_NAME' => 'LSL2',
'COMMENT_SINGLE' => array(1 => '//'),
- 'COMMENT_MULTI' => array(),
+ 'COMMENT_MULTI' => array('/*' => '*/'),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array('"'),
'ESCAPE_CHAR' => '\\',
@@ -65,11 +65,17 @@ $language_data = array (
'AGENT',
'AGENT_ALWAYS_RUN',
'AGENT_ATTACHMENTS',
+ 'AGENT_AUTOPILOT',
'AGENT_AWAY',
'AGENT_BUSY',
+ 'AGENT_BY_LEGACY_NAME',
+ 'AGENT_BY_USERNAME',
'AGENT_CROUCHING',
'AGENT_FLYING',
'AGENT_IN_AIR',
+ 'AGENT_LIST_PARCEL',
+ 'AGENT_LIST_PARCEL_OWNER',
+ 'AGENT_LIST_REGION',
'AGENT_MOUSELOOK',
'AGENT_ON_OBJECT',
'AGENT_SCRIPTED',
@@ -78,6 +84,7 @@ $language_data = array (
'AGENT_WALKING',
'ALL_SIDES',
'ANIM_ON',
+ 'ATTACH_AVATAR_CENTER',
'ATTACH_BACK',
'ATTACH_BELLY',
'ATTACH_CHEST',
@@ -92,17 +99,18 @@ $language_data = array (
'ATTACH_HUD_TOP_LEFT',
'ATTACH_HUD_TOP_RIGHT',
'ATTACH_LEAR',
+ 'ATTACH_LEFT_PEC',
'ATTACH_LEYE',
'ATTACH_LFOOT',
'ATTACH_LHAND',
'ATTACH_LHIP',
'ATTACH_LLARM',
'ATTACH_LLLEG',
- 'ATTACH_LPEC',
'ATTACH_LSHOULDER',
'ATTACH_LUARM',
'ATTACH_LULEG',
'ATTACH_MOUTH',
+ 'ATTACH_NECK',
'ATTACH_NOSE',
'ATTACH_PELVIS',
'ATTACH_REAR',
@@ -110,12 +118,15 @@ $language_data = array (
'ATTACH_RFOOT',
'ATTACH_RHAND',
'ATTACH_RHIP',
+ 'ATTACH_RIGHT_PEC',
'ATTACH_RLARM',
'ATTACH_RLLEG',
- 'ATTACH_RPEC',
'ATTACH_RSHOULDER',
'ATTACH_RUARM',
'ATTACH_RULEG',
+ 'AVOID_CHARACTERS',
+ 'AVOID_DYNAMIC_OBSTACLES',
+ 'AVOID_NONE',
'CAMERA_ACTIVE',
'CAMERA_BEHINDNESS_ANGLE',
'CAMERA_BEHINDNESS_LAG',
@@ -134,18 +145,52 @@ $language_data = array (
'CHANGED_COLOR',
'CHANGED_INVENTORY',
'CHANGED_LINK',
+ 'CHANGED_MEDIA',
'CHANGED_OWNER',
'CHANGED_REGION',
+ 'CHANGED_REGION_START',
'CHANGED_SCALE',
'CHANGED_SHAPE',
'CHANGED_TELEPORT',
'CHANGED_TEXTURE',
+ 'CHARACTER_ACCOUNT_FOR_SKIPPED_FRAMES',
+ 'CHARACTER_AVOIDANCE_MODE',
+ 'CHARACTER_CMD_JUMP',
+ 'CHARACTER_CMD_SMOOTH_STOP',
+ 'CHARACTER_CMD_STOP',
+ 'CHARACTER_DESIRED_SPEED',
+ 'CHARACTER_DESIRED_TURN_SPEED',
+ 'CHARACTER_LENGTH',
+ 'CHARACTER_MAX_ACCEL',
+ 'CHARACTER_MAX_DECEL',
+ 'CHARACTER_MAX_SPEED',
+ 'CHARACTER_MAX_TURN_RADIUS',
+ 'CHARACTER_ORIENTATION',
+ 'CHARACTER_RADIUS',
+ 'CHARACTER_STAY_WITHIN_PARCEL',
+ 'CHARACTER_TYPE',
+ 'CHARACTER_TYPE_A',
+ 'CHARACTER_TYPE_B',
+ 'CHARACTER_TYPE_C',
+ 'CHARACTER_TYPE_D',
+ 'CHARACTER_TYPE_NONE',
+ 'CLICK_ACTION_BUY',
'CLICK_ACTION_NONE',
'CLICK_ACTION_OPEN',
'CLICK_ACTION_OPEN_MEDIA',
'CLICK_ACTION_PAY',
+ 'CLICK_ACTION_PLAY',
'CLICK_ACTION_SIT',
'CLICK_ACTION_TOUCH',
+ 'CONTENT_TYPE_ATOM',
+ 'CONTENT_TYPE_FORM',
+ 'CONTENT_TYPE_HTML',
+ 'CONTENT_TYPE_JSON',
+ 'CONTENT_TYPE_LLSD',
+ 'CONTENT_TYPE_RSS',
+ 'CONTENT_TYPE_TEXT',
+ 'CONTENT_TYPE_XHTML',
+ 'CONTENT_TYPE_XML',
'CONTROL_BACK',
'CONTROL_DOWN',
'CONTROL_FWD',
@@ -160,18 +205,38 @@ $language_data = array (
'DATA_NAME',
'DATA_ONLINE',
'DATA_PAYINFO',
- 'DATA_RATING',
'DATA_SIM_POS',
'DATA_SIM_RATING',
'DATA_SIM_STATUS',
'DEBUG_CHANNEL',
'DEG_TO_RAD',
+ 'DENSITY',
'EOF',
+ 'ERR_GENERIC',
+ 'ERR_MALFORMED_PARAMS',
+ 'ERR_PARCEL_PERMISSIONS',
+ 'ERR_RUNTIME_PERMISSIONS',
+ 'ERR_THROTTLED',
+ 'ESTATE_ACCESS_ALLOWED_AGENT_ADD',
+ 'ESTATE_ACCESS_ALLOWED_AGENT_REMOVE',
+ 'ESTATE_ACCESS_ALLOWED_GROUP_ADD',
+ 'ESTATE_ACCESS_ALLOWED_GROUP_REMOVE',
+ 'ESTATE_ACCESS_BANNED_AGENT_ADD',
+ 'ESTATE_ACCESS_BANNED_AGENT_REMOVE',
'FALSE',
+ 'FORCE_DIRECT_PATH',
+ 'FRICTION',
+ 'GCNP_RADIUS',
+ 'GCNP_STATIC',
+ 'GRAVITY_MULTIPLIER',
+ 'HORIZONTAL',
'HTTP_BODY_MAXLENGTH',
'HTTP_BODY_TRUNCATED',
+ 'HTTP_CUSTOM_HEADER',
'HTTP_METHOD',
'HTTP_MIMETYPE',
+ 'HTTP_PRAGMA_NO_CACHE',
+ 'HTTP_VERBOSE_THROTTLE',
'HTTP_VERIFY_CERT',
'INVENTORY_ALL',
'INVENTORY_ANIMATION',
@@ -185,11 +250,37 @@ $language_data = array (
'INVENTORY_SCRIPT',
'INVENTORY_SOUND',
'INVENTORY_TEXTURE',
+ 'JSON_APPEND',
+ 'JSON_ARRAY',
+ 'JSON_DELETE',
+ 'JSON_FALSE',
+ 'JSON_INVALID',
+ 'JSON_NULL',
+ 'JSON_NUMBER',
+ 'JSON_OBJECT',
+ 'JSON_STRING',
+ 'JSON_TRUE',
+ 'KFM_CMD_PAUSE',
+ 'KFM_CMD_PLAY',
+ 'KFM_CMD_SET_MODE',
+ 'KFM_CMD_STOP',
+ 'KFM_COMMAND',
+ 'KFM_DATA',
+ 'KFM_FORWARD',
+ 'KFM_LOOP',
+ 'KFM_MODE',
+ 'KFM_PING_PONG',
+ 'KFM_REVERSE',
+ 'KFM_ROTATION',
+ 'KFM_TRANSLATION',
+ 'LAND_LARGE_BRUSH',
'LAND_LEVEL',
'LAND_LOWER',
+ 'LAND_MEDIUM_BRUSH',
'LAND_NOISE',
'LAND_RAISE',
'LAND_REVERT',
+ 'LAND_SMALL_BRUSH',
'LAND_SMOOTH',
'LINK_ALL_CHILDREN',
'LINK_ALL_OTHERS',
@@ -213,20 +304,55 @@ $language_data = array (
'MASK_NEXT',
'MASK_OWNER',
'NULL_KEY',
+ 'OBJECT_ATTACHED_POINT',
+ 'OBJECT_CHARACTER_TIME',
'OBJECT_CREATOR',
'OBJECT_DESC',
'OBJECT_GROUP',
'OBJECT_NAME',
'OBJECT_OWNER',
+ 'OBJECT_PATHFINDING_TYPE',
+ 'OBJECT_PHANTOM',
+ 'OBJECT_PHYSICS',
+ 'OBJECT_PHYSICS_COST',
'OBJECT_POS',
+ 'OBJECT_PRIM_EQUIVALENCE',
+ 'OBJECT_RENDER_WEIGHT',
+ 'OBJECT_RETURN_PARCEL',
+ 'OBJECT_RETURN_PARCEL_OWNER',
+ 'OBJECT_RETURN_REGION',
+ 'OBJECT_ROOT',
'OBJECT_ROT',
+ 'OBJECT_RUNNING_SCRIPT_COUNT',
+ 'OBJECT_SCRIPT_MEMORY',
+ 'OBJECT_SCRIPT_TIME',
+ 'OBJECT_SERVER_COST',
+ 'OBJECT_STREAMING_COST',
+ 'OBJECT_TEMP_ON_REZ',
+ 'OBJECT_TOTAL_SCRIPT_COUNT',
'OBJECT_UNKNOWN_DETAIL',
'OBJECT_VELOCITY',
+ 'OPT_AVATAR',
+ 'OPT_CHARACTER',
+ 'OPT_EXCLUSION_VOLUME',
+ 'OPT_LEGACY_LINKSET',
+ 'OPT_MATERIAL_VOLUME',
+ 'OPT_OTHER',
+ 'OPT_STATIC_OBSTACLE',
+ 'OPT_WALKABLE',
+ 'PARCEL_COUNT_GROUP',
+ 'PARCEL_COUNT_OTHER',
+ 'PARCEL_COUNT_OWNER',
+ 'PARCEL_COUNT_SELECTED',
+ 'PARCEL_COUNT_TEMP',
+ 'PARCEL_COUNT_TOTAL',
'PARCEL_DETAILS_AREA',
'PARCEL_DETAILS_DESC',
'PARCEL_DETAILS_GROUP',
+ 'PARCEL_DETAILS_ID',
'PARCEL_DETAILS_NAME',
'PARCEL_DETAILS_OWNER',
+ 'PARCEL_DETAILS_SEE_AVATARS',
'PARCEL_FLAG_ALLOW_ALL_OBJECT_ENTRY',
'PARCEL_FLAG_ALLOW_CREATE_GROUP_OBJECTS',
'PARCEL_FLAG_ALLOW_CREATE_OBJECTS',
@@ -246,6 +372,7 @@ $language_data = array (
'PARCEL_MEDIA_COMMAND_AGENT',
'PARCEL_MEDIA_COMMAND_AUTO_ALIGN',
'PARCEL_MEDIA_COMMAND_DESC',
+ 'PARCEL_MEDIA_COMMAND_LOOP',
'PARCEL_MEDIA_COMMAND_LOOP_SET',
'PARCEL_MEDIA_COMMAND_PAUSE',
'PARCEL_MEDIA_COMMAND_PLAY',
@@ -254,8 +381,10 @@ $language_data = array (
'PARCEL_MEDIA_COMMAND_TEXTURE',
'PARCEL_MEDIA_COMMAND_TIME',
'PARCEL_MEDIA_COMMAND_TYPE',
+ 'PARCEL_MEDIA_COMMAND_UNLOAD',
'PARCEL_MEDIA_COMMAND_URL',
'PASSIVE',
+ 'PATROL_PAUSE_AT_WAYPOINTS',
'PAYMENT_INFO_ON_FILE',
'PAYMENT_INFO_USED',
'PAY_DEFAULT',
@@ -264,7 +393,11 @@ $language_data = array (
'PERMISSION_CHANGE_LINKS',
'PERMISSION_CONTROL_CAMERA',
'PERMISSION_DEBIT',
+ 'PERMISSION_OVERRIDE_ANIMATIONS',
+ 'PERMISSION_RETURN_OBJECTS',
+ 'PERMISSION_SILENT_ESTATE_MANAGEMENT',
'PERMISSION_TAKE_CONTROLS',
+ 'PERMISSION_TELEPORT',
'PERMISSION_TRACK_CAMERA',
'PERMISSION_TRIGGER_ANIMATION',
'PERM_ALL',
@@ -273,6 +406,7 @@ $language_data = array (
'PERM_MOVE',
'PERM_TRANSFER',
'PI',
+ 'PING_PONG',
'PI_BY_TWO',
'PRIM_BUMP_BARK',
'PRIM_BUMP_BLOBS',
@@ -294,43 +428,108 @@ $language_data = array (
'PRIM_BUMP_WEAVE',
'PRIM_BUMP_WOOD',
'PRIM_COLOR',
+ 'PRIM_DESC',
+ 'PRIM_FLEXIBLE',
'PRIM_FULLBRIGHT',
+ 'PRIM_GLOW',
'PRIM_HOLE_CIRCLE',
'PRIM_HOLE_DEFAULT',
'PRIM_HOLE_SQUARE',
'PRIM_HOLE_TRIANGLE',
+ 'PRIM_LINK_TARGET',
'PRIM_MATERIAL',
'PRIM_MATERIAL_FLESH',
'PRIM_MATERIAL_GLASS',
- 'PRIM_MATERIAL_LIGHT',
'PRIM_MATERIAL_METAL',
'PRIM_MATERIAL_PLASTIC',
'PRIM_MATERIAL_RUBBER',
'PRIM_MATERIAL_STONE',
'PRIM_MATERIAL_WOOD',
+ 'PRIM_MEDIA_ALT_IMAGE_ENABLE',
+ 'PRIM_MEDIA_AUTO_LOOP',
+ 'PRIM_MEDIA_AUTO_PLAY',
+ 'PRIM_MEDIA_AUTO_SCALE',
+ 'PRIM_MEDIA_AUTO_ZOOM',
+ 'PRIM_MEDIA_CONTROLS',
+ 'PRIM_MEDIA_CONTROLS_MINI',
+ 'PRIM_MEDIA_CONTROLS_STANDARD',
+ 'PRIM_MEDIA_CURRENT_URL',
+ 'PRIM_MEDIA_FIRST_CLICK_INTERACT',
+ 'PRIM_MEDIA_HEIGHT_PIXELS',
+ 'PRIM_MEDIA_HOME_URL',
+ 'PRIM_MEDIA_MAX_HEIGHT_PIXELS',
+ 'PRIM_MEDIA_MAX_URL_LENGTH',
+ 'PRIM_MEDIA_MAX_WHITELIST_COUNT',
+ 'PRIM_MEDIA_MAX_WHITELIST_SIZE',
+ 'PRIM_MEDIA_MAX_WIDTH_PIXELS',
+ 'PRIM_MEDIA_PARAM_MAX',
+ 'PRIM_MEDIA_PERMS_CONTROL',
+ 'PRIM_MEDIA_PERMS_INTERACT',
+ 'PRIM_MEDIA_PERM_ANYONE',
+ 'PRIM_MEDIA_PERM_GROUP',
+ 'PRIM_MEDIA_PERM_NONE',
+ 'PRIM_MEDIA_PERM_OWNER',
+ 'PRIM_MEDIA_WHITELIST',
+ 'PRIM_MEDIA_WHITELIST_ENABLE',
+ 'PRIM_MEDIA_WIDTH_PIXELS',
+ 'PRIM_NAME',
+ 'PRIM_OMEGA',
'PRIM_PHANTOM',
'PRIM_PHYSICS',
+ 'PRIM_PHYSICS_SHAPE_CONVEX',
+ 'PRIM_PHYSICS_SHAPE_NONE',
+ 'PRIM_PHYSICS_SHAPE_PRIM',
+ 'PRIM_PHYSICS_SHAPE_TYPE',
+ 'PRIM_POINT_LIGHT',
'PRIM_POSITION',
+ 'PRIM_POS_LOCAL',
'PRIM_ROTATION',
+ 'PRIM_ROT_LOCAL',
+ 'PRIM_SCULPT_FLAG_INVERT',
+ 'PRIM_SCULPT_FLAG_MIRROR',
+ 'PRIM_SCULPT_TYPE_CYLINDER',
+ 'PRIM_SCULPT_TYPE_MASK',
+ 'PRIM_SCULPT_TYPE_PLANE',
+ 'PRIM_SCULPT_TYPE_SPHERE',
+ 'PRIM_SCULPT_TYPE_TORUS',
'PRIM_SHINY_HIGH',
'PRIM_SHINY_LOW',
'PRIM_SHINY_MEDIUM',
'PRIM_SHINY_NONE',
'PRIM_SIZE',
+ 'PRIM_SLICE',
'PRIM_TEMP_ON_REZ',
+ 'PRIM_TEXGEN',
+ 'PRIM_TEXGEN_DEFAULT',
+ 'PRIM_TEXGEN_PLANAR',
+ 'PRIM_TEXT',
'PRIM_TEXTURE',
'PRIM_TYPE',
'PRIM_TYPE_BOX',
'PRIM_TYPE_CYLINDER',
'PRIM_TYPE_PRISM',
'PRIM_TYPE_RING',
+ 'PRIM_TYPE_SCULPT',
'PRIM_TYPE_SPHERE',
'PRIM_TYPE_TORUS',
'PRIM_TYPE_TUBE',
+ 'PROFILE_NONE',
+ 'PROFILE_SCRIPT_MEMORY',
+ 'PSYS_PART_BF_DEST_COLOR',
+ 'PSYS_PART_BF_ONE',
+ 'PSYS_PART_BF_ONE_MINUS_DEST_COLOR',
+ 'PSYS_PART_BF_ONE_MINUS_SOURCE_ALPHA',
+ 'PSYS_PART_BF_ONE_MINUS_SOURCE_COLOR',
+ 'PSYS_PART_BF_SOURCE_ALPHA',
+ 'PSYS_PART_BF_SOURCE_COLOR',
+ 'PSYS_PART_BF_ZERO',
+ 'PSYS_PART_BLEND_FUNC_DEST',
+ 'PSYS_PART_BLEND_FUNC_SOURCE',
'PSYS_PART_BOUNCE_MASK',
'PSYS_PART_EMISSIVE_MASK',
'PSYS_PART_END_ALPHA',
'PSYS_PART_END_COLOR',
+ 'PSYS_PART_END_GLOW',
'PSYS_PART_END_SCALE',
'PSYS_PART_FLAGS',
'PSYS_PART_FOLLOW_SRC_MASK',
@@ -338,8 +537,10 @@ $language_data = array (
'PSYS_PART_INTERP_COLOR_MASK',
'PSYS_PART_INTERP_SCALE_MASK',
'PSYS_PART_MAX_AGE',
+ 'PSYS_PART_RIBBON_MASK',
'PSYS_PART_START_ALPHA',
'PSYS_PART_START_COLOR',
+ 'PSYS_PART_START_GLOW',
'PSYS_PART_START_SCALE',
'PSYS_PART_TARGET_LINEAR_MASK',
'PSYS_PART_TARGET_POS_MASK',
@@ -352,10 +553,8 @@ $language_data = array (
'PSYS_SRC_BURST_RATE',
'PSYS_SRC_BURST_SPEED_MAX',
'PSYS_SRC_BURST_SPEED_MIN',
- 'PSYS_SRC_INNERANGLE',
'PSYS_SRC_MAX_AGE',
'PSYS_SRC_OMEGA',
- 'PSYS_SRC_OUTERANGLE',
'PSYS_SRC_PATTERN',
'PSYS_SRC_PATTERN_ANGLE',
'PSYS_SRC_PATTERN_ANGLE_CONE',
@@ -364,13 +563,70 @@ $language_data = array (
'PSYS_SRC_PATTERN_EXPLODE',
'PSYS_SRC_TARGET_KEY',
'PSYS_SRC_TEXTURE',
+ 'PUBLIC_CHANNEL',
+ 'PURSUIT_FUZZ_FACTOR',
+ 'PURSUIT_GOAL_TOLERANCE',