mirror of
https://github.com/claudehohl/Stikked.git
synced 2025-04-25 12:31:06 -05:00
Merge branch 'master' of https://github.com/claudehohl/Stikked.git
This commit is contained in:
commit
d242cd5b9c
@ -8,3 +8,5 @@
|
||||
* Chris https://github.com/ch0wnag3 (favicon URL improvement)
|
||||
* Gabriel Wanzek https://github.com/GabrielWanzek (gabdark & gabdark3 themes)
|
||||
* Luc https://github.com/ltribolet (Bootstrap theme)
|
||||
* Stephan Bergemann https://github.com/oberling (German translation, Bootstrap multilang support + making bootstrap theme HTML5 valid)
|
||||
* linuxman https://github.com/linuxman (Spanish translation)
|
||||
|
118
CC0
Normal file
118
CC0
Normal file
@ -0,0 +1,118 @@
|
||||
CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT
|
||||
PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT
|
||||
CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES
|
||||
THIS INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO
|
||||
WARRANTIES REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION
|
||||
OR WORKS PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES
|
||||
RESULTING FROM THE USE OF THIS DOCUMENT OR THE INFORMATION OR
|
||||
WORKS PROVIDED HEREUNDER.
|
||||
|
||||
Statement of Purpose
|
||||
|
||||
The laws of most jurisdictions throughout the world automatically
|
||||
confer exclusive Copyright and Related Rights (defined below) upon the
|
||||
creator and subsequent owner(s) (each and all, an "owner") of an
|
||||
original work of authorship and/or a database (each, a "Work").
|
||||
|
||||
Certain owners wish to permanently relinquish those rights to a Work
|
||||
for the purpose of contributing to a commons of creative, cultural and
|
||||
scientific works ("Commons") that the public can reliably and without
|
||||
fear of later claims of infringement build upon, modify, incorporate
|
||||
in other works, reuse and redistribute as freely as possible in any
|
||||
form whatsoever and for any purposes, including without limitation
|
||||
commercial purposes. These owners may contribute to the Commons to
|
||||
promote the ideal of a free culture and the further production of
|
||||
creative, cultural and scientific works, or to gain reputation or
|
||||
greater distribution for their Work in part through the use and
|
||||
efforts of others.
|
||||
|
||||
For these and/or other purposes and motivations, and without any
|
||||
expectation of additional consideration or compensation, the person
|
||||
associating CC0 with a Work (the "Affirmer"), to the extent that he or
|
||||
she is an owner of Copyright and Related Rights in the Work,
|
||||
voluntarily elects to apply CC0 to the Work and publicly distribute
|
||||
the Work under its terms, with knowledge of his or her Copyright and
|
||||
Related Rights in the Work and the meaning and intended legal effect
|
||||
of CC0 on those rights.
|
||||
|
||||
1. Copyright and Related Rights. A Work made available under CC0 may
|
||||
be protected by copyright and related or neighboring rights
|
||||
("Copyright and Related Rights"). Copyright and Related Rights
|
||||
include, but are not limited to, the following:
|
||||
|
||||
the right to reproduce, adapt, distribute, perform, display,
|
||||
communicate, and translate a Work; moral rights retained by the
|
||||
original author(s) and/or performer(s); publicity and privacy
|
||||
rights pertaining to a person's image or likeness depicted in a
|
||||
Work; rights protecting against unfair competition in regards to a
|
||||
Work, subject to the limitations in paragraph 4(a), below; rights
|
||||
protecting the extraction, dissemination, use and reuse of data in
|
||||
a Work; database rights (such as those arising under Directive
|
||||
96/9/EC of the European Parliament and of the Council of 11 March
|
||||
1996 on the legal protection of databases, and under any national
|
||||
implementation thereof, including any amended or successor version
|
||||
of such directive); and other similar, equivalent or corresponding
|
||||
rights throughout the world based on applicable law or treaty, and
|
||||
any national implementations thereof.
|
||||
|
||||
2. Waiver. To the greatest extent permitted by, but not in
|
||||
contravention of, applicable law, Affirmer hereby overtly, fully,
|
||||
permanently, irrevocably and unconditionally waives, abandons, and
|
||||
surrenders all of Affirmer's Copyright and Related Rights and
|
||||
associated claims and causes of action, whether now known or unknown
|
||||
(including existing as well as future claims and causes of action), in
|
||||
the Work (i) in all territories worldwide, (ii) for the maximum
|
||||
duration provided by applicable law or treaty (including future time
|
||||
extensions), (iii) in any current or future medium and for any number
|
||||
of copies, and (iv) for any purpose whatsoever, including without
|
||||
limitation commercial, advertising or promotional purposes (the
|
||||
"Waiver"). Affirmer makes the Waiver for the benefit of each member of
|
||||
the public at large and to the detriment of Affirmer's heirs and
|
||||
successors, fully intending that such Waiver shall not be subject to
|
||||
revocation, rescission, cancellation, termination, or any other legal
|
||||
or equitable action to disrupt the quiet enjoyment of the Work by the
|
||||
public as contemplated by Affirmer's express Statement of Purpose.
|
||||
|
||||
3. Public License Fallback. Should any part of the Waiver for any
|
||||
reason be judged legally invalid or ineffective under applicable law,
|
||||
then the Waiver shall be preserved to the maximum extent permitted
|
||||
taking into account Affirmer's express Statement of Purpose. In
|
||||
addition, to the extent the Waiver is so judged Affirmer hereby grants
|
||||
to each affected person a royalty-free, non transferable, non
|
||||
sublicensable, non exclusive, irrevocable and unconditional license to
|
||||
exercise Affirmer's Copyright and Related Rights in the Work (i) in
|
||||
all territories worldwide, (ii) for the maximum duration provided by
|
||||
applicable law or treaty (including future time extensions), (iii) in
|
||||
any current or future medium and for any number of copies, and (iv)
|
||||
for any purpose whatsoever, including without limitation commercial,
|
||||
advertising or promotional purposes (the "License"). The License shall
|
||||
be deemed effective as of the date CC0 was applied by Affirmer to the
|
||||
Work. Should any part of the License for any reason be judged legally
|
||||
invalid or ineffective under applicable law, such partial invalidity
|
||||
or ineffectiveness shall not invalidate the remainder of the License,
|
||||
and in such case Affirmer hereby affirms that he or she will not (i)
|
||||
exercise any of his or her remaining Copyright and Related Rights in
|
||||
the Work or (ii) assert any associated claims and causes of action
|
||||
with respect to the Work, in either case contrary to Affirmer's
|
||||
express Statement of Purpose.
|
||||
|
||||
4. Limitations and Disclaimers.
|
||||
|
||||
No trademark or patent rights held by Affirmer are waived,
|
||||
abandoned, surrendered, licensed or otherwise affected by this
|
||||
document. Affirmer offers the Work as-is and makes no
|
||||
representations or warranties of any kind concerning the Work,
|
||||
express, implied, statutory or otherwise, including without
|
||||
limitation warranties of title, merchantability, fitness for a
|
||||
particular purpose, non infringement, or the absence of latent or
|
||||
other defects, accuracy, or the present or absence of errors,
|
||||
whether or not discoverable, all to the greatest extent
|
||||
permissible under applicable law. Affirmer disclaims
|
||||
responsibility for clearing rights of other persons that may apply
|
||||
to the Work or any use thereof, including without limitation any
|
||||
person's Copyright and Related Rights in the Work. Further,
|
||||
Affirmer disclaims responsibility for obtaining any necessary
|
||||
consents, permissions or other rights required for any use of the
|
||||
Work. Affirmer understands and acknowledges that Creative Commons
|
||||
is not a party to this document and has no duty or obligation with
|
||||
respect to this CC0 or use of the Work.
|
77
README.md
77
README.md
@ -1,30 +1,34 @@
|
||||
Stikked is an Open-Source PHP Pastebin, with the aim of keeping a simple and easy to use user interface.
|
||||
|
||||
Stikked allows you to easily share code with anyone you wish. Stikked was created for the following reasons:
|
||||
Stikked allows you to easily share code with anyone you wish. Based on the [original Stikked](http://code.google.com/p/stikked/) with lots of bugfixes and improvements.
|
||||
|
||||
* IRC and Private Chats were spammed.
|
||||
* Pastebins were ugly.
|
||||
* Pastebins were confusing.
|
||||
* Pastebins were messy and not thought through.
|
||||
* Stikked rethought code collaboration, by making it easy to paste code.
|
||||
Here are some features:
|
||||
|
||||
Based on the original Stikked (http://code.google.com/p/stikked/) with lots of bugfixes and improvements.
|
||||
|
||||
Thanks to Rebecca Chapnik for this great review: http://maketecheasier.com/run-your-own-pastebin-with-stikked/2013/01/11
|
||||
* Easy setup
|
||||
* Syntaxhighlighting for many languages, including live syntaxhighlighting with CodeMirror
|
||||
* Paste replies
|
||||
* Diff view between the original paste and the reply
|
||||
* An API
|
||||
* Trending pastes
|
||||
* Anti-Spam features
|
||||
* Themes support
|
||||
* Multilanguage support
|
||||
* And many more. View [this review](http://maketecheasier.com/run-your-own-pastebin-with-stikked/2013/01/11)
|
||||
|
||||
|
||||
Try it out
|
||||
----------
|
||||
|
||||
http://paste.scratchbook.ch/
|
||||
|
||||
|
||||
Installation
|
||||
------------
|
||||
|
||||
1. Download stikked from https://github.com/claudehohl/Stikked/tags
|
||||
2. Create a user and database for Stikked
|
||||
3. Edit configuration settings in application/config/stikked.php - everything is described there
|
||||
4. You're done!
|
||||
1. Download stikked from https://github.com/claudehohl/Stikked/tags
|
||||
2. Create a user and database for Stikked
|
||||
3. Edit configuration settings in application/config/stikked.php - everything is described there
|
||||
4. You're done!
|
||||
|
||||
* The database structure will be created automatically if it doesn't exist.
|
||||
* No special file permissions are needed by default. Optional: If you want to have the JavaScript- and CSS-files minified, the static/asset/ folder has to be writable.
|
||||
@ -32,22 +36,64 @@ Installation
|
||||
* */5 * * * * curl --silent http://yoursite.com/cron/[key]
|
||||
|
||||
|
||||
Documentation
|
||||
-------------
|
||||
|
||||
In the folder doc/, you will find:
|
||||
|
||||
* Webserver example configurations for Apache, Nginx, Lighttpd, Cherokee
|
||||
* A troubleshooting guide
|
||||
* How to create your own theme
|
||||
* How to translate Stikked into your language
|
||||
* How to contribute and improve Stikked
|
||||
|
||||
|
||||
Changelog
|
||||
---------
|
||||
|
||||
### Version 0.8.5:
|
||||
|
||||
* Themes! Configure a different theme in config/stikked.php - or create your own
|
||||
* Multilanguage support. Configure a different language in config/stikked.php
|
||||
* Diff view for paste replies! View differences between the original paste and its reply
|
||||
* see it in action: http://paste.scratchbook.ch/view/de81a093/diff
|
||||
* Possibility to set default expiration time
|
||||
* Updated GeSHi to version 1.0.8.11
|
||||
* Updated CodeMirror to version 3.11
|
||||
* Lots of minor fixes and improvements
|
||||
* Added guides for troubleshooting, development, translation and creating themes
|
||||
* Added webserver example configurations
|
||||
* Added reCaptcha integration for better antispam
|
||||
|
||||
#### Upgrade instructions
|
||||
|
||||
The following line must be present config/stikked.php
|
||||
The following lines must be present config/stikked.php
|
||||
|
||||
```php
|
||||
$config['theme'] = 'default';
|
||||
```
|
||||
|
||||
You can choose between default, bootstrap, gabdark and gabdark3.
|
||||
You can choose between default, bootstrap, gabdark, gabdark3 and a fancy geocities theme ;)
|
||||
|
||||
Create you own theme. See doc/CREATING_THEMES.md
|
||||
|
||||
```php
|
||||
$config['language'] = 'english';
|
||||
```
|
||||
|
||||
You can choose between english, german and swissgerman ;)
|
||||
|
||||
Help translating Stikked into your language! See doc/TRANSLATING_STIKKED.md
|
||||
|
||||
##### reCaptcha
|
||||
|
||||
```php
|
||||
$config['recaptcha_publickey'] = '';
|
||||
$config['recaptcha_privatekey'] = '';
|
||||
```
|
||||
|
||||
If these lines are filled, reCaptcha will be used.
|
||||
Get a key from https://www.google.com/recaptcha/admin/create
|
||||
|
||||
### Version 0.8.4:
|
||||
|
||||
@ -123,4 +169,3 @@ You can choose between default, bootstrap, gabdark and gabdark3.
|
||||
* Fully standards compliant css and xhtml.
|
||||
* Random generating names for anonymous users
|
||||
* Paste downloading
|
||||
|
||||
|
9
doc/DEVELOPMENT.md
Normal file
9
doc/DEVELOPMENT.md
Normal file
@ -0,0 +1,9 @@
|
||||
You want to improve Stikked? Always welcome! Send us your pull request and you will be honoured in AUTHORS.md.
|
||||
|
||||
Some guidelines:
|
||||
|
||||
* For PHP only files (not views/themes), please run the PHP Beautifier (http://pear.php.net/package/PHP_Beautifier) with the following parameters:
|
||||
```
|
||||
php_beautifier --indent_tabs -l "IndentStyles(style=bsd) ArrayNested() NewLines(before=function:T_CLASS:if,after=T_COMMENT) ListClassFunction()"
|
||||
```
|
||||
* Other people may modify your contribution. Don't take that personal; we all want to improve Stikked. Your input is always welcome!
|
7
doc/TRANSLATING_STIKKED.md
Normal file
7
doc/TRANSLATING_STIKKED.md
Normal file
@ -0,0 +1,7 @@
|
||||
How to translate Stikked into your own language
|
||||
-----------------------------------------------
|
||||
|
||||
1. Make a copy of the folder htdocs/application/language/swissgerman, and name it as you like.
|
||||
2. Start placing in your texts!
|
||||
|
||||
The date_lang.php and form_validation_lang.php are optional; they lay in the system folder for english fallback. stikked_lang.php is required. If you miss a translation, it will be shown as [tanslation_index] in Stikked.
|
43
doc/TROUBLESHOOTING_GUIDE.md
Normal file
43
doc/TROUBLESHOOTING_GUIDE.md
Normal file
@ -0,0 +1,43 @@
|
||||
Stikked troubleshooting guide
|
||||
-----------------------------
|
||||
|
||||
### Apache
|
||||
|
||||
#### 404 Not Found after creating a Paste
|
||||
|
||||
Rewrite rules must be enabled in httpd.conf.
|
||||
|
||||
### Nginx
|
||||
|
||||
#### 502 Bad Gateway
|
||||
|
||||
PHP FastCGI must be running. Here's my /etc/init.d/php-fcgi config:
|
||||
|
||||
```bash
|
||||
#!/bin/bash
|
||||
|
||||
FASTCGI_USER=www-data
|
||||
FASTCGI_GROUP=www-data
|
||||
ADDRESS=127.0.0.1
|
||||
PORT=9000
|
||||
PIDFILE=/var/run/php-fastcgi.pid
|
||||
CHILDREN=6
|
||||
PHP5=/usr/bin/php5-cgi
|
||||
|
||||
/usr/bin/spawn-fcgi -a $ADDRESS -p $PORT -P $PIDFILE -C $CHILDREN -u $FASTCGI_USER -g $FASTCGI_GROUP -f $PHP5
|
||||
```
|
||||
|
||||
You can adapt that to your system.
|
||||
|
||||
### Lighttpd
|
||||
|
||||
#### 503 - Service Not Available
|
||||
|
||||
PHP FastCGI must be running. See the php-fcgi section under Nginx.
|
||||
|
||||
### Cherokee
|
||||
|
||||
Still have a problem?
|
||||
---------------------
|
||||
|
||||
Report an issue at GitHub, and we will add your problem to this guide.
|
12
doc/webserver_sampleconfigs/apache-site.conf
Normal file
12
doc/webserver_sampleconfigs/apache-site.conf
Normal file
@ -0,0 +1,12 @@
|
||||
<VirtualHost *:80>
|
||||
ServerName stikked
|
||||
DocumentRoot /var/www/stikked/htdocs
|
||||
ErrorLog ${APACHE_LOG_DIR}/stikked-error_log
|
||||
CustomLog ${APACHE_LOG_DIR}/stikked-access_log common
|
||||
<Directory "/var/www/stikked/htdocs">
|
||||
Options +FollowSymLinks
|
||||
AllowOverride All
|
||||
Order allow,deny
|
||||
Allow from all
|
||||
</Directory>
|
||||
</VirtualHost>
|
325
doc/webserver_sampleconfigs/cherokee.conf
Normal file
325
doc/webserver_sampleconfigs/cherokee.conf
Normal file
@ -0,0 +1,325 @@
|
||||
config!version = 001002101
|
||||
server!bind!1!port = 80
|
||||
server!keepalive = 1
|
||||
server!keepalive_max_requests = 500
|
||||
server!panic_action = /opt/cherokee/bin/cherokee-panic
|
||||
server!pid_file = /opt/cherokee/var/run/cherokee.pid
|
||||
server!server_tokens = full
|
||||
server!timeout = 15
|
||||
vserver!1!directory_index = index.html
|
||||
vserver!1!document_root = /opt/cherokee/var/www
|
||||
vserver!1!error_writer!filename = /opt/cherokee/var/log/cherokee.error
|
||||
vserver!1!error_writer!type = file
|
||||
vserver!1!logger = combined
|
||||
vserver!1!logger!access!buffsize = 16384
|
||||
vserver!1!logger!access!filename = /opt/cherokee/var/log/cherokee.access
|
||||
vserver!1!logger!access!type = file
|
||||
vserver!1!nick = default
|
||||
vserver!1!rule!5!encoder!gzip = allow
|
||||
vserver!1!rule!5!handler = server_info
|
||||
vserver!1!rule!5!handler!type = just_about
|
||||
vserver!1!rule!5!match = directory
|
||||
vserver!1!rule!5!match!directory = /about
|
||||
vserver!1!rule!4!document_root = /opt/cherokee/lib/cgi-bin
|
||||
vserver!1!rule!4!handler = cgi
|
||||
vserver!1!rule!4!match = directory
|
||||
vserver!1!rule!4!match!directory = /cgi-bin
|
||||
vserver!1!rule!3!document_root = /opt/cherokee/share/cherokee/themes
|
||||
vserver!1!rule!3!handler = file
|
||||
vserver!1!rule!3!match = directory
|
||||
vserver!1!rule!3!match!directory = /cherokee_themes
|
||||
vserver!1!rule!2!document_root = /opt/cherokee/share/cherokee/icons
|
||||
vserver!1!rule!2!handler = file
|
||||
vserver!1!rule!2!match = directory
|
||||
vserver!1!rule!2!match!directory = /icons
|
||||
vserver!1!rule!1!handler = common
|
||||
vserver!1!rule!1!handler!iocache = 1
|
||||
vserver!1!rule!1!match = default
|
||||
vserver!2!directory_index = index.php,index.html
|
||||
vserver!2!document_root = /opt/cherokee/var/www/stikked
|
||||
vserver!2!error_writer!filename = /opt/cherokee/var/log/cherokee.error
|
||||
vserver!2!error_writer!type = file
|
||||
vserver!2!logger = combined
|
||||
vserver!2!logger!access!buffsize = 16384
|
||||
vserver!2!logger!access!filename = /opt/cherokee/var/log/cherokee.access
|
||||
vserver!2!logger!access!type = file
|
||||
vserver!2!nick = stikked
|
||||
vserver!2!rule!110!document_root = /opt/cherokee/var/www/stikked/static
|
||||
vserver!2!rule!110!handler = file
|
||||
vserver!2!rule!110!handler!iocache = 0
|
||||
vserver!2!rule!110!match = directory
|
||||
vserver!2!rule!110!match!directory = /static
|
||||
vserver!2!rule!110!match!final = 1
|
||||
vserver!2!rule!10!handler = fcgi
|
||||
vserver!2!rule!10!handler!balancer = round_robin
|
||||
vserver!2!rule!10!handler!balancer!source!10 = 1
|
||||
vserver!2!rule!10!handler!check_file = 1
|
||||
vserver!2!rule!10!handler!error_handler = 1
|
||||
vserver!2!rule!10!handler!pass_req_headers = 1
|
||||
vserver!2!rule!10!handler!script_alias = /opt/cherokee/var/www/stikked/index.php
|
||||
vserver!2!rule!10!handler!x_real_ip_enabled = 0
|
||||
vserver!2!rule!10!handler!xsendfile = 0
|
||||
vserver!2!rule!10!match = default
|
||||
source!1!env!PHP_FCGI_CHILDREN = 5
|
||||
source!1!env!PHP_FCGI_MAX_REQUESTS = 490
|
||||
source!1!env_inherited = 0
|
||||
source!1!host = 127.0.0.1:47990
|
||||
source!1!interpreter = /usr/bin/php-cgi -b 127.0.0.1:47990
|
||||
source!1!nick = PHP Interpreter
|
||||
source!1!type = interpreter
|
||||
icons!default = page_white.png
|
||||
icons!directory = folder.png
|
||||
icons!file!bomb.png = core
|
||||
icons!file!page_white_go.png = *README*
|
||||
icons!parent_directory = arrow_turn_left.png
|
||||
icons!suffix!camera.png = jpg,jpeg,jpe
|
||||
icons!suffix!cd.png = iso,ngr,cue
|
||||
icons!suffix!color_wheel.png = png,gif,xcf,bmp,pcx,tiff,tif,cdr,psd,xpm,xbm
|
||||
icons!suffix!control_play.png = bin,exe,com,msi,out
|
||||
icons!suffix!css.png = css
|
||||
icons!suffix!cup.png = java,class,jar
|
||||
icons!suffix!email.png = eml,mbox,box,email,mbx
|
||||
icons!suffix!film.png = avi,mpeg,mpe,mpg,mpeg3,dl,fli,qt,mov,movie,flv,webm
|
||||
icons!suffix!font.png = ttf
|
||||
icons!suffix!html.png = html,htm
|
||||
icons!suffix!music.png = au,snd,mid,midi,kar,mpga,mpega,mp2,mp3,sid,wav,aif,aiff,aifc,gsm,m3u,wma,wax,ra,rm,ram,pls,sd2,ogg
|
||||
icons!suffix!package.png = tar,gz,bz2,zip,rar,ace,lha,7z,dmg,cpk
|
||||
icons!suffix!page_white_acrobat.png = pdf
|
||||
icons!suffix!page_white_c.png = c,h,cpp
|
||||
icons!suffix!page_white_office.png = doc,ppt,xls
|
||||
icons!suffix!page_white_php.png = php
|
||||
icons!suffix!page_white_text.png = txt,text,rtf,sdw
|
||||
icons!suffix!printer.png = ps,eps
|
||||
icons!suffix!ruby.png = rb
|
||||
icons!suffix!script.png = sh,csh,ksh,tcl,tk,py,pl
|
||||
mime!application/bzip2!extensions = bz2
|
||||
mime!application/gzip!extensions = gz
|
||||
mime!application/hta!extensions = hta
|
||||
mime!application/java-archive!extensions = jar
|
||||
mime!application/java-serialized-object!extensions = ser
|
||||
mime!application/java-vm!extensions = class
|
||||
mime!application/json!extensions = json
|
||||
mime!application/mac-binhex40!extensions = hqx
|
||||
mime!application/msaccess!extensions = mdb
|
||||
mime!application/msword!extensions = doc,dot
|
||||
mime!application/octet-stream!extensions = bin
|
||||
mime!application/octetstream!extensions = ace
|
||||
mime!application/oda!extensions = oda
|
||||
mime!application/ogg!extensions = ogx
|
||||
mime!application/pdf!extensions = pdf
|
||||
mime!application/pgp-keys!extensions = key
|
||||
mime!application/pgp-signature!extensions = pgp
|
||||
mime!application/pics-rules!extensions = prf
|
||||
mime!application/postscript!extensions = ps,ai,eps
|
||||
mime!application/rar!extensions = rar
|
||||
mime!application/rdf+xml!extensions = rdf
|
||||
mime!application/rss+xml!extensions = rss
|
||||
mime!application/smil!extensions = smi,smil
|
||||
mime!application/vnd.mozilla.xul+xml!extensions = xul
|
||||
mime!application/vnd.ms-excel!extensions = xls,xlb,xlt
|
||||
mime!application/vnd.ms-pki.seccat!extensions = cat
|
||||
mime!application/vnd.ms-pki.stl!extensions = stl
|
||||
mime!application/vnd.ms-powerpoint!extensions = ppt,pps
|
||||
mime!application/vnd.oasis.opendocument.chart!extensions = odc
|
||||
mime!application/vnd.oasis.opendocument.database!extensions = odb
|
||||
mime!application/vnd.oasis.opendocument.formula!extensions = odf
|
||||
mime!application/vnd.oasis.opendocument.graphics!extensions = odg
|
||||
mime!application/vnd.oasis.opendocument.image!extensions = odi
|
||||
mime!application/vnd.oasis.opendocument.presentation!extensions = odp
|
||||
mime!application/vnd.oasis.opendocument.spreadsheet!extensions = ods
|
||||
mime!application/vnd.oasis.opendocument.text!extensions = odt
|
||||
mime!application/vnd.oasis.opendocument.text-master!extensions = odm
|
||||
mime!application/vnd.oasis.opendocument.text-web!extensions = oth
|
||||
mime!application/vnd.pkg5.info!extensions = p5i
|
||||
mime!application/vnd.visio!extensions = vsd
|
||||
mime!application/vnd.wap.wbxml!extensions = wbxml
|
||||
mime!application/vnd.wap.wmlc!extensions = wmlc
|
||||
mime!application/vnd.wap.wmlscriptc!extensions = wmlsc
|
||||
mime!application/x-7z-compressed!extensions = 7z
|
||||
mime!application/x-abiword!extensions = abw
|
||||
mime!application/x-apple-diskimage!extensions = dmg
|
||||
mime!application/x-bcpio!extensions = bcpio
|
||||
mime!application/x-bittorrent!extensions = torrent
|
||||
mime!application/x-cdf!extensions = cdf
|
||||
mime!application/x-cpio!extensions = cpio
|
||||
mime!application/x-csh!extensions = csh
|
||||
mime!application/x-debian-package!extensions = deb,udeb
|
||||
mime!application/x-director!extensions = dcr,dir,dxr
|
||||
mime!application/x-dvi!extensions = dvi
|
||||
mime!application/x-flac!extensions = flac
|
||||
mime!application/x-font!extensions = pfa,pfb,gsf,pcf,pcf.Z
|
||||
mime!application/x-freemind!extensions = mm
|
||||
mime!application/x-gnumeric!extensions = gnumeric
|
||||
mime!application/x-gtar!extensions = gtar,tgz,taz
|
||||
mime!application/x-gzip!extensions = gz,tgz
|
||||
mime!application/x-httpd-php!extensions = phtml,pht,php
|
||||
mime!application/x-httpd-php-source!extensions = phps
|
||||
mime!application/x-httpd-php3!extensions = php3
|
||||
mime!application/x-httpd-php3-preprocessed!extensions = php3p
|
||||
mime!application/x-httpd-php4!extensions = php4
|
||||
mime!application/x-internet-signup!extensions = ins,isp
|
||||
mime!application/x-iphone!extensions = iii
|
||||
mime!application/x-iso9660-image!extensions = iso
|
||||
mime!application/x-java-jnlp-file!extensions = jnlp
|
||||
mime!application/x-javascript!extensions = js
|
||||
mime!application/x-kchart!extensions = chrt
|
||||
mime!application/x-killustrator!extensions = kil
|
||||
mime!application/x-koan!extensions = skp,skd,skt,skm
|
||||
mime!application/x-kpresenter!extensions = kpr,kpt
|
||||
mime!application/x-kspread!extensions = ksp
|
||||
mime!application/x-kword!extensions = kwd,kwt
|
||||
mime!application/x-latex!extensions = latex
|
||||
mime!application/x-lha!extensions = lha
|
||||
mime!application/x-lzh!extensions = lzh
|
||||
mime!application/x-lzx!extensions = lzx
|
||||
mime!application/x-ms-wmd!extensions = wmd
|
||||
mime!application/x-ms-wmz!extensions = wmz
|
||||
mime!application/x-msdos-program!extensions = com,exe,bat,dll
|
||||
mime!application/x-msi!extensions = msi
|
||||
mime!application/x-netcdf!extensions = nc
|
||||
mime!application/x-ns-proxy-autoconfig!extensions = pac
|
||||
mime!application/x-nwc!extensions = nwc
|
||||
mime!application/x-object!extensions = o
|
||||
mime!application/x-oz-application!extensions = oza
|
||||
mime!application/x-pkcs7-certreqresp!extensions = p7r
|
||||
mime!application/x-pkcs7-crl!extensions = crl
|
||||
mime!application/x-python-code!extensions = pyc,pyo
|
||||
mime!application/x-quicktimeplayer!extensions = qtl
|
||||
mime!application/x-redhat-package-manager!extensions = rpm
|
||||
mime!application/x-sh!extensions = sh
|
||||
mime!application/x-shar!extensions = shar
|
||||
mime!application/x-shockwave-flash!extensions = swf,swfl
|
||||
mime!application/x-stuffit!extensions = sit,sea
|
||||
mime!application/x-sv4cpio!extensions = sv4cpio
|
||||
mime!application/x-sv4crc!extensions = sv4crc
|
||||
mime!application/x-tar!extensions = tar
|
||||
mime!application/x-tcl!extensions = tcl
|
||||
mime!application/x-tex-pk!extensions = pk
|
||||
mime!application/x-texinfo!extensions = texinfo,texi
|
||||
mime!application/x-trash!extensions = ~,bak,old,sik
|
||||
mime!application/x-troff!extensions = t,tr,roff
|
||||
mime!application/x-troff-man!extensions = man
|
||||
mime!application/x-troff-me!extensions = me
|
||||
mime!application/x-troff-ms!extensions = ms
|
||||
mime!application/x-ustar!extensions = ustar
|
||||
mime!application/x-x509-ca-cert!extensions = crt
|
||||
mime!application/x-xcf!extensions = xcf
|
||||
mime!application/x-xfig!extensions = fig
|
||||
mime!application/x-xpinstall!extensions = xpi
|
||||
mime!application/xhtml+xml!extensions = xhtml,xht
|
||||
mime!application/xml!extensions = xml,xsl
|
||||
mime!application/zip!extensions = zip
|
||||
mime!audio/basic!extensions = au,snd
|
||||
mime!audio/midi!extensions = mid,midi,kar
|
||||
mime!audio/mpeg!extensions = mpga,mpega,mp2,mp3,m4a
|
||||
mime!audio/ogg!extensions = ogg,oga
|
||||
mime!audio/prs.sid!extensions = sid
|
||||
mime!audio/x-aiff!extensions = aif,aiff,aifc
|
||||
mime!audio/x-gsm!extensions = gsm
|
||||
mime!audio/x-mpegurl!extensions = m3u
|
||||
mime!audio/x-ms-wax!extensions = wax
|
||||
mime!audio/x-ms-wma!extensions = wma
|
||||
mime!audio/x-pn-realaudio!extensions = ra,rm,ram
|
||||
mime!audio/x-realaudio!extensions = ra
|
||||
mime!audio/x-scpls!extensions = pls
|
||||
mime!audio/x-sd2!extensions = sd2
|
||||
mime!audio/x-wav!extensions = wav
|
||||
mime!chemical/x-cache!extensions = cac,cache
|
||||
mime!chemical/x-cache-csf!extensions = csf
|
||||
mime!chemical/x-cdx!extensions = cdx
|
||||
mime!chemical/x-cif!extensions = cif
|
||||
mime!chemical/x-cmdf!extensions = cmdf
|
||||
mime!chemical/x-cml!extensions = cml
|
||||
mime!chemical/x-compass!extensions = cpa
|
||||
mime!chemical/x-crossfire!extensions = bsd
|
||||
mime!chemical/x-csml!extensions = csml,csm
|
||||
mime!chemical/x-ctx!extensions = ctx
|
||||
mime!chemical/x-cxf!extensions = cxf,cef
|
||||
mime!chemical/x-isostar!extensions = istr,ist
|
||||
mime!chemical/x-jcamp-dx!extensions = jdx,dx
|
||||
mime!chemical/x-kinemage!extensions = kin
|
||||
mime!chemical/x-pdb!extensions = pdb,ent
|
||||
mime!chemical/x-swissprot!extensions = sw
|
||||
mime!chemical/x-vamas-iso14976!extensions = vms
|
||||
mime!chemical/x-vmd!extensions = vmd
|
||||
mime!chemical/x-xtel!extensions = xtel
|
||||
mime!chemical/x-xyz!extensions = xyz
|
||||
mime!image/gif!extensions = gif
|
||||
mime!image/jpeg!extensions = jpeg,jpg,jpe
|
||||
mime!image/pcx!extensions = pcx
|
||||
mime!image/png!extensions = png
|
||||
mime!image/svg+xml!extensions = svg,svgz
|
||||
mime!image/tiff!extensions = tiff,tif
|
||||
mime!image/vnd.djvu!extensions = djvu,djv
|
||||
mime!image/vnd.wap.wbmp!extensions = wbmp
|
||||
mime!image/x-icon!extensions = ico
|
||||
mime!image/x-ms-bmp!extensions = bmp
|
||||
mime!image/x-photoshop!extensions = psd
|
||||
mime!image/x-portable-anymap!extensions = pnm
|
||||
mime!image/x-portable-bitmap!extensions = pbm
|
||||
mime!image/x-portable-graymap!extensions = pgm
|
||||
mime!image/x-portable-pixmap!extensions = ppm
|
||||
mime!image/x-xbitmap!extensions = xbm
|
||||
mime!image/x-xpixmap!extensions = xpm
|
||||
mime!image/x-xwindowdump!extensions = xwd
|
||||
mime!model/iges!extensions = igs,iges
|
||||
mime!model/mesh!extensions = msh,mesh,silo
|
||||
mime!model/vrml!extensions = wrl,vrml
|
||||
mime!text/calendar!extensions = ics,icz
|
||||
mime!text/comma-separated-values!extensions = csv
|
||||
mime!text/css!extensions = css
|
||||
mime!text/h323!extensions = 323
|
||||
mime!text/html!extensions = html,htm,shtml
|
||||
mime!text/iuls!extensions = uls
|
||||
mime!text/mathml!extensions = mml
|
||||
mime!text/plain!extensions = asc,txt,text,diff,pot
|
||||
mime!text/richtext!extensions = rtx
|
||||
mime!text/rtf!extensions = rtf
|
||||
mime!text/scriptlet!extensions = sct,wsc
|
||||
mime!text/tab-separated-values!extensions = tsv
|
||||
mime!text/vnd.sun.j2me.app-descriptor!extensions = jad
|
||||
mime!text/vnd.wap.wml!extensions = wml
|
||||
mime!text/vnd.wap.wmlscript!extensions = wmls
|
||||
mime!text/x-boo!extensions = boo
|
||||
mime!text/x-c++hdr!extensions = h++,hpp,hxx,hh
|
||||
mime!text/x-c++src!extensions = c++,cpp,cxx,cc
|
||||
mime!text/x-chdr!extensions = h
|
||||
mime!text/x-csh!extensions = csh
|
||||
mime!text/x-csrc!extensions = c
|
||||
mime!text/x-dsrc!extensions = d
|
||||
mime!text/x-haskell!extensions = hs
|
||||
mime!text/x-java!extensions = java
|
||||
mime!text/x-literate-haskell!extensions = lhs
|
||||
mime!text/x-moc!extensions = moc
|
||||
mime!text/x-pascal!extensions = p,pas
|
||||
mime!text/x-pcs-gcd!extensions = gcd
|
||||
mime!text/x-perl!extensions = pl,pm
|
||||
mime!text/x-python!extensions = py
|
||||
mime!text/x-setext!extensions = etx
|
||||
mime!text/x-sh!extensions = sh
|
||||
mime!text/x-tcl!extensions = tcl,tk
|
||||
mime!text/x-tex!extensions = tex,ltx,sty,cls
|
||||
mime!text/x-vcalendar!extensions = vcs
|
||||
mime!text/x-vcard!extensions = vcf
|
||||
mime!video/dl!extensions = dl
|
||||
mime!video/dv!extensions = dif,dv
|
||||
mime!video/fli!extensions = fli
|
||||
mime!video/gl!extensions = gl
|
||||
mime!video/mp4!extensions = mp4
|
||||
mime!video/mpeg!extensions = mpeg,mpg,mpe
|
||||
mime!video/ogg!extensions = ogv
|
||||
mime!video/quicktime!extensions = qt,mov
|
||||
mime!video/vnd.mpegurl!extensions = mxu
|
||||
mime!video/webm!extensions = webm
|
||||
mime!video/x-flv!extensions = flv
|
||||
mime!video/x-la-asf!extensions = lsf,lsx
|
||||
mime!video/x-mng!extensions = mng
|
||||
mime!video/x-ms-asf!extensions = asf,asx
|
||||
mime!video/x-ms-wm!extensions = wm
|
||||
mime!video/x-ms-wmv!extensions = wmv
|
||||
mime!video/x-ms-wmx!extensions = wmx
|
||||
mime!video/x-ms-wvx!extensions = wvx
|
||||
mime!video/x-msvideo!extensions = avi
|
||||
mime!video/x-sgi-movie!extensions = movie
|
||||
mime!x-conference/x-cooltalk!extensions = ice
|
||||
mime!x-world/x-vrml!extensions = vrm,vrml,wrl
|
23
doc/webserver_sampleconfigs/lighttpd-site.conf
Normal file
23
doc/webserver_sampleconfigs/lighttpd-site.conf
Normal file
@ -0,0 +1,23 @@
|
||||
server.modules += ( "mod_fastcgi" )
|
||||
server.modules += ( "mod_rewrite" )
|
||||
|
||||
fastcgi.server += ( ".php" =>
|
||||
((
|
||||
"host" => "127.0.0.1",
|
||||
"port" => "9000",
|
||||
"broken-scriptfilename" => "enable"
|
||||
))
|
||||
)
|
||||
|
||||
$HTTP["host"] == "stikked" {
|
||||
url.rewrite-once = (
|
||||
"^/static/(.*)$" => "/static/$1",
|
||||
"^/favicon\.ico$" => "/favicon.ico",
|
||||
"^/robots\.txt$" => "/robots.txt",
|
||||
"^/(.*)$" => "/index.php$2",
|
||||
)
|
||||
|
||||
server.document-root = "/var/www/stikked/htdocs"
|
||||
|
||||
#accesslog.filename = "/var/log/lighttpd/stikked.access.log"
|
||||
}
|
23
doc/webserver_sampleconfigs/nginx-site.conf
Normal file
23
doc/webserver_sampleconfigs/nginx-site.conf
Normal file
@ -0,0 +1,23 @@
|
||||
server {
|
||||
listen 80;
|
||||
server_name stikked;
|
||||
root /var/www/stikked/htdocs;
|
||||
index index.php;
|
||||
|
||||
# access_log /var/log/nginx/localhost.access_log combined;
|
||||
# error_log /var/log/nginx/localhost.error_log info;
|
||||
|
||||
if ($request_uri !~* ^/(static|favicon\.ico|robots\.txt))
|
||||
{
|
||||
rewrite ^/(.*)$ /index.php?/$1 last;
|
||||
break;
|
||||
}
|
||||
|
||||
location ~* \.php$ {
|
||||
fastcgi_pass 127.0.0.1:9000;
|
||||
fastcgi_index index.php;
|
||||
fastcgi_split_path_info ^(.+\.php)(.*)$;
|
||||
include fastcgi_params;
|
||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||
}
|
||||
}
|
@ -64,7 +64,7 @@ $autoload['libraries'] = array('database', 'db_session', 'carabiner');
|
||||
| $autoload['helper'] = array('url', 'file');
|
||||
*/
|
||||
|
||||
$autoload['helper'] = array('url', 'date');
|
||||
$autoload['helper'] = array('url', 'date', 'language');
|
||||
|
||||
|
||||
/*
|
||||
@ -96,7 +96,7 @@ $autoload['config'] = array('stikked');
|
||||
|
|
||||
*/
|
||||
|
||||
$autoload['language'] = array();
|
||||
$autoload['language'] = array('stikked');
|
||||
|
||||
|
||||
/*
|
||||
|
@ -135,10 +135,10 @@ $config['codemirror_languages'] = array(
|
||||
) ,
|
||||
) ,
|
||||
'sql' => array(
|
||||
'mode' => 'mysql',
|
||||
'mode' => 'sql',
|
||||
'js' => array(
|
||||
array(
|
||||
'codemirror/mode/mysql/mysql.js'
|
||||
'codemirror/mode/sql/sql.js'
|
||||
) ,
|
||||
) ,
|
||||
) ,
|
||||
@ -157,6 +157,22 @@ $config['codemirror_languages'] = array(
|
||||
'6502tasm' => 'MOS 6502 TASM/64TASS',
|
||||
'68000devpac' => 'Motorola 68000 Devpac Assembler',
|
||||
'abap' => 'ABAP',
|
||||
'apl' => array(
|
||||
'mode' => 'apl',
|
||||
'js' => array(
|
||||
array(
|
||||
'codemirror/mode/apl/apl.js'
|
||||
) ,
|
||||
) ,
|
||||
) ,
|
||||
'asterisk' => array(
|
||||
'mode' => 'asterisk',
|
||||
'js' => array(
|
||||
array(
|
||||
'codemirror/mode/asterisk/asterisk.js'
|
||||
) ,
|
||||
) ,
|
||||
) ,
|
||||
'actionscript' => 'Actionscript',
|
||||
'actionscript3' => 'ActionScript3',
|
||||
'ada' => 'Ada',
|
||||
@ -221,7 +237,14 @@ $config['codemirror_languages'] = array(
|
||||
) ,
|
||||
) ,
|
||||
'cuesheet' => 'Cuesheet',
|
||||
'd' => 'D',
|
||||
'd' => array(
|
||||
'mode' => 'd',
|
||||
'js' => array(
|
||||
array(
|
||||
'codemirror/mode/d/d.js'
|
||||
) ,
|
||||
) ,
|
||||
) ,
|
||||
'dcs' => 'DCS',
|
||||
'delphi' => 'Delphi (Object Pascal)',
|
||||
'div' => 'DIV',
|
||||
@ -239,6 +262,14 @@ $config['codemirror_languages'] = array(
|
||||
'eiffel' => 'Eiffel',
|
||||
'email' => 'Email (mbox/eml/RFC format)',
|
||||
'epc' => 'Enerscript',
|
||||
'erlang' => array(
|
||||
'mode' => 'erlang',
|
||||
'js' => array(
|
||||
array(
|
||||
'codemirror/mode/erlang/erlang.js'
|
||||
) ,
|
||||
) ,
|
||||
) ,
|
||||
'euphoria' => 'Euphoria',
|
||||
'f1' => 'Formula One',
|
||||
'falcon' => 'Falcon',
|
||||
@ -254,6 +285,14 @@ $config['codemirror_languages'] = array(
|
||||
'glsl' => 'glSlang',
|
||||
'gml' => 'GML',
|
||||
'gnuplot' => 'Gnuplot script',
|
||||
'go' => array(
|
||||
'mode' => 'go',
|
||||
'js' => array(
|
||||
array(
|
||||
'codemirror/mode/go/go.js'
|
||||
) ,
|
||||
) ,
|
||||
) ,
|
||||
'groovy' => array(
|
||||
'mode' => 'text/x-groovy',
|
||||
'js' => array(
|
||||
@ -271,6 +310,14 @@ $config['codemirror_languages'] = array(
|
||||
) ,
|
||||
) ,
|
||||
) ,
|
||||
'haxe' => array(
|
||||
'mode' => 'text/x-haxe',
|
||||
'js' => array(
|
||||
array(
|
||||
'codemirror/mode/haxe/haxe.js'
|
||||
) ,
|
||||
) ,
|
||||
) ,
|
||||
'hicest' => 'HicEst',
|
||||
'hq9plus' => 'HQ9+',
|
||||
'html4strict' => array(
|
||||
@ -340,17 +387,24 @@ $config['codemirror_languages'] = array(
|
||||
'make' => 'Make',
|
||||
'mapbasic' => 'MapBasic',
|
||||
'matlab' => 'Matlab M-file',
|
||||
'mirc' => 'mIRC Scripting',
|
||||
'mirc' => array(
|
||||
'mode' => 'mirc',
|
||||
'js' => array(
|
||||
array(
|
||||
'codemirror/mode/mirc/mirc.js'
|
||||
) ,
|
||||
) ,
|
||||
) ,
|
||||
'mmix' => 'MMIX Assembler',
|
||||
'modula2' => 'Modula-2',
|
||||
'modula3' => 'Modula-3',
|
||||
'mpasm' => 'Microchip Assembler',
|
||||
'mxml' => 'MXML',
|
||||
'mysql' => array(
|
||||
'mode' => 'mysql',
|
||||
'mode' => 'sql',
|
||||
'js' => array(
|
||||
array(
|
||||
'codemirror/mode/mysql/mysql.js'
|
||||
'codemirror/mode/sql/sql.js'
|
||||
) ,
|
||||
) ,
|
||||
) ,
|
||||
@ -360,6 +414,14 @@ $config['codemirror_languages'] = array(
|
||||
'objc' => 'Objective-C',
|
||||
'objeck' => 'Objeck Programming Language',
|
||||
'ocaml' => 'OCaml (Objective Caml)',
|
||||
'ocaml' => array(
|
||||
'mode' => 'text/x-ocaml',
|
||||
'js' => array(
|
||||
array(
|
||||
'codemirror/mode/ocaml/ocaml.js'
|
||||
) ,
|
||||
) ,
|
||||
) ,
|
||||
'oobas' => 'OpenOffice.org Basic',
|
||||
'oracle11' => 'Oracle 11i',
|
||||
'oracle8' => 'Oracle 8',
|
||||
@ -397,10 +459,10 @@ $config['codemirror_languages'] = array(
|
||||
'pixelbender' => 'Pixel Bender 1.0',
|
||||
'pli' => 'PL/I',
|
||||
'plsql' => array(
|
||||
'mode' => 'plsql',
|
||||
'mode' => 'sql',
|
||||
'js' => array(
|
||||
array(
|
||||
'codemirror/mode/plsql/plsql.js'
|
||||
'codemirror/mode/sql/sql.js'
|
||||
) ,
|
||||
) ,
|
||||
) ,
|
||||
@ -421,7 +483,14 @@ $config['codemirror_languages'] = array(
|
||||
) ,
|
||||
'providex' => 'ProvideX',
|
||||
'purebasic' => 'PureBasic',
|
||||
'q' => 'q/kdb+',
|
||||
'q' => array(
|
||||
'mode' => 'text/x-q',
|
||||
'js' => array(
|
||||
array(
|
||||
'codemirror/mode/q/q.js'
|
||||
) ,
|
||||
) ,
|
||||
) ,
|
||||
'qbasic' => 'QBasic/QuickBASIC',
|
||||
'rails' => 'Ruby (with Ruby on Rails Framework)',
|
||||
'rebol' => 'Rebol',
|
||||
@ -430,7 +499,14 @@ $config['codemirror_languages'] = array(
|
||||
'rpmspec' => 'RPM Spec',
|
||||
'rsplus' => 'R',
|
||||
'sas' => 'SAS',
|
||||
'scala' => 'Scala',
|
||||
'scala' => array(
|
||||
'mode' => 'scala',
|
||||
'js' => array(
|
||||
array(
|
||||
'codemirror/mode/clike/clike.js'
|
||||
) ,
|
||||
) ,
|
||||
) ,
|
||||
'scheme' => array(
|
||||
'mode' => 'text/x-scheme',
|
||||
'js' => array(
|
||||
@ -444,7 +520,14 @@ $config['codemirror_languages'] = array(
|
||||
'smalltalk' => 'Smalltalk',
|
||||
'smarty' => 'Smarty template',
|
||||
'systemverilog' => 'SystemVerilog IEEE 1800-2009(draft8)',
|
||||
'tcl' => 'TCL/iTCL',
|
||||
'tcl' => array(
|
||||
'mode' => 'text/x-tcl',
|
||||
'js' => array(
|
||||
array(
|
||||
'codemirror/mode/tcl/tcl.js'
|
||||
) ,
|
||||
) ,
|
||||
) ,
|
||||
'teraterm' => 'Tera Term Macro',
|
||||
'thinbasic' => 'thinBasic',
|
||||
'tsql' => 'T-SQL',
|
||||
@ -453,18 +536,10 @@ $config['codemirror_languages'] = array(
|
||||
'uscript' => 'UnrealScript',
|
||||
'vala' => 'Vala',
|
||||
'vb' => array(
|
||||
'mode' => 'text/vbscript',
|
||||
'mode' => 'text/x-vb',
|
||||
'js' => array(
|
||||
array(
|
||||
'codemirror/mode/vbscript/vbscript.js'
|
||||
) ,
|
||||
) ,
|
||||
) ,
|
||||
'vbnet' => array(
|
||||
'mode' => 'text/vbscript',
|
||||
'js' => array(
|
||||
array(
|
||||
'codemirror/mode/vbscript/vbscript.js'
|
||||
'codemirror/mode/vb/vb.js'
|
||||
) ,
|
||||
) ,
|
||||
) ,
|
||||
@ -494,6 +569,13 @@ $config['codemirror_languages'] = array(
|
||||
) ,
|
||||
) ,
|
||||
) ,
|
||||
'z80' => 'ZiLOG Z80 Assembler',
|
||||
'z80' => array(
|
||||
'mode' => 'text/x-z80',
|
||||
'js' => array(
|
||||
array(
|
||||
'codemirror/mode/z80/z80.js'
|
||||
) ,
|
||||
) ,
|
||||
) ,
|
||||
'zxbasic' => 'ZXBasic',
|
||||
);
|
||||
|
@ -16,6 +16,16 @@
|
||||
*/
|
||||
$config['base_url'] = '';
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Stikked version
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| So that we can track your version.
|
||||
|
|
||||
*/
|
||||
$config['stikked_version'] = '0.8.5';
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Index File
|
||||
@ -69,7 +79,7 @@ $config['url_suffix'] = '';
|
||||
| than english.
|
||||
|
|
||||
*/
|
||||
$config['language'] = 'english';
|
||||
#$config['language'] = 'english'; #this is configured in config/stikked.php
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
|
@ -39,7 +39,9 @@ $config['geshi_languages'] = array(
|
||||
'apache' => 'Apache',
|
||||
'applescript' => 'AppleScript',
|
||||
'apt_sources' => 'Apt sources.list',
|
||||
'arm' => 'ARM Assembler',
|
||||
'asm' => 'x86 Assembler',
|
||||
'asymptote' => 'asymptote',
|
||||
'asp' => 'ASP',
|
||||
'autoconf' => 'autoconf',
|
||||
'autohotkey' => 'Autohotkey',
|
||||
@ -69,6 +71,8 @@ $config['geshi_languages'] = array(
|
||||
'cuesheet' => 'Cuesheet',
|
||||
'd' => 'D',
|
||||
'dcs' => 'DCS',
|
||||
'dcl' => 'DCL',
|
||||
'dcpu16' => 'DCPU/16 Assembly',
|
||||
'delphi' => 'Delphi (Object Pascal)',
|
||||
'div' => 'DIV',
|
||||
'dos' => 'DOS',
|
||||
@ -84,6 +88,7 @@ $config['geshi_languages'] = array(
|
||||
'fo' => 'fo',
|
||||
'fortran' => 'Fortran',
|
||||
'freebasic' => 'FreeBasic',
|
||||
'freeswitch' => 'FreeSWITCH',
|
||||
'fsharp' => 'F#',
|
||||
'gambas' => 'GAMBAS',
|
||||
'gdb' => 'GDB',
|
||||
@ -96,6 +101,7 @@ $config['geshi_languages'] = array(
|
||||
'groovy' => 'Groovy',
|
||||
'gwbasic' => 'GwBasic',
|
||||
'haskell' => 'Haskell',
|
||||
'haxe' => 'Haxe',
|
||||
'hicest' => 'HicEst',
|
||||
'hq9plus' => 'HQ9+',
|
||||
'html4strict' => 'HTML 4.01 strict',
|
||||
@ -114,6 +120,7 @@ $config['geshi_languages'] = array(
|
||||
'klonec' => 'KLone with C',
|
||||
'klonecpp' => 'KLone with C++',
|
||||
'lb' => 'Liberty BASIC',
|
||||
'ldif' => 'LDIF',
|
||||
'lisp' => 'Generic Lisp',
|
||||
'llvm' => 'LLVM',
|
||||
'locobasic' => 'Locomotive Basic (Amstrad CPC series)',
|
||||
@ -135,17 +142,23 @@ $config['geshi_languages'] = array(
|
||||
'mpasm' => 'Microchip Assembler',
|
||||
'mxml' => 'MXML',
|
||||
'mysql' => 'MySQL',
|
||||
'nagios' => 'Nagios',
|
||||
'netrexx' => 'NetRexx',
|
||||
'newlisp' => 'newLISP',
|
||||
'nsis' => 'Nullsoft Scriptable Install System',
|
||||
'oberon2' => 'Oberon-2',
|
||||
'objc' => 'Objective-C',
|
||||
'objeck' => 'Objeck Programming Language',
|
||||
'ocaml' => 'OCaml (Objective Caml)',
|
||||
'octave' => 'GNU Octave M-file',
|
||||
'oobas' => 'OpenOffice.org Basic',
|
||||
'oorexx' => 'ooRexx',
|
||||
'oracle11' => 'Oracle 11i',
|
||||
'oracle8' => 'Oracle 8',
|
||||
'oxygene' => 'Delphi Prism (Oxygene)',
|
||||
'oz' => 'Oz',
|
||||
'parasail' => 'ParaSail',
|
||||
'parigp' => 'PARI/GP',
|
||||
'pascal' => 'Pascal',
|
||||
'pcre' => 'PCRE',
|
||||
'per' => 'Per (forms)',
|
||||
@ -167,11 +180,13 @@ $config['geshi_languages'] = array(
|
||||
'properties' => 'Property',
|
||||
'providex' => 'ProvideX',
|
||||
'purebasic' => 'PureBasic',
|
||||
'pys60' => 'Python for S60',
|
||||
'q' => 'q/kdb+',
|
||||
'qbasic' => 'QBasic/QuickBASIC',
|
||||
'rails' => 'Ruby (with Ruby on Rails Framework)',
|
||||
'rebol' => 'Rebol',
|
||||
'reg' => 'Microsoft Registry Editor',
|
||||
'rexx' => 'Rexx',
|
||||
'robots' => 'robots.txt',
|
||||
'rpmspec' => 'RPM Spec',
|
||||
'rsplus' => 'R',
|
||||
@ -182,6 +197,9 @@ $config['geshi_languages'] = array(
|
||||
'sdlbasic' => 'sdlBasic',
|
||||
'smalltalk' => 'Smalltalk',
|
||||
'smarty' => 'Smarty template',
|
||||
'spark' => 'SPARK',
|
||||
'sparql' => 'SPARQL',
|
||||
'stonescript' => 'StoneScript',
|
||||
'systemverilog' => 'SystemVerilog IEEE 1800-2009(draft8)',
|
||||
'tcl' => 'TCL/iTCL',
|
||||
'teraterm' => 'Tera Term Macro',
|
||||
@ -190,9 +208,12 @@ $config['geshi_languages'] = array(
|
||||
'typoscript' => 'TypoScript',
|
||||
'unicon' => 'Unicon',
|
||||
'uscript' => 'UnrealScript',
|
||||
'upc' => 'UPC',
|
||||
'urbi' => 'Urbi',
|
||||
'vala' => 'Vala',
|
||||
'vb' => 'Visual Basic',
|
||||
'vbnet' => 'VB.NET',
|
||||
'vedit' => 'Vedit macro language',
|
||||
'verilog' => 'Verilog',
|
||||
'vhdl' => 'VHDL',
|
||||
'vim' => 'Vim scripting',
|
||||
|
@ -55,6 +55,8 @@ $route['lists/:num'] = 'main/lists/$1';
|
||||
$route['trends'] = 'main/trends';
|
||||
$route['trends/:any'] = 'main/trends/$1';
|
||||
$route['spamadmin/:num'] = 'spamadmin/index';
|
||||
$route['spamadmin/blacklist'] = 'spamadmin/blacklist';
|
||||
$route['spamadmin/blacklist/(:num)'] = 'spamadmin/blacklist';
|
||||
$route['spamadmin/blacklist/unblock/(:any)'] = 'spamadmin/unblock_ip';
|
||||
$route['spamadmin/:any'] = 'spamadmin/spam_detail';
|
||||
$route['about'] = 'main/about';
|
||||
@ -66,6 +68,7 @@ $route['404_override'] = 'main/error_404';
|
||||
|
||||
$route['themes/:any/css/:any'] = 'theme_assets/css';
|
||||
$route['themes/:any/images/:any'] = 'theme_assets/images';
|
||||
$route['themes/:any/img/:any'] = 'theme_assets/images';
|
||||
$route['themes/:any/js/:any'] = 'theme_assets/js';
|
||||
|
||||
/* End of file routes.php */
|
||||
|
@ -25,10 +25,21 @@ $config['db_password'] = 'stikked';
|
||||
*
|
||||
* Which theme to use
|
||||
* Folder name in htdocs/themes/
|
||||
* Currently: default, bootstrap, gabdark, gabdark3, geocities
|
||||
*
|
||||
*/
|
||||
$config['theme'] = 'default';
|
||||
|
||||
/**
|
||||
* Language
|
||||
*
|
||||
* Which language to use
|
||||
* Translate Stikked to your own language, see htdocs/application/language files
|
||||
* Currently: english, german, swissgerman, spanish
|
||||
*
|
||||
*/
|
||||
$config['language'] = 'english';
|
||||
|
||||
/**
|
||||
* Combine JS & CSS files (recommended)
|
||||
*
|
||||
@ -77,11 +88,16 @@ $config['per_page'] = 15;
|
||||
*
|
||||
* private_only: No recent pastes will be displayed.
|
||||
* enable_captcha: Users must enter a captcha to post.
|
||||
* recaptcha_publickey & recaptcha_privatekey: If filled, reCaptcha will be used (get a key from https://www.google.com/recaptcha/admin/create)
|
||||
* blocked_words: Comma separated list, e.g. '.es.tl, mycraft.com, yourbadword'
|
||||
* disable_api: Don't allow pasting via API (because we can't use a captcha there...)
|
||||
*
|
||||
**/
|
||||
$config['private_only'] = false;
|
||||
$config['enable_captcha'] = false;
|
||||
$config['recaptcha_publickey'] = '';
|
||||
$config['recaptcha_privatekey'] = '';
|
||||
$config['disable_api'] = false;
|
||||
$config['blocked_words'] = '';
|
||||
|
||||
//spamadmin: accessible via /spamadmin (only active when user + pass is set)
|
||||
|
@ -18,6 +18,11 @@ class Api extends Main
|
||||
function __construct()
|
||||
{
|
||||
parent::__construct();
|
||||
|
||||
if (config_item('disable_api'))
|
||||
{
|
||||
die("The API has been disabled\n");
|
||||
}
|
||||
}
|
||||
|
||||
function index()
|
||||
@ -32,6 +37,8 @@ class Api extends Main
|
||||
function create()
|
||||
{
|
||||
$this->load->model('pastes');
|
||||
$this->load->library('form_validation'); //needed by parent class
|
||||
|
||||
|
||||
if (!$this->input->post('text'))
|
||||
{
|
||||
@ -51,6 +58,20 @@ class Api extends Main
|
||||
{
|
||||
$_POST['private'] = 1;
|
||||
}
|
||||
|
||||
//validations
|
||||
|
||||
if (!$this->_valid_ip())
|
||||
{
|
||||
die("You are not allowed to paste\n");
|
||||
}
|
||||
|
||||
if (!$this->_blockwords_check())
|
||||
{
|
||||
die("Your paste contains blocked words\n");
|
||||
}
|
||||
|
||||
//create paste
|
||||
$paste_url = $this->pastes->createPaste();
|
||||
$data['msg'] = base_url() . $paste_url;
|
||||
$this->load->view('view/api', $data);
|
||||
|
@ -17,6 +17,7 @@
|
||||
* - captcha()
|
||||
* - _valid_lang()
|
||||
* - _valid_captcha()
|
||||
* - _valid_recaptcha()
|
||||
* - _valid_ip()
|
||||
* - _blockwords_check()
|
||||
* - _autofill_check()
|
||||
@ -35,10 +36,20 @@ class Main extends CI_Controller
|
||||
parent::__construct();
|
||||
$this->load->model('languages');
|
||||
|
||||
if ($this->config->item('require_auth'))
|
||||
if (config_item('require_auth'))
|
||||
{
|
||||
$this->load->library('auth_ldap');
|
||||
}
|
||||
|
||||
//recaptcha
|
||||
$this->recaptcha_publickey = config_item('recaptcha_publickey');
|
||||
$this->recaptcha_privatekey = config_item('recaptcha_privatekey');
|
||||
|
||||
if ($this->recaptcha_publickey != '' && $this->recaptcha_privatekey != '')
|
||||
{
|
||||
$this->load->helper('recaptcha');
|
||||
$this->use_recaptcha = true;
|
||||
}
|
||||
|
||||
if (!$this->db->table_exists('ci_sessions'))
|
||||
{
|
||||
@ -249,7 +260,7 @@ class Main extends CI_Controller
|
||||
|
||||
//codemirror languages
|
||||
$this->load->config('codemirror_languages');
|
||||
$codemirror_languages = $this->config->item('codemirror_languages');
|
||||
$codemirror_languages = config_item('codemirror_languages');
|
||||
$data['codemirror_languages'] = $codemirror_languages;
|
||||
|
||||
//codemirror modes
|
||||
@ -263,13 +274,17 @@ class Main extends CI_Controller
|
||||
}
|
||||
}
|
||||
$data['codemirror_modes'] = $cmm;
|
||||
|
||||
//recaptcha
|
||||
$data['use_recaptcha'] = $this->use_recaptcha;
|
||||
$data['recaptcha_publickey'] = $this->recaptcha_publickey;
|
||||
|
||||
if (!$this->input->post('submit'))
|
||||
{
|
||||
|
||||
if (!$this->db_session->userdata('expire'))
|
||||
{
|
||||
$default_expiration = $this->config->item('default_expiration');
|
||||
$default_expiration = config_item('default_expiration');
|
||||
$this->db_session->set_userdata('expire', $default_expiration);
|
||||
}
|
||||
|
||||
@ -287,7 +302,7 @@ class Main extends CI_Controller
|
||||
|
||||
if (!$lang)
|
||||
{
|
||||
$lang = $this->config->item('default_language');
|
||||
$lang = config_item('default_language');
|
||||
}
|
||||
$data['lang_set'] = $lang;
|
||||
}
|
||||
@ -356,7 +371,7 @@ class Main extends CI_Controller
|
||||
|
||||
//form validation
|
||||
$this->form_validation->set_rules($rules);
|
||||
$this->form_validation->set_message('min_length', 'The %s field can not be empty');
|
||||
$this->form_validation->set_message('min_length', lang('empty'));
|
||||
$this->form_validation->set_error_delimiters('<div class="message error"><div class="container">', '</div></div>');
|
||||
|
||||
if ($this->form_validation->run() == FALSE)
|
||||
@ -367,7 +382,7 @@ class Main extends CI_Controller
|
||||
else
|
||||
{
|
||||
|
||||
if ($this->config->item('private_only'))
|
||||
if (config_item('private_only'))
|
||||
{
|
||||
$_POST['private'] = 1;
|
||||
}
|
||||
@ -416,7 +431,7 @@ class Main extends CI_Controller
|
||||
$this->load->helper('text');
|
||||
$paste = $this->pastes->getPaste(3);
|
||||
$data = $this->pastes->getReplies(3);
|
||||
$data['page_title'] = $paste['title'] . ' - ' . $this->config->item('site_name');
|
||||
$data['page_title'] = $paste['title'] . ' - ' . config_item('site_name');
|
||||
$data['feed_url'] = site_url('view/rss/' . $this->uri->segment(3));
|
||||
$this->load->view('view/rss', $data);
|
||||
}
|
||||
@ -434,7 +449,7 @@ class Main extends CI_Controller
|
||||
|
||||
if ($check)
|
||||
{
|
||||
$data = $this->pastes->getPaste(3);
|
||||
$data = $this->pastes->getPaste(3, true, $this->uri->segment(4) == 'diff');
|
||||
$this->load->view('view/embed', $data);
|
||||
}
|
||||
else
|
||||
@ -464,7 +479,7 @@ class Main extends CI_Controller
|
||||
{
|
||||
$this->_valid_authentication();
|
||||
|
||||
if ($this->config->item('private_only'))
|
||||
if (config_item('private_only'))
|
||||
{
|
||||
show_404();
|
||||
}
|
||||
@ -476,7 +491,7 @@ class Main extends CI_Controller
|
||||
if ($this->uri->segment(2) == 'rss')
|
||||
{
|
||||
$this->load->helper('text');
|
||||
$data['page_title'] = $this->config->item('site_name');
|
||||
$data['page_title'] = config_item('site_name');
|
||||
$data['feed_url'] = site_url('lists/rss');
|
||||
$data['replies'] = $data['pastes'];
|
||||
unset($data['pastes']);
|
||||
@ -493,7 +508,7 @@ class Main extends CI_Controller
|
||||
{
|
||||
$this->_valid_authentication();
|
||||
|
||||
if ($this->config->item('private_only'))
|
||||
if (config_item('private_only'))
|
||||
{
|
||||
show_404();
|
||||
}
|
||||
@ -519,7 +534,7 @@ class Main extends CI_Controller
|
||||
{
|
||||
redirect('view/raw/' . $this->uri->segment(2));
|
||||
}
|
||||
$data = $this->pastes->getPaste(2, true);
|
||||
$data = $this->pastes->getPaste(2, true, $this->uri->segment(3) == 'diff');
|
||||
$data['reply_form'] = $this->_form_prep($data['lang_code'], 'Re: ' . $data['title'], $data['raw'], $data['pid']);
|
||||
$this->load->view('view/view', $data);
|
||||
}
|
||||
@ -534,7 +549,7 @@ class Main extends CI_Controller
|
||||
$this->load->model('pastes');
|
||||
$key = $this->uri->segment(2);
|
||||
|
||||
if ($key != $this->config->item('cron_key'))
|
||||
if ($key != config_item('cron_key'))
|
||||
{
|
||||
show_404();
|
||||
}
|
||||
@ -577,17 +592,25 @@ class Main extends CI_Controller
|
||||
function _valid_lang($lang)
|
||||
{
|
||||
$this->load->model('languages');
|
||||
$this->form_validation->set_message('_valid_lang', 'Please select your language');
|
||||
$this->form_validation->set_message('_valid_lang', lang('valid_lang'));
|
||||
return $this->languages->valid_language($lang);
|
||||
}
|
||||
|
||||
function _valid_captcha($text)
|
||||
{
|
||||
|
||||
if ($this->config->item('enable_captcha'))
|
||||
if (config_item('enable_captcha'))
|
||||
{
|
||||
$this->form_validation->set_message('_valid_captcha', 'The Captcha is incorrect.');
|
||||
return strtolower($text) == strtolower($this->db_session->userdata('captcha'));
|
||||
$this->form_validation->set_message('_valid_captcha', lang('captcha'));
|
||||
|
||||
if ($this->use_recaptcha)
|
||||
{
|
||||
return $this->_valid_recaptcha();
|
||||
}
|
||||
else
|
||||
{
|
||||
return strtolower($text) == strtolower($this->db_session->userdata('captcha'));
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -595,6 +618,26 @@ class Main extends CI_Controller
|
||||
}
|
||||
}
|
||||
|
||||
function _valid_recaptcha()
|
||||
{
|
||||
|
||||
if ($this->input->post('recaptcha_response_field'))
|
||||
{
|
||||
$pk = $this->recaptcha_privatekey;
|
||||
$ra = $_SERVER['REMOTE_ADDR'];
|
||||
$cf = $this->input->post('recaptcha_challenge_field');
|
||||
$rf = $this->input->post('recaptcha_response_field');
|
||||
|
||||
//check
|
||||
$resp = recaptcha_check_answer($pk, $ra, $cf, $rf);
|
||||
return $resp->is_valid;
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
function _valid_ip()
|
||||
{
|
||||
|
||||
@ -604,7 +647,7 @@ class Main extends CI_Controller
|
||||
$ip_firstpart = $ip[0] . '.' . $ip[1] . '.';
|
||||
|
||||
//setup message
|
||||
$this->form_validation->set_message('_valid_ip', 'You are not allowed to paste.');
|
||||
$this->form_validation->set_message('_valid_ip', lang('not_allowed'));
|
||||
|
||||
//lookup
|
||||
$this->db->select('ip_address, spam_attempts');
|
||||
@ -637,12 +680,19 @@ class Main extends CI_Controller
|
||||
{
|
||||
|
||||
//setup message
|
||||
$this->form_validation->set_message('_blockwords_check', 'Your paste contains blocked words.');
|
||||
$this->form_validation->set_message('_blockwords_check', lang('blocked_words'));
|
||||
|
||||
//check
|
||||
$blocked_words = $this->config->item('blocked_words');
|
||||
$blocked_words = config_item('blocked_words');
|
||||
$post = $this->input->post();
|
||||
$raw = $post['code'];
|
||||
|
||||
if (!$blocked_words)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
//we have blocked words
|
||||
foreach (explode(',', $blocked_words) as $word)
|
||||
{
|
||||
$word = trim($word);
|
||||
@ -659,16 +709,16 @@ class Main extends CI_Controller
|
||||
{
|
||||
|
||||
//setup message
|
||||
$this->form_validation->set_message('_autofill_check', 'Go away, robot!');
|
||||
$this->form_validation->set_message('_autofill_check', lang('robot'));
|
||||
|
||||
//check
|
||||
return !$this->input->post('email');
|
||||
return (!$this->input->post('email') && !$this->input->post('url'));
|
||||
}
|
||||
|
||||
function _valid_authentication()
|
||||
{
|
||||
|
||||
if ($this->config->item('require_auth'))
|
||||
if (config_item('require_auth'))
|
||||
{
|
||||
|
||||
if (!$this->auth_ldap->is_authenticated())
|
||||
@ -683,14 +733,23 @@ class Main extends CI_Controller
|
||||
{
|
||||
$lang = $this->uri->segment(3);
|
||||
$this->load->config('codemirror_languages');
|
||||
$cml = $this->config->item('codemirror_languages');
|
||||
$cml = config_item('codemirror_languages');
|
||||
|
||||
//file path
|
||||
$file_path = 'themes/' . config_item('theme') . '/js/';
|
||||
|
||||
if (!file_exists($file_path))
|
||||
{
|
||||
$file_path = 'themes/default/js/';
|
||||
}
|
||||
|
||||
if (isset($cml[$lang]) && gettype($cml[$lang]) == 'array')
|
||||
{
|
||||
header('Content-Type: application/x-javascript; charset=utf-8');
|
||||
header('Expires: ' . gmdate('D, d M Y H:i:s \G\M\T', time() + 60 * 60 * 24 * 30));
|
||||
foreach ($cml[$lang]['js'] as $js)
|
||||
{
|
||||
echo file_get_contents('./static/js/' . $js[0]);
|
||||
echo file_get_contents($file_path . $js[0]);
|
||||
}
|
||||
}
|
||||
exit;
|
||||
|
@ -55,7 +55,8 @@ class Theme_assets extends CI_Controller
|
||||
}
|
||||
|
||||
//send
|
||||
header('Content-type: ' . mime_content_type($file_path));
|
||||
$size = getimagesize($file_path);
|
||||
header('Content-type: ' . $size['mime']);
|
||||
$this->_expires_header(30);
|
||||
readfile($file_path);
|
||||
}
|
||||
@ -74,8 +75,15 @@ class Theme_assets extends CI_Controller
|
||||
//file path
|
||||
$file_path = 'themes/' . $this->theme . '/js/' . $js_file;
|
||||
|
||||
//fallback to default js if js in theme not found
|
||||
|
||||
if (!file_exists($file_path))
|
||||
{
|
||||
$file_path = 'themes/default/js/' . $js_file;
|
||||
}
|
||||
|
||||
//send
|
||||
header('Content-type: application/x-javascript');
|
||||
header('Content-Type: application/x-javascript; charset=utf-8');
|
||||
$this->_expires_header(30);
|
||||
readfile($file_path);
|
||||
}
|
||||
|
@ -9,9 +9,9 @@ header("HTTP/1.1 404 Not Found");
|
||||
<head>
|
||||
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
|
||||
<title>Stikked</title>
|
||||
<link rel="stylesheet" href="<?php echo base_url(); ?>static/styles/reset.css" type="text/css" />
|
||||
<link rel="stylesheet" href="<?php echo base_url(); ?>static/styles/fonts.css" type="text/css" />
|
||||
<link rel="stylesheet" href="<?php echo base_url(); ?>static/styles/main.css" type="text/css" media="screen" title="main" charset="utf-8" />
|
||||
<link rel="stylesheet" href="<?php echo base_url(); ?>themes/default/css/reset.css" type="text/css" />
|
||||
<link rel="stylesheet" href="<?php echo base_url(); ?>themes/default/css/fonts.css" type="text/css" />
|
||||
<link rel="stylesheet" href="<?php echo base_url(); ?>themes/default/css/main.css" type="text/css" media="screen" title="main" charset="utf-8" />
|
||||
</head>
|
||||
|
||||
<body>
|
||||
@ -19,14 +19,6 @@ header("HTTP/1.1 404 Not Found");
|
||||
<div class="container">
|
||||
<div class="header">
|
||||
<h1><a href="<?php echo base_url(); ?>" class="title"><?php echo $CI->config->item('site_name'); ?></a></h1>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="<?php echo site_url(''); ?>">Paste</a></li>
|
||||
<li><a href="<?php echo site_url('lists'); ?>">Recent</a></li>
|
||||
<li><a href="<?php echo site_url('api'); ?>">API</a></li>
|
||||
<li><a href="<?php echo site_url('about'); ?>">About</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="page">
|
||||
@ -41,10 +33,6 @@ header("HTTP/1.1 404 Not Found");
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer">
|
||||
<?php $CI->load->view('defaults/footer_message'); ?>
|
||||
<?php $CI->load->view('defaults/stats'); ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
58
htdocs/application/helpers/language_helper.php
Normal file
58
htdocs/application/helpers/language_helper.php
Normal file
@ -0,0 +1,58 @@
|
||||
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
|
||||
/**
|
||||
* CodeIgniter
|
||||
*
|
||||
* An open source application development framework for PHP 5.1.6 or newer
|
||||
*
|
||||
* @package CodeIgniter
|
||||
* @author ExpressionEngine Dev Team
|
||||
* @copyright Copyright (c) 2008 - 2011, EllisLab, Inc.
|
||||
* @license http://codeigniter.com/user_guide/license.html
|
||||
* @link http://codeigniter.com
|
||||
* @since Version 1.0
|
||||
* @filesource
|
||||
*/
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
|
||||
/**
|
||||
* CodeIgniter Language Helpers
|
||||
*
|
||||
* @package CodeIgniter
|
||||
* @subpackage Helpers
|
||||
* @category Helpers
|
||||
* @author ExpressionEngine Dev Team
|
||||
* @link http://codeigniter.com/user_guide/helpers/language_helper.html
|
||||
*/
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
|
||||
/**
|
||||
* Lang
|
||||
*
|
||||
* Fetches a language variable and optionally outputs a form label
|
||||
*
|
||||
* @access public
|
||||
* @param string the language line
|
||||
* @param string the id of the form element
|
||||
* @return string
|
||||
*/
|
||||
if ( ! function_exists('lang'))
|
||||
{
|
||||
function lang($index, $id = '')
|
||||
{
|
||||
$CI =& get_instance();
|
||||
$line = $CI->lang->line($index);
|
||||
|
||||
if ($id != '')
|
||||
{
|
||||
$line = '<label for="'.$id.'">'.$line."</label>";
|
||||
}
|
||||
|
||||
return ($line != '' ? $line : '[' . $index . ']');
|
||||
}
|
||||
}
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
/* End of file language_helper.php */
|
||||
/* Location: ./system/helpers/language_helper.php */
|
277
htdocs/application/helpers/recaptcha_helper.php
Normal file
277
htdocs/application/helpers/recaptcha_helper.php
Normal file
@ -0,0 +1,277 @@
|
||||
<?php
|
||||
/*
|
||||
* This is a PHP library that handles calling reCAPTCHA.
|
||||
* - Documentation and latest version
|
||||
* http://recaptcha.net/plugins/php/
|
||||
* - Get a reCAPTCHA API Key
|
||||
* https://www.google.com/recaptcha/admin/create
|
||||
* - Discussion group
|
||||
* http://groups.google.com/group/recaptcha
|
||||
*
|
||||
* Copyright (c) 2007 reCAPTCHA -- http://recaptcha.net
|
||||
* AUTHORS:
|
||||
* Mike Crawford
|
||||
* Ben Maurer
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
/**
|
||||
* The reCAPTCHA server URL's
|
||||
*/
|
||||
define("RECAPTCHA_API_SERVER", "http://www.google.com/recaptcha/api");
|
||||
define("RECAPTCHA_API_SECURE_SERVER", "https://www.google.com/recaptcha/api");
|
||||
define("RECAPTCHA_VERIFY_SERVER", "www.google.com");
|
||||
|
||||
/**
|
||||
* Encodes the given data into a query string format
|
||||
* @param $data - array of string elements to be encoded
|
||||
* @return string - encoded request
|
||||
*/
|
||||
function _recaptcha_qsencode ($data) {
|
||||
$req = "";
|
||||
foreach ( $data as $key => $value )
|
||||
$req .= $key . '=' . urlencode( stripslashes($value) ) . '&';
|
||||
|
||||
// Cut the last '&'
|
||||
$req=substr($req,0,strlen($req)-1);
|
||||
return $req;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Submits an HTTP POST to a reCAPTCHA server
|
||||
* @param string $host
|
||||
* @param string $path
|
||||
* @param array $data
|
||||
* @param int port
|
||||
* @return array response
|
||||
*/
|
||||
function _recaptcha_http_post($host, $path, $data, $port = 80) {
|
||||
|
||||
$req = _recaptcha_qsencode ($data);
|
||||
|
||||
$http_request = "POST $path HTTP/1.0\r\n";
|
||||
$http_request .= "Host: $host\r\n";
|
||||
$http_request .= "Content-Type: application/x-www-form-urlencoded;\r\n";
|
||||
$http_request .= "Content-Length: " . strlen($req) . "\r\n";
|
||||
$http_request .= "User-Agent: reCAPTCHA/PHP\r\n";
|
||||
$http_request .= "\r\n";
|
||||
$http_request .= $req;
|
||||
|
||||
$response = '';
|
||||
if( false == ( $fs = @fsockopen($host, $port, $errno, $errstr, 10) ) ) {
|
||||
die ('Could not open socket');
|
||||
}
|
||||
|
||||
fwrite($fs, $http_request);
|
||||
|
||||
while ( !feof($fs) )
|
||||
$response .= fgets($fs, 1160); // One TCP-IP packet
|
||||
fclose($fs);
|
||||
$response = explode("\r\n\r\n", $response, 2);
|
||||
|
||||
return $response;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Gets the challenge HTML (javascript and non-javascript version).
|
||||
* This is called from the browser, and the resulting reCAPTCHA HTML widget
|
||||
* is embedded within the HTML form it was called from.
|
||||
* @param string $pubkey A public key for reCAPTCHA
|
||||
* @param string $error The error given by reCAPTCHA (optional, default is null)
|
||||
* @param boolean $use_ssl Should the request be made over ssl? (optional, default is false)
|
||||
|
||||
* @return string - The HTML to be embedded in the user's form.
|
||||
*/
|
||||
function recaptcha_get_html ($pubkey, $error = null, $use_ssl = false)
|
||||
{
|
||||
if ($pubkey == null || $pubkey == '') {
|
||||
die ("To use reCAPTCHA you must get an API key from <a href='https://www.google.com/recaptcha/admin/create'>https://www.google.com/recaptcha/admin/create</a>");
|
||||
}
|
||||
|
||||
if ($use_ssl) {
|
||||
$server = RECAPTCHA_API_SECURE_SERVER;
|
||||
} else {
|
||||
$server = RECAPTCHA_API_SERVER;
|
||||
}
|
||||
|
||||
$errorpart = "";
|
||||
if ($error) {
|
||||
$errorpart = "&error=" . $error;
|
||||
}
|
||||
return '<script type="text/javascript" src="'. $server . '/challenge?k=' . $pubkey . $errorpart . '"></script>
|
||||
|
||||
<noscript>
|
||||
<iframe src="'. $server . '/noscript?k=' . $pubkey . $errorpart . '" height="300" width="500" frameborder="0"></iframe><br/>
|
||||
<textarea name="recaptcha_challenge_field" rows="3" cols="40"></textarea>
|
||||
<input type="hidden" name="recaptcha_response_field" value="manual_challenge"/>
|
||||
</noscript>';
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* A ReCaptchaResponse is returned from recaptcha_check_answer()
|
||||
*/
|
||||
class ReCaptchaResponse {
|
||||
var $is_valid;
|
||||
var $error;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Calls an HTTP POST function to verify if the user's guess was correct
|
||||
* @param string $privkey
|
||||
* @param string $remoteip
|
||||
* @param string $challenge
|
||||
* @param string $response
|
||||
* @param array $extra_params an array of extra variables to post to the server
|
||||
* @return ReCaptchaResponse
|
||||
*/
|
||||
function recaptcha_check_answer ($privkey, $remoteip, $challenge, $response, $extra_params = array())
|
||||
{
|
||||
if ($privkey == null || $privkey == '') {
|
||||
die ("To use reCAPTCHA you must get an API key from <a href='https://www.google.com/recaptcha/admin/create'>https://www.google.com/recaptcha/admin/create</a>");
|
||||
}
|
||||
|
||||
if ($remoteip == null || $remoteip == '') {
|
||||
die ("For security reasons, you must pass the remote ip to reCAPTCHA");
|
||||
}
|
||||
|
||||
|
||||
|
||||
//discard spam submissions
|
||||
if ($challenge == null || strlen($challenge) == 0 || $response == null || strlen($response) == 0) {
|
||||
$recaptcha_response = new ReCaptchaResponse();
|
||||
$recaptcha_response->is_valid = false;
|
||||
$recaptcha_response->error = 'incorrect-captcha-sol';
|
||||
return $recaptcha_response;
|
||||
}
|
||||
|
||||
$response = _recaptcha_http_post (RECAPTCHA_VERIFY_SERVER, "/recaptcha/api/verify",
|
||||
array (
|
||||
'privatekey' => $privkey,
|
||||
'remoteip' => $remoteip,
|
||||
'challenge' => $challenge,
|
||||
'response' => $response
|
||||
) + $extra_params
|
||||
);
|
||||
|
||||
$answers = explode ("\n", $response [1]);
|
||||
$recaptcha_response = new ReCaptchaResponse();
|
||||
|
||||
if (trim ($answers [0]) == 'true') {
|
||||
$recaptcha_response->is_valid = true;
|
||||
}
|
||||
else {
|
||||
$recaptcha_response->is_valid = false;
|
||||
$recaptcha_response->error = $answers [1];
|
||||
}
|
||||
return $recaptcha_response;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* gets a URL where the user can sign up for reCAPTCHA. If your application
|
||||
* has a configuration page where you enter a key, you should provide a link
|
||||
* using this function.
|
||||
* @param string $domain The domain where the page is hosted
|
||||
* @param string $appname The name of your application
|
||||
*/
|
||||
function recaptcha_get_signup_url ($domain = null, $appname = null) {
|
||||
return "https://www.google.com/recaptcha/admin/create?" . _recaptcha_qsencode (array ('domains' => $domain, 'app' => $appname));
|
||||
}
|
||||
|
||||
function _recaptcha_aes_pad($val) {
|
||||
$block_size = 16;
|
||||
$numpad = $block_size - (strlen ($val) % $block_size);
|
||||
return str_pad($val, strlen ($val) + $numpad, chr($numpad));
|
||||
}
|
||||
|
||||
/* Mailhide related code */
|
||||
|
||||
function _recaptcha_aes_encrypt($val,$ky) {
|
||||
if (! function_exists ("mcrypt_encrypt")) {
|
||||
die ("To use reCAPTCHA Mailhide, you need to have the mcrypt php module installed.");
|
||||
}
|
||||
$mode=MCRYPT_MODE_CBC;
|
||||
$enc=MCRYPT_RIJNDAEL_128;
|
||||
$val=_recaptcha_aes_pad($val);
|
||||
return mcrypt_encrypt($enc, $ky, $val, $mode, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0");
|
||||
}
|
||||
|
||||
|
||||
function _recaptcha_mailhide_urlbase64 ($x) {
|
||||
return strtr(base64_encode ($x), '+/', '-_');
|
||||
}
|
||||
|
||||
/* gets the reCAPTCHA Mailhide url for a given email, public key and private key */
|
||||
function recaptcha_mailhide_url($pubkey, $privkey, $email) {
|
||||
if ($pubkey == '' || $pubkey == null || $privkey == "" || $privkey == null) {
|
||||
die ("To use reCAPTCHA Mailhide, you have to sign up for a public and private key, " .
|
||||
"you can do so at <a href='http://www.google.com/recaptcha/mailhide/apikey'>http://www.google.com/recaptcha/mailhide/apikey</a>");
|
||||
}
|
||||
|
||||
|
||||
$ky = pack('H*', $privkey);
|
||||
$cryptmail = _recaptcha_aes_encrypt ($email, $ky);
|
||||
|
||||
return "http://www.google.com/recaptcha/mailhide/d?k=" . $pubkey . "&c=" . _recaptcha_mailhide_urlbase64 ($cryptmail);
|
||||
}
|
||||
|
||||
/**
|
||||
* gets the parts of the email to expose to the user.
|
||||
* eg, given johndoe@example,com return ["john", "example.com"].
|
||||
* the email is then displayed as john...@example.com
|
||||
*/
|
||||
function _recaptcha_mailhide_email_parts ($email) {
|
||||
$arr = preg_split("/@/", $email );
|
||||
|
||||
if (strlen ($arr[0]) <= 4) {
|
||||
$arr[0] = substr ($arr[0], 0, 1);
|
||||
} else if (strlen ($arr[0]) <= 6) {
|
||||
$arr[0] = substr ($arr[0], 0, 3);
|
||||
} else {
|
||||
$arr[0] = substr ($arr[0], 0, 4);
|
||||
}
|
||||
return $arr;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets html to display an email address given a public an private key.
|
||||
* to get a key, go to:
|
||||
*
|
||||
* http://www.google.com/recaptcha/mailhide/apikey
|
||||
*/
|
||||
function recaptcha_mailhide_html($pubkey, $privkey, $email) {
|
||||
$emailparts = _recaptcha_mailhide_email_parts ($email);
|
||||
$url = recaptcha_mailhide_url ($pubkey, $privkey, $email);
|
||||
|
||||
return htmlentities($emailparts[0]) . "<a href='" . htmlentities ($url) .
|
||||
"' onclick=\"window.open('" . htmlentities ($url) . "', '', 'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=500,height=300'); return false;\" title=\"Reveal this e-mail address\">...</a>@" . htmlentities ($emailparts [1]);
|
||||
|
||||
}
|
||||
|
||||
|
||||
?>
|
61
htdocs/application/language/english/date_lang.php
Normal file
61
htdocs/application/language/english/date_lang.php
Normal file
@ -0,0 +1,61 @@
|
||||
<?php
|
||||
|
||||
$lang['date_year'] = "Year";
|
||||
$lang['date_years'] = "Years";
|
||||
$lang['date_month'] = "Month";
|
||||
$lang['date_months'] = "Months";
|
||||
$lang['date_week'] = "Week";
|
||||
$lang['date_weeks'] = "Weeks";
|
||||
$lang['date_day'] = "Day";
|
||||
$lang['date_days'] = "Days";
|
||||
$lang['date_hour'] = "Hour";
|
||||
$lang['date_hours'] = "Hours";
|
||||
$lang['date_minute'] = "Minute";
|
||||
$lang['date_minutes'] = "Minutes";
|
||||
$lang['date_second'] = "Second";
|
||||
$lang['date_seconds'] = "Seconds";
|
||||
|
||||
$lang['UM12'] = '(UTC -12:00) Baker/Howland Island';
|
||||
$lang['UM11'] = '(UTC -11:00) Samoa Time Zone, Niue';
|
||||
$lang['UM10'] = '(UTC -10:00) Hawaii-Aleutian Standard Time, Cook Islands, Tahiti';
|
||||
$lang['UM95'] = '(UTC -9:30) Marquesas Islands';
|
||||
$lang['UM9'] = '(UTC -9:00) Alaska Standard Time, Gambier Islands';
|
||||
$lang['UM8'] = '(UTC -8:00) Pacific Standard Time, Clipperton Island';
|
||||
$lang['UM7'] = '(UTC -7:00) Mountain Standard Time';
|
||||
$lang['UM6'] = '(UTC -6:00) Central Standard Time';
|
||||
$lang['UM5'] = '(UTC -5:00) Eastern Standard Time, Western Caribbean Standard Time';
|
||||
$lang['UM45'] = '(UTC -4:30) Venezuelan Standard Time';
|
||||
$lang['UM4'] = '(UTC -4:00) Atlantic Standard Time, Eastern Caribbean Standard Time';
|
||||
$lang['UM35'] = '(UTC -3:30) Newfoundland Standard Time';
|
||||
$lang['UM3'] = '(UTC -3:00) Argentina, Brazil, French Guiana, Uruguay';
|
||||
$lang['UM2'] = '(UTC -2:00) South Georgia/South Sandwich Islands';
|
||||
$lang['UM1'] = '(UTC -1:00) Azores, Cape Verde Islands';
|
||||
$lang['UTC'] = '(UTC) Greenwich Mean Time, Western European Time';
|
||||
$lang['UP1'] = '(UTC +1:00) Central European Time, West Africa Time';
|
||||
$lang['UP2'] = '(UTC +2:00) Central Africa Time, Eastern European Time, Kaliningrad Time';
|
||||
$lang['UP3'] = '(UTC +3:00) Moscow Time, East Africa Time';
|
||||
$lang['UP35'] = '(UTC +3:30) Iran Standard Time';
|
||||
$lang['UP4'] = '(UTC +4:00) Azerbaijan Standard Time, Samara Time';
|
||||
$lang['UP45'] = '(UTC +4:30) Afghanistan';
|
||||
$lang['UP5'] = '(UTC +5:00) Pakistan Standard Time, Yekaterinburg Time';
|
||||
$lang['UP55'] = '(UTC +5:30) Indian Standard Time, Sri Lanka Time';
|
||||
$lang['UP575'] = '(UTC +5:45) Nepal Time';
|
||||
$lang['UP6'] = '(UTC +6:00) Bangladesh Standard Time, Bhutan Time, Omsk Time';
|
||||
$lang['UP65'] = '(UTC +6:30) Cocos Islands, Myanmar';
|
||||
$lang['UP7'] = '(UTC +7:00) Krasnoyarsk Time, Cambodia, Laos, Thailand, Vietnam';
|
||||
$lang['UP8'] = '(UTC +8:00) Australian Western Standard Time, Beijing Time, Irkutsk Time';
|
||||
$lang['UP875'] = '(UTC +8:45) Australian Central Western Standard Time';
|
||||
$lang['UP9'] = '(UTC +9:00) Japan Standard Time, Korea Standard Time, Yakutsk Time';
|
||||
$lang['UP95'] = '(UTC +9:30) Australian Central Standard Time';
|
||||
$lang['UP10'] = '(UTC +10:00) Australian Eastern Standard Time, Vladivostok Time';
|
||||
$lang['UP105'] = '(UTC +10:30) Lord Howe Island';
|
||||
$lang['UP11'] = '(UTC +11:00) Magadan Time, Solomon Islands, Vanuatu';
|
||||
$lang['UP115'] = '(UTC +11:30) Norfolk Island';
|
||||
$lang['UP12'] = '(UTC +12:00) Fiji, Gilbert Islands, Kamchatka Time, New Zealand Standard Time';
|
||||
$lang['UP1275'] = '(UTC +12:45) Chatham Islands Standard Time';
|
||||
$lang['UP13'] = '(UTC +13:00) Phoenix Islands Time, Tonga';
|
||||
$lang['UP14'] = '(UTC +14:00) Line Islands';
|
||||
|
||||
|
||||
/* End of file date_lang.php */
|
||||
/* Location: ./system/language/english/date_lang.php */
|
35
htdocs/application/language/english/form_validation_lang.php
Normal file
35
htdocs/application/language/english/form_validation_lang.php
Normal file
@ -0,0 +1,35 @@
|
||||
<?php
|
||||
|
||||
$lang['required'] = "The %s field is required.";
|
||||
$lang['not_allowed'] = "You are not allowed to paste.";
|
||||
$lang['captcha'] = "The captcha is incorrect.";
|
||||
$lang['blocked_words'] = "Your Paste contains blocked words.";
|
||||
$lang['robot'] = "Go away, robot!";
|
||||
$lang['empty'] = "The %s field can not be empty.";
|
||||
$lang['valid_lang'] = "Please select your language.";
|
||||
$lang['isset'] = "The %s field must have a value.";
|
||||
$lang['valid_email'] = "The %s field must contain a valid email address.";
|
||||
$lang['valid_emails'] = "The %s field must contain all valid email addresses.";
|
||||
$lang['valid_url'] = "The %s field must contain a valid URL.";
|
||||
$lang['valid_ip'] = "The %s field must contain a valid IP.";
|
||||
$lang['min_length'] = "The %s field must be at least %s characters in length.";
|
||||
$lang['max_length'] = "The %s field can not exceed %s characters in length.";
|
||||
$lang['exact_length'] = "The %s field must be exactly %s characters in length.";
|
||||
$lang['alpha'] = "The %s field may only contain alphabetical characters.";
|
||||
$lang['alpha_numeric'] = "The %s field may only contain alpha-numeric characters.";
|
||||
$lang['alpha_dash'] = "The %s field may only contain alpha-numeric characters, underscores, and dashes.";
|
||||
$lang['numeric'] = "The %s field must contain only numbers.";
|
||||
$lang['is_numeric'] = "The %s field must contain only numeric characters.";
|
||||
$lang['integer'] = "The %s field must contain an integer.";
|
||||
$lang['regex_match'] = "The %s field is not in the correct format.";
|
||||
$lang['matches'] = "The %s field does not match the %s field.";
|
||||
$lang['is_unique'] = "The %s field must contain a unique value.";
|
||||
$lang['is_natural'] = "The %s field must contain only positive numbers.";
|
||||
$lang['is_natural_no_zero'] = "The %s field must contain a number greater than zero.";
|
||||
$lang['decimal'] = "The %s field must contain a decimal number.";
|
||||
$lang['less_than'] = "The %s field must contain a number less than %s.";
|
||||
$lang['greater_than'] = "The %s field must contain a number greater than %s.";
|
||||
|
||||
|
||||
/* End of file form_validation_lang.php */
|
||||
/* Location: ./system/language/english/form_validation_lang.php */
|
@ -1,10 +0,0 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>403 Forbidden</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<p>Directory access is forbidden.</p>
|
||||
|
||||
</body>
|
||||
</html>
|
71
htdocs/application/language/english/stikked_lang.php
Normal file
71
htdocs/application/language/english/stikked_lang.php
Normal file
@ -0,0 +1,71 @@
|
||||
<?php
|
||||
|
||||
$lang['paste_create_new'] = 'Create a new paste';
|
||||
$lang['paste_create_new_desc'] = 'Here you can create a new paste';
|
||||
$lang['paste_author'] = 'Author';
|
||||
$lang['paste_author_desc'] = 'What\'s your name?';
|
||||
$lang['paste_title'] = 'Title';
|
||||
$lang['paste_title_desc'] = 'Give your paste a title.';
|
||||
$lang['paste_lang'] = 'Language';
|
||||
$lang['paste_lang_desc'] = 'What language is your paste written in?';
|
||||
$lang['paste_yourpaste'] = 'Your paste';
|
||||
$lang['paste_yourpaste_desc'] = 'Paste your paste here';
|
||||
$lang['paste_enablesynhl'] = 'Enable realtime syntax highlighting';
|
||||
$lang['paste_disablesynhl'] = 'Disable realtime syntax highlighting';
|
||||
$lang['paste_shorturl'] = 'Create Shorturl';
|
||||
$lang['paste_shorturl_desc'] = 'Create a shorter url that redirects to your paste?';
|
||||
$lang['paste_private'] = 'Private';
|
||||
$lang['paste_private_desc'] = 'Private paste aren\'t shown in recent listings.';
|
||||
$lang['paste_delete'] = 'Delete After';
|
||||
$lang['paste_delete_desc'] = 'When should we delete your paste?';
|
||||
$lang['paste_recent'] = 'Recent Pastes';
|
||||
$lang['paste_trending'] = 'Trending Pastes';
|
||||
$lang['paste_from'] = 'From';
|
||||
$lang['paste_ago'] = 'ago';
|
||||
$lang['paste_writtenin'] = 'written in';
|
||||
$lang['paste_viewed'] = 'viewed';
|
||||
$lang['paste_times'] = 'times';
|
||||
$lang['paste_isareply'] = 'This paste is a reply to';
|
||||
$lang['paste_viewdiff'] = 'view diff';
|
||||
$lang['paste_viewdiffs'] = 'Viewing differences between';
|
||||
$lang['paste_goback'] = 'go back';
|
||||
$lang['paste_url'] = 'URL';
|
||||
$lang['paste_shorturl'] = 'Shorturl';
|
||||
$lang['paste_embed'] = 'Embed';
|
||||
$lang['paste_showcode'] = 'Show code';
|
||||
$lang['paste_download'] = 'Download Paste';
|
||||
$lang['paste_or'] = 'or';
|
||||
$lang['paste_and'] = 'and';
|
||||
$lang['paste_viewraw'] = 'View Raw';
|
||||
$lang['paste_expand'] = 'Expand Paste';
|
||||
$lang['paste_fullwidth'] = 'to full width of browser';
|
||||
$lang['paste_replies'] = 'Replies to';
|
||||
$lang['paste_replyto'] = 'Reply to';
|
||||
$lang['paste_replyto_desc'] = 'Here you can reply to the paste above';
|
||||
$lang['paste_missing'] = 'There have been no Pastes';
|
||||
$lang['paste_spam'] = 'Spam protection';
|
||||
$lang['paste_spam_desc'] = 'Type in the letters';
|
||||
$lang['exp_forever'] = 'Keep Forever';
|
||||
$lang['exp_30min'] = '30 Minutes';
|
||||
$lang['exp_1h'] = '1 Hour';
|
||||
$lang['exp_6h'] = '5 Hours';
|
||||
$lang['exp_12h'] = '12 Hours';
|
||||
$lang['exp_1d'] = '1 Day';
|
||||
$lang['exp_1w'] = '1 Week';
|
||||
$lang['exp_4w'] = '4 Weeks';
|
||||
$lang['paste_create'] = 'Create';
|
||||
$lang['menu_create'] = 'Create';
|
||||
$lang['menu_create_title'] = 'Create A New Paste';
|
||||
$lang['menu_recent'] = 'Recent';
|
||||
$lang['menu_recent_title'] = 'Recent Pastes';
|
||||
$lang['menu_trending'] = 'Trending';
|
||||
$lang['menu_trending_title'] = 'Trending Pastes';
|
||||
$lang['menu_api'] = 'API';
|
||||
$lang['menu_about'] = 'About';
|
||||
$lang['table_title'] = 'Title';
|
||||
$lang['table_name'] = 'Name';
|
||||
$lang['table_lang'] = 'Language';
|
||||
$lang['table_hits'] = 'Hits';
|
||||
$lang['table_time'] = 'When';
|
||||
$lang['powered_by'] = 'Powered by';
|
||||
|
61
htdocs/application/language/french/date_lang.php
Normal file
61
htdocs/application/language/french/date_lang.php
Normal file
@ -0,0 +1,61 @@
|
||||
<?php
|
||||
|
||||
$lang['date_year'] = "an";
|
||||
$lang['date_years'] = "ans";
|
||||
$lang['date_month'] = "mois";
|
||||
$lang['date_months'] = "mois";
|
||||
$lang['date_week'] = "semaine";
|
||||
$lang['date_weeks'] = "semaines";
|
||||
$lang['date_day'] = "jour";
|
||||
$lang['date_days'] = "jours";
|
||||
$lang['date_hour'] = "heure";
|
||||
$lang['date_hours'] = "heures";
|
||||
$lang['date_minute'] = "minute";
|
||||
$lang['date_minutes'] = "minutes";
|
||||
$lang['date_second'] = "seconde";
|
||||
$lang['date_seconds'] = "secondes";
|
||||
|
||||
$lang['UM12'] = '(UTC -12:00) Baker/Howland Island';
|
||||
$lang['UM11'] = '(UTC -11:00) Samoa Time Zone, Niue';
|
||||
$lang['UM10'] = '(UTC -10:00) Hawaii-Aleutian Standard Time, Cook Islands, Tahiti';
|
||||
$lang['UM95'] = '(UTC -9:30) Marquesas Islands';
|
||||
$lang['UM9'] = '(UTC -9:00) Alaska Standard Time, Gambier Islands';
|
||||
$lang['UM8'] = '(UTC -8:00) Pacific Standard Time, Clipperton Island';
|
||||
$lang['UM7'] = '(UTC -7:00) Mountain Standard Time';
|
||||
$lang['UM6'] = '(UTC -6:00) Central Standard Time';
|
||||
$lang['UM5'] = '(UTC -5:00) Eastern Standard Time, Western Caribbean Standard Time';
|
||||
$lang['UM45'] = '(UTC -4:30) Venezuelan Standard Time';
|
||||
$lang['UM4'] = '(UTC -4:00) Atlantic Standard Time, Eastern Caribbean Standard Time';
|
||||
$lang['UM35'] = '(UTC -3:30) Newfoundland Standard Time';
|
||||
$lang['UM3'] = '(UTC -3:00) Argentina, Brazil, French Guiana, Uruguay';
|
||||
$lang['UM2'] = '(UTC -2:00) South Georgia/South Sandwich Islands';
|
||||
$lang['UM1'] = '(UTC -1:00) Azores, Cape Verde Islands';
|
||||
$lang['UTC'] = '(UTC) Greenwich Mean Time, Western European Time';
|
||||
$lang['UP1'] = '(UTC +1:00) Central European Time, West Africa Time';
|
||||
$lang['UP2'] = '(UTC +2:00) Central Africa Time, Eastern European Time, Kaliningrad Time';
|
||||
$lang['UP3'] = '(UTC +3:00) Moscow Time, East Africa Time';
|
||||
$lang['UP35'] = '(UTC +3:30) Iran Standard Time';
|
||||
$lang['UP4'] = '(UTC +4:00) Azerbaijan Standard Time, Samara Time';
|
||||
$lang['UP45'] = '(UTC +4:30) Afghanistan';
|
||||
$lang['UP5'] = '(UTC +5:00) Pakistan Standard Time, Yekaterinburg Time';
|
||||
$lang['UP55'] = '(UTC +5:30) Indian Standard Time, Sri Lanka Time';
|
||||
$lang['UP575'] = '(UTC +5:45) Nepal Time';
|
||||
$lang['UP6'] = '(UTC +6:00) Bangladesh Standard Time, Bhutan Time, Omsk Time';
|
||||
$lang['UP65'] = '(UTC +6:30) Cocos Islands, Myanmar';
|
||||
$lang['UP7'] = '(UTC +7:00) Krasnoyarsk Time, Cambodia, Laos, Thailand, Vietnam';
|
||||
$lang['UP8'] = '(UTC +8:00) Australian Western Standard Time, Beijing Time, Irkutsk Time';
|
||||
$lang['UP875'] = '(UTC +8:45) Australian Central Western Standard Time';
|
||||
$lang['UP9'] = '(UTC +9:00) Japan Standard Time, Korea Standard Time, Yakutsk Time';
|
||||
$lang['UP95'] = '(UTC +9:30) Australian Central Standard Time';
|
||||
$lang['UP10'] = '(UTC +10:00) Australian Eastern Standard Time, Vladivostok Time';
|
||||
$lang['UP105'] = '(UTC +10:30) Lord Howe Island';
|
||||
$lang['UP11'] = '(UTC +11:00) Magadan Time, Solomon Islands, Vanuatu';
|
||||
$lang['UP115'] = '(UTC +11:30) Norfolk Island';
|
||||
$lang['UP12'] = '(UTC +12:00) Fiji, Gilbert Islands, Kamchatka Time, New Zealand Standard Time';
|
||||
$lang['UP1275'] = '(UTC +12:45) Chatham Islands Standard Time';
|
||||
$lang['UP13'] = '(UTC +13:00) Phoenix Islands Time, Tonga';
|
||||
$lang['UP14'] = '(UTC +14:00) Line Islands';
|
||||
|
||||
|
||||
/* End of file date_lang.php */
|
||||
/* Location: ./system/language/english/date_lang.php */
|
35
htdocs/application/language/french/form_validation_lang.php
Normal file
35
htdocs/application/language/french/form_validation_lang.php
Normal file
@ -0,0 +1,35 @@
|
||||
<?php
|
||||
|
||||
$lang['required'] = "Le champ %s est requis.";
|
||||
$lang['not_allowed'] = "Vous n'avez pas le droit de poster.";
|
||||
$lang['captcha'] = "La captcha n'est pas correcte.";
|
||||
$lang['blocked_words'] = "Ce paste contient des mots interdits.";
|
||||
$lang['robot'] = "Tu n'es pas le droid que je recherche ! Vas t'en robot !";
|
||||
$lang['empty'] = "Le champ %s ne peut pas être vide.";
|
||||
$lang['valid_lang'] = "Veuillez spécifier votre langue.";
|
||||
$lang['isset'] = "Le champ %s doit avoir une valeur.";
|
||||
$lang['valid_email'] = "Le champ %s doit contenir une addresse email valide.";
|
||||
$lang['valid_emails'] = "The %s field must contain all valid email addresses.";
|
||||
$lang['valid_url'] = "Le champ %s doit contenit une addresse mail valide.";
|
||||
$lang['valid_ip'] = "Le champ %s doit contenir une IP valide.";
|
||||
$lang['min_length'] = "Le champ %s doit au moins contenit %s caractères.";
|
||||
$lang['max_length'] = "Le champ %s ne doit pas dépasser %s caractères.";
|
||||
$lang['exact_length'] = "Le champ %s doit comporter exactement %s caractères.";
|
||||
$lang['alpha'] = "Le champ %s ne doit contenir que des caractères alphabétiques.";
|
||||
$lang['alpha_numeric'] = "Le champ %s ne doit contenit que des caractères alphanimériques.";
|
||||
$lang['alpha_dash'] = "The %s field may only contain alpha-numeric characters, underscores, and dashes.";
|
||||
$lang['numeric'] = "Le champ %s ne doit contenir que des nombres.";
|
||||
$lang['is_numeric'] = "Le champ %s ne doit contenir que des caractères numériques.";
|
||||
$lang['integer'] = "Le champ %s doit être un entier.";
|
||||
$lang['regex_match'] = "Le champ %s n'est pas dans le bon format.";
|
||||
$lang['matches'] = "Le champ %s ne correspond pas au champ %s.";
|
||||
$lang['is_unique'] = "Le champ %s doit contenir une valeur unique.";
|
||||
$lang['is_natural'] = "Le champ %s ne peut contenir que des nombres positifs.";
|
||||
$lang['is_natural_no_zero'] = "Le champ %s doit contenir un nombre strictement positif.";
|
||||
$lang['decimal'] = "Le champ %s doit contenir un nombre décimal.";
|
||||
$lang['less_than'] = "Le champ %s doit contenir un nombre inférieur à %s.";
|
||||
$lang['greater_than'] = "Le champ %s doit contenir un nombre supérieur à %s.";
|
||||
|
||||
|
||||
/* End of file form_validation_lang.php */
|
||||
/* Location: ./system/language/english/form_validation_lang.php */
|
71
htdocs/application/language/french/stikked_lang.php
Normal file
71
htdocs/application/language/french/stikked_lang.php
Normal file
@ -0,0 +1,71 @@
|
||||
<?php
|
||||
|
||||
$lang['paste_create_new'] = 'Créer un nouveau paste';
|
||||
$lang['paste_create_new_desc'] = 'Copiez votre paste ici';
|
||||
$lang['paste_author'] = 'Auteur';
|
||||
$lang['paste_author_desc'] = 'Qui êtes vous ?';
|
||||
$lang['paste_title'] = 'Titre';
|
||||
$lang['paste_title_desc'] = 'Donnez un titre a votre paste !';
|
||||
$lang['paste_lang'] = 'Language';
|
||||
$lang['paste_lang_desc'] = 'En quel langage est écrit votre paste ?';
|
||||
$lang['paste_yourpaste'] = 'Votre paste';
|
||||
$lang['paste_yourpaste_desc'] = 'Copiez votre paste ici';
|
||||
$lang['paste_enablesynhl'] = 'Activer la coloration syntaxique en temps réel';
|
||||
$lang['paste_disablesynhl'] = 'Désactiver la coloration syntaxique en temps réel';
|
||||
$lang['paste_shorturl'] = 'Créer une URL courte';
|
||||
$lang['paste_shorturl_desc'] = 'Créer une URL courte qui redirige sur votre code ?';
|
||||
$lang['paste_private'] = 'Privé';
|
||||
$lang['paste_private_desc'] = 'Les pastes privés n\'apparaissent pas dans les liste de pastes récents';
|
||||
$lang['paste_delete'] = 'Effacer après combien de temps ?';
|
||||
$lang['paste_delete_desc'] = 'Au bout de combien de temps voulez vous effacer votre paste ?';
|
||||
$lang['paste_recent'] = 'Pastes récents';
|
||||
$lang['paste_trending'] = 'Les plus consultés';
|
||||
$lang['paste_from'] = 'De';
|
||||
$lang['paste_ago'] = 'Il y a %s';
|
||||
$lang['paste_writtenin'] = 'Écrit en';
|
||||
$lang['paste_viewed'] = 'vu';
|
||||
$lang['paste_times'] = 'fois';
|
||||
$lang['paste_isareply'] = 'Ce paste est une réponse à';
|
||||
$lang['paste_viewdiff'] = 'voir les différences';
|
||||
$lang['paste_viewdiffs'] = 'voir les différences entre';
|
||||
$lang['paste_goback'] = 'retour';
|
||||
$lang['paste_url'] = 'URL';
|
||||
$lang['paste_shorturl'] = 'URL courte';
|
||||
$lang['paste_embed'] = 'Code HTML';
|
||||
$lang['paste_showcode'] = 'Montrer le code';
|
||||
$lang['paste_download'] = 'Télécharger le code';
|
||||
$lang['paste_or'] = 'ou';
|
||||
$lang['paste_and'] = 'et';
|
||||
$lang['paste_viewraw'] = 'Voir le code brut';
|
||||
$lang['paste_expand'] = 'Étendre le paste';
|
||||
$lang['paste_fullwidth'] = 'à la largeur du navigateur';
|
||||
$lang['paste_replies'] = 'Réponses à';
|
||||
$lang['paste_replyto'] = 'Réponse à';
|
||||
$lang['paste_replyto_desc'] = 'Répondez ici au paste du dessus';
|
||||
$lang['paste_missing'] = 'Il n\'y a aucun pastes récents !';
|
||||
$lang['paste_spam'] = 'Protection anti spam';
|
||||
$lang['paste_spam_desc'] = 'Entrez les lettres pour nous assurer que vous êtes humain';
|
||||
$lang['exp_forever'] = 'Garder pour toujours';
|
||||
$lang['exp_30min'] = '30 Minutes';
|
||||
$lang['exp_1h'] = '1 Heure';
|
||||
$lang['exp_6h'] = '5 Heures';
|
||||
$lang['exp_12h'] = '12 Heures';
|
||||
$lang['exp_1d'] = '1 Jour';
|
||||
$lang['exp_1w'] = '1 Semaine';
|
||||
$lang['exp_4w'] = '4 Semaines';
|
||||
$lang['paste_create'] = 'Créer';
|
||||
$lang['menu_create'] = 'Créer';
|
||||
$lang['menu_create_title'] = 'Créer un nouveau paste';
|
||||
$lang['menu_recent'] = 'Récent';
|
||||
$lang['menu_recent_title'] = 'Pastes récentes';
|
||||
$lang['menu_trending'] = 'Plus vus';
|
||||
$lang['menu_trending_title'] = 'Les pastes les plus consultés';
|
||||
$lang['menu_api'] = 'API';
|
||||
$lang['menu_about'] = 'À propos';
|
||||
$lang['table_title'] = 'Titre';
|
||||
$lang['table_name'] = 'Nom';
|
||||
$lang['table_lang'] = 'Langages';
|
||||
$lang['table_hits'] = 'Vues';
|
||||
$lang['table_time'] = 'Quand';
|
||||
$lang['powered_by'] = 'Propulsé par';
|
||||
|
61
htdocs/application/language/german/date_lang.php
Normal file
61
htdocs/application/language/german/date_lang.php
Normal file
@ -0,0 +1,61 @@
|
||||
<?php
|
||||
|
||||
$lang['date_year'] = "Jahr";
|
||||
$lang['date_years'] = "Jahre";
|
||||
$lang['date_month'] = "Monat";
|
||||
$lang['date_months'] = "Monate";
|
||||
$lang['date_week'] = "Woche";
|
||||
$lang['date_weeks'] = "Wochen";
|
||||
$lang['date_day'] = "Tag";
|
||||
$lang['date_days'] = "Tage";
|
||||
$lang['date_hour'] = "Stunde";
|
||||
$lang['date_hours'] = "Stunden";
|
||||
$lang['date_minute'] = "Minute";
|
||||
$lang['date_minutes'] = "Minuten";
|
||||
$lang['date_second'] = "Sekunde";
|
||||
$lang['date_seconds'] = "Sekunden";
|
||||
|
||||
$lang['UM12'] = '(UTC -12:00) Baker/Howland Island';
|
||||
$lang['UM11'] = '(UTC -11:00) Samoa Time Zone, Niue';
|
||||
$lang['UM10'] = '(UTC -10:00) Hawaii-Aleutian Standard Time, Cook Islands, Tahiti';
|
||||
$lang['UM95'] = '(UTC -9:30) Marquesas Islands';
|
||||
$lang['UM9'] = '(UTC -9:00) Alaska Standard Time, Gambier Islands';
|
||||
$lang['UM8'] = '(UTC -8:00) Pacific Standard Time, Clipperton Island';
|
||||
$lang['UM7'] = '(UTC -7:00) Mountain Standard Time';
|
||||
$lang['UM6'] = '(UTC -6:00) Central Standard Time';
|
||||
$lang['UM5'] = '(UTC -5:00) Eastern Standard Time, Western Caribbean Standard Time';
|
||||
$lang['UM45'] = '(UTC -4:30) Venezuelan Standard Time';
|
||||
$lang['UM4'] = '(UTC -4:00) Atlantic Standard Time, Eastern Caribbean Standard Time';
|
||||
$lang['UM35'] = '(UTC -3:30) Newfoundland Standard Time';
|
||||
$lang['UM3'] = '(UTC -3:00) Argentina, Brazil, French Guiana, Uruguay';
|
||||
$lang['UM2'] = '(UTC -2:00) South Georgia/South Sandwich Islands';
|
||||
$lang['UM1'] = '(UTC -1:00) Azores, Cape Verde Islands';
|
||||
$lang['UTC'] = '(UTC) Greenwich Mean Time, Western European Time';
|
||||
$lang['UP1'] = '(UTC +1:00) Central European Time, West Africa Time';
|
||||
$lang['UP2'] = '(UTC +2:00) Central Africa Time, Eastern European Time, Kaliningrad Time';
|
||||
$lang['UP3'] = '(UTC +3:00) Moscow Time, East Africa Time';
|
||||
$lang['UP35'] = '(UTC +3:30) Iran Standard Time';
|
||||
$lang['UP4'] = '(UTC +4:00) Azerbaijan Standard Time, Samara Time';
|
||||
$lang['UP45'] = '(UTC +4:30) Afghanistan';
|
||||
$lang['UP5'] = '(UTC +5:00) Pakistan Standard Time, Yekaterinburg Time';
|
||||
$lang['UP55'] = '(UTC +5:30) Indian Standard Time, Sri Lanka Time';
|
||||
$lang['UP575'] = '(UTC +5:45) Nepal Time';
|
||||
$lang['UP6'] = '(UTC +6:00) Bangladesh Standard Time, Bhutan Time, Omsk Time';
|
||||
$lang['UP65'] = '(UTC +6:30) Cocos Islands, Myanmar';
|
||||
$lang['UP7'] = '(UTC +7:00) Krasnoyarsk Time, Cambodia, Laos, Thailand, Vietnam';
|
||||
$lang['UP8'] = '(UTC +8:00) Australian Western Standard Time, Beijing Time, Irkutsk Time';
|
||||
$lang['UP875'] = '(UTC +8:45) Australian Central Western Standard Time';
|
||||
$lang['UP9'] = '(UTC +9:00) Japan Standard Time, Korea Standard Time, Yakutsk Time';
|
||||
$lang['UP95'] = '(UTC +9:30) Australian Central Standard Time';
|
||||
$lang['UP10'] = '(UTC +10:00) Australian Eastern Standard Time, Vladivostok Time';
|
||||
$lang['UP105'] = '(UTC +10:30) Lord Howe Island';
|
||||
$lang['UP11'] = '(UTC +11:00) Magadan Time, Solomon Islands, Vanuatu';
|
||||
$lang['UP115'] = '(UTC +11:30) Norfolk Island';
|
||||
$lang['UP12'] = '(UTC +12:00) Fiji, Gilbert Islands, Kamchatka Time, New Zealand Standard Time';
|
||||
$lang['UP1275'] = '(UTC +12:45) Chatham Islands Standard Time';
|
||||
$lang['UP13'] = '(UTC +13:00) Phoenix Islands Time, Tonga';
|
||||
$lang['UP14'] = '(UTC +14:00) Line Islands';
|
||||
|
||||
|
||||
/* End of file date_lang.php */
|
||||
/* Location: ./system/language/english/date_lang.php */
|
35
htdocs/application/language/german/form_validation_lang.php
Normal file
35
htdocs/application/language/german/form_validation_lang.php
Normal file
@ -0,0 +1,35 @@
|
||||
<?php
|
||||
|
||||
$lang['required'] = "Das Feld %s ist ein Pflichtfeld";
|
||||
$lang['not_allowed'] = "Sie dürfen nichts pasten.";
|
||||
$lang['captcha'] = "Das eingegebene Captcha ist nicht korrekt";
|
||||
$lang['blocked_words'] = "Ihr Paste enthält Wörter, die blockiert werden.";
|
||||
$lang['robot'] = "Verschwinde, Robot!";
|
||||
$lang['empty'] = "Das Feld %s darf nicht leer sein.";
|
||||
$lang['valid_lang'] = "Bitte wählen Sie ihre Sprache aus.";
|
||||
$lang['isset'] = "Das Feld %s muss einen Wert enthalten.";
|
||||
$lang['valid_email'] = "Das Feld %s muss eine valide e-Mail-Adresse beinhalten.";
|
||||
$lang['valid_emails'] = "Das Feld %s darf nur valide e-Mail-Adresse beinhalten.";
|
||||
$lang['valid_url'] = "Das Feld %s muss eine valide URL enthalten..";
|
||||
$lang['valid_ip'] = "Das Feld %s muss eine valide IP enthalten.";
|
||||
$lang['min_length'] = "Das Feld %s muss mindestens %s Zeichen enthalten.";
|
||||
$lang['max_length'] = "Das Feld %s darf nicht mehr als %s Zeichen enthalten.";
|
||||
$lang['exact_length'] = "Das Feld %s muss genau %s Zeichen enthalten.";
|
||||
$lang['alpha'] = "Das Feld %s darf nur alphabetische Zeichen enthalten.";
|
||||
$lang['alpha_numeric'] = "Das Feld %s darf nur alphanumerische Zeichen enthalten.";
|
||||
$lang['alpha_dash'] = "Das Feld %s darf nur alphanumerische Zeichen, Unter- und Schrägstriche enthalten.";
|
||||
$lang['numeric'] = "Das Feld %s darf nur Zahlen enthalten.";
|
||||
$lang['is_numeric'] = "Das Feld %s darf nur Zahlen enthalten.";
|
||||
$lang['integer'] = "Das Feld %s muss eine Zahl (Integer) enthalten.";
|
||||
$lang['regex_match'] = "Das Feld %s ist nicht im korrekten Format.";
|
||||
$lang['matches'] = "Das Feld %s stimmt nicht mit dem Feld %s überein.";
|
||||
$lang['is_unique'] = "Das Feld %s muss einen eindeutigen Wert enthalten.";
|
||||
$lang['is_natural'] = "Das Feld %s darf nur positive Zahlen enthalten.";
|
||||
$lang['is_natural_no_zero'] = "Das Feld %s muss eine Zahl größer Null enthalten.";
|
||||
$lang['decimal'] = "Das Feld %s muss eine Dezimalzahl enthalten.";
|
||||
$lang['less_than'] = "Die Zahl in Feld %s muss kleiner sein, als %s.";
|
||||
$lang['greater_than'] = "Die Zahl in Feld %s muss größer sein, als %s.";
|
||||
|
||||
|
||||
/* End of file form_validation_lang.php */
|
||||
/* Location: ./system/language/english/form_validation_lang.php */
|
71
htdocs/application/language/german/stikked_lang.php
Normal file
71
htdocs/application/language/german/stikked_lang.php
Normal file
@ -0,0 +1,71 @@
|
||||
<?php
|
||||
|
||||
$lang['paste_create_new'] = 'Neuen Paste anlegen';
|
||||
$lang['paste_create_new_desc'] = 'Hier kannst Du einen neuen Paste anlegen';
|
||||
$lang['paste_author'] = 'Autor';
|
||||
$lang['paste_author_desc'] = 'Wie heisst Du?';
|
||||
$lang['paste_title'] = 'Titel';
|
||||
$lang['paste_title_desc'] = 'Paste Titel';
|
||||
$lang['paste_lang'] = 'Sprache';
|
||||
$lang['paste_lang_desc'] = 'In welcher Sprache ist Dein Paste geschrieben?';
|
||||
$lang['paste_yourpaste'] = 'Dein Paste';
|
||||
$lang['paste_yourpaste_desc'] = 'Füge hier Deinen Paste ein';
|
||||
$lang['paste_enablesynhl'] = 'Echtzeit Syntaxhervorhebung aktivieren';
|
||||
$lang['paste_disablesynhl'] = 'Echtzeit Syntaxhervorhebung deaktivieren';
|
||||
$lang['paste_shorturl'] = 'Kurzurl generieren';
|
||||
$lang['paste_shorturl_desc'] = 'Soll eine Kurzurl zu Deinem Paste generiert werden?';
|
||||
$lang['paste_private'] = 'Privat';
|
||||
$lang['paste_private_desc'] = 'Private Pastes tauchen nicht unter den aktuellen Pastes auf.';
|
||||
$lang['paste_delete'] = 'Löschen nach';
|
||||
$lang['paste_delete_desc'] = 'Wann soll Dein Paste verfallen?';
|
||||
$lang['paste_recent'] = 'Aktuelle Pastes';
|
||||
$lang['paste_trending'] = 'Oft aufgerufene Pastes';
|
||||
$lang['paste_from'] = 'Von';
|
||||
$lang['paste_ago'] = 'vorher';
|
||||
$lang['paste_writtenin'] = 'geschrieben in';
|
||||
$lang['paste_viewed'] = 'aufgerufen';
|
||||
$lang['paste_times'] = 'mal';
|
||||
$lang['paste_isareply'] = 'Dieser Paste ist eine Antwort auf';
|
||||
$lang['paste_viewdiff'] = 'Unterschiede zeigen';
|
||||
$lang['paste_viewdiffs'] = 'Unterschiede zwischen';
|
||||
$lang['paste_goback'] = 'zurück';
|
||||
$lang['paste_url'] = 'URL';
|
||||
$lang['paste_shorturl'] = 'Kurzurl';
|
||||
$lang['paste_embed'] = 'Einbetten';
|
||||
$lang['paste_showcode'] = 'Code anzeigen';
|
||||
$lang['paste_download'] = 'Paste herunterladen';
|
||||
$lang['paste_or'] = 'oder';
|
||||
$lang['paste_and'] = 'und';
|
||||
$lang['paste_viewraw'] = 'Rohtext anzeigen';
|
||||
$lang['paste_expand'] = 'Ansicht erweitern';
|
||||
$lang['paste_fullwidth'] = 'zur vollen Breite des Browsers';
|
||||
$lang['paste_replies'] = 'Antworten auf';
|
||||
$lang['paste_replyto'] = 'Antwort auf';
|
||||
$lang['paste_replyto_desc'] = 'Hier kannst Du auf den Paste von oben antworten';
|
||||
$lang['paste_missing'] = 'Keine Pastes vorhanden';
|
||||
$lang['paste_spam'] = 'Spamschutz';
|
||||
$lang['paste_spam_desc'] = 'Schreibe die Buchstaben ab';
|
||||
$lang['exp_forever'] = 'Nie';
|
||||
$lang['exp_30min'] = '30 Minuten';
|
||||
$lang['exp_1h'] = '1 Stunde';
|
||||
$lang['exp_6h'] = '5 Stunden';
|
||||
$lang['exp_12h'] = '12 Stunden';
|
||||
$lang['exp_1d'] = '1 Tag';
|
||||
$lang['exp_1w'] = '1 Woche';
|
||||
$lang['exp_4w'] = '4 Wochen';
|
||||
$lang['paste_create'] = 'Erstellen';
|
||||
$lang['menu_create'] = 'Erstellen';
|
||||
$lang['menu_create_title'] = 'Neuen Paste erstellen';
|
||||
$lang['menu_recent'] = 'Aktuell';
|
||||
$lang['menu_recent_title'] = 'Kürzlich erstellte Pastes';
|
||||
$lang['menu_trending'] = 'Beliebt';
|
||||
$lang['menu_trending_title'] = 'Pastes mit hoher Besucherzahl';
|
||||
$lang['menu_api'] = 'API';
|
||||
$lang['menu_about'] = 'Über';
|
||||
$lang['table_title'] = 'Titel';
|
||||
$lang['table_name'] = 'Name';
|
||||
$lang['table_lang'] = 'Sprache';
|
||||
$lang['table_hits'] = 'Aufrufe';
|
||||
$lang['table_time'] = 'Wann';
|
||||
$lang['powered_by'] = 'Bereitgestellt durch';
|
||||
|
61
htdocs/application/language/spanish/date_lang.php
Normal file
61
htdocs/application/language/spanish/date_lang.php
Normal file
@ -0,0 +1,61 @@
|
||||
<?php
|
||||
|
||||
$lang['date_year'] = "año";
|
||||
$lang['date_years'] = "años";
|
||||
$lang['date_month'] = "mes";
|
||||
$lang['date_months'] = "meses";
|
||||
$lang['date_week'] = "semana";
|
||||
$lang['date_weeks'] = "semanas";
|
||||
$lang['date_day'] = "día";
|
||||
$lang['date_days'] = "dias";
|
||||
$lang['date_hour'] = "hora";
|
||||
$lang['date_hours'] = "horas";
|
||||
$lang['date_minute'] = "minuto";
|
||||
$lang['date_minutes'] = "minutos";
|
||||
$lang['date_second'] = "segundo";
|
||||
$lang['date_seconds'] = "segundos";
|
||||
|
||||
$lang['UM12'] = '(UTC -12:00) Baker/Howland Island';
|
||||
$lang['UM11'] = '(UTC -11:00) Samoa Time Zone, Niue';
|
||||
$lang['UM10'] = '(UTC -10:00) Hawaii-Aleutian Standard Time, Cook Islands, Tahiti';
|
||||
$lang['UM95'] = '(UTC -9:30) Marquesas Islands';
|
||||
$lang['UM9'] = '(UTC -9:00) Alaska Standard Time, Gambier Islands';
|
||||
$lang['UM8'] = '(UTC -8:00) Pacific Standard Time, Clipperton Island';
|
||||
$lang['UM7'] = '(UTC -7:00) Mountain Standard Time';
|
||||
$lang['UM6'] = '(UTC -6:00) Central Standard Time';
|
||||
$lang['UM5'] = '(UTC -5:00) Eastern Standard Time, Western Caribbean Standard Time';
|
||||
$lang['UM45'] = '(UTC -4:30) Venezuelan Standard Time';
|
||||
$lang['UM4'] = '(UTC -4:00) Atlantic Standard Time, Eastern Caribbean Standard Time';
|
||||
$lang['UM35'] = '(UTC -3:30) Newfoundland Standard Time';
|
||||
$lang['UM3'] = '(UTC -3:00) Argentina, Brazil, French Guiana, Uruguay';
|
||||
$lang['UM2'] = '(UTC -2:00) South Georgia/South Sandwich Islands';
|
||||
$lang['UM1'] = '(UTC -1:00) Azores, Cape Verde Islands';
|
||||
$lang['UTC'] = '(UTC) Greenwich Mean Time, Western European Time';
|
||||
$lang['UP1'] = '(UTC +1:00) Central European Time, West Africa Time';
|
||||
$lang['UP2'] = '(UTC +2:00) Central Africa Time, Eastern European Time, Kaliningrad Time';
|
||||
$lang['UP3'] = '(UTC +3:00) Moscow Time, East Africa Time';
|
||||
$lang['UP35'] = '(UTC +3:30) Iran Standard Time';
|
||||
$lang['UP4'] = '(UTC +4:00) Azerbaijan Standard Time, Samara Time';
|
||||
$lang['UP45'] = '(UTC +4:30) Afghanistan';
|
||||
$lang['UP5'] = '(UTC +5:00) Pakistan Standard Time, Yekaterinburg Time';
|
||||
$lang['UP55'] = '(UTC +5:30) Indian Standard Time, Sri Lanka Time';
|
||||
$lang['UP575'] = '(UTC +5:45) Nepal Time';
|
||||
$lang['UP6'] = '(UTC +6:00) Bangladesh Standard Time, Bhutan Time, Omsk Time';
|
||||
$lang['UP65'] = '(UTC +6:30) Cocos Islands, Myanmar';
|
||||
$lang['UP7'] = '(UTC +7:00) Krasnoyarsk Time, Cambodia, Laos, Thailand, Vietnam';
|
||||
$lang['UP8'] = '(UTC +8:00) Australian Western Standard Time, Beijing Time, Irkutsk Time';
|
||||
$lang['UP875'] = '(UTC +8:45) Australian Central Western Standard Time';
|
||||
$lang['UP9'] = '(UTC +9:00) Japan Standard Time, Korea Standard Time, Yakutsk Time';
|
||||
$lang['UP95'] = '(UTC +9:30) Australian Central Standard Time';
|
||||
$lang['UP10'] = '(UTC +10:00) Australian Eastern Standard Time, Vladivostok Time';
|
||||
$lang['UP105'] = '(UTC +10:30) Lord Howe Island';
|
||||
$lang['UP11'] = '(UTC +11:00) Magadan Time, Solomon Islands, Vanuatu';
|
||||
$lang['UP115'] = '(UTC +11:30) Norfolk Island';
|
||||
$lang['UP12'] = '(UTC +12:00) Fiji, Gilbert Islands, Kamchatka Time, New Zealand Standard Time';
|
||||
$lang['UP1275'] = '(UTC +12:45) Chatham Islands Standard Time';
|
||||
$lang['UP13'] = '(UTC +13:00) Phoenix Islands Time, Tonga';
|
||||
$lang['UP14'] = '(UTC +14:00) Line Islands';
|
||||
|
||||
|
||||
/* End of file date_lang.php */
|
||||
/* Location: ./system/language/english/date_lang.php */
|
35
htdocs/application/language/spanish/form_validation_lang.php
Normal file
35
htdocs/application/language/spanish/form_validation_lang.php
Normal file
@ -0,0 +1,35 @@
|
||||
<?php
|
||||
|
||||
$lang['required'] = "El campo %s es obligatorio.";
|
||||
$lang['not_allowed'] = "No tiene los permisos para publicar códigos.";
|
||||
$lang['captcha'] = "El captcha es incorrecto.";
|
||||
$lang['blocked_words'] = "Tu código contiene palabras no permitidas.";
|
||||
$lang['robot'] = "No es discriminación, simplemente no se permiten robots.";
|
||||
$lang['empty'] = "El campo %s no puede estar vacío.";
|
||||
$lang['valid_lang'] = "Por favor, elija su lenguaje.";
|
||||
$lang['isset'] = "El campo %s debe tener un valor.";
|
||||
$lang['valid_email'] = "El campo %s debe tener una dirección de correo válida.";
|
||||
$lang['valid_emails'] = "El campo %s debe tener direcciones válidas de correo electrónico.";
|
||||
$lang['valid_url'] = "El campo %s debe tener un URL válido.";
|
||||
$lang['valid_ip'] = "El campo %s debe tener una dirección IP válida.";
|
||||
$lang['min_length'] = "El campo %s debe tener cuando menos %s caracteres de longitud.";
|
||||
$lang['max_length'] = "El campo %s no puede rebasar de %s caracteres de longitud.";
|
||||
$lang['exact_length'] = "El campo %s debe de ser exactamente de %s caracteres de longitud.";
|
||||
$lang['alpha'] = "El campo %s solo puede contener caracteres alfabéticos.";
|
||||
$lang['alpha_numeric'] = "El campo %s solo puede contener números y/o letras.";
|
||||
$lang['alpha_dash'] = "El campo %s solo puede contener letras, números, guiones y/o el símbolo de subrayado _ .";
|
||||
$lang['numeric'] = "El campo %s solo puede contener números.";
|
||||
$lang['is_numeric'] = "El campo %s debe de contener solamente caracteres númericos.";
|
||||
$lang['integer'] = "El campo %s debe de contener un número entero.";
|
||||
$lang['regex_match'] = "El campo %s no esta en el formato correcto.";
|
||||
$lang['matches'] = "El campo %s no coincide con el campo %s .";
|
||||
$lang['is_unique'] = "El campo %s debe de tener un valor único.";
|
||||
$lang['is_natural'] = "El campo %s debe de contener sólamente valores positivos.";
|
||||
$lang['is_natural_no_zero'] = "El campo %s debe de tener un número mayor que cero.";
|
||||
$lang['decimal'] = "El campo %s debe de contener un número con fracción decimal.";
|
||||
$lang['less_than'] = "El campo %s debe de ser menor que %s.";
|
||||
$lang['greater_than'] = "El campo %s debe de ser mayor que %s.";
|
||||
|
||||
|
||||
/* End of file form_validation_lang.php */
|
||||
/* Location: ./system/language/english/form_validation_lang.php */
|
70
htdocs/application/language/spanish/stikked_lang.php
Normal file
70
htdocs/application/language/spanish/stikked_lang.php
Normal file
@ -0,0 +1,70 @@
|
||||
<?php
|
||||
|
||||
$lang['paste_create_new'] = 'Pegar un nuevo código';
|
||||
$lang['paste_create_new_desc'] = 'Aquí puedes pegar tu nuevo código';
|
||||
$lang['paste_author'] = 'Autor';
|
||||
$lang['paste_author_desc'] = '¿Cuál es tu nombre?';
|
||||
$lang['paste_title'] = 'Título';
|
||||
$lang['paste_title_desc'] = 'Dale un título al código que quieres compartir';
|
||||
$lang['paste_lang'] = 'Lenguaje';
|
||||
$lang['paste_lang_desc'] = '¿En que lenguaje esta escrito tu código?';
|
||||
$lang['paste_yourpaste'] = 'Tu código';
|
||||
$lang['paste_yourpaste_desc'] = 'Pega tu código aquí';
|
||||
$lang['paste_enablesynhl'] = 'Habilitar resaltado de sintaxis en tiempo real';
|
||||
$lang['paste_disablesynhl'] = 'Deshabilitar resaltado de sintaxis en tiempo real';
|
||||
$lang['paste_shorturl'] = 'Acortar el enlace';
|
||||
$lang['paste_shorturl_desc'] = '¿Quieres crear un enlace corto que dirija a tu código?';
|
||||
$lang['paste_private'] = 'Privado';
|
||||
$lang['paste_private_desc'] = 'Los códigos privados no se muestran en la lista de códigos recientes.';
|
||||
$lang['paste_delete'] = 'Borrar después de';
|
||||
$lang['paste_delete_desc'] = '¿Cúando debería de borrar tu código?';
|
||||
$lang['paste_recent'] = 'Códigos recientes';
|
||||
$lang['paste_trending'] = 'Códigos populares';
|
||||
$lang['paste_from'] = 'de';
|
||||
$lang['paste_ago'] = 'han pasado desde su publicación';
|
||||
$lang['paste_writtenin'] = 'escrito en';
|
||||
$lang['paste_viewed'] = 'visto';
|
||||
$lang['paste_times'] = 'veces';
|
||||
$lang['paste_isareply'] = 'Este código es una respuesta a';
|
||||
$lang['paste_viewdiff'] = 'ver diferencias';
|
||||
$lang['paste_viewdiffs'] = 'viendo diferencias entre';
|
||||
$lang['paste_goback'] = 'regresar';
|
||||
$lang['paste_url'] = 'URL';
|
||||
$lang['paste_shorturl'] = 'Enlace corto';
|
||||
$lang['paste_embed'] = 'Insertar vínculo';
|
||||
$lang['paste_showcode'] = 'Mostrar código';
|
||||
$lang['paste_download'] = 'Descargar código';
|
||||
$lang['paste_or'] = 'o';
|
||||
$lang['paste_and'] = 'y';
|
||||
$lang['paste_viewraw'] = 'Ver sin formato';
|
||||
$lang['paste_expand'] = 'Extender el código';
|
||||
$lang['paste_fullwidth'] = 'a todo lo ancho del navegador';
|
||||
$lang['paste_replies'] = 'Respuestas a';
|
||||
$lang['paste_replyto'] = 'Respuesta a';
|
||||
$lang['paste_replyto_desc'] = 'Aquí puedes dejar una respuesta al código anterior';
|
||||
$lang['paste_missing'] = 'No hay código que mostrar';
|
||||
$lang['paste_spam'] = 'Protección contra Spam';
|
||||
$lang['paste_spam_desc'] = 'Teclea las letras que aparecen en la imagen';
|
||||
$lang['exp_forever'] = 'Mantener por siempre';
|
||||
$lang['exp_30min'] = '30 minutos';
|
||||
$lang['exp_1h'] = '1 hora';
|
||||
$lang['exp_6h'] = '5 horas';
|
||||
$lang['exp_12h'] = '12 horas';
|
||||
$lang['exp_1d'] = '1 día';
|
||||
$lang['exp_1w'] = '1 semana';
|
||||
$lang['exp_4w'] = '4 semana';
|
||||
$lang['paste_create'] = 'Nuevo código';
|
||||
$lang['menu_create'] = 'Nuevo código';
|
||||
$lang['menu_create_title'] = 'Pegar un código nuevo';
|
||||
$lang['menu_recent'] = 'Recientes';
|
||||
$lang['menu_recent_title'] = 'Códigos recientes';
|
||||
$lang['menu_trending'] = 'Populares';
|
||||
$lang['menu_trending_title'] = 'Códigos populares';
|
||||
$lang['menu_api'] = 'API';
|
||||
$lang['menu_about'] = 'Acerca de';
|
||||
$lang['table_title'] = 'Título';
|
||||
$lang['table_name'] = 'Nombre';
|
||||
$lang['table_lang'] = 'Lenguaje';
|
||||
$lang['table_hits'] = 'Visto';
|
||||
$lang['table_time'] = 'cuando';
|
||||
$lang['powered_by'] = 'Gracias a la tecnología de';
|
61
htdocs/application/language/swissgerman/date_lang.php
Normal file
61
htdocs/application/language/swissgerman/date_lang.php
Normal file
@ -0,0 +1,61 @@
|
||||
<?php
|
||||
|
||||
$lang['date_year'] = "Johr";
|
||||
$lang['date_years'] = "Johr";
|
||||
$lang['date_month'] = "Monet";
|
||||
$lang['date_months'] = "Mönet";
|
||||
$lang['date_week'] = "Wuchä";
|
||||
$lang['date_weeks'] = "Wuchä";
|
||||
$lang['date_day'] = "Daag";
|
||||
$lang['date_days'] = "Dääg";
|
||||
$lang['date_hour'] = "Stündli";
|
||||
$lang['date_hours'] = "Stundä";
|
||||
$lang['date_minute'] = "Minuttä";
|
||||
$lang['date_minutes'] = "Minuttä";
|
||||
$lang['date_second'] = "Sekundä";
|
||||
$lang['date_seconds'] = "Sekundä";
|
||||
|
||||
$lang['UM12'] = '(UTC -12:00) Baker/Howland Island';
|
||||
$lang['UM11'] = '(UTC -11:00) Samoa Time Zone, Niue';
|
||||
$lang['UM10'] = '(UTC -10:00) Hawaii-Aleutian Standard Time, Cook Islands, Tahiti';
|
||||
$lang['UM95'] = '(UTC -9:30) Marquesas Islands';
|
||||
$lang['UM9'] = '(UTC -9:00) Alaska Standard Time, Gambier Islands';
|
||||
$lang['UM8'] = '(UTC -8:00) Pacific Standard Time, Clipperton Island';
|
||||
$lang['UM7'] = '(UTC -7:00) Mountain Standard Time';
|
||||
$lang['UM6'] = '(UTC -6:00) Central Standard Time';
|
||||
$lang['UM5'] = '(UTC -5:00) Eastern Standard Time, Western Caribbean Standard Time';
|
||||
$lang['UM45'] = '(UTC -4:30) Venezuelan Standard Time';
|
||||
$lang['UM4'] = '(UTC -4:00) Atlantic Standard Time, Eastern Caribbean Standard Time';
|
||||
$lang['UM35'] = '(UTC -3:30) Newfoundland Standard Time';
|
||||
$lang['UM3'] = '(UTC -3:00) Argentina, Brazil, French Guiana, Uruguay';
|
||||
$lang['UM2'] = '(UTC -2:00) South Georgia/South Sandwich Islands';
|
||||
$lang['UM1'] = '(UTC -1:00) Azores, Cape Verde Islands';
|
||||
$lang['UTC'] = '(UTC) Greenwich Mean Time, Western European Time';
|
||||
$lang['UP1'] = '(UTC +1:00) Central European Time, West Africa Time';
|
||||
$lang['UP2'] = '(UTC +2:00) Central Africa Time, Eastern European Time, Kaliningrad Time';
|
||||
$lang['UP3'] = '(UTC +3:00) Moscow Time, East Africa Time';
|
||||
$lang['UP35'] = '(UTC +3:30) Iran Standard Time';
|
||||
$lang['UP4'] = '(UTC +4:00) Azerbaijan Standard Time, Samara Time';
|
||||
$lang['UP45'] = '(UTC +4:30) Afghanistan';
|
||||
$lang['UP5'] = '(UTC +5:00) Pakistan Standard Time, Yekaterinburg Time';
|
||||
$lang['UP55'] = '(UTC +5:30) Indian Standard Time, Sri Lanka Time';
|
||||
$lang['UP575'] = '(UTC +5:45) Nepal Time';
|
||||
$lang['UP6'] = '(UTC +6:00) Bangladesh Standard Time, Bhutan Time, Omsk Time';
|
||||
$lang['UP65'] = '(UTC +6:30) Cocos Islands, Myanmar';
|
||||
$lang['UP7'] = '(UTC +7:00) Krasnoyarsk Time, Cambodia, Laos, Thailand, Vietnam';
|
||||
$lang['UP8'] = '(UTC +8:00) Australian Western Standard Time, Beijing Time, Irkutsk Time';
|
||||
$lang['UP875'] = '(UTC +8:45) Australian Central Western Standard Time';
|
||||
$lang['UP9'] = '(UTC +9:00) Japan Standard Time, Korea Standard Time, Yakutsk Time';
|
||||
$lang['UP95'] = '(UTC +9:30) Australian Central Standard Time';
|
||||
$lang['UP10'] = '(UTC +10:00) Australian Eastern Standard Time, Vladivostok Time';
|
||||
$lang['UP105'] = '(UTC +10:30) Lord Howe Island';
|
||||
$lang['UP11'] = '(UTC +11:00) Magadan Time, Solomon Islands, Vanuatu';
|
||||
$lang['UP115'] = '(UTC +11:30) Norfolk Island';
|
||||
$lang['UP12'] = '(UTC +12:00) Fiji, Gilbert Islands, Kamchatka Time, New Zealand Standard Time';
|
||||
$lang['UP1275'] = '(UTC +12:45) Chatham Islands Standard Time';
|
||||
$lang['UP13'] = '(UTC +13:00) Phoenix Islands Time, Tonga';
|
||||
$lang['UP14'] = '(UTC +14:00) Line Islands';
|
||||
|
||||
|
||||
/* End of file date_lang.php */
|
||||
/* Location: ./system/language/english/date_lang.php */
|
@ -0,0 +1,35 @@
|
||||
<?php
|
||||
|
||||
$lang['required'] = "S %s Fäld isch Pflicht.";
|
||||
$lang['not_allowed'] = "Du dörfsch nümme paste. Ganz eifach.";
|
||||
$lang['captcha'] = "S Käptscha isch nid korräkt.";
|
||||
$lang['blocked_words'] = "Di Paste beinhaltet gsperrti Wörter.";
|
||||
$lang['robot'] = "Figg di, du Scheissbot!";
|
||||
$lang['empty'] = "S %s Fäld dörf nid leer syy.";
|
||||
$lang['valid_lang'] = "Bitte wähl dini Sprooch us.";
|
||||
$lang['isset'] = "The %s field must have a value.";
|
||||
$lang['valid_email'] = "The %s field must contain a valid email address.";
|
||||
$lang['valid_emails'] = "The %s field must contain all valid email addresses.";
|
||||
$lang['valid_url'] = "The %s field must contain a valid URL.";
|
||||
$lang['valid_ip'] = "The %s field must contain a valid IP.";
|
||||
$lang['min_length'] = "The %s field must be at least %s characters in length.";
|
||||
$lang['max_length'] = "The %s field can not exceed %s characters in length.";
|
||||
$lang['exact_length'] = "The %s field must be exactly %s characters in length.";
|
||||
$lang['alpha'] = "The %s field may only contain alphabetical characters.";
|
||||
$lang['alpha_numeric'] = "The %s field may only contain alpha-numeric characters.";
|
||||
$lang['alpha_dash'] = "The %s field may only contain alpha-numeric characters, underscores, and dashes.";
|
||||
$lang['numeric'] = "The %s field must contain only numbers.";
|
||||
$lang['is_numeric'] = "The %s field must contain only numeric characters.";
|
||||
$lang['integer'] = "The %s field must contain an integer.";
|
||||
$lang['regex_match'] = "The %s field is not in the correct format.";
|
||||
$lang['matches'] = "The %s field does not match the %s field.";
|
||||
$lang['is_unique'] = "The %s field must contain a unique value.";
|
||||
$lang['is_natural'] = "The %s field must contain only positive numbers.";
|
||||
$lang['is_natural_no_zero'] = "The %s field must contain a number greater than zero.";
|
||||
$lang['decimal'] = "The %s field must contain a decimal number.";
|
||||
$lang['less_than'] = "The %s field must contain a number less than %s.";
|
||||
$lang['greater_than'] = "The %s field must contain a number greater than %s.";
|
||||
|
||||
|
||||
/* End of file form_validation_lang.php */
|
||||
/* Location: ./system/language/english/form_validation_lang.php */
|
71
htdocs/application/language/swissgerman/stikked_lang.php
Normal file
71
htdocs/application/language/swissgerman/stikked_lang.php
Normal file
@ -0,0 +1,71 @@
|
||||
<?php
|
||||
|
||||
$lang['paste_create_new'] = 'Nöiä Paste erstellä';
|
||||
$lang['paste_create_new_desc'] = 'Do chasch di saich veröffentliche';
|
||||
$lang['paste_author'] = 'Autor';
|
||||
$lang['paste_author_desc'] = 'Wie heissisch?';
|
||||
$lang['paste_title'] = 'Diddel';
|
||||
$lang['paste_title_desc'] = 'Muesch em e Diddel gäh.';
|
||||
$lang['paste_lang'] = 'Sprooch';
|
||||
$lang['paste_lang_desc'] = 'In welärä Sprooch isch das gschriibä?';
|
||||
$lang['paste_yourpaste'] = 'Din Paste';
|
||||
$lang['paste_yourpaste_desc'] = 'Gisch di Sänf derzue';
|
||||
$lang['paste_enablesynhl'] = 'Ächtzyt syntax highlighting aaschalte (isch imfall geil!)';
|
||||
$lang['paste_disablesynhl'] = 'Ächtzyt syntax highlighting widr abschalte';
|
||||
$lang['paste_shorturl'] = 'Churz-URL erstellä';
|
||||
$lang['paste_shorturl_desc'] = 'Chürzeri URL erstelle, damits noone bitzeli schööner usgseht';
|
||||
$lang['paste_private'] = 'Privat';
|
||||
$lang['paste_private_desc'] = 'Privati Pastes wärde nid im "Chürzlich" azeigt.';
|
||||
$lang['paste_delete'] = 'Lösche nach';
|
||||
$lang['paste_delete_desc'] = 'Wenn sölls explodiere?';
|
||||
$lang['paste_recent'] = 'Die nöischtä Pastes';
|
||||
$lang['paste_trending'] = 'Die beliäbtischtä Pastes';
|
||||
$lang['paste_from'] = 'Vom';
|
||||
$lang['paste_ago'] = 'vorhär';
|
||||
$lang['paste_writtenin'] = 'gschriibä in';
|
||||
$lang['paste_viewed'] = 'aagluegt';
|
||||
$lang['paste_times'] = 'mol';
|
||||
$lang['paste_isareply'] = 'Dä Paste isch e Antwort uf';
|
||||
$lang['paste_viewdiff'] = 'Unterschied aazeigä';
|
||||
$lang['paste_viewdiffs'] = 'Das sin d Unterschied zwüschä';
|
||||
$lang['paste_goback'] = 'gang zrugg';
|
||||
$lang['paste_url'] = 'URL';
|
||||
$lang['paste_shorturl'] = 'Churzurl';
|
||||
$lang['paste_embed'] = 'Ibettä';
|
||||
$lang['paste_showcode'] = 'Code aazeige';
|
||||
$lang['paste_download'] = 'Paste abelade';
|
||||
$lang['paste_or'] = 'odr';
|
||||
$lang['paste_and'] = 'und';
|
||||
$lang['paste_viewraw'] = 'Rohfassig aluegä';
|
||||
$lang['paste_expand'] = 'Rahme spränge';
|
||||
$lang['paste_fullwidth'] = 'bis zur volle Breiti vom Brauser';
|
||||
$lang['paste_replies'] = 'Antworte uf';
|
||||
$lang['paste_replyto'] = 'Antwort uf';
|
||||
$lang['paste_replyto_desc'] = 'Weis es besser';
|
||||
$lang['paste_missing'] = 'Git leider no nüt';
|
||||
$lang['paste_spam'] = 'Spämschutz';
|
||||
$lang['paste_spam_desc'] = 'Schrib die Zeiche ab';
|
||||
$lang['exp_forever'] = 'Gar nid';
|
||||
$lang['exp_30min'] = '30 Minuttä';
|
||||
$lang['exp_1h'] = '1 Stündli';
|
||||
$lang['exp_6h'] = '5 Stund';
|
||||
$lang['exp_12h'] = '12 Stund';
|
||||
$lang['exp_1d'] = '1 Daag';
|
||||
$lang['exp_1w'] = '1 Wuchä';
|
||||
$lang['exp_4w'] = '4 Wuchä';
|
||||
$lang['paste_create'] = 'Erstellä';
|
||||
$lang['menu_create'] = 'Erstellä';
|
||||
$lang['menu_create_title'] = 'Neue Paste erstellä';
|
||||
$lang['menu_recent'] = 'Chürzlich';
|
||||
$lang['menu_recent_title'] = 'Chürzlich erstellti Pastes';
|
||||
$lang['menu_trending'] = 'Beliäbt';
|
||||
$lang['menu_trending_title'] = 'Pastes mitere hoche Bsuecheranzahl';
|
||||
$lang['menu_api'] = 'API';
|
||||
$lang['menu_about'] = 'Übr';
|
||||
$lang['table_title'] = 'Diddel';
|
||||
$lang['table_name'] = 'Vom';
|
||||
$lang['table_lang'] = 'Sprooch';
|
||||
$lang['table_hits'] = 'Träffer';
|
||||
$lang['table_time'] = 'Wenn';
|
||||
$lang['powered_by'] = 'Dampfbetriebe mit ';
|
||||
|
@ -292,6 +292,15 @@ class DB_Session {
|
||||
$this->userdata['last_activity'] = $this->now;
|
||||
// format query array to update database
|
||||
$ud = $this->userdata;
|
||||
|
||||
//fix for https://github.com/claudehohl/Stikked/issues/52
|
||||
if(!isset($ud['user_agent'])
|
||||
|| !isset($ud['ip_address'])
|
||||
|| !isset($ud['session_id']))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
$query_array = array( 'last_activity' => $ud['last_activity'],
|
||||
'user_agent' => $ud['user_agent'],
|
||||
'ip_address' => $ud['ip_address'] );
|
||||
|
688
htdocs/application/libraries/finediff.php
Normal file
688
htdocs/application/libraries/finediff.php
Normal file
@ -0,0 +1,688 @@
|
||||
<?php
|
||||
/**
|
||||
* FINE granularity DIFF
|
||||
*
|
||||
* Computes a set of instructions to convert the content of
|
||||
* one string into another.
|
||||
*
|
||||
* Copyright (c) 2011 Raymond Hill (http://raymondhill.net/blog/?p=441)
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*
|
||||
* @copyright Copyright 2011 (c) Raymond Hill (http://raymondhill.net/blog/?p=441)
|
||||
* @link http://www.raymondhill.net/finediff/
|
||||
* @version 0.6
|
||||
* @license MIT License (http://www.opensource.org/licenses/mit-license.php)
|
||||
*/
|
||||
|
||||
/**
|
||||
* Usage (simplest):
|
||||
*
|
||||
* include 'finediff.php';
|
||||
*
|
||||
* // for the stock stack, granularity values are:
|
||||
* // FineDiff::$paragraphGranularity = paragraph/line level
|
||||
* // FineDiff::$sentenceGranularity = sentence level
|
||||
* // FineDiff::$wordGranularity = word level
|
||||
* // FineDiff::$characterGranularity = character level [default]
|
||||
*
|
||||
* $opcodes = FineDiff::getDiffOpcodes($from_text, $to_text [, $granularityStack = null] );
|
||||
* // store opcodes for later use...
|
||||
*
|
||||
* ...
|
||||
*
|
||||
* // restore $to_text from $from_text + $opcodes
|
||||
* include 'finediff.php';
|
||||
* $to_text = FineDiff::renderToTextFromOpcodes($from_text, $opcodes);
|
||||
*
|
||||
* ...
|
||||
*/
|
||||
|
||||
/**
|
||||
* Persisted opcodes (string) are a sequence of atomic opcode.
|
||||
* A single opcode can be one of the following:
|
||||
* c | c{n} | d | d{n} | i:{c} | i{length}:{s}
|
||||
* 'c' = copy one character from source
|
||||
* 'c{n}' = copy n characters from source
|
||||
* 'd' = skip one character from source
|
||||
* 'd{n}' = skip n characters from source
|
||||
* 'i:{c} = insert character 'c'
|
||||
* 'i{n}:{s}' = insert string s, which is of length n
|
||||
*
|
||||
* Do not exist as of now, under consideration:
|
||||
* 'm{n}:{o} = move n characters from source o characters ahead.
|
||||
* It would be essentially a shortcut for a delete->copy->insert
|
||||
* command (swap) for when the inserted segment is exactly the same
|
||||
* as the deleted one, and with only a copy operation in between.
|
||||
* TODO: How often this case occurs? Is it worth it? Can only
|
||||
* be done as a postprocessing method (->optimize()?)
|
||||
*/
|
||||
abstract class FineDiffOp {
|
||||
abstract public function getFromLen();
|
||||
abstract public function getToLen();
|
||||
abstract public function getOpcode();
|
||||
}
|
||||
|
||||
class FineDiffDeleteOp extends FineDiffOp {
|
||||
public function __construct($len) {
|
||||
$this->fromLen = $len;
|
||||
}
|
||||
public function getFromLen() {
|
||||
return $this->fromLen;
|
||||
}
|
||||
public function getToLen() {
|
||||
return 0;
|
||||
}
|
||||
public function getOpcode() {
|
||||
if ( $this->fromLen === 1 ) {
|
||||
return 'd';
|
||||
}
|
||||
return "d{$this->fromLen}";
|
||||
}
|
||||
}
|
||||
|
||||
class FineDiffInsertOp extends FineDiffOp {
|
||||
public function __construct($text) {
|
||||
$this->text = $text;
|
||||
}
|
||||
public function getFromLen() {
|
||||
return 0;
|
||||
}
|
||||
public function getToLen() {
|
||||
return strlen($this->text);
|
||||
}
|
||||
public function getText() {
|
||||
return $this->text;
|
||||
}
|
||||
public function getOpcode() {
|
||||
$to_len = strlen($this->text);
|
||||
if ( $to_len === 1 ) {
|
||||
return "i:{$this->text}";
|
||||
}
|
||||
return "i{$to_len}:{$this->text}";
|
||||
}
|
||||
}
|
||||
|
||||
class FineDiffReplaceOp extends FineDiffOp {
|
||||
public function __construct($fromLen, $text) {
|
||||
$this->fromLen = $fromLen;
|
||||
$this->text = $text;
|
||||
}
|
||||
public function getFromLen() {
|
||||
return $this->fromLen;
|
||||
}
|
||||
public function getToLen() {
|
||||
return strlen($this->text);
|
||||
}
|
||||
public function getText() {
|
||||
return $this->text;
|
||||
}
|
||||
public function getOpcode() {
|
||||
if ( $this->fromLen === 1 ) {
|
||||
$del_opcode = 'd';
|
||||
}
|
||||
else {
|
||||
$del_opcode = "d{$this->fromLen}";
|
||||
}
|
||||
$to_len = strlen($this->text);
|
||||
if ( $to_len === 1 ) {
|
||||
return "{$del_opcode}i:{$this->text}";
|
||||
}
|
||||
return "{$del_opcode}i{$to_len}:{$this->text}";
|
||||
}
|
||||
}
|
||||
|
||||
class FineDiffCopyOp extends FineDiffOp {
|
||||
public function __construct($len) {
|
||||
$this->len = $len;
|
||||
}
|
||||
public function getFromLen() {
|
||||
return $this->len;
|
||||
}
|
||||
public function getToLen() {
|
||||
return $this->len;
|
||||
}
|
||||
public function getOpcode() {
|
||||
if ( $this->len === 1 ) {
|
||||
return 'c';
|
||||
}
|
||||
return "c{$this->len}";
|
||||
}
|
||||
public function increase($size) {
|
||||
return $this->len += $size;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* FineDiff ops
|
||||
*
|
||||
* Collection of ops
|
||||
*/
|
||||
class FineDiffOps {
|
||||
public function appendOpcode($opcode, $from, $from_offset, $from_len) {
|
||||
if ( $opcode === 'c' ) {
|
||||
$edits[] = new FineDiffCopyOp($from_len);
|
||||
}
|
||||
else if ( $opcode === 'd' ) {
|
||||
$edits[] = new FineDiffDeleteOp($from_len);
|
||||
}
|
||||
else /* if ( $opcode === 'i' ) */ {
|
||||
$edits[] = new FineDiffInsertOp(substr($from, $from_offset, $from_len));
|
||||
}
|
||||
}
|
||||
public $edits = array();
|
||||
}
|
||||
|
||||
/**
|
||||
* FineDiff class
|
||||
*
|
||||
* TODO: Document
|
||||
*
|
||||
*/
|
||||
class FineDiff {
|
||||
|
||||
/**------------------------------------------------------------------------
|
||||
*
|
||||
* Public section
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
* ...
|
||||
* The $granularityStack allows FineDiff to be configurable so that
|
||||
* a particular stack tailored to the specific content of a document can
|
||||
* be passed.
|
||||
*/
|
||||
public function __construct($from_text = '', $to_text = '', $granularityStack = null) {
|
||||
// setup stack for generic text documents by default
|
||||
$this->granularityStack = $granularityStack ? $granularityStack : FineDiff::$characterGranularity;
|
||||
$this->edits = array();
|
||||
$this->from_text = $from_text;
|
||||
$this->doDiff($from_text, $to_text);
|
||||
}
|
||||
|
||||
public function getOps() {
|
||||
return $this->edits;
|
||||
}
|
||||
|
||||
public function getOpcodes() {
|
||||
$opcodes = array();
|
||||
foreach ( $this->edits as $edit ) {
|
||||
$opcodes[] = $edit->getOpcode();
|
||||
}
|
||||
return implode('', $opcodes);
|
||||
}
|
||||
|
||||
public function renderDiffToHTML() {
|
||||
$in_offset = 0;
|
||||
ob_start();
|
||||
foreach ( $this->edits as $edit ) {
|
||||
$n = $edit->getFromLen();
|
||||
if ( $edit instanceof FineDiffCopyOp ) {
|
||||
FineDiff::renderDiffToHTMLFromOpcode('c', $this->from_text, $in_offset, $n);
|
||||
}
|
||||
else if ( $edit instanceof FineDiffDeleteOp ) {
|
||||
FineDiff::renderDiffToHTMLFromOpcode('d', $this->from_text, $in_offset, $n);
|
||||
}
|
||||
else if ( $edit instanceof FineDiffInsertOp ) {
|
||||
FineDiff::renderDiffToHTMLFromOpcode('i', $edit->getText(), 0, $edit->getToLen());
|
||||
}
|
||||
else /* if ( $edit instanceof FineDiffReplaceOp ) */ {
|
||||
FineDiff::renderDiffToHTMLFromOpcode('d', $this->from_text, $in_offset, $n);
|
||||
FineDiff::renderDiffToHTMLFromOpcode('i', $edit->getText(), 0, $edit->getToLen());
|
||||
}
|
||||
$in_offset += $n;
|
||||
}
|
||||
return ob_get_clean();
|
||||
}
|
||||
|
||||
/**------------------------------------------------------------------------
|
||||
* Return an opcodes string describing the diff between a "From" and a
|
||||
* "To" string
|
||||
*/
|
||||
public static function getDiffOpcodes($from, $to, $granularities = null) {
|
||||
$diff = new FineDiff($from, $to, $granularities);
|
||||
return $diff->getOpcodes();
|
||||
}
|
||||
|
||||
/**------------------------------------------------------------------------
|
||||
* Return an iterable collection of diff ops from an opcodes string
|
||||
*/
|
||||
public static function getDiffOpsFromOpcodes($opcodes) {
|
||||
$diffops = new FineDiffOps();
|
||||
FineDiff::renderFromOpcodes(null, $opcodes, array($diffops,'appendOpcode'));
|
||||
return $diffops->edits;
|
||||
}
|
||||
|
||||
/**------------------------------------------------------------------------
|
||||
* Re-create the "To" string from the "From" string and an "Opcodes" string
|
||||
*/
|
||||
public static function renderToTextFromOpcodes($from, $opcodes) {
|
||||
ob_start();
|
||||
FineDiff::renderFromOpcodes($from, $opcodes, array('FineDiff','renderToTextFromOpcode'));
|
||||
return ob_get_clean();
|
||||
}
|
||||
|
||||
/**------------------------------------------------------------------------
|
||||
* Render the diff to an HTML string
|
||||
*/
|
||||
public static function renderDiffToHTMLFromOpcodes($from, $opcodes) {
|
||||
ob_start();
|
||||
FineDiff::renderFromOpcodes($from, $opcodes, array('FineDiff','renderDiffToHTMLFromOpcode'));
|
||||
return ob_get_clean();
|
||||
}
|
||||
|
||||
/**------------------------------------------------------------------------
|
||||
* Generic opcodes parser, user must supply callback for handling
|
||||
* single opcode
|
||||
*/
|
||||
public static function renderFromOpcodes($from, $opcodes, $callback) {
|
||||
if ( !is_callable($callback) ) {
|
||||
return;
|
||||
}
|
||||
$opcodes_len = strlen($opcodes);
|
||||
$from_offset = $opcodes_offset = 0;
|
||||
while ( $opcodes_offset < $opcodes_len ) {
|
||||
$opcode = substr($opcodes, $opcodes_offset, 1);
|
||||
$opcodes_offset++;
|
||||
$n = intval(substr($opcodes, $opcodes_offset));
|
||||
if ( $n ) {
|
||||
$opcodes_offset += strlen(strval($n));
|
||||
}
|
||||
else {
|
||||
$n = 1;
|
||||
}
|
||||
if ( $opcode === 'c' ) { // copy n characters from source
|
||||
call_user_func($callback, 'c', $from, $from_offset, $n, '');
|
||||
$from_offset += $n;
|
||||
}
|
||||
else if ( $opcode === 'd' ) { // delete n characters from source
|
||||
call_user_func($callback, 'd', $from, $from_offset, $n, '');
|
||||
$from_offset += $n;
|
||||
}
|
||||
else /* if ( $opcode === 'i' ) */ { // insert n characters from opcodes
|
||||
call_user_func($callback, 'i', $opcodes, $opcodes_offset + 1, $n);
|
||||
$opcodes_offset += 1 + $n;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Stock granularity stacks and delimiters
|
||||
*/
|
||||
|
||||
const paragraphDelimiters = "\n\r";
|
||||
public static $paragraphGranularity = array(
|
||||
FineDiff::paragraphDelimiters
|
||||
);
|
||||
const sentenceDelimiters = ".\n\r";
|
||||
public static $sentenceGranularity = array(
|
||||
FineDiff::paragraphDelimiters,
|
||||
FineDiff::sentenceDelimiters
|
||||
);
|
||||
const wordDelimiters = " \t.\n\r";
|
||||
public static $wordGranularity = array(
|
||||
FineDiff::paragraphDelimiters,
|
||||
FineDiff::sentenceDelimiters,
|
||||
FineDiff::wordDelimiters
|
||||
);
|
||||
const characterDelimiters = "";
|
||||
public static $characterGranularity = array(
|
||||
FineDiff::paragraphDelimiters,
|
||||
FineDiff::sentenceDelimiters,
|
||||
FineDiff::wordDelimiters,
|
||||
FineDiff::characterDelimiters
|
||||
);
|
||||
|
||||
public static $textStack = array(
|
||||
".",
|
||||
" \t.\n\r",
|
||||
""
|
||||
);
|
||||
|
||||
/**------------------------------------------------------------------------
|
||||
*
|
||||
* Private section
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* Entry point to compute the diff.
|
||||
*/
|
||||
private function doDiff($from_text, $to_text) {
|
||||
$this->last_edit = false;
|
||||
$this->stackpointer = 0;
|
||||
$this->from_text = $from_text;
|
||||
$this->from_offset = 0;
|
||||
// can't diff without at least one granularity specifier
|
||||
if ( empty($this->granularityStack) ) {
|
||||
return;
|
||||
}
|
||||
$this->_processGranularity($from_text, $to_text);
|
||||
}
|
||||
|
||||
/**
|
||||
* This is the recursive function which is responsible for
|
||||
* handling/increasing granularity.
|
||||
*
|
||||
* Incrementally increasing the granularity is key to compute the
|
||||
* overall diff in a very efficient way.
|
||||
*/
|
||||
private function _processGranularity($from_segment, $to_segment) {
|
||||
$delimiters = $this->granularityStack[$this->stackpointer++];
|
||||
$has_next_stage = $this->stackpointer < count($this->granularityStack);
|
||||
foreach ( FineDiff::doFragmentDiff($from_segment, $to_segment, $delimiters) as $fragment_edit ) {
|
||||
// increase granularity
|
||||
if ( $fragment_edit instanceof FineDiffReplaceOp && $has_next_stage ) {
|
||||
$this->_processGranularity(
|
||||
substr($this->from_text, $this->from_offset, $fragment_edit->getFromLen()),
|
||||
$fragment_edit->getText()
|
||||
);
|
||||
}
|
||||
// fuse copy ops whenever possible
|
||||
else if ( $fragment_edit instanceof FineDiffCopyOp && $this->last_edit instanceof FineDiffCopyOp ) {
|
||||
$this->edits[count($this->edits)-1]->increase($fragment_edit->getFromLen());
|
||||
$this->from_offset += $fragment_edit->getFromLen();
|
||||
}
|
||||
else {
|
||||
/* $fragment_edit instanceof FineDiffCopyOp */
|
||||
/* $fragment_edit instanceof FineDiffDeleteOp */
|
||||
/* $fragment_edit instanceof FineDiffInsertOp */
|
||||
$this->edits[] = $this->last_edit = $fragment_edit;
|
||||
$this->from_offset += $fragment_edit->getFromLen();
|
||||
}
|
||||
}
|
||||
$this->stackpointer--;
|
||||
}
|
||||
|
||||
/**
|
||||
* This is the core algorithm which actually perform the diff itself,
|
||||
* fragmenting the strings as per specified delimiters.
|
||||
*
|
||||
* This function is naturally recursive, however for performance purpose
|
||||
* a local job queue is used instead of outright recursivity.
|
||||
*/
|
||||
private static function doFragmentDiff($from_text, $to_text, $delimiters) {
|
||||
// Empty delimiter means character-level diffing.
|
||||
// In such case, use code path optimized for character-level
|
||||
// diffing.
|
||||
if ( empty($delimiters) ) {
|
||||
return FineDiff::doCharDiff($from_text, $to_text);
|
||||
}
|
||||
|
||||
$result = array();
|
||||
|
||||
// fragment-level diffing
|
||||
$from_text_len = strlen($from_text);
|
||||
$to_text_len = strlen($to_text);
|
||||
$from_fragments = FineDiff::extractFragments($from_text, $delimiters);
|
||||
$to_fragments = FineDiff::extractFragments($to_text, $delimiters);
|
||||
|
||||
$jobs = array(array(0, $from_text_len, 0, $to_text_len));
|
||||
|
||||
$cached_array_keys = array();
|
||||
|
||||
while ( $job = array_pop($jobs) ) {
|
||||
|
||||
// get the segments which must be diff'ed
|
||||
list($from_segment_start, $from_segment_end, $to_segment_start, $to_segment_end) = $job;
|
||||
|
||||
// catch easy cases first
|
||||
$from_segment_length = $from_segment_end - $from_segment_start;
|
||||
$to_segment_length = $to_segment_end - $to_segment_start;
|
||||
if ( !$from_segment_length || !$to_segment_length ) {
|
||||
if ( $from_segment_length ) {
|
||||
$result[$from_segment_start * 4] = new FineDiffDeleteOp($from_segment_length);
|
||||
}
|
||||
else if ( $to_segment_length ) {
|
||||
$result[$from_segment_start * 4 + 1] = new FineDiffInsertOp(substr($to_text, $to_segment_start, $to_segment_length));
|
||||
}
|
||||
continue;
|
||||
}
|
||||
|
||||
// find longest copy operation for the current segments
|
||||
$best_copy_length = 0;
|
||||
|
||||
$from_base_fragment_index = $from_segment_start;
|
||||
|
||||
$cached_array_keys_for_current_segment = array();
|
||||
|
||||
while ( $from_base_fragment_index < $from_segment_end ) {
|
||||
$from_base_fragment = $from_fragments[$from_base_fragment_index];
|
||||
$from_base_fragment_length = strlen($from_base_fragment);
|
||||
// performance boost: cache array keys
|
||||
if ( !isset($cached_array_keys_for_current_segment[$from_base_fragment]) ) {
|
||||
if ( !isset($cached_array_keys[$from_base_fragment]) ) {
|
||||
$to_all_fragment_indices = $cached_array_keys[$from_base_fragment] = array_keys($to_fragments, $from_base_fragment, true);
|
||||
}
|
||||
else {
|
||||
$to_all_fragment_indices = $cached_array_keys[$from_base_fragment];
|
||||
}
|
||||
// get only indices which falls within current segment
|
||||
if ( $to_segment_start > 0 || $to_segment_end < $to_text_len ) {
|
||||
$to_fragment_indices = array();
|
||||
foreach ( $to_all_fragment_indices as $to_fragment_index ) {
|
||||
if ( $to_fragment_index < $to_segment_start ) { continue; }
|
||||
if ( $to_fragment_index >= $to_segment_end ) { break; }
|
||||
$to_fragment_indices[] = $to_fragment_index;
|
||||
}
|
||||
$cached_array_keys_for_current_segment[$from_base_fragment] = $to_fragment_indices;
|
||||
}
|
||||
else {
|
||||
$to_fragment_indices = $to_all_fragment_indices;
|
||||
}
|
||||
}
|
||||
else {
|
||||
$to_fragment_indices = $cached_array_keys_for_current_segment[$from_base_fragment];
|
||||
}
|
||||
// iterate through collected indices
|
||||
foreach ( $to_fragment_indices as $to_base_fragment_index ) {
|
||||
$fragment_index_offset = $from_base_fragment_length;
|
||||
// iterate until no more match
|
||||
for (;;) {
|
||||
$fragment_from_index = $from_base_fragment_index + $fragment_index_offset;
|
||||
if ( $fragment_from_index >= $from_segment_end ) {
|
||||
break;
|
||||
}
|
||||
$fragment_to_index = $to_base_fragment_index + $fragment_index_offset;
|
||||
if ( $fragment_to_index >= $to_segment_end ) {
|
||||
break;
|
||||
}
|
||||
if ( $from_fragments[$fragment_from_index] !== $to_fragments[$fragment_to_index] ) {
|
||||
break;
|
||||
}
|
||||
$fragment_length = strlen($from_fragments[$fragment_from_index]);
|
||||
$fragment_index_offset += $fragment_length;
|
||||
}
|
||||
if ( $fragment_index_offset > $best_copy_length ) {
|
||||
$best_copy_length = $fragment_index_offset;
|
||||
$best_from_start = $from_base_fragment_index;
|
||||
$best_to_start = $to_base_fragment_index;
|
||||
}
|
||||
}
|
||||
$from_base_fragment_index += strlen($from_base_fragment);
|
||||
// If match is larger than half segment size, no point trying to find better
|
||||
// TODO: Really?
|
||||
if ( $best_copy_length >= $from_segment_length / 2) {
|
||||
break;
|
||||
}
|
||||
// no point to keep looking if what is left is less than
|
||||
// current best match
|
||||
if ( $from_base_fragment_index + $best_copy_length >= $from_segment_end ) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if ( $best_copy_length ) {
|
||||
$jobs[] = array($from_segment_start, $best_from_start, $to_segment_start, $best_to_start);
|
||||
$result[$best_from_start * 4 + 2] = new FineDiffCopyOp($best_copy_length);
|
||||
$jobs[] = array($best_from_start + $best_copy_length, $from_segment_end, $best_to_start + $best_copy_length, $to_segment_end);
|
||||
}
|
||||
else {
|
||||
$result[$from_segment_start * 4 ] = new FineDiffReplaceOp($from_segment_length, substr($to_text, $to_segment_start, $to_segment_length));
|
||||
}
|
||||
}
|
||||
|
||||
ksort($result, SORT_NUMERIC);
|
||||
return array_values($result);
|
||||
}
|
||||
|
||||
/**
|
||||
* Perform a character-level diff.
|
||||
*
|
||||
* The algorithm is quite similar to doFragmentDiff(), except that
|
||||
* the code path is optimized for character-level diff -- strpos() is
|
||||
* used to find out the longest common subequence of characters.
|
||||
*
|
||||
* We try to find a match using the longest possible subsequence, which
|
||||
* is at most the length of the shortest of the two strings, then incrementally
|
||||
* reduce the size until a match is found.
|
||||
*
|
||||
* I still need to study more the performance of this function. It
|
||||
* appears that for long strings, the generic doFragmentDiff() is more
|
||||
* performant. For word-sized strings, doCharDiff() is somewhat more
|
||||
* performant.
|
||||
*/
|
||||
private static function doCharDiff($from_text, $to_text) {
|
||||
$result = array();
|
||||
$jobs = array(array(0, strlen($from_text), 0, strlen($to_text)));
|
||||
while ( $job = array_pop($jobs) ) {
|
||||
// get the segments which must be diff'ed
|
||||
list($from_segment_start, $from_segment_end, $to_segment_start, $to_segment_end) = $job;
|
||||
$from_segment_len = $from_segment_end - $from_segment_start;
|
||||
$to_segment_len = $to_segment_end - $to_segment_start;
|
||||
|
||||
// catch easy cases first
|
||||
if ( !$from_segment_len || !$to_segment_len ) {
|
||||
if ( $from_segment_len ) {
|
||||
$result[$from_segment_start * 4 + 0] = new FineDiffDeleteOp($from_segment_len);
|
||||
}
|
||||
else if ( $to_segment_len ) {
|
||||
$result[$from_segment_start * 4 + 1] = new FineDiffInsertOp(substr($to_text, $to_segment_start, $to_segment_len));
|
||||
}
|
||||
continue;
|
||||
}
|
||||
if ( $from_segment_len >= $to_segment_len ) {
|
||||
$copy_len = $to_segment_len;
|
||||
while ( $copy_len ) {
|
||||
$to_copy_start = $to_segment_start;
|
||||
$to_copy_start_max = $to_segment_end - $copy_len;
|
||||
while ( $to_copy_start <= $to_copy_start_max ) {
|
||||
$from_copy_start = strpos(substr($from_text, $from_segment_start, $from_segment_len), substr($to_text, $to_copy_start, $copy_len));
|
||||
if ( $from_copy_start !== false ) {
|
||||
$from_copy_start += $from_segment_start;
|
||||
break 2;
|
||||
}
|
||||
$to_copy_start++;
|
||||
}
|
||||
$copy_len--;
|
||||
}
|
||||
}
|
||||
else {
|
||||
$copy_len = $from_segment_len;
|
||||
while ( $copy_len ) {
|
||||
$from_copy_start = $from_segment_start;
|
||||
$from_copy_start_max = $from_segment_end - $copy_len;
|
||||
while ( $from_copy_start <= $from_copy_start_max ) {
|
||||
$to_copy_start = strpos(substr($to_text, $to_segment_start, $to_segment_len), substr($from_text, $from_copy_start, $copy_len));
|
||||
if ( $to_copy_start !== false ) {
|
||||
$to_copy_start += $to_segment_start;
|
||||
break 2;
|
||||
}
|
||||
$from_copy_start++;
|
||||
}
|
||||
$copy_len--;
|
||||
}
|
||||
}
|
||||
// match found
|
||||
if ( $copy_len ) {
|
||||
$jobs[] = array($from_segment_start, $from_copy_start, $to_segment_start, $to_copy_start);
|
||||
$result[$from_copy_start * 4 + 2] = new FineDiffCopyOp($copy_len);
|
||||
$jobs[] = array($from_copy_start + $copy_len, $from_segment_end, $to_copy_start + $copy_len, $to_segment_end);
|
||||
}
|
||||
// no match, so delete all, insert all
|
||||
else {
|
||||
$result[$from_segment_start * 4] = new FineDiffReplaceOp($from_segment_len, substr($to_text, $to_segment_start, $to_segment_len));
|
||||
}
|
||||
}
|
||||
ksort($result, SORT_NUMERIC);
|
||||
return array_values($result);
|
||||
}
|
||||
|
||||
/**
|
||||
* Efficiently fragment the text into an array according to
|
||||
* specified delimiters.
|
||||
* No delimiters means fragment into single character.
|
||||
* The array indices are the offset of the fragments into
|
||||
* the input string.
|
||||
* A sentinel empty fragment is always added at the end.
|
||||
* Careful: No check is performed as to the validity of the
|
||||
* delimiters.
|
||||
*/
|
||||
private static function extractFragments($text, $delimiters) {
|
||||
// special case: split into characters
|
||||
if ( empty($delimiters) ) {
|
||||
$chars = str_split($text, 1);
|
||||
$chars[strlen($text)] = '';
|
||||
return $chars;
|
||||
}
|
||||
$fragments = array();
|
||||
$start = $end = 0;
|
||||
for (;;) {
|
||||
$end += strcspn($text, $delimiters, $end);
|
||||
$end += strspn($text, $delimiters, $end);
|
||||
if ( $end === $start ) {
|
||||
break;
|
||||
}
|
||||
$fragments[$start] = substr($text, $start, $end - $start);
|
||||
$start = $end;
|
||||
}
|
||||
$fragments[$start] = '';
|
||||
return $fragments;
|
||||
}
|
||||
|
||||
/**
|
||||
* Stock opcode renderers
|
||||
*/
|
||||
private static function renderToTextFromOpcode($opcode, $from, $from_offset, $from_len) {
|
||||
if ( $opcode === 'c' || $opcode === 'i' ) {
|
||||
echo substr($from, $from_offset, $from_len);
|
||||
}
|
||||
}
|
||||
|
||||
private static function renderDiffToHTMLFromOpcode($opcode, $from, $from_offset, $from_len) {
|
||||
if ( $opcode === 'c' ) {
|
||||
echo htmlentities(htmlentities(substr($from, $from_offset, $from_len)));
|
||||
}
|
||||
else if ( $opcode === 'd' ) {
|
||||
$deletion = substr($from, $from_offset, $from_len);
|
||||
if ( strcspn($deletion, " \n\r") === 0 ) {
|
||||
$deletion = str_replace(array("\n","\r"), array('\n','\r'), $deletion);
|
||||
}
|
||||
echo '<del>', htmlentities(htmlentities($deletion)), '</del>';
|
||||
}
|
||||
else /* if ( $opcode === 'i' ) */ {
|
||||
echo '<ins>', htmlentities(htmlentities(substr($from, $from_offset, $from_len))), '</ins>';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -13,7 +13,7 @@
|
||||
* aliased.php/file.name.ext.
|
||||
*
|
||||
* @author Ross Golder <ross@golder.org>
|
||||
* @version $Id: aliased.php 881 2007-01-10 11:14:38Z oracleshinoda $
|
||||
* @version $Id: aliased.php 2533 2012-08-15 18:49:04Z benbe $
|
||||
*/
|
||||
|
||||
// Your config here
|
||||
@ -29,19 +29,18 @@ $path = SOURCE_ROOT.$_SERVER['PATH_INFO'];
|
||||
$base_path_len = strlen(SOURCE_ROOT);
|
||||
$real_path = realpath($path);
|
||||
if(strncmp($real_path, SOURCE_ROOT, $base_path_len)) {
|
||||
exit("Stop that.");
|
||||
exit("Access outside acceptable path.");
|
||||
}
|
||||
|
||||
// Check file exists
|
||||
if(!file_exists($path)) {
|
||||
exit("File not found ($path).");
|
||||
exit("File not found ($path).");
|
||||
}
|
||||
|
||||
// Gather contents
|
||||
$contents = file_get_contents($path);
|
||||
|
||||
// Prepare GeSHi instance
|
||||
$geshi =& new GeSHi($contents, "PHP");
|
||||
$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);
|
||||
@ -50,7 +49,7 @@ $geshi->set_line_style('font: normal normal 95% \'Courier New\', Courier, monosp
|
||||
$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');
|
||||
$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;');
|
||||
@ -60,59 +59,59 @@ $geshi->set_footer_content_style('font-family: Verdana, Arial, sans-serif; color
|
||||
"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; ?></title>
|
||||
<style type="text/css">
|
||||
<!--
|
||||
<?php
|
||||
<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>
|
||||
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
|
||||
|
@ -91,9 +91,9 @@ function make_header ( $title )
|
||||
if (cboxes[i].type == "checkbox") {
|
||||
if (state == "true") {
|
||||
cboxes[i].checked = true;
|
||||
} else if (state == "false") {
|
||||
} elseif (state == "false") {
|
||||
cboxes[i].checked = false;
|
||||
} else if (state == "invert") {
|
||||
} elseif (state == "invert") {
|
||||
cboxes[i].checked = !cboxes[i].checked;
|
||||
}
|
||||
}
|
||||
@ -164,6 +164,13 @@ if ( !$step || $step == 1 )
|
||||
$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';
|
||||
@ -173,7 +180,6 @@ if ( !$step || $step == 1 )
|
||||
$geshi_lang_path = '../geshi/';
|
||||
}
|
||||
|
||||
|
||||
if ( is_file($geshi_path) && is_readable($geshi_path) )
|
||||
{
|
||||
// Get file contents and see if GeSHi is in here
|
||||
@ -275,6 +281,10 @@ elseif ( $step == 2 )
|
||||
$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);
|
||||
}
|
||||
|
@ -6,7 +6,7 @@
|
||||
* and the language files in subdirectory "../geshi/")
|
||||
*
|
||||
* @author Nigel McNie
|
||||
* @version $Id: example.php 1422 2008-07-11 20:30:55Z milianw $
|
||||
* @version $Id: example.php 2510 2012-06-27 15:57:55Z reedy_boy $
|
||||
*/
|
||||
header('Content-Type: text/html; charset=utf-8');
|
||||
|
||||
|
@ -8,7 +8,7 @@
|
||||
* CLI mode is supported
|
||||
*
|
||||
* @author Benny Baumann
|
||||
* @version $Id: langcheck.php 2345 2010-08-29 11:12:44Z benbe $
|
||||
* @version $Id: langcheck.php 2510 2012-06-27 15:57:55Z reedy_boy $
|
||||
*/
|
||||
header('Content-Type: text/html; charset=utf-8');
|
||||
|
||||
@ -222,9 +222,9 @@ if(!$error_abort) {
|
||||
if(!$error_abort) {
|
||||
if(!defined('GESHI_LANG_ROOT')) {
|
||||
report_error(TYPE_ERROR, 'There\'s no information present on where to find the language files!');
|
||||
} else if(!is_dir(GESHI_LANG_ROOT)) {
|
||||
} elseif(!is_dir(GESHI_LANG_ROOT)) {
|
||||
report_error(TYPE_ERROR, 'The path "'.GESHI_LANG_ROOT.'" given, does not ressemble a directory!');
|
||||
} else if(!is_readable(GESHI_LANG_ROOT)) {
|
||||
} elseif(!is_readable(GESHI_LANG_ROOT)) {
|
||||
report_error(TYPE_ERROR, 'The path "'.GESHI_LANG_ROOT.'" is not readable to this script!');
|
||||
}
|
||||
}
|
||||
@ -293,7 +293,7 @@ if(!$error_abort) {
|
||||
|
||||
if(!is_file($langfile)) {
|
||||
report_error(TYPE_ERROR, 'The path "' .$langfile. '" does not ressemble a regular file!');
|
||||
} else if(!is_readable($langfile)) {
|
||||
} elseif(!is_readable($langfile)) {
|
||||
report_error(TYPE_ERROR, 'Cannot read file "' .$langfile. '"!');
|
||||
} else {
|
||||
$langfile_content = file_get_contents($langfile);
|
||||
@ -338,7 +338,7 @@ if(!$error_abort) {
|
||||
|
||||
if(!isset($language_data)) {
|
||||
report_error(TYPE_ERROR, 'Language file does not contain a $language_data structure to check!');
|
||||
} else if (!is_array($language_data)) {
|
||||
} elseif (!is_array($language_data)) {
|
||||
report_error(TYPE_ERROR, 'Language file contains a $language_data structure which is not an array!');
|
||||
}
|
||||
}
|
||||
@ -346,19 +346,19 @@ if(!$error_abort) {
|
||||
if(!$error_abort) {
|
||||
if(!isset($language_data['LANG_NAME'])) {
|
||||
report_error(TYPE_ERROR, 'Language file contains no $language_data[\'LANG_NAME\'] specification!');
|
||||
} else if (!is_string($language_data['LANG_NAME'])) {
|
||||
} 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!');
|
||||
} else if (!is_array($language_data['COMMENT_SINGLE'])) {
|
||||
} 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!');
|
||||
} else if (!is_array($language_data['COMMENT_MULTI'])) {
|
||||
} 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!');
|
||||
}
|
||||
|
||||
@ -370,7 +370,7 @@ if(!$error_abort) {
|
||||
|
||||
if(!isset($language_data['QUOTEMARKS'])) {
|
||||
report_error(TYPE_ERROR, 'Language file contains no $language_data[\'QUOTEMARKS\'] structure to check!');
|
||||
} else if (!is_array($language_data['QUOTEMARKS'])) {
|
||||
} elseif (!is_array($language_data['QUOTEMARKS'])) {
|
||||
report_error(TYPE_ERROR, 'Language file contains a $language_data[\'QUOTEMARKS\'] structure which is not an array!');
|
||||
}
|
||||
|
||||
@ -382,17 +382,17 @@ if(!$error_abort) {
|
||||
|
||||
if(!isset($language_data['ESCAPE_CHAR'])) {
|
||||
report_error(TYPE_ERROR, 'Language file contains no $language_data[\'ESCAPE_CHAR\'] specification to check!');
|
||||
} else if (!is_string($language_data['ESCAPE_CHAR'])) {
|
||||
} 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!');
|
||||
} else if (1 < strlen($language_data['ESCAPE_CHAR'])) {
|
||||
} 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!');
|
||||
} else if (!is_int($language_data['CASE_KEYWORDS'])) {
|
||||
} 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!');
|
||||
} else if (GESHI_CAPS_NO_CHANGE != $language_data['CASE_KEYWORDS'] &&
|
||||
} 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!');
|
||||
@ -400,33 +400,33 @@ if(!$error_abort) {
|
||||
|
||||
if(!isset($language_data['KEYWORDS'])) {
|
||||
report_error(TYPE_ERROR, 'Language file contains no $language_data[\'KEYWORDS\'] structure to check!');
|
||||
} else if (!is_array($language_data['KEYWORDS'])) {
|
||||
} 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!");
|
||||
} else if (!is_array($kw_value)) {
|
||||
report_error(TYPE_ERROR, "Language file contains a \$language_data['CASE_SENSITIVE']['$kw_value'] structure which is not an array!");
|
||||
} 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!');
|
||||
} else if (!is_array($language_data['SYMBOLS'])) {
|
||||
} 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!');
|
||||
} else if (!is_array($language_data['CASE_SENSITIVE'])) {
|
||||
} 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!");
|
||||
} else if (!is_bool($cs_value)) {
|
||||
} 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!");
|
||||
}
|
||||
}
|
||||
@ -434,15 +434,15 @@ if(!$error_abort) {
|
||||
|
||||
if(!isset($language_data['URLS'])) {
|
||||
report_error(TYPE_ERROR, 'Language file contains no $language_data[\'URLS\'] structure to check!');
|
||||
} else if (!is_array($language_data['URLS'])) {
|
||||
} 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!");
|
||||
} else if (!is_string($url_value)) {
|
||||
} 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!");
|
||||
} else if (preg_match('#&([^;]*(=|$))#U', $url_value)) {
|
||||
} elseif (preg_match('#&([^;]*(=|$))#U', $url_value)) {
|
||||
report_error(TYPE_ERROR, "Language file contains unescaped ampersands (&) in \$language_data['URLS']!");
|
||||
}
|
||||
}
|
||||
@ -450,9 +450,9 @@ if(!$error_abort) {
|
||||
|
||||
if(!isset($language_data['OOLANG'])) {
|
||||
report_error(TYPE_ERROR, 'Language file contains no $language_data[\'OOLANG\'] specification!');
|
||||
} else if (!is_int($language_data['OOLANG']) && !is_bool($language_data['OOLANG'])) {
|
||||
} 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!');
|
||||
} else if (false !== $language_data['OOLANG'] &&
|
||||
} 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!');
|
||||
@ -460,21 +460,21 @@ if(!$error_abort) {
|
||||
|
||||
if(!isset($language_data['OBJECT_SPLITTERS'])) {
|
||||
report_error(TYPE_ERROR, 'Language file contains no $language_data[\'OBJECT_SPLITTERS\'] structure to check!');
|
||||
} else if (!is_array($language_data['OBJECT_SPLITTERS'])) {
|
||||
} 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!');
|
||||
} else if (!is_array($language_data['REGEXPS'])) {
|
||||
} 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!');
|
||||
} else if (!is_int($language_data['STRICT_MODE_APPLIES'])) {
|
||||
} 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!');
|
||||
} else if (GESHI_MAYBE != $language_data['STRICT_MODE_APPLIES'] &&
|
||||
} 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!');
|
||||
@ -482,20 +482,20 @@ if(!$error_abort) {
|
||||
|
||||
if(!isset($language_data['SCRIPT_DELIMITERS'])) {
|
||||
report_error(TYPE_ERROR, 'Language file contains no $language_data[\'SCRIPT_DELIMITERS\'] structure to check!');
|
||||
} else if (!is_array($language_data['SCRIPT_DELIMITERS'])) {
|
||||
} 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!');
|
||||
} else if (!is_array($language_data['HIGHLIGHT_STRICT_BLOCK'])) {
|
||||
} 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!');
|
||||
} else if (1 > $language_data['TAB_WIDTH']) {
|
||||
} elseif (1 > $language_data['TAB_WIDTH']) {
|
||||
report_error(TYPE_ERROR, 'Language file contains a $language_data[\'TAB_WIDTH\'] specification which is less than 1!');
|
||||
}
|
||||
}
|
||||
@ -508,7 +508,7 @@ if(!$error_abort) {
|
||||
|
||||
if(!isset($language_data['STYLES'])) {
|
||||
report_error(TYPE_ERROR, 'Language file contains no $language_data[\'STYLES\'] structure to check!');
|
||||
} else if (!is_array($language_data['STYLES'])) {
|
||||
} 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',
|
||||
@ -517,14 +517,14 @@ if(!$error_abort) {
|
||||
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!");
|
||||
} else if (!is_array($language_data['STYLES'][$style_kind])) {
|
||||
} 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!");
|
||||
} else if (!is_string($sk_value)) {
|
||||
} 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!");
|
||||
}
|
||||
}
|
||||
@ -550,9 +550,9 @@ if(!$error_abort) {
|
||||
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]!");
|
||||
} else if (!strlen($kw)) {
|
||||
} elseif (!strlen($kw)) {
|
||||
report_error(TYPE_ERROR, "Language file contains an empty string entry at \$language_data['KEYWORDS'][$key][$id]!");
|
||||
} else if (preg_match('/^([\(\)\{\}\[\]\^=.,:;\-+\*\/%\$\"\'\?]|&[\w#]\w*;)+$/i', $kw)) {
|
||||
} 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!");
|
||||
}
|
||||
}
|
||||
@ -764,6 +764,6 @@ if ( PHP_SAPI != 'cli' ) {
|
||||
|
||||
Validation process completed in <? printf("%.2f", $time_diff); ?> seconds.
|
||||
|
||||
GeSHi © 2004-2007 Nigel McNie, 2007-2008 Benny Baumann, released under the GNU GPL
|
||||
GeSHi © 2004-2007 Nigel McNie, 2007-2012 Benny Baumann, released under the GNU GPL
|
||||
|
||||
<?php } ?>
|
@ -8,7 +8,7 @@
|
||||
*This script
|
||||
*
|
||||
* @author Nigel McNie, Benny Baumann (BenBE@geshi.org), Andreas 'Segaja' Schleifer (webmaster at segaja dot de)
|
||||
* @version $Id: langwiz.php 2285 2010-04-10 18:55:11Z segaja $
|
||||
* @version $Id: langwiz.php 2510 2012-06-27 15:57:55Z reedy_boy $
|
||||
*/
|
||||
header('Content-Type: text/html; charset=utf-8');
|
||||
|
||||
@ -81,16 +81,6 @@ function report_error($type, $message) {
|
||||
}
|
||||
}
|
||||
|
||||
function extvar($name, $default){
|
||||
if(isset($_POST[$name])) {
|
||||
return $_POST[$name];
|
||||
}
|
||||
if(isset($_GET[$name])) {
|
||||
return $_GET[$name];
|
||||
}
|
||||
return $default;
|
||||
}
|
||||
|
||||
?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
@ -146,15 +136,15 @@ function extvar($name, $default){
|
||||
margin-left: .5em;
|
||||
}
|
||||
fieldset {
|
||||
border: 1px dotted gray;
|
||||
background-color: #f0f0f0;
|
||||
margin-bottom: .5em;
|
||||
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;
|
||||
font-weight: bold;
|
||||
background-color: #f9f9f9;
|
||||
border: 1px solid #a0a0a0;
|
||||
border-width: 1px 2px 2px 1px;
|
||||
}
|
||||
fieldset table > tbody > tr > td {
|
||||
width: 20%;
|
||||
@ -202,9 +192,9 @@ if(!$error_abort) {
|
||||
if(!$error_abort) {
|
||||
if(!defined('GESHI_LANG_ROOT')) {
|
||||
report_error(TYPE_ERROR, 'There\'s no information present on where to find the language files!');
|
||||
} else if(!is_dir(GESHI_LANG_ROOT)) {
|
||||
} elseif(!is_dir(GESHI_LANG_ROOT)) {
|
||||
report_error(TYPE_ERROR, 'The path "'.GESHI_LANG_ROOT.'" given, does not ressemble a directory!');
|
||||
} else if(!is_readable(GESHI_LANG_ROOT)) {
|
||||
} elseif(!is_readable(GESHI_LANG_ROOT)) {
|
||||
report_error(TYPE_ERROR, 'The path "'.GESHI_LANG_ROOT.'" is not readable to this script!');
|
||||
}
|
||||
}
|
||||
@ -341,8 +331,6 @@ $kw_cases_sel = array(
|
||||
|
||||
echo "<pre>";
|
||||
//var_dump($languages);
|
||||
var_dump($_GET);
|
||||
var_dump($_POST);
|
||||
|
||||
foreach($post_var_names as $varName) { // export wanted variables of $_POST array...
|
||||
if(array_key_exists($varName, $_POST)) {
|
||||
@ -709,7 +697,7 @@ echo "</pre>";
|
||||
</fieldset>
|
||||
</fieldset>
|
||||
</fieldset>
|
||||
|
||||
|
||||
<fieldset>
|
||||
<legend>Keywords</legend>
|
||||
|
||||
@ -901,7 +889,7 @@ function validate_lang(){
|
||||
'str' => array(
|
||||
'qm' => array(),
|
||||
'ec' => array(
|
||||
'char' => ''
|
||||
'char' => ''
|
||||
),
|
||||
'erx' => array()
|
||||
),
|
||||
|
@ -41,7 +41,7 @@
|
||||
//
|
||||
|
||||
/** The version of this GeSHi file */
|
||||
define('GESHI_VERSION', '1.0.8.10');
|
||||
define('GESHI_VERSION', '1.0.8.11');
|
||||
|
||||
// Define the root directory for the GeSHi code tree
|
||||
if (!defined('GESHI_ROOT')) {
|
||||
@ -604,6 +604,17 @@ class GeSHi {
|
||||
$this->set_language_path($path);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the version of GeSHi
|
||||
*
|
||||
* @return string
|
||||
* @since 1 0.8.11
|
||||
*/
|
||||
function get_version()
|
||||
{
|
||||
return GESHI_VERSION;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns an error message associated with the last GeSHi operation,
|
||||
* or false if no error has occured
|
||||
@ -808,7 +819,7 @@ class GeSHi {
|
||||
}
|
||||
|
||||
// match the langname
|
||||
if (!preg_match('/\'LANG_NAME\'\s*=>\s*\'((?:[^\']|\\\')+)\'/', $data, $matches)) {
|
||||
if (!preg_match('/\'LANG_NAME\'\s*=>\s*\'((?:[^\']|\\\')+?)\'/', $data, $matches)) {
|
||||
$this->error = sprintf('Geshi::get_lang_fullname(%s): Regex can not detect language', $language);
|
||||
return false;
|
||||
}
|
||||
@ -1437,6 +1448,8 @@ class GeSHi {
|
||||
* @todo static?
|
||||
*/
|
||||
function get_language_name_from_extension( $extension, $lookup = array() ) {
|
||||
$extension = strtolower($extension);
|
||||
|
||||
if ( !is_array($lookup) || empty($lookup)) {
|
||||
$lookup = array(
|
||||
'6502acme' => array( 'a', 's', 'asm', 'inc' ),
|
||||
@ -1470,6 +1483,7 @@ class GeSHi {
|
||||
'gnuplot' => array('plt'),
|
||||
'groovy' => array('groovy'),
|
||||
'haskell' => array('hs'),
|
||||
'haxe' => array('hx'),
|
||||
'html4strict' => array('html', 'htm'),
|
||||
'ini' => array('ini', 'desktop'),
|
||||
'java' => array('java'),
|
||||
@ -1504,6 +1518,7 @@ class GeSHi {
|
||||
'smalltalk' => array('st'),
|
||||
'smarty' => array(),
|
||||
'tcl' => array('tcl'),
|
||||
'text' => array('txt'),
|
||||
'vb' => array('bas'),
|
||||
'vbnet' => array(),
|
||||
'visualfoxpro' => array(),
|
||||
@ -1518,7 +1533,8 @@ class GeSHi {
|
||||
return $lang;
|
||||
}
|
||||
}
|
||||
return '';
|
||||
|
||||
return 'text';
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1555,6 +1571,9 @@ class GeSHi {
|
||||
* @since 1.0.0
|
||||
*/
|
||||
function add_keyword($key, $word) {
|
||||
if (!is_array($this->language_data['KEYWORDS'][$key])) {
|
||||
$this->language_data['KEYWORDS'][$key] = array();
|
||||
}
|
||||
if (!in_array($word, $this->language_data['KEYWORDS'][$key])) {
|
||||
$this->language_data['KEYWORDS'][$key][] = $word;
|
||||
|
||||
@ -1816,7 +1835,7 @@ class GeSHi {
|
||||
//Decide on which style to use
|
||||
if ($style === null) { //Check if we should use default style
|
||||
unset($this->highlight_extra_lines_styles[$lines]);
|
||||
} else if ($style === false) { //Check if to remove this line
|
||||
} elseif ($style === false) { //Check if to remove this line
|
||||
unset($this->highlight_extra_lines[$lines]);
|
||||
unset($this->highlight_extra_lines_styles[$lines]);
|
||||
} else {
|
||||
@ -1988,7 +2007,7 @@ class GeSHi {
|
||||
$this->language_data['SYMBOL_DATA'][$symbols] = 0;
|
||||
if (isset($symbols[1])) { // multiple chars
|
||||
$symbol_preg_multi[] = preg_quote($symbols, '/');
|
||||
} else if ($symbols == '-') {
|
||||
} elseif ($symbols == '-') {
|
||||
// don't trigger range out of order error
|
||||
$symbol_preg_single[] = '\-';
|
||||
} else { // single char
|
||||
@ -2392,7 +2411,7 @@ class GeSHi {
|
||||
foreach ($this->language_data['QUOTEMARKS'] as $quotemark) {
|
||||
if (!isset($is_string_starter[$quotemark[0]])) {
|
||||
$is_string_starter[$quotemark[0]] = (string)$quotemark;
|
||||
} else if (is_string($is_string_starter[$quotemark[0]])) {
|
||||
} elseif (is_string($is_string_starter[$quotemark[0]])) {
|
||||
$is_string_starter[$quotemark[0]] = array(
|
||||
$is_string_starter[$quotemark[0]],
|
||||
$quotemark);
|
||||
@ -2478,7 +2497,7 @@ class GeSHi {
|
||||
continue;
|
||||
}
|
||||
$match_i = $comment_regexp_cache_per_key[$comment_key]['pos'];
|
||||
} else if (
|
||||
} elseif (
|
||||
//This is to allow use of the offset parameter in preg_match and stay as compatible with older PHP versions as possible
|
||||
(GESHI_PHP_PRE_433 && preg_match($regexp, substr($part, $i), $match, PREG_OFFSET_CAPTURE)) ||
|
||||
(!GESHI_PHP_PRE_433 && preg_match($regexp, $part, $match, PREG_OFFSET_CAPTURE, $i))
|
||||
@ -2586,7 +2605,7 @@ class GeSHi {
|
||||
continue;
|
||||
}
|
||||
$match_i = $escape_regexp_cache_per_key[$escape_key]['pos'];
|
||||
} else if (
|
||||
} elseif (
|
||||
//This is to allow use of the offset parameter in preg_match and stay as compatible with older PHP versions as possible
|
||||
(GESHI_PHP_PRE_433 && preg_match($regexp, substr($part, $start), $match, PREG_OFFSET_CAPTURE)) ||
|
||||
(!GESHI_PHP_PRE_433 && preg_match($regexp, $part, $match, PREG_OFFSET_CAPTURE, $start))
|
||||
@ -2656,13 +2675,13 @@ class GeSHi {
|
||||
// don't put a newline around newlines
|
||||
$string .= "</span>\n";
|
||||
$start = $es_pos + 2;
|
||||
} else if (ord($es_char) >= 128) {
|
||||
} elseif (ord($es_char) >= 128) {
|
||||
//This is an non-ASCII char (UTF8 or single byte)
|
||||
//This code tries to work around SF#2037598 ...
|
||||
if(function_exists('mb_substr')) {
|
||||
$es_char_m = mb_substr(substr($part, $es_pos+1, 16), 0, 1, $this->encoding);
|
||||
$string .= $es_char_m . '</span>';
|
||||
} else if (!GESHI_PHP_PRE_433 && 'utf-8' == $this->encoding) {
|
||||
} elseif (!GESHI_PHP_PRE_433 && 'utf-8' == $this->encoding) {
|
||||
if(preg_match("/[\xC2-\xDF][\x80-\xBF]".
|
||||
"|\xE0[\xA0-\xBF][\x80-\xBF]".
|
||||
"|[\xE1-\xEC\xEE\xEF][\x80-\xBF]{2}".
|
||||
@ -2684,7 +2703,7 @@ class GeSHi {
|
||||
$string .= $this->hsc($es_char) . '</span>';
|
||||
$start = $es_pos + 2;
|
||||
}
|
||||
} else if ($next_escape_regexp_pos < $length &&
|
||||
} elseif ($next_escape_regexp_pos < $length &&
|
||||
$next_escape_regexp_pos < $close_pos) {
|
||||
$es_pos = $next_escape_regexp_pos;
|
||||
//Add the stuff not in the string yet ...
|
||||
@ -2728,7 +2747,7 @@ class GeSHi {
|
||||
$string = '';
|
||||
$i = $start - 1;
|
||||
continue;
|
||||
} else if ($this->lexic_permissions['STRINGS'] && $hq && $hq[0] == $char &&
|
||||
} elseif ($this->lexic_permissions['STRINGS'] && $hq && $hq[0] == $char &&
|
||||
substr($part, $i, $hq_strlen) == $hq && ($i != $next_comment_regexp_pos)) {
|
||||
// The start of a hard quoted string
|
||||
if (!$this->use_classes) {
|
||||
@ -2886,7 +2905,7 @@ class GeSHi {
|
||||
continue;
|
||||
}
|
||||
$match_i = $comment_multi_cache_per_key[$open];
|
||||
} else if (($match_i = stripos($part, $open, $i)) !== false) {
|
||||
} elseif (($match_i = stripos($part, $open, $i)) !== false) {
|
||||
$comment_multi_cache_per_key[$open] = $match_i;
|
||||
} else {
|
||||
$comment_multi_cache_per_key[$open] = false;
|
||||
@ -2983,7 +3002,7 @@ class GeSHi {
|
||||
continue;
|
||||
}
|
||||
$match_i = $comment_single_cache_per_key[$comment_key];
|
||||
} else if (
|
||||
} elseif (
|
||||
// case sensitive comments
|
||||
($this->language_data['CASE_SENSITIVE'][GESHI_COMMENTS] &&
|
||||
($match_i = stripos($part, $comment_mark, $i)) !== false) ||
|
||||
@ -3140,10 +3159,10 @@ class GeSHi {
|
||||
$IN_TAG = false;
|
||||
}
|
||||
$lines[$key] .= $char;
|
||||
} else if ('<' == $char) {
|
||||
} elseif ('<' == $char) {
|
||||
$IN_TAG = true;
|
||||
$lines[$key] .= '<';
|
||||
} else if ('&' == $char) {
|
||||
} elseif ('&' == $char) {
|
||||
$substr = substr($line, $i + 3, 5);
|
||||
$posi = strpos($substr, ';');
|
||||
if (false === $posi) {
|
||||
@ -3152,7 +3171,7 @@ class GeSHi {
|
||||
$pos -= $posi+2;
|
||||
}
|
||||
$lines[$key] .= $char;
|
||||
} else if ("\t" == $char) {
|
||||
} elseif ("\t" == $char) {
|
||||
$str = '';
|
||||
// OPTIMISE - move $strs out. Make an array:
|
||||
// $tabs = array(
|
||||
@ -3173,7 +3192,7 @@ class GeSHi {
|
||||
$lines[$key] .= substr($line, $i + 1);
|
||||
break;
|
||||
}
|
||||
} else if (0 == $pos && ' ' == $char) {
|
||||
} elseif (0 == $pos && ' ' == $char) {
|
||||
$lines[$key] .= ' ';
|
||||
++$pos;
|
||||
} else {
|
||||
@ -3231,6 +3250,7 @@ class GeSHi {
|
||||
function handle_keyword_replace($match) {
|
||||
$k = $this->_kw_replace_group;
|
||||
$keyword = $match[0];
|
||||
$keyword_match = $match[1];
|
||||
|
||||
$before = '';
|
||||
$after = '';
|
||||
@ -3248,12 +3268,12 @@ class GeSHi {
|
||||
if (!$this->language_data['CASE_SENSITIVE'][$k] &&
|
||||
strpos($this->language_data['URLS'][$k], '{FNAME}') !== false) {
|
||||
foreach ($this->language_data['KEYWORDS'][$k] as $word) {
|
||||
if (strcasecmp($word, $keyword) == 0) {
|
||||
if (strcasecmp($word, $keyword_match) == 0) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
$word = $keyword;
|
||||
$word = $keyword_match;
|
||||
}
|
||||
|
||||
$before = '<|UR1|"' .
|
||||
@ -3367,7 +3387,7 @@ class GeSHi {
|
||||
|
||||
foreach (array_keys($this->language_data['KEYWORDS']) as $k) {
|
||||
if (!isset($this->lexic_permissions['KEYWORDS'][$k]) ||
|
||||
$this->lexic_permissions['KEYWORDS'][$k]) {
|
||||
$this->lexic_permissions['KEYWORDS'][$k]) {
|
||||
|
||||
$case_sensitive = $this->language_data['CASE_SENSITIVE'][$k];
|
||||
$modifiers = $case_sensitive ? '' : 'i';
|
||||
@ -3991,7 +4011,7 @@ class GeSHi {
|
||||
$parsed_code .= $this->line_numbers_start + $i;
|
||||
if ($close) {
|
||||
$parsed_code .= str_repeat('</span>', $close);
|
||||
} else if ($i != $n) {
|
||||
} elseif ($i != $n) {
|
||||
$parsed_code .= "\n";
|
||||
}
|
||||
}
|
||||
@ -4123,10 +4143,10 @@ class GeSHi {
|
||||
if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) {
|
||||
if ($this->header_type == GESHI_HEADER_PRE) {
|
||||
return "<pre$attributes>$header<ol$ol_attributes>";
|
||||
} else if ($this->header_type == GESHI_HEADER_DIV ||
|
||||
} elseif ($this->header_type == GESHI_HEADER_DIV ||
|
||||
$this->header_type == GESHI_HEADER_PRE_VALID) {
|
||||
return "<div$attributes>$header<ol$ol_attributes>";
|
||||
} else if ($this->header_type == GESHI_HEADER_PRE_TABLE) {
|
||||
} elseif ($this->header_type == GESHI_HEADER_PRE_TABLE) {
|
||||
return "<table$attributes>$header<tbody><tr class=\"li1\">";
|
||||
}
|
||||
} else {
|
||||
|
@ -4,7 +4,7 @@
|
||||
* ------
|
||||
* Author: Jason Curl (jason.curl@continental-corporation.com)
|
||||
* Copyright: (c) 2009 Jason Curl
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2009/09/05
|
||||
*
|
||||
* 4CS language file for GeSHi.
|
||||
|
@ -4,7 +4,7 @@
|
||||
* -------
|
||||
* Author: Warren Willmey
|
||||
* Copyright: (c) 2010 Warren Willmey.
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2010/05/26
|
||||
*
|
||||
* MOS 6502 (more specifically 6510) ACME Cross Assembler 0.93 by Marco Baye language file for GeSHi.
|
||||
|
@ -4,7 +4,7 @@
|
||||
* -------
|
||||
* Author: Warren Willmey
|
||||
* Copyright: (c) 2010 Warren Willmey.
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2010/06/07
|
||||
*
|
||||
* MOS 6502 (6510) Kick Assembler 3.13 language file for GeSHi.
|
||||
|
@ -4,7 +4,7 @@
|
||||
* -------
|
||||
* Author: Warren Willmey
|
||||
* Copyright: (c) 2010 Warren Willmey.
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2010/06/02
|
||||
*
|
||||
* MOS 6502 (6510) TASM/64TASS (64TASS being the super set of TASM) language file for GeSHi.
|
||||
|
@ -4,7 +4,7 @@
|
||||
* -------
|
||||
* Author: Warren Willmey
|
||||
* Copyright: (c) 2010 Warren Willmey.
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2010/06/09
|
||||
*
|
||||
* Motorola 68000 - HiSoft Devpac ST 2 Assembler language file for GeSHi.
|
||||
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2004/06/04
|
||||
*
|
||||
* ABAP language file for GeSHi.
|
||||
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2004/06/20
|
||||
*
|
||||
* Actionscript language file for GeSHi.
|
||||
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2007/11/26
|
||||
*
|
||||
* ActionScript3 language file for GeSHi.
|
||||
@ -72,7 +72,7 @@ $language_data = array (
|
||||
'private', 'null', 'new', 'is', 'internal', 'instanceof', 'in',
|
||||
'import', 'if', 'get', 'for', 'false', 'else', 'each', 'do',
|
||||
'delete', 'default', 'continue', 'catch', 'case', 'break', 'as',
|
||||
'extends'
|
||||
'extends', 'override'
|
||||
),
|
||||
2 => array(
|
||||
'var'
|
||||
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2004/07/29
|
||||
*
|
||||
* Ada language file for GeSHi.
|
||||
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2010/04/24
|
||||
*
|
||||
* ALGOL 68 language file for GeSHi.
|
||||
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2004/29/07
|
||||
*
|
||||
* Apache language file for GeSHi.
|
||||
|
@ -4,7 +4,7 @@
|
||||
* --------
|
||||
* Author: Stephan Klimek (http://www.initware.org)
|
||||
* Copyright: Stephan Klimek (http://www.initware.org)
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2005/07/20
|
||||
*
|
||||
* AppleScript language file for GeSHi.
|
||||
|
@ -4,7 +4,7 @@
|
||||
* ----------
|
||||
* Author: Milian Wolff (mail@milianw.de)
|
||||
* Copyright: (c) 2008 Milian Wolff (http://milianw.de)
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2008/06/17
|
||||
*
|
||||
* Apt sources.list language file for GeSHi.
|
||||
|
3318
htdocs/application/libraries/geshi/geshi/arm.php
Normal file
3318
htdocs/application/libraries/geshi/geshi/arm.php
Normal file
File diff suppressed because it is too large
Load Diff
@ -3,15 +3,56 @@
|
||||
* asm.php
|
||||
* -------
|
||||
* Author: Tux (tux@inmail.cz)
|
||||
* Copyright: (c) 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter)
|
||||
* Release Version: 1.0.8.10
|
||||
* Copyright: (c) 2004 Tux (http://tux.a4.cz/),
|
||||
* 2004-2009 Nigel McNie (http://qbnz.com/highlighter),
|
||||
* 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
|
||||
* Date Started: 2004/07/27
|
||||
*
|
||||
* x86 Assembler language file for GeSHi.
|
||||
* Words are from SciTe configuration file (based on NASM syntax)
|
||||
* Based on the following documents:
|
||||
* - "Intel64 and IA-32 Architectures Programmer's Reference Manual
|
||||
* Volume 2 (2A & 2B): Instructions Set Reference, A-Z",
|
||||
* Order Number 25383-039US, May 2011
|
||||
* - "Intel Advanced Vector Extensions Programming Reference",
|
||||
* Order Number 319433-011, June 2011
|
||||
* - "AMD64 Architecture Programmer's Manual Volume 3:
|
||||
* General-Purpose and System Instructions", Publication No. 24594,
|
||||
* Revision 3.15, November 2009
|
||||
* - "AMD64 Architecture Programmer's Manual Volume 4:
|
||||
* 128-Bit and 256-Bit Media Instructions", Publication No. 26568,
|
||||
* Revision 3.12, May 2011
|
||||
* - "AMD64 Architecture Programmer's Manual Volume 5:
|
||||
* 64-Bit Media and x87 Floating-Point Instructions",
|
||||
* Publication No. 26569, Revision 3.11, December 2009
|
||||
* - "AMD64 Technology Lightweight Profiling Specification",
|
||||
* Publication No. 43724, Revision 3.08, August 2010
|
||||
* - "Application Note 108: Cyrix Extended MMX Instruction Set"
|
||||
* - "VIA Padlock Programming Guide", 3rd May 2005
|
||||
* - http://en.wikipedia.org/wiki/X86_instruction_listings
|
||||
* - NASM 2.10rc8 Online Documenation at
|
||||
* http://www.nasm.us/xdoc/2.10rc8/html/nasmdoc0.html
|
||||
* Color scheme is taken from SciTE. Previous versions of this file
|
||||
* also used words from SciTE configuration file (based on NASM syntax)
|
||||
*
|
||||
* CHANGES
|
||||
* -------
|
||||
* 2011/10/07
|
||||
* - Rearranged instructions and registers into groups
|
||||
* - Updated to support the following extensions
|
||||
* - CMOV, BMI1, BMI2, TBM, FSGSBASE
|
||||
* - LZCNT, TZCNT, POPCNT, MOVBE, CRC32
|
||||
* - MMX, MMX+, EMMX
|
||||
* - 3dnow!, 3dnow!+, 3dnow! Geode, 3dnow! Prefetch
|
||||
* - SSE, SSE2, SSE3, SSSE3, SSE4A, SSE4.1, SSE4.2
|
||||
* - AVX, AVX2, XOP, FMA3, FMA4, CVT16
|
||||
* - VMX, SVM
|
||||
* - AES, PCLMULQDQ, Padlock, RDRAND
|
||||
* - Updated NASM macros and directives
|
||||
* 2010/07/01 (1.0.8.11)
|
||||
* - Added MMX/SSE/new x86-64 registers, MMX/SSE (up to 4.2) instructions
|
||||
* 2008/05/23 (1.0.7.22)
|
||||
* - Added description of extra language features (SF#1970248)
|
||||
* 2004/11/27 (1.0.2)
|
||||
@ -55,26 +96,71 @@ $language_data = array (
|
||||
'QUOTEMARKS' => array("'", '"'),
|
||||
'ESCAPE_CHAR' => '',
|
||||
'KEYWORDS' => array(
|
||||
/*CPU*/
|
||||
/* General-Purpose */
|
||||
1 => array(
|
||||
'aaa','aad','aam','aas','adc','add','and','call','cbw','clc','cld','cli','cmc','cmp',
|
||||
'cmps','cmpsb','cmpsw','cwd','daa','das','dec','div','esc','hlt','idiv','imul','in','inc',
|
||||
'int','into','iret','ja','jae','jb','jbe','jc','jcxz','je','jg','jge','jl','jle','jmp',
|
||||
'jna','jnae','jnb','jnbe','jnc','jne','jng','jnge','jnl','jnle','jno','jnp','jns','jnz',
|
||||
'jo','jp','jpe','jpo','js','jz','lahf','lds','lea','les','lods','lodsb','lodsw','loop',
|
||||
'loope','loopew','loopne','loopnew','loopnz','loopnzw','loopw','loopz','loopzw','mov',
|
||||
'movs','movsb','movsw','mul','neg','nop','not','or','out','pop','popf','push','pushf',
|
||||
'rcl','rcr','ret','retf','retn','rol','ror','sahf','sal','sar','sbb','scas','scasb','scasw',
|
||||
'shl','shr','stc','std','sti','stos','stosb','stosw','sub','test','wait','xchg','xlat',
|
||||
'xlatb','xor','bound','enter','ins','insb','insw','leave','outs','outsb','outsw','popa','pusha','pushw',
|
||||
'arpl','lar','lsl','sgdt','sidt','sldt','smsw','str','verr','verw','clts','lgdt','lidt','lldt','lmsw','ltr',
|
||||
'bsf','bsr','bt','btc','btr','bts','cdq','cmpsd','cwde','insd','iretd','iretdf','iretf',
|
||||
'jecxz','lfs','lgs','lodsd','loopd','looped','loopned','loopnzd','loopzd','lss','movsd',
|
||||
'movsx','movzx','outsd','popad','popfd','pushad','pushd','pushfd','scasd','seta','setae',
|
||||
'setb','setbe','setc','sete','setg','setge','setl','setle','setna','setnae','setnb','setnbe',
|
||||
'setnc','setne','setng','setnge','setnl','setnle','setno','setnp','setns','setnz','seto','setp',
|
||||
'setpe','setpo','sets','setz','shld','shrd','stosd','bswap','cmpxchg','invd','invlpg','wbinvd','xadd','lock',
|
||||
'rep','repe','repne','repnz','repz'
|
||||
/* BCD instructions */
|
||||
'aaa','aad','aam','aas','daa','das',
|
||||
/* Control flow instructions */
|
||||
'ja','jae','jb','jbe','jc','je','jg','jge','jl','jle','jmp','jna',
|
||||
'jnae','jnb','jnbe','jnc','jne','jng','jnge','jnl','jnle','jno','jnp','jns','jnz',
|
||||
'jo','jp','jpe','jpo','js','jz','jcxz','jecxz','jrcxz','loop','loope','loopne',
|
||||
'call','ret','enter','leave','syscall','sysenter','int','into',
|
||||
/* Predicate instructions */
|
||||
'seta','setae','setb','setbe','setc','sete','setg','setge','setl','setle','setna',
|
||||
'setnae','setnb','setnbe','setnc','setne','setng','setnge','setnl','setnle','setno',
|
||||
'setnp','setns','setnz','seto','setp','setpe','setpo','sets','setz','salc',
|
||||
/* Conditional move instructions */
|
||||
'cmovo','cmovno','cmovb','cmovc','cmovnae','cmovae','cmovnb','cmovnc','cmove','cmovz',
|
||||
'cmovne','cmovnz','cmovbe','cmovna','cmova','cmovnbe','cmovs','cmovns','cmovp','cmovpe',
|
||||
'cmovnp','cmovpo','cmovl','cmovnge','cmovge','cmovnl','cmovle','cmovng','cmovg','cmovnle',
|
||||
/* ALU instructions */
|
||||
'add','sub','adc','sbb','neg','cmp','inc','dec','and','or','xor','not','test',
|
||||
'shl','shr','sal','sar','shld','shrd','rol','ror','rcl','rcr',
|
||||
'cbw','cwd','cwde','cdq','cdqe','cqo','bsf','bsr','bt','btc','btr','bts',
|
||||
'idiv','imul','div','mul','bswap','nop',
|
||||
/* Memory instructions */
|
||||
'lea','mov','movsx','movsxd','movzx','xlatb','bound','xchg','xadd','cmpxchg','cmpxchg8b','cmpxchg16b',
|
||||
/* Stack instructions */
|
||||
'push','pop','pusha','popa','pushad','popad','pushf','popf','pushfd','popfd','pushfq','popfq',
|
||||
/* EFLAGS manipulations instructions */
|
||||
'clc','cld','stc','std','cmc','lahf','sahf',
|
||||
/* Prefix instructions */
|
||||
'lock','rep','repe','repz','repne','repnz',
|
||||
/* String instructions */
|
||||
'cmps','cmpsb','cmpsw',/*'cmpsd',*/ 'cmpsq', /*CMPSD conflicts with the SSE2 instructions of the same name*/
|
||||
'movs','movsb','movsw',/*'movsd',*/ 'movsq', /*MOVSD conflicts with the SSE2 instructions of the same name*/
|
||||
'scas','scasb','scasw','scasd','scasq',
|
||||
'stos','stosb','stosw','stosd','stosq',
|
||||
'lods','lodsb','lodsw','lodsd','lodsq',
|
||||
/* Information instructions */
|
||||
'cpuid','rdtsc','rdtscp','rdpmc','xgetbv',
|
||||
'sgdt','sidt','sldt','smsw','str','lar',
|
||||
/* LWP instructions */
|
||||
'llwpcb','slwpcb','lwpval','lwpins',
|
||||
/* Instructions from miscellaneous extensions */
|
||||
'crc32','popcnt','lzcnt','tzcnt','movbe','pclmulqdq','rdrand',
|
||||
/* FSGSBASE instructions */
|
||||
'rdfsbase','rdgsbase','wrfsbase','wrgsbase',
|
||||
/* BMI1 instructions */
|
||||
'andn','bextr','blsi','blsmk','blsr',
|
||||
/* BMI2 instructions */
|
||||
'bzhi','mulx','pdep','pext','rorx','sarx','shlx','shrx',
|
||||
/* TBM instructions */
|
||||
'blcfill','blci','blcic','blcmsk','blcs','blsfill','blsic','t1mskc','tzmsk',
|
||||
/* Legacy instructions */
|
||||
'arpl','ud2','lds','les','lfs','lgs','lss','lsl','verr','verw',
|
||||
/* Privileged instructions */
|
||||
'cli','sti','clts','hlt','rsm','in','insb','insw','insd',
|
||||
'out','outsb','outsw','outsd','clflush','invd','invlpg','invpcid','wbinvd',
|
||||
'iret','iretd','iretq','sysexit','sysret','lidt','lgdt','lldt','lmsw','ltr',
|
||||
'monitor','mwait','rdmsr','wrmsr','swapgs',
|
||||
'fxsave','fxsave64','fxrstor','fxrstor64',
|
||||
'xsave','xsaveopt','xrstor','xsetbv','getsec',
|
||||
/* VMX instructions */
|
||||
'invept','invvpid','vmcall','vmclear','vmlaunch','vmresume',
|
||||
'vmptrld','vmptrst','vmread','vmwrite','vmxoff','vmxon',
|
||||
/* SVM (AMD-V) instructions */
|
||||
'invlpga','skinit','clgi','stgi','vmload','vmsave','vmmcall','vmrun'
|
||||
),
|
||||
/*FPU*/
|
||||
2 => array(
|
||||
@ -87,56 +173,350 @@ $language_data = array (
|
||||
'fsavew','fscale','fsqrt','fst','fstcw','fstenv','fstenvw','fstp','fstsw','fsub','fsubp',
|
||||
'fsubr','fsubrp','ftst','fwait','fxam','fxch','fxtract','fyl2x','fyl2xp1',
|
||||
'fsetpm','fcos','fldenvd','fnsaved','fnstenvd','fprem1','frstord','fsaved','fsin','fsincos',
|
||||
'fstenvd','fucom','fucomp','fucompp'
|
||||
'fstenvd','fucom','fucomp','fucompp','ffreep',
|
||||
/* FCMOV instructions */
|
||||
'fcomi','fcomip','fucomi','fucomip',
|
||||
'fcmovb','fcmove','fcmovbe','fcmovu','fcmovnb','fcmovne','fcmovnbe','fcmovnu',
|
||||
/* SSE3 instructions */
|
||||
'fisttp'
|
||||
),
|
||||
/*SIMD*/
|
||||
3 => array(
|
||||
/* MMX instructions */
|
||||
'movd','movq',
|
||||
'paddb','paddw','paddd','paddsb','paddsw','paddusb','paddusw',
|
||||
'psubb','psubw','psubd','psubsb','psubsw','psubusb','psubusw',
|
||||
'pand','pandn','por','pxor',
|
||||
'pcmpeqb','pcmpeqd','pcmpeqw','pcmpgtb','pcmpgtd','pcmpgtw',
|
||||
'pmaddwd','pmulhw','pmullw',
|
||||
'psllw','pslld','psllq','psrlw','psrld','psrlq','psraw','psrad',
|
||||
'packuswb','packsswb','packssdw',
|
||||
'punpcklbw','punpcklwd','punpckldq','punpckhbw','punpckhwd','punpckhdq',
|
||||
'emms',
|
||||
/* MMX+ instructions */
|
||||
'pavgb','pavgw',
|
||||
'pextrw','pinsrw','pmovmskb',
|
||||
'pmaxsw','pmaxub','pminsw','pminub',
|
||||
'pmulhuw','psadbw','pshufw',
|
||||
'prefetchnta','prefetcht0','prefetcht1','prefetcht2',
|
||||
'maskmovq','movntq','sfence',
|
||||
/* EMMX instructions (only available on Cyrix MediaGXm) */
|
||||
'paddsiw','psubsiw',
|
||||
/*'pmulhrw',*/'pmachriw','pmulhriw', /* PMULHRW conflicts with the 3dnow! instruction of the same name */
|
||||
'pmagw','pdistib','paveb',
|
||||
'pmvzb','pmvnzb','pmvlzb','pmvgezb',
|
||||
/* 3dnow! instructions! */
|
||||
'pfacc','pfadd','pfsub','pfsubr','pfmul',
|
||||
'pfcmpeq','pfcmpge','pfcmpgt',
|
||||
'pfmax','pfmin',
|
||||
'pfrcp','pfrcpit1','pfrcpit2','pfrsqit1','pfrsqrt',
|
||||
'pi2fd','pf2id',
|
||||
'pavgusb','pmulhrw',
|
||||
'femms',
|
||||
/* 3dnow!+ instructions */
|
||||
'pfnacc','pfpnacc','pi2fw','pf2iw','pswapd',
|
||||
/* 3dnow! Geode instructions */
|
||||
'pfrsqrtv','pfrcpv',
|
||||
/* 3dnow! Prefetch instructions */
|
||||
'prefetch','prefetchw',
|
||||
/* SSE instructions */
|
||||
'addss','addps','subss','subps',
|
||||
'mulss','mulps','divss','divps','sqrtss','sqrtps',
|
||||
'rcpss','rcpps','rsqrtss','rsqrtps',
|
||||
'maxss','maxps','minss','minps',
|
||||
'cmpss','comiss','ucomiss','cmpps',
|
||||
'cmpeqss','cmpltss','cmpless','cmpunordss','cmpneqss','cmpnltss','cmpnless','cmpordss',
|
||||
'cmpeqps','cmpltps','cmpleps','cmpunordps','cmpneqps','cmpnltps','cmpnleps','cmpordps',
|
||||
'andnps','andps','orps','xorps',
|
||||
'cvtsi2ss','cvtss2si','cvttss2si',
|
||||
'cvtpi2ps','cvtps2pi','cvttps2pi',
|
||||
'movss','movlps','movhps','movlhps','movhlps','movaps','movups','movntps','movmskps',
|
||||
'shufps','unpckhps','unpcklps',
|
||||
'ldmxcsr','stmxcsr',
|
||||
/* SSE2 instructions */
|
||||
'addpd','addsd','subpd','subsd',
|
||||
'mulsd','mulpd','divsd','divpd','sqrtsd','sqrtpd',
|
||||
'maxsd','maxpd','minsd','minpd',
|
||||
'cmpsd','comisd','ucomisd','cmppd',
|
||||
'cmpeqsd','cmpltsd','cmplesd','cmpunordsd','cmpneqsd','cmpnltsd','cmpnlesd','cmpordsd',
|
||||
'cmpeqpd','cmpltpd','cmplepd','cmpunordpd','cmpneqpd','cmpnltpd','cmpnlepd','cmpordpd',
|
||||
'andnpd','andpd','orpd','xorpd',
|
||||
'cvtsd2ss','cvtpd2ps','cvtss2sd','cvtps2pd',
|
||||
'cvtdq2ps','cvtps2dq','cvttps2dq',
|
||||
'cvtdq2pd','cvtpd2dq','cvttpd2dq',
|
||||
'cvtsi2sd','cvtsd2si','cvttsd2si',
|
||||
'cvtpi2pd','cvtpd2pi','cvttpd2pi',
|
||||
'movsd','movlpd','movhpd','movapd','movupd','movntpd','movmskpd',
|
||||
'shufpd','unpckhpd','unpcklpd',
|
||||
'movnti','movdqa','movdqu','movntdq','maskmovdqu',
|
||||
'movdq2q','movq2dq',
|
||||
'paddq','psubq','pmuludq',
|
||||
'pslldq','psrldq',
|
||||
'punpcklqdq','punpckhqdq',
|
||||
'pshufhw','pshuflw','pshufd',
|
||||
'lfence','mfence',
|
||||
/* SSE3 instructions */
|
||||
'addsubps','addsubpd',
|
||||
'haddps','haddpd','hsubps','hsubpd',
|
||||
'movsldup','movshdup','movddup',
|
||||
'lddqu',
|
||||
/* SSSE3 instructions */
|
||||
'psignb','psignw','psignd',
|
||||
'pabsb','pabsw','pabsd',
|
||||
'palignr','pshufb',
|
||||
'pmulhrsw','pmaddubsw',
|
||||
'phaddw','phaddd','phaddsw',
|
||||
'phsubw','phsubd','phsubsw',
|
||||
/* SSE4A instructions */
|
||||
'extrq','insertq','movntsd','movntss',
|
||||
/* SSE4.1 instructions */
|
||||
'mpsadbw','phminposuw',
|
||||
'pmuldq','pmulld',
|
||||
'dpps','dppd',
|
||||
'blendps','blendpd','blendvps','blendvpd','pblendvb','pblendw',
|
||||
'pmaxsb','pmaxuw','pmaxsd','pmaxud','pminsb','pminuw','pminsd','pminud',
|
||||
'roundps','roundss','roundpd','roundsd',
|
||||
'insertps','pinsrb','pinsrd','pinsrq',
|
||||
'extractps','pextrb','pextrd','pextrq',
|
||||
'pmovsxbw','pmovsxbd','pmovsxbq','pmovsxwd','pmovsxwq','pmovsxdq',
|
||||
'pmovzxbw','pmovzxbd','pmovzxbq','pmovzxwd','pmovzxwq','pmovzxdq',
|
||||
'ptest',
|
||||
'pcmpeqq',
|
||||
'packusdw',
|
||||
'movntdqa',
|
||||
/* SSE4.2 instructions */
|
||||
'pcmpgtq',
|
||||
'pcmpestri','pcmpestrm','pcmpistri','pcmpistrm',
|
||||
/* AES instructions */
|
||||
'aesenc','aesenclast','aesdec','aesdeclast','aeskeygenassist','aesimc',
|
||||
/* VIA Padlock instructions */
|
||||
'xcryptcbc','xcryptcfb','xcryptctr','xcryptecb','xcryptofb',
|
||||
'xsha1','xsha256','montmul','xstore',
|
||||
/* AVX instructions */
|
||||
'vaddss','vaddps','vaddsd','vaddpd','vsubss','vsubps','vsubsd','vsubpd',
|
||||
'vaddsubps','vaddsubpd',
|
||||
'vhaddps','vhaddpd','vhsubps','vhsubpd',
|
||||
'vmulss','vmulps','vmulsd','vmulpd',
|
||||
'vmaxss','vmaxps','vmaxsd','vmaxpd','vminss','vminps','vminsd','vminpd',
|
||||
'vandps','vandpd','vandnps','vandnpd','vorps','vorpd','vxorps','vxorpd',
|
||||
'vblendps','vblendpd','vblendvps','vblendvpd',
|
||||
'vcmpss','vcomiss','vucomiss','vcmpsd','vcomisd','vucomisd','vcmpps','vcmppd',
|
||||
'vcmpeqss','vcmpltss','vcmpless','vcmpunordss','vcmpneqss','vcmpnltss','vcmpnless','vcmpordss',
|
||||
'vcmpeq_uqss','vcmpngess','vcmpngtss','vcmpfalsess','vcmpneq_oqss','vcmpgess','vcmpgtss','vcmptruess',
|
||||
'vcmpeq_osss','vcmplt_oqss','vcmple_oqss','vcmpunord_sss','vcmpneq_usss','vcmpnlt_uqss','vcmpnle_uqss','vcmpord_sss',
|
||||
'vcmpeq_usss','vcmpnge_uqss','vcmpngt_uqss','vcmpfalse_osss','vcmpneq_osss','vcmpge_oqss','vcmpgt_oqss','vcmptrue_usss',
|
||||
'vcmpeqps','vcmpltps','vcmpleps','vcmpunordps','vcmpneqps','vcmpnltps','vcmpnleps','vcmpordps',
|
||||
'vcmpeq_uqps','vcmpngeps','vcmpngtps','vcmpfalseps','vcmpneq_oqps','vcmpgeps','vcmpgtps','vcmptrueps',
|
||||
'vcmpeq_osps','vcmplt_oqps','vcmple_oqps','vcmpunord_sps','vcmpneq_usps','vcmpnlt_uqps','vcmpnle_uqps','vcmpord_sps',
|
||||
'vcmpeq_usps','vcmpnge_uqps','vcmpngt_uqps','vcmpfalse_osps','vcmpneq_osps','vcmpge_oqps','vcmpgt_oqps','vcmptrue_usps',
|
||||
'vcmpeqsd','vcmpltsd','vcmplesd','vcmpunordsd','vcmpneqsd','vcmpnltsd','vcmpnlesd','vcmpordsd',
|
||||
'vcmpeq_uqsd','vcmpngesd','vcmpngtsd','vcmpfalsesd','vcmpneq_oqsd','vcmpgesd','vcmpgtsd','vcmptruesd',
|
||||
'vcmpeq_ossd','vcmplt_oqsd','vcmple_oqsd','vcmpunord_ssd','vcmpneq_ussd','vcmpnlt_uqsd','vcmpnle_uqsd','vcmpord_ssd',
|
||||
'vcmpeq_ussd','vcmpnge_uqsd','vcmpngt_uqsd','vcmpfalse_ossd','vcmpneq_ossd','vcmpge_oqsd','vcmpgt_oqsd','vcmptrue_ussd',
|
||||
'vcmpeqpd','vcmpltpd','vcmplepd','vcmpunordpd','vcmpneqpd','vcmpnltpd','vcmpnlepd','vcmpordpd',
|
||||
'vcmpeq_uqpd','vcmpngepd','vcmpngtpd','vcmpfalsepd','vcmpneq_oqpd','vcmpgepd','vcmpgtpd','vcmptruepd',
|
||||
'vcmpeq_ospd','vcmplt_oqpd','vcmple_oqpd','vcmpunord_spd','vcmpneq_uspd','vcmpnlt_uqpd','vcmpnle_uqpd','vcmpord_spd',
|
||||
'vcmpeq_uspd','vcmpnge_uqpd','vcmpngt_uqpd','vcmpfalse_ospd','vcmpneq_ospd','vcmpge_oqpd','vcmpgt_oqpd','vcmptrue_uspd',
|
||||
'vcvtsd2ss','vcvtpd2ps','vcvtss2sd','vcvtps2pd',
|
||||
'vcvtsi2ss','vcvtss2si','vcvttss2si',
|
||||
'vcvtpi2ps','vcvtps2pi','vcvttps2pi',
|
||||
'vcvtdq2ps','vcvtps2dq','vcvttps2dq',
|
||||
'vcvtdq2pd','vcvtpd2dq','vcvttpd2dq',
|
||||
'vcvtsi2sd','vcvtsd2si','vcvttsd2si',
|
||||
'vcvtpi2pd','vcvtpd2pi','vcvttpd2pi',
|
||||
'vdivss','vdivps','vdivsd','vdivpd','vsqrtss','vsqrtps','vsqrtsd','vsqrtpd',
|
||||
'vdpps','vdppd',
|
||||
'vmaskmovps','vmaskmovpd',
|
||||
'vmovss','vmovsd','vmovaps','vmovapd','vmovups','vmovupd','vmovntps','vmovntpd',
|
||||
'vmovhlps','vmovlhps','vmovlps','vmovlpd','vmovhps','vmovhpd',
|
||||
'vmovsldup','vmovshdup','vmovddup',
|
||||
'vmovmskps','vmovmskpd',
|
||||
'vroundss','vroundps','vroundsd','vroundpd',
|
||||
'vrcpss','vrcpps','vrsqrtss','vrsqrtps',
|
||||
'vunpcklps','vunpckhps','vunpcklpd','vunpckhpd',
|
||||
'vbroadcastss','vbroadcastsd','vbroadcastf128',
|
||||
'vextractps','vinsertps','vextractf128','vinsertf128',
|
||||
'vshufps','vshufpd','vpermilps','vpermilpd','vperm2f128',
|
||||
'vtestps','vtestpd',
|
||||
'vpaddb','vpaddusb','vpaddsb','vpaddw','vpaddusw','vpaddsw','vpaddd','vpaddq',
|
||||
'vpsubb','vpsubusb','vpsubsb','vpsubw','vpsubusw','vpsubsw','vpsubd','vpsubq',
|
||||
'vphaddw','vphaddsw','vphaddd','vphsubw','vphsubsw','vphsubd',
|
||||
'vpsllw','vpslld','vpsllq','vpsrlw','vpsrld','vpsrlq','vpsraw','vpsrad',
|
||||
'vpand','vpandn','vpor','vpxor',
|
||||
'vpblendwb','vpblendw',
|
||||
'vpsignb','vpsignw','vpsignd',
|
||||
'vpavgb','vpavgw',
|
||||
'vpabsb','vpabsw','vpabsd',
|
||||
'vmovd','vmovq','vmovdqa','vmovdqu','vlddqu','vmovntdq','vmovntdqa','vmaskmovdqu',
|
||||
'vpmovsxbw','vpmovsxbd','vpmovsxbq','vpmovsxwd','vpmovsxwq','vpmovsxdq',
|
||||
'vpmovzxbw','vpmovzxbd','vpmovzxbq','vpmovzxwd','vpmovzxwq','vpmovzxdq',
|
||||
'vpackuswb','vpacksswb','vpackusdw','vpackssdw',
|
||||
'vpcmpeqb','vpcmpeqw','vpcmpeqd','vpcmpeqq','vpcmpgtb','vpcmpgtw','vpcmpgtd','vpcmpgtq',
|
||||
'vpmaddubsw','vpmaddwd',
|
||||
'vpmullw','vpmulhuw','vpmulhw','vpmulhrsw','vpmulld','vpmuludq','vpmuldq',
|
||||
'vpmaxub','vpmaxsb','vpmaxuw','vpmaxsw','vpmaxud','vpmaxsd',
|
||||
'vpminub','vpminsb','vpminuw','vpminsw','vpminud','vpminsd',
|
||||
'vpmovmskb','vptest',
|
||||
'vpunpcklbw','vpunpcklwd','vpunpckldq','vpunpcklqdq',
|
||||
'vpunpckhbw','vpunpckhwd','vpunpckhdq','vpunpckhqdq',
|
||||
'vpslldq','vpsrldq','vpalignr',
|
||||
'vpshufb','vpshuflw','vpshufhw','vpshufd',
|
||||
'vpextrb','vpextrw','vpextrd','vpextrq','vpinsrb','vpinsrw','vpinsrd','vpinsrq',
|
||||
'vpsadbw','vmpsadbw','vphminposuw',
|
||||
'vpcmpestri','vpcmpestrm','vpcmpistri','vpcmpistrm',
|
||||
'vpclmulqdq','vaesenc','vaesenclast','vaesdec','vaesdeclast','vaeskeygenassist','vaesimc',
|
||||
'vldmxcsr','vstmxcsr','vzeroall','vzeroupper',
|
||||
/* AVX2 instructions */
|
||||
'vbroadcasti128','vpbroadcastb','vpbroadcastw','vpbroadcastd','vpbroadcastq',
|
||||
'vpblendd',
|
||||
'vpermd','vpermq','vperm2i128',
|
||||
'vextracti128','vinserti128',
|
||||
'vpmaskmovd','vpmaskmovq',
|
||||
'vpsllvd','vpsllvq','vpsravd','vpsrlvd',
|
||||
'vpgatherdd','vpgatherqd','vgatherdq','vgatherqq',
|
||||
'vpermps','vpermpd',
|
||||
'vgatherdpd','vgatherqpd','vgatherdps','vgatherqps',
|
||||
/* XOP instructions */
|
||||
'vfrczss','vfrczps','vfrczsd','vfrczpd',
|
||||
'vpermil2ps','vperlil2pd',
|
||||
'vpcomub','vpcomb','vpcomuw','vpcomw','vpcomud','vpcomd','vpcomuq','vpcomq',
|
||||
'vphaddubw','vphaddbw','vphaddubd','vphaddbd','vphaddubq','vphaddbq',
|
||||
'vphadduwd','vphaddwd','vphadduwq','vphaddwq','vphaddudq','vphadddq',
|
||||
'vphsubbw','vphsubwd','vphsubdq',
|
||||
'vpmacsdd','vpmacssdd','vpmacsdql','vpmacssdql','vpmacsdqh','vpmacssdqh',
|
||||
'vpmacsww','vpmacssww','vpmacswd','vpmacsswd',
|
||||
'vpmadcswd','vpmadcsswd',
|
||||
'vpcmov','vpperm',
|
||||
'vprotb','vprotw','vprotd','vprotq',
|
||||
'vpshab','vpshaw','vpshad','vpshaq',
|
||||
'vpshlb','vpshlw','vpshld','vpshlq',
|
||||
/* CVT16 instructions */
|
||||
'vcvtph2ps','vcvtps2ph',
|
||||
/* FMA4 instructions */
|
||||
'vfmaddss','vfmaddps','vfmaddsd','vfmaddpd',
|
||||
'vfmsubss','vfmsubps','vfmsubsd','vfmsubpd',
|
||||
'vnfmaddss','vnfmaddps','vnfmaddsd','vnfmaddpd',
|
||||
'vnfmsubss','vnfmsubps','vnfmsubsd','vnfmsubpd',
|
||||
'vfmaddsubps','vfmaddsubpd','vfmsubaddps','vfmsubaddpd',
|
||||
/* FMA3 instructions */
|
||||
'vfmadd132ss','vfmadd213ss','vfmadd231ss',
|
||||
'vfmadd132ps','vfmadd213ps','vfmadd231ps',
|
||||
'vfmadd132sd','vfmadd213sd','vfmadd231sd',
|
||||
'vfmadd132pd','vfmadd213pd','vfmadd231pd',
|
||||
'vfmaddsub132ps','vfmaddsub213ps','vfmaddsub231ps',
|
||||
'vfmaddsub132pd','vfmaddsub213pd','vfmaddsub231pd',
|
||||
'vfmsubadd132ps','vfmsubadd213ps','vfmsubadd231ps',
|
||||
'vfmsubadd132pd','vfmsubadd213pd','vfmsubadd231pd',
|
||||
'vfmsub132ss','vfmsub213ss','vfmsub231ss',
|
||||
'vfmsub132ps','vfmsub213ps','vfmsub231ps',
|
||||
'vfmsub132sd','vfmsub213sd','vfmsub231sd',
|
||||
'vfmsub132pd','vfmsub213pd','vfmsub231pd',
|
||||
'vfnmadd132ss','vfnmadd213ss','vfnmadd231ss',
|
||||
'vfnmadd132ps','vfnmadd213ps','vfnmadd231ps',
|
||||
'vfnmadd132sd','vfnmadd213sd','vfnmadd231sd',
|
||||
'vfnmadd132pd','vfnmadd213pd','vfnmadd231pd',
|
||||
'vfnmsub132ss','vfnmsub213ss','vfnmsub231ss',
|
||||
'vfnmsub132ps','vfnmsub213ps','vfnmsub231ps',
|
||||
'vfnmsub132sd','vfnmsub213sd','vfnmsub231sd',
|
||||
'vfnmsub132pd','vfnmsub213pd','vfnmsub231pd'
|
||||
),
|
||||
/*registers*/
|
||||
3 => array(
|
||||
'ah','al','ax','bh','bl','bp','bx','ch','cl','cr0','cr2','cr3','cs','cx','dh','di','dl',
|
||||
'dr0','dr1','dr2','dr3','dr6','dr7','ds','dx','eax','ebp','ebx','ecx','edi','edx',
|
||||
'es','esi','esp','fs','gs','si','sp','ss','st','tr3','tr4','tr5','tr6','tr7'
|
||||
4 => array(
|
||||
/* General-Purpose Registers */
|
||||
'al','ah','bl','bh','cl','ch','dl','dh','sil','dil','bpl','spl',
|
||||
'r8b','r9b','r10b','r11b','r12b','r13b','r14b','r15b',
|
||||
'ax','bx','cx','dx','si','di','bp','sp',
|
||||
'r8w','r9w','r10w','r11w','r12w','r13w','r14w','r15w',
|
||||
'eax','ebx','ecx','edx','esi','edi','ebp','esp',
|
||||
'r8d','r9d','r10d','r11d','r12d','r13d','r14d','r15d',
|
||||
'rax','rcx','rdx','rbx','rsp','rbp','rsi','rdi',
|
||||
'r8','r9','r10','r11','r12','r13','r14','r15',
|
||||
/* Debug Registers */
|
||||
'dr0','dr1','dr2','dr3','dr6','dr7',
|
||||
/* Control Registers */
|
||||
'cr0','cr2','cr3','cr4','cr8',
|
||||
/* Test Registers (Supported on Intel 486 only) */
|
||||
'tr3','tr4','tr5','tr6','tr7',
|
||||
/* Segment Registers */
|
||||
'cs','ds','es','fs','gs','ss',
|
||||
/* FPU Registers */
|
||||
'st','st0','st1','st2','st3','st4','st5','st6','st7',
|
||||
/* MMX Registers */
|
||||
'mm0','mm1','mm2','mm3','mm4','mm5','mm6','mm7',
|
||||
/* SSE Registers */
|
||||
'xmm0','xmm1','xmm2','xmm3','xmm4','xmm5','xmm6','xmm7',
|
||||
'xmm8','xmm9','xmm10','xmm11','xmm12','xmm13','xmm14','xmm15',
|
||||
/* AVX Registers */
|
||||
'ymm0','ymm1','ymm2','ymm3','ymm4','ymm5','ymm6','ymm7',
|
||||
'ymm8','ymm9','ymm10','ymm11','ymm12','ymm13','ymm14','ymm15'
|
||||
),
|
||||
/*Directive*/
|
||||
4 => array(
|
||||
'186','286','286c','286p','287','386','386c','386p','387','486','486p',
|
||||
'8086','8087','alpha','break','code','const','continue','cref','data','data?',
|
||||
'dosseg','else','elseif','endif','endw','equ','err','err1','err2','errb',
|
||||
'errdef','errdif','errdifi','erre','erridn','erridni','errnb','errndef',
|
||||
'errnz','exit','fardata','fardata?','global','if','lall','lfcond','list','listall',
|
||||
'listif','listmacro','listmacroall',' model','no87','nocref','nolist',
|
||||
'nolistif','nolistmacro','radix','repeat','sall','seq','sfcond','stack',
|
||||
'startup','tfcond','type','until','untilcxz','while','xall','xcref',
|
||||
'xlist','alias','align','assume','catstr','comm','comment','db','dd','df','dq',
|
||||
'dt','dup','dw','echo','elseif1','elseif2','elseifb','elseifdef','elseifdif',
|
||||
'elseifdifi','elseife','elseifidn','elseifidni','elseifnb','elseifndef','end',
|
||||
'endm','endp','ends','eq',' equ','even','exitm','extern','externdef','extrn','for',
|
||||
'forc','ge','goto','group','high','highword','if1','if2','ifb','ifdef','ifdif',
|
||||
'ifdifi','ife',' ifidn','ifidni','ifnb','ifndef','include','includelib','instr','invoke',
|
||||
'irp','irpc','label','le','length','lengthof','local','low','lowword','lroffset',
|
||||
'macro','mask','mod','msfloat','name','ne','offset','opattr','option','org','%out',
|
||||
'page','popcontext','private','proc','proto','ptr','public','purge','pushcontext','record',
|
||||
'resb','resd','resw','rept','section','seg','segment','short','size','sizeof','sizestr','struc','struct',
|
||||
'substr','subtitle','subttl','textequ','this','title','typedef','union','width',
|
||||
'.model', '.stack', '.code', '.data'
|
||||
5 => array(
|
||||
'db','dw','dd','dq','dt','do','dy',
|
||||
'resb','resw','resd','resq','rest','reso','resy','incbin','equ','times','safeseh',
|
||||
'__utf16__','__utf32__',
|
||||
'default','cpu','float','start','imagebase','osabi',
|
||||
'..start','..imagebase','..gotpc','..gotoff','..gottpoff','..got','..plt','..sym','..tlsie',
|
||||
'section','segment','__sect__','group','absolute',
|
||||
'.bss','.comment','.data','.lbss','.ldata','.lrodata','.rdata','.rodata','.tbss','.tdata','.text',
|
||||
'alloc','bss','code','exec','data','noalloc','nobits','noexec','nowrite','progbits','rdata','tls','write',
|
||||
'private','public','common','stack','overlay','class',
|
||||
'extern','global','import','export',
|
||||
'%define','%idefine','%xdefine','%ixdefine','%assign','%undef',
|
||||
'%defstr','%idefstr','%deftok','%ideftok',
|
||||
'%strcat','%strlen','%substr',
|
||||
'%macro','%imacro','%rmacro','%exitmacro','%endmacro','%unmacro',
|
||||
'%if','%ifn','%elif','%elifn','%else','%endif',
|
||||
'%ifdef','%ifndef','%elifdef','%elifndef',
|
||||
'%ifmacro','%ifnmacro','%elifmacro','%elifnmacro',
|
||||
'%ifctx','%ifnctx','%elifctx','%elifnctx',
|
||||
'%ifidn','%ifnidn','%elifidn','%elifnidn',
|
||||
'%ifidni','%ifnidni','%elifidni','%elifnidni',
|
||||
'%ifid','%ifnid','%elifid','%elifnid',
|
||||
'%ifnum','%ifnnum','%elifnum','%elifnnum',
|
||||
'%ifstr','%ifnstr','%elifstr','%elifnstr',
|
||||
'%iftoken','%ifntoken','%eliftoken','%elifntoken',
|
||||
'%ifempty','%ifnempty','%elifempty','%elifnempty',
|
||||
'%ifenv','%ifnenv','%elifenv','%elifnenv',
|
||||
'%rep','%exitrep','%endrep',
|
||||
'%while','%exitwhile','%endwhile',
|
||||
'%include','%pathsearch','%depend','%use',
|
||||
'%push','%pop','%repl','%arg','%local','%stacksize','flat','flat64','large','small',
|
||||
'%error','%warning','%fatal',
|
||||
'%00','.nolist','%rotate','%line','%!','%final','%clear',
|
||||
'struc','endstruc','istruc','at','iend',
|
||||
'align','alignb','sectalign',
|
||||
'bits','use16','use32','use64',
|
||||
'__nasm_major__','__nasm_minor__','__nasm_subminor__','___nasm_patchlevel__',
|
||||
'__nasm_version_id__','__nasm_ver__',
|
||||
'__file__','__line__','__pass__','__bits__','__output_format__',
|
||||
'__date__','__time__','__date_num__','__time_num__','__posix_time__',
|
||||
'__utc_date__','__utc_time__','__utc_date_num__','__utc_time_num__',
|
||||
'__float_daz__','__float_round__','__float__',
|
||||
/* Keywords from standard packages */
|
||||
'__use_altreg__',
|
||||
'__use_smartalign__','smartalign','__alignmode__',
|
||||
'__use_fp__','__infinity__','__nan__','__qnan__','__snan__',
|
||||
'__float8__','__float16__','__float32__','__float64__','__float80m__','__float80e__','__float128l__','__float128h__'
|
||||
),
|
||||
/*Operands*/
|
||||
5 => array(
|
||||
'@b','@f','addr','basic','byte','c','carry?','dword',
|
||||
'far','far16','fortran','fword','near','near16','overflow?','parity?','pascal','qword',
|
||||
'real4',' real8','real10','sbyte','sdword','sign?','stdcall','sword','syscall','tbyte',
|
||||
'vararg','word','zero?','flat','near32','far32',
|
||||
'abs','all','assumes','at','casemap','common','compact',
|
||||
'cpu','dotname','emulator','epilogue','error','export','expr16','expr32','farstack',
|
||||
'forceframe','huge','language','large','listing','ljmp','loadds','m510','medium','memory',
|
||||
'nearstack','nodotname','noemulator','nokeyword','noljmp','nom510','none','nonunique',
|
||||
'nooldmacros','nooldstructs','noreadonly','noscoped','nosignextend','nothing',
|
||||
'notpublic','oldmacros','oldstructs','os_dos','para','prologue',
|
||||
'readonly','req','scoped','setif2','smallstack','tiny','use16','use32','uses'
|
||||
6 => array(
|
||||
'a16','a32','a64','o16','o32','o64','strict',
|
||||
'byte','word','dword','qword','tword','oword','yword','nosplit',
|
||||
'%0','%1','%2','%3','%4','%5','%6','%7','%8','%9',
|
||||
'abs','rel',
|
||||
'seg','wrt'
|
||||
)
|
||||
),
|
||||
'SYMBOLS' => array(
|
||||
'[', ']', '(', ')',
|
||||
'+', '-', '*', '/', '%',
|
||||
'.', ',', ';', ':'
|
||||
1 => array(
|
||||
'[', ']', '(', ')',
|
||||
'+', '-', '*', '/', '%',
|
||||
'.', ',', ';', ':'
|
||||
),
|
||||
2 => array(
|
||||
'$','$$','%+','%?','%??'
|
||||
)
|
||||
),
|
||||
'CASE_SENSITIVE' => array(
|
||||
GESHI_COMMENTS => false,
|
||||
@ -144,19 +524,21 @@ $language_data = array (
|
||||
2 => false,
|
||||
3 => false,
|
||||
4 => false,
|
||||
5 => false
|
||||
5 => false,
|
||||
6 => false
|
||||
),
|
||||
'STYLES' => array(
|
||||
'KEYWORDS' => array(
|
||||
1 => 'color: #00007f; font-weight: bold;',
|
||||
2 => 'color: #0000ff; font-weight: bold;',
|
||||
3 => 'color: #00007f;',
|
||||
4 => 'color: #000000; font-weight: bold;',
|
||||
5 => 'color: #000000; font-weight: bold;'
|
||||
2 => 'color: #0000ff;',
|
||||
3 => 'color: #b00040;',
|
||||
4 => 'color: #46aa03; font-weight: bold;',
|
||||
5 => 'color: #0000ff; font-weight: bold;',
|
||||
6 => 'color: #0000ff; font-weight: bold;'
|
||||
),
|
||||
'COMMENTS' => array(
|
||||
1 => 'color: #666666; font-style: italic;',
|
||||
2 => 'color: #adadad; font-style: italic;',
|
||||
2 => 'color: #adadad; font-style: italic;'
|
||||
),
|
||||
'ESCAPE_CHAR' => array(
|
||||
0 => 'color: #000099; font-weight: bold;'
|
||||
@ -168,16 +550,15 @@ $language_data = array (
|
||||
0 => 'color: #7f007f;'
|
||||
),
|
||||
'NUMBERS' => array(
|
||||
0 => 'color: #0000ff;'
|
||||
0 => 'color: #ff0000;'
|
||||
),
|
||||
'METHODS' => array(
|
||||
),
|
||||
'SYMBOLS' => array(
|
||||
0 => 'color: #339933;'
|
||||
1 => 'color: #339933;',
|
||||
2 => 'color: #0000ff; font-weight: bold;'
|
||||
),
|
||||
'REGEXPS' => array(
|
||||
// 0 => 'color: #0000ff;',
|
||||
// 1 => 'color: #0000ff;'
|
||||
),
|
||||
'SCRIPT' => array(
|
||||
)
|
||||
@ -187,7 +568,8 @@ $language_data = array (
|
||||
2 => '',
|
||||
3 => '',
|
||||
4 => '',
|
||||
5 => ''
|
||||
5 => '',
|
||||
6 => ''
|
||||
),
|
||||
'NUMBERS' =>
|
||||
GESHI_NUMBER_BIN_PREFIX_PERCENT |
|
||||
@ -203,10 +585,6 @@ $language_data = array (
|
||||
'OBJECT_SPLITTERS' => array(
|
||||
),
|
||||
'REGEXPS' => array(
|
||||
//Hex numbers
|
||||
// 0 => /* */ "(?<=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))(?:[0-9][0-9a-fA-F]{0,31}[hH]|0x[0-9a-fA-F]{1,32})(?=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))",
|
||||
//Binary numbers
|
||||
// 1 => "(?<=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))[01]{1,64}[bB](?=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))"
|
||||
),
|
||||
'STRICT_MODE_APPLIES' => GESHI_NEVER,
|
||||
'SCRIPT_DELIMITERS' => array(
|
||||
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2004/08/13
|
||||
*
|
||||
* ASP language file for GeSHi.
|
||||
|
194
htdocs/application/libraries/geshi/geshi/asymptote.php
Normal file
194
htdocs/application/libraries/geshi/geshi/asymptote.php
Normal file
@ -0,0 +1,194 @@
|
||||
<?php
|
||||
/*************************************************************************************
|
||||
* asymptote.php
|
||||
* -------------
|
||||
* Author: Manuel Yguel (manuel.yguel.robotics@gmail.com)
|
||||
* Copyright: (c) 2012 Manuel Yguel (http://manuelyguel.eu)
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2012/05/24
|
||||
*
|
||||
* asymptote language file for GeSHi.
|
||||
*
|
||||
* CHANGES
|
||||
* -------
|
||||
* 2012/05/24 (1.0.0.0)
|
||||
* - First Release
|
||||
*
|
||||
* TODO (updated 2012/05/24)
|
||||
* -------------------------
|
||||
* * 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' => 'asymptote',
|
||||
'COMMENT_SINGLE' => array(1 => '//'),
|
||||
'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(
|
||||
'and','controls','tension','atleast','curl','if','else','while','for','do','return','break','continue','struct','typedef','new','access','import','unravel','from','include','quote','static','public','private','restricted','this','explicit','true','false','null','cycle','newframe','operator'
|
||||
),
|
||||
2 => array(
|
||||
'Braid','FitResult','Label','Legend','Segment','Solution','TreeNode','abscissa','arc','arrowhead','binarytree','binarytreeNode','block','bool','bool3','bounds','bqe','circle','conic','coord','coordsys','cputime','ellipse','file','filltype','frame','grid3','guide','horner','hsv','hyperbola','indexedTransform','int','inversion','key','light','line','linefit','marginT','marker','mass','object','pair','parabola','path','path3','pen','picture','point','position','projection','real','revolution','scaleT','scientific','segment','side','slice','solution','splitface','string','surface','tensionSpecifier','ticklocate','ticksgridT','tickvalues','transform','transformation','tree','triangle','trilinear','triple','vector','vertex','void'),
|
||||
3 => array(
|
||||
'AND','Arc','ArcArrow','ArcArrows','Arrow','Arrows','Automatic','AvantGarde','BBox','BWRainbow','BWRainbow2','Bar','Bars','BeginArcArrow','BeginArrow','BeginBar','BeginDotMargin','BeginMargin','BeginPenMargin','Blank','Bookman','Bottom','BottomTop','Bounds','Break','Broken','BrokenLog','CLZ','CTZ','Ceil','Circle','CircleBarIntervalMarker','Cos','Courier','CrossIntervalMarker','DOSendl','DOSnewl','DefaultFormat','DefaultLogFormat','Degrees','Dir','DotMargin','DotMargins','Dotted','Draw','Drawline','Embed','EndArcArrow','EndArrow','EndBar','EndDotMargin','EndMargin','EndPenMargin','Fill','FillDraw','Floor','Format','Full','Gaussian','Gaussrand','Gaussrandpair',
|
||||
'Gradient','Grayscale','Helvetica','Hermite','HookHead','InOutTicks','InTicks','Jn','Label','Landscape','Left','LeftRight','LeftTicks','Legend','Linear','Link','Log','LogFormat','Margin','Margins','Mark','MidArcArrow','MidArrow','NOT','NewCenturySchoolBook','NoBox','NoMargin','NoModifier','NoTicks','NoTicks3','NoZero','NoZeroFormat','None','OR','OmitFormat','OmitTick','OmitTickInterval','OmitTickIntervals','OutTicks','Ox','Oy','Palatino','PaletteTicks','Pen','PenMargin','PenMargins','Pentype','Portrait','RadialShade','RadialShadeDraw','Rainbow','Range','Relative','Right','RightTicks','Rotate','Round','SQR','Scale','ScaleX','ScaleY','ScaleZ','Seascape','Segment','Shift','Sin','Slant','Spline','StickIntervalMarker','Straight','Symbol','Tan','TeXify','Ticks','Ticks3','TildeIntervalMarker','TimesRoman','Top','TrueMargin','UnFill','UpsideDown','Wheel','X','XEquals','XOR','XY','XYEquals','XYZero','XYgrid','XZEquals','XZZero','XZero','XZgrid','Y','YEquals','YXgrid','YZ','YZEquals','YZZero','YZero','YZgrid','Yn','Z','ZX','ZXgrid','ZYgrid','ZapfChancery','ZapfDingbats','_begingroup3','_cputime','_draw','_eval','_image','_labelpath','_projection','_strokepath','_texpath','aCos','aSin','aTan','abort','abs','accel','acos','acosh','acot','acsc','activatequote','add',
|
||||
'addArrow','addMargins','addSaveFunction','addpenarc','addpenline','adjust','alias','align','all','altitude','angabscissa','angle','angpoint','animate','annotate','anticomplementary','antipedal','apply','approximate','arc','arcarrowsize','arccircle','arcdir','arcfromcenter','arcfromfocus','arclength','arcnodesnumber','arcpoint','arcsubtended','arcsubtendedcenter','arctime','arctopath','array','arrow','arrow2','arrowbase','arrowbasepoints','arrowsize','asec','asin','asinh','ask','assert','asy','asycode','asydir','asyfigure','asyfilecode','asyinclude','asywrite','atan','atan2','atanh','atbreakpoint','atexit','attach','attract','atupdate','autoformat','autoscale','autoscale3','axes','axes3','axialshade','axis','axiscoverage','azimuth','babel','background','bangles','bar','barmarksize','barsize','basealign','baseline','bbox','beep','begin','beginclip','begingroup','beginpoint','between','bevel','bezier','bezierP','bezierPP','bezierPPP','bezulate','bibliography','bibliographystyle','binarytree','binarytreeNode','binomial','binput','bins','bisector','bisectorpoint','bispline','blend','blockconnector','boutput','box','bqe','breakpoint','breakpoints','brick','buildRestoreDefaults','buildRestoreThunk','buildcycle','bulletcolor','byte','calculateScaling','canonical','canonicalcartesiansystem','cartesiansystem','case1','case2','case3','case4','cbrt','cd','ceil','center','centerToFocus',
|
||||
'centroid','cevian','change2','changecoordsys','checkSegment','checkconditionlength','checker','checkincreasing','checklengths','checkposition','checktriangle','choose','circle','circlebarframe','circlemarkradius','circlenodesnumber','circumcenter','circumcircle','clamped','clear','clip','clipdraw','close','cmyk','code','colatitude','collect','collinear','color','colorless','colors','colorspace','comma','compassmark','complement','complementary','concat','concurrent','cone','conic','conicnodesnumber','conictype','conj','connect','connected','connectedindex','containmentTree','contains','contour','contour3','contouredges','controlSpecifier','convert','coordinates','coordsys','copy','copyPairOrTriple','cos','cosh','cot','countIntersections','cputime','crop','cropcode','cross',
|
||||
'crossframe','crosshatch','crossmarksize','csc','cubicroots','curabscissa','curlSpecifier','curpoint','currentarrow','currentexitfunction','currentmomarrow','currentpolarconicroutine','curve','cut','cutafter','cutbefore','cyclic','cylinder','deactivatequote','debugger','deconstruct','defaultdir','defaultformat','defaultpen','defined','degenerate','degrees','delete','deletepreamble','determinant','diagonal','diamond','diffdiv','dir','dirSpecifier','dirtime','display','distance',
|
||||
'divisors','do_overpaint','dot','dotframe','dotsize','downcase','draw','drawAll','drawDoubleLine','drawFermion','drawGhost','drawGluon','drawMomArrow','drawPRCcylinder','drawPRCdisk','drawPRCsphere','drawPRCtube','drawPhoton','drawScalar','drawVertex','drawVertexBox','drawVertexBoxO','drawVertexBoxX','drawVertexO','drawVertexOX','drawVertexTriangle','drawVertexTriangleO','drawVertexX','drawarrow','drawarrow2','drawline','drawpixel','drawtick','duplicate','elle','ellipse','ellipsenodesnumber','embed','embed3','empty','enclose','end','endScript','endclip','endgroup','endgroup3','endl','endpoint','endpoints','eof','eol','equation','equations','erase','erasestep','erf','erfc','error','errorbar','errorbars','eval','excenter','excircle','exit','exitXasyMode','exitfunction','exp','expfactors','expi','expm1','exradius','extend','extension','extouch','fabs','factorial','fermat','fft','fhorner','figure','file','filecode','fill','filldraw','filloutside','fillrule','filltype','find','finite','finiteDifferenceJacobian','firstcut','firstframe','fit','fit2','fixedscaling','floor','flush','fmdefaults','fmod','focusToCenter','font','fontcommand','fontsize','foot','format','frac','frequency','fromCenter','fromFocus','fspline','functionshade','gamma','generate_random_backtrace','generateticks','gergonne','getc','getint','getpair','getreal','getstring','gettriple','gluon','gouraudshade','graph','graphic','gray','grestore','grid','grid3','gsave','halfbox','hatch','hdiffdiv','hermite','hex','histogram','history','hline','hprojection',
|
||||
'hsv','hyperbola','hyperbolanodesnumber','hyperlink','hypot','identity','image','incenter','incentral','incircle','increasing','incrementposition','indexedTransform','indexedfigure','initXasyMode','initdefaults','input','inradius','insert','inside','integrate','interactive','interior','interp','interpolate','intersect','intersection','intersectionpoint','intersectionpoints','intersections','intouch','inverse','inversion','invisible','is3D','isCCW','isDuplicate','isogonal','isogonalconjugate','isotomic','isotomicconjugate','isparabola','italic','item','jobname','key','kurtosis','kurtosisexcess','label','labelaxis','labelmargin','labelpath','labels','labeltick','labelx','labelx3','labely','labely3','labelz','labelz3','lastcut','latex','latitude','latticeshade','layer','layout','ldexp','leastsquares','legend','legenditem','length','lexorder','lift','light','limits','line','linear','linecap','lineinversion','linejoin','linemargin','lineskip','linetype','linewidth','link','list','lm_enorm','lm_evaluate_default','lm_lmdif','lm_lmpar','lm_minimize','lm_print_default','lm_print_quiet','lm_qrfac','lm_qrsolv','locale','locate',
|
||||
'locatefile','location','log','log10','log1p','logaxiscoverage','longitude','lookup','makeNode','makedraw','makepen','map','margin','markangle','markangleradius','markanglespace','markarc','marker','markinterval','marknodes','markrightangle','markuniform','mass','masscenter','massformat','math','max','max3','maxAfterTransform','maxbezier','maxbound','maxcoords','maxlength','maxratio','maxtimes','mean','medial','median','midpoint','min','min3','minAfterTransform','minbezier','minbound','minipage','minratio','mintimes','miterlimit','mktemp','momArrowPath','momarrowsize','monotonic','multifigure','nativeformat','natural','needshipout','newl','newpage','newslide','newton','newtree','nextframe','nextnormal','nextpage','nib','nodabscissa','none','norm','normalvideo','notaknot','nowarn','numberpage','nurb','object','offset','onpath','opacity','opposite','orientation','origin','orthic','orthocentercenter','outformat','outline','outname','outprefix','output','overloadedMessage','overwrite','pack','pad','pairs','palette','parabola','parabolanodesnumber','parallel','parallelogram','partialsum','path','path3','pattern','pause','pdf','pedal','periodic','perp','perpendicular','perpendicularmark','phantom','phi1','phi2','phi3','photon','piecewisestraight','point','polar','polarconicroutine','polargraph','polygon','postcontrol','postscript','pow10','ppoint','prc','prc0','precision','precontrol','prepend','printBytecode','print_random_addresses','project','projection','purge','pwhermite','quadrant','quadraticroots','quantize','quarticroots','quotient','radialshade','radians','radicalcenter','radicalline','radius','rand','randompath','rd','readline','realmult','realquarticroots','rectangle','rectangular','rectify','reflect','relabscissa','relative','relativedistance','reldir','relpoint','reltime','remainder','remark','removeDuplicates','rename','replace','report','resetdefaultpen','restore','restoredefaults','reverse','reversevideo','rf','rfind','rgb','rgba','rgbint','rms',
|
||||
'rotate','rotateO','rotation','round','roundbox','roundedpath','roundrectangle','same','samecoordsys','sameside','sample','save','savedefaults','saveline','scale','scale3','scaleO','scaleT','scaleless','scientific','search','searchindex','searchtree','sec','secondaryX','secondaryY','seconds','section','sector','seek','seekeof','segment','sequence','setcontour','setpens','sgn','sgnd','sharpangle','sharpdegrees','shift','shiftless','shipout','shipout3','show','side','simeq','simpson','sin','sinh','size','size3','skewness','skip','slant','sleep','slope','slopefield','solve','solveBVP','sort','sourceline','sphere','split','sqrt','square','srand','standardizecoordsys','startScript','stdev','step','stickframe','stickmarksize','stickmarkspace','stop','straight','straightness','string','stripdirectory','stripextension','stripfile','stripsuffix','strokepath','subdivide','subitem','subpath','substr','sum','surface','symmedial','symmedian','system',
|
||||
'tab','tableau','tan','tangent','tangential','tangents','tanh','tell','tensionSpecifier','tensorshade','tex','texcolor','texify','texpath','texpreamble','texreset','texshipout','texsize','textpath','thick','thin','tick','tickMax','tickMax3','tickMin','tickMin3','ticklabelshift','ticklocate','tildeframe','tildemarksize','tile','tiling','time','times','title','titlepage','topbox','transform','transformation','transpose','trembleFuzz','triangle','triangleAbc','triangleabc','triangulate','tricoef','tridiagonal','trilinear','trim','truepoint','tube','uncycle','unfill','uniform','unique','unit','unitrand','unitsize','unityroot','unstraighten','upcase','updatefunction','uperiodic','upscale','uptodate','usepackage','usersetting','usetypescript','usleep','value','variance','variancebiased','vbox','vector','vectorfield','verbatim','view','vline','vperiodic','vprojection','warn','warning','windingnumber','write','xaxis','xaxis3','xaxis3At','xaxisAt','xequals','xinput','xlimits','xoutput','xpart','xscale','xscaleO','xtick','xtick3','xtrans','yaxis','yaxis3','yaxis3At','yaxisAt','yequals','ylimits','ypart','yscale','yscaleO','ytick','ytick3','ytrans','zaxis3','zaxis3At','zero','zero3','zlimits','zpart','ztick','ztick3','ztrans'
|
||||
),
|
||||
4 => array(
|
||||
'AliceBlue','Align','Allow','AntiqueWhite','Apricot','Aqua','Aquamarine','Aspect','Azure','BeginPoint','Beige','Bisque','Bittersweet','Black','BlanchedAlmond','Blue','BlueGreen','BlueViolet','Both','Break','BrickRed','Brown','BurlyWood','BurntOrange','CCW','CW','CadetBlue','CarnationPink','Center','Centered','Cerulean','Chartreuse','Chocolate','Coeff','Coral','CornflowerBlue','Cornsilk','Crimson','Crop','Cyan','Dandelion','DarkBlue','DarkCyan','DarkGoldenrod','DarkGray','DarkGreen','DarkKhaki','DarkMagenta','DarkOliveGreen','DarkOrange','DarkOrchid','DarkRed','DarkSalmon','DarkSeaGreen','DarkSlateBlue','DarkSlateGray','DarkTurquoise','DarkViolet','DeepPink','DeepSkyBlue','DefaultHead','DimGray','DodgerBlue','Dotted','Down','Draw','E','ENE','EPS','ESE','E_Euler','E_PC','E_RK2','E_RK3BS','Emerald','EndPoint','Euler','Fill','FillDraw','FireBrick','FloralWhite','ForestGreen','Fuchsia','Gainsboro','GhostWhite','Gold','Goldenrod','Gray','Green','GreenYellow','Honeydew','HookHead','Horizontal','HotPink','I','IgnoreAspect','IndianRed','Indigo','Ivory','JOIN_IN','JOIN_OUT','JungleGreen','Khaki','LM_DWARF','LM_MACHEP','LM_SQRT_DWARF','LM_SQRT_GIANT','LM_USERTOL','Label','Lavender','LavenderBlush','LawnGreen','Left','LeftJustified','LeftSide','LemonChiffon','LightBlue','LightCoral','LightCyan','LightGoldenrodYellow',
|
||||
'LightGreen','LightGrey','LightPink','LightSalmon','LightSeaGreen','LightSkyBlue','LightSlateGray','LightSteelBlue','LightYellow','Lime','LimeGreen','Linear','Linen','Log','Logarithmic','Magenta','Mahogany','Mark','MarkFill','Maroon','Max','MediumAquamarine','MediumBlue','MediumOrchid','MediumPurple','MediumSeaGreen','MediumSlateBlue','MediumSpringGreen','MediumTurquoise','MediumVioletRed','Melon','MidPoint','MidnightBlue','Min','MintCream','MistyRose','Moccasin','Move','MoveQuiet','Mulberry','N','NE','NNE','NNW','NW','NavajoWhite','Navy','NavyBlue','NoAlign','NoCrop','NoFill','NoSide','OldLace','Olive','OliveDrab','OliveGreen','Orange','OrangeRed','Orchid','Ox','Oy','PC','PaleGoldenrod','PaleGreen','PaleTurquoise','PaleVioletRed','PapayaWhip','Peach','PeachPuff','Periwinkle','Peru','PineGreen','Pink','Plum','PowderBlue','ProcessBlue','Purple','RK2','RK3','RK3BS','RK4','RK5','RK5DP','RK5F','RawSienna','Red','RedOrange','RedViolet','Rhodamine','Right','RightJustified','RightSide','RosyBrown','RoyalBlue','RoyalPurple','RubineRed','S','SE','SSE','SSW','SW','SaddleBrown','Salmon','SandyBrown','SeaGreen','Seashell','Sepia','Sienna','Silver','SimpleHead','SkyBlue','SlateBlue','SlateGray','Snow','SpringGreen','SteelBlue','Suppress','SuppressQuiet','Tan','TeXHead','Teal','TealBlue','Thistle','Ticksize','Tomato',
|
||||
'Turquoise','UnFill','Up','VERSION','Value','Vertical','Violet','VioletRed','W','WNW','WSW','Wheat','White','WhiteSmoke','WildStrawberry','XYAlign','YAlign','Yellow','YellowGreen','YellowOrange','addpenarc','addpenline','align','allowstepping','angularsystem','animationdelay','appendsuffix','arcarrowangle','arcarrowfactor','arrow2sizelimit','arrowangle','arrowbarb','arrowdir','arrowfactor','arrowhookfactor','arrowlength','arrowsizelimit','arrowtexfactor','authorpen','axis','axiscoverage','axislabelfactor','background','backgroundcolor','backgroundpen','barfactor','barmarksizefactor','basealign','baselinetemplate','beveljoin','bigvertexpen','bigvertexsize','black','blue','bm','bottom','bp','brown','bullet','byfoci','byvertices','camerafactor','chartreuse','circlemarkradiusfactor','circlenodesnumberfactor','circleprecision','circlescale','cm','codefile','codepen','codeskip','colorPen','coloredNodes','coloredSegments',
|
||||
'conditionlength','conicnodesfactor','count','cputimeformat','crossmarksizefactor','currentcoordsys','currentlight','currentpatterns','currentpen','currentpicture','currentposition','currentprojection','curvilinearsystem','cuttings','cyan','darkblue','darkbrown','darkcyan','darkgray','darkgreen','darkgrey','darkmagenta','darkolive','darkred','dashdotted','dashed','datepen','dateskip','debuggerlines','debugging','deepblue','deepcyan','deepgray','deepgreen','deepgrey','deepmagenta','deepred','default','defaultControl','defaultS','defaultbackpen','defaultcoordsys','defaultexcursion','defaultfilename','defaultformat','defaultmassformat','defaultpen','diagnostics','differentlengths','dot','dotfactor','dotframe','dotted','doublelinepen','doublelinespacing','down','duplicateFuzz','edge','ellipsenodesnumberfactor','eps','epsgeo','epsilon','evenodd','expansionfactor','extendcap','exterior','fermionpen','figureborder','figuremattpen','file3','firstnode','firststep','foregroundcolor','fuchsia','fuzz','gapfactor','ghostpen','gluonamplitude','gluonpen','gluonratio','gray','green','grey','hatchepsilon','havepagenumber','heavyblue','heavycyan','heavygray','heavygreen','heavygrey','heavymagenta','heavyred','hline','hwratio','hyperbola','hyperbolanodesnumberfactor','identity4','ignore','inXasyMode','inch','inches','includegraphicscommand','inf','infinity','institutionpen','intMax','intMin','interior','invert','invisible','itempen','itemskip','itemstep','labelmargin','landscape','lastnode','left','legendhskip','legendlinelength',
|
||||
'legendmargin','legendmarkersize','legendmaxrelativewidth','legendvskip','lightblue','lightcyan','lightgray','lightgreen','lightgrey','lightmagenta','lightolive','lightred','lightyellow','line','linemargin','lm_infmsg','lm_shortmsg','longdashdotted','longdashed','magenta','magneticRadius','mantissaBits','markangleradius','markangleradiusfactor','markanglespace','markanglespacefactor','mediumblue','mediumcyan','mediumgray','mediumgreen','mediumgrey','mediummagenta','mediumred','mediumyellow','middle','minDistDefault','minblockheight','minblockwidth','mincirclediameter','minipagemargin','minipagewidth','minvertexangle','miterjoin','mm','momarrowfactor','momarrowlength','momarrowmargin','momarrowoffset','momarrowpen','monoPen','morepoints','nCircle','newbulletcolor','ngraph','nil','nmesh','nobasealign','nodeMarginDefault','nodesystem','nomarker','nopoint','noprimary','nullpath','nullpen','numarray','ocgindex','oldbulletcolor','olive','orange','origin','overpaint','page','pageheight','pagemargin','pagenumberalign','pagenumberpen','pagenumberposition','pagewidth','paleblue','palecyan','palegray','palegreen','palegrey',
|
||||
'palemagenta','palered','paleyellow','parabolanodesnumberfactor','perpfactor','phi','photonamplitude','photonpen','photonratio','pi','pink','plain','plain_bounds','plain_scaling','plus','preamblenodes','pt','purple','r3','r4a','r4b','randMax','realDigits','realEpsilon','realMax','realMin','red','relativesystem','reverse','right','roundcap','roundjoin','royalblue','salmon','saveFunctions','scalarpen','sequencereal','settings','shipped','signedtrailingzero','solid','springgreen','sqrtEpsilon','squarecap','squarepen','startposition','stdin','stdout','stepfactor','stepfraction','steppagenumberpen','stepping','stickframe','stickmarksizefactor','stickmarkspacefactor','swap','textpen','ticksize','tildeframe','tildemarksizefactor','tinv','titlealign','titlepagepen','titlepageposition','titlepen','titleskip','top','trailingzero','treeLevelStep','treeMinNodeWidth','treeNodeStep','trembleAngle','trembleFrequency','trembleRandom','undefined','unitcircle','unitsquare','up','urlpen','urlskip','version','vertexpen','vertexsize','viewportmargin','viewportsize','vline','white','wye','xformStack','yellow','ylabelwidth','zerotickfuzz','zerowinding'
|
||||
)
|
||||
),
|
||||
'SYMBOLS' => array(
|
||||
0 => array(
|
||||
'(', ')', '{', '}', '[', ']'
|
||||
),
|
||||
1 => array('<', '>','='),
|
||||
2 => array('+', '-', '*', '/', '%'),
|
||||
3 => array('!', '^', '&', '|'),
|
||||
4 => array('?', ':', ';'),
|
||||
5 => array('..')
|
||||
),
|
||||
'CASE_SENSITIVE' => array(
|
||||
GESHI_COMMENTS => false,
|
||||
1 => true,
|
||||
2 => true,
|
||||
3 => true,
|
||||
4 => true
|
||||
),
|
||||
'STYLES' => array(
|
||||
'KEYWORDS' => array(
|
||||
1 => 'color: #b1b100;',
|
||||
2 => 'color: #000000; font-weight: bold;',
|
||||
3 => 'color: #990000;',
|
||||
4 => 'color: #009900; font-weight: bold;'
|
||||
),
|
||||
'COMMENTS' => array(
|
||||
1 => 'color: #666666;',
|
||||
2 => 'color: #339900;',
|
||||
'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;',
|
||||
5 => 'color: #009080;'
|
||||
),
|
||||
'REGEXPS' => array(
|
||||
),
|
||||
'SCRIPT' => array(
|
||||
)
|
||||
),
|
||||
'URLS' => array(
|
||||
1 => '',
|
||||
2 => '',
|
||||
3 => '',
|
||||
4 => ''
|
||||
),
|
||||
'OOLANG' => true,
|
||||
'OBJECT_SPLITTERS' => array(
|
||||
1 => '.',
|
||||
2 => '::'
|
||||
),
|
||||
'REGEXPS' => array(
|
||||
),
|
||||
'STRICT_MODE_APPLIES' => GESHI_MAYBE,
|
||||
'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_\|%\\-])"
|
||||
)
|
||||
)
|
||||
);
|
||||
|
||||
?>
|
@ -4,7 +4,7 @@
|
||||
* -----
|
||||
* Author: Mihai Vasilian (grayasm@gmail.com)
|
||||
* Copyright: (c) 2010 Mihai Vasilian
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2010/01/25
|
||||
*
|
||||
* autoconf language file for GeSHi.
|
||||
|
@ -4,7 +4,7 @@
|
||||
* --------
|
||||
* Author: Naveen Garg (naveen.garg@gmail.com)
|
||||
* Copyright: (c) 2009 Naveen Garg and GeSHi
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2009/06/11
|
||||
*
|
||||
* Autohotkey language file for GeSHi.
|
||||
|
@ -4,7 +4,7 @@
|
||||
* --------
|
||||
* Author: big_daddy (robert.i.anthony@gmail.com)
|
||||
* Copyright: (c) 2006 and to GESHi ;)
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2006/01/26
|
||||
*
|
||||
* AutoIT language file for GeSHi.
|
||||
|
@ -4,7 +4,7 @@
|
||||
* --------
|
||||
* Author: Ryan Jones (sciguyryan@gmail.com)
|
||||
* Copyright: (c) 2008 Ryan Jones
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2008/10/08
|
||||
*
|
||||
* AviSynth language file for GeSHi.
|
||||
|
@ -4,7 +4,7 @@
|
||||
* -------
|
||||
* Author: George Pollard (porges@porg.es)
|
||||
* Copyright: (c) 2009 George Pollard
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2009/01/28
|
||||
*
|
||||
* Awk language file for GeSHi.
|
||||
|
@ -4,7 +4,7 @@
|
||||
* ---------------------------------
|
||||
* Author: aquaticus.info
|
||||
* Copyright: (c) 2008 aquaticus.info
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2008/01/09
|
||||
*
|
||||
* BASCOM AVR language file for GeSHi.
|
||||
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2004/08/20
|
||||
*
|
||||
* BASH language file for GeSHi.
|
||||
@ -157,8 +157,8 @@ $language_data = array (
|
||||
|
||||
'ed', 'egrep', 'env', 'expr',
|
||||
|
||||
'false', 'fbset', 'ffmpeg', 'fgconsole','fgrep', 'file', 'find',
|
||||
'flex', 'flex++', 'fmt', 'free', 'ftp', 'funzip', 'fuser',
|
||||
'false', 'fbset', 'fdisk', 'ffmpeg', 'fgconsole','fgrep', 'file',
|
||||
'find', 'flex', 'flex++', 'fmt', 'free', 'ftp', 'funzip', 'fuser',
|
||||
|
||||
'g++', 'gawk', 'gc','gcc', 'gdb', 'getent', 'getkeycodes',
|
||||
'getopt', 'gettext', 'gettextize', 'gimp', 'gimp-remote',
|
||||
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2007/09/15
|
||||
*
|
||||
* Basic4GL language file for GeSHi.
|
||||
|
@ -4,7 +4,7 @@
|
||||
* ----------
|
||||
* Author: Benny Baumann (BenBE@geshi.org)
|
||||
* Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/)
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2009/10/31
|
||||
*
|
||||
* Brainfuck language file for GeSHi.
|
||||
@ -63,7 +63,7 @@ $language_data = array (
|
||||
1 => 'color: #666666; font-style: italic;'
|
||||
),
|
||||
'BRACKETS' => array(
|
||||
0 => 'color: #66cc66;'
|
||||
0 => 'color: #660000;'
|
||||
),
|
||||
'STRINGS' => array(
|
||||
0 => 'color: #ff0000;'
|
||||
@ -76,8 +76,8 @@ $language_data = array (
|
||||
0 => 'color: #006600;',
|
||||
1 => 'color: #660000;',
|
||||
2 => 'color: #000066;',
|
||||
3 => 'color: #660066;',
|
||||
4 => 'color: #666600;'
|
||||
3 => 'color: #666600;',
|
||||
4 => 'color: #660066;'
|
||||
),
|
||||
'ESCAPE_CHAR' => array(
|
||||
),
|
||||
@ -102,8 +102,9 @@ $language_data = array (
|
||||
'PARSER_CONTROL' => array(
|
||||
'ENABLE_FLAGS' => array(
|
||||
'STRINGS' => GESHI_NEVER,
|
||||
'NUMBERS' => GESHI_NEVER
|
||||
),
|
||||
'NUMBERS' => GESHI_NEVER,
|
||||
'BRACKETS' => GESHI_NEVER
|
||||
),
|
||||
'KEYWORDS' => array(
|
||||
'DISALLOW_BEFORE' => '',
|
||||
'DISALLOW_AFTER' => ''
|
||||
@ -111,4 +112,4 @@ $language_data = array (
|
||||
)
|
||||
);
|
||||
|
||||
?>
|
||||
?>
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2009/04/29
|
||||
*
|
||||
* BibTeX language file for GeSHi.
|
||||
|
@ -4,7 +4,7 @@
|
||||
* --------------
|
||||
* Author: P<EFBFBD>draig O`Connel (info@moonsword.info)
|
||||
* Copyright: (c) 2005 P<EFBFBD>draig O`Connel (http://moonsword.info)
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 16.10.2005
|
||||
*
|
||||
* BlitzBasic language file for GeSHi.
|
||||
@ -56,7 +56,7 @@ $language_data = array (
|
||||
'ESCAPE_CHAR' => '',
|
||||
'KEYWORDS' => array(
|
||||
1 => array(
|
||||
'If','EndIf','ElseIf','Else If','Else','While','Wend','Return','Next','Include','End Type','End Select','End If','End Function','End','Select',
|
||||
'If','EndIf','ElseIf','Else','While','Wend','Return','Next','Include','End Type','End Select','End If','End Function','End','Select',
|
||||
'Type','Forever','For','Or','And','AppTitle','Case','Goto','Gosub','Step','Stop','Int','Last','False','Then','To','True','Until','Float',
|
||||
'String','Before','Not'
|
||||
),
|
||||
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2006/09/28
|
||||
*
|
||||
* BNF (Backus-Naur form) language file for GeSHi.
|
||||
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2007/09/10
|
||||
*
|
||||
* Boo language file for GeSHi.
|
||||
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2004/06/04
|
||||
*
|
||||
* C language file for GeSHi.
|
||||
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2010-07-25
|
||||
*
|
||||
* C (for LoadRunner) language file for GeSHi.
|
||||
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2004/06/04
|
||||
*
|
||||
* C for Macs language file for GeSHi.
|
||||
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2004/08/30
|
||||
*
|
||||
* CAD DCL (Dialog Control Language) language file for GeSHi.
|
||||
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2004/08/30
|
||||
*
|
||||
* AutoCAD/IntelliCAD Lisp language file for GeSHi.
|
||||
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2006/03/11
|
||||
*
|
||||
* CFDG language file for GeSHi.
|
||||
|
@ -4,7 +4,7 @@
|
||||
* -------
|
||||
* Author: Diego
|
||||
* Copyright: (c) 2006 Diego
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2006/02/25
|
||||
*
|
||||
* ColdFusion language file for GeSHi.
|
||||
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2009/07/03
|
||||
*
|
||||
* ChaiScript language file for GeSHi.
|
||||
@ -52,7 +52,7 @@ $language_data = array (
|
||||
'ESCAPE_CHAR' => '\\',
|
||||
'KEYWORDS' => array(
|
||||
1 => array(
|
||||
'break', 'else', 'else if', 'eval', 'for', 'if', 'return', 'while', 'try', 'catch', 'finally',
|
||||
'break', 'else', 'elseif', 'eval', 'for', 'if', 'return', 'while', 'try', 'catch', 'finally',
|
||||
),
|
||||
2 => array(
|
||||
'def', 'false', 'fun', 'true', 'var', 'attr',
|
||||
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2007/10/24
|
||||
*
|
||||
* CIL (Common Intermediate Language) language file for GeSHi.
|
||||
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2009/09/20
|
||||
*
|
||||
* Clojure language file for GeSHi.
|
||||
|
@ -4,7 +4,7 @@
|
||||
* -------
|
||||
* Author: Daniel Nelson (danieln@eng.utah.edu)
|
||||
* Copyright: (c) 2009 Daniel Nelson
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2009/04/06
|
||||
*
|
||||
* CMake language file for GeSHi.
|
||||
|
@ -4,7 +4,7 @@
|
||||
* ----------
|
||||
* Author: BenBE (BenBE@omorphia.org)
|
||||
* Copyright: (c) 2007-2008 BenBE (http://www.omorphia.de/)
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2007/07/02
|
||||
*
|
||||
* COBOL language file for GeSHi.
|
||||
|
@ -4,7 +4,7 @@
|
||||
* ----------
|
||||
* Author: Trevor Burnham (trevorburnham@gmail.com)
|
||||
* Copyright: (c) 2010 Trevor Burnham (http://iterative.ly)
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2010/06/08
|
||||
*
|
||||
* CoffeeScript language file for GeSHi.
|
||||
|
@ -4,10 +4,10 @@
|
||||
* -------
|
||||
* Author: Iulian M
|
||||
* Copyright: (c) 2006 Iulian M
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2004/09/27
|
||||
*
|
||||
* C++ (with QT extensions) language file for GeSHi.
|
||||
* C++ (with Qt extensions) language file for GeSHi.
|
||||
*
|
||||
* CHANGES
|
||||
* -------
|
||||
@ -41,7 +41,7 @@
|
||||
************************************************************************************/
|
||||
|
||||
$language_data = array (
|
||||
'LANG_NAME' => 'C++ (QT)',
|
||||
'LANG_NAME' => 'C++ (Qt)',
|
||||
'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
|
||||
'COMMENT_MULTI' => array('/*' => '*/'),
|
||||
'COMMENT_REGEXP' => array(
|
||||
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2004/09/27
|
||||
*
|
||||
* C++ language file for GeSHi.
|
||||
|
@ -5,13 +5,15 @@
|
||||
* 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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2004/06/04
|
||||
*
|
||||
* C# language file for GeSHi.
|
||||
*
|
||||
* CHANGES
|
||||
* -------
|
||||
* 2012/06/18 (1.0.8.11)
|
||||
* - Added missing keywords (Christian Stelzmann)
|
||||
* 2009/04/03 (1.0.8.6)
|
||||
* - Added missing keywords identified by Rosetta Code users.
|
||||
* 2008/05/25 (1.0.7.22)
|
||||
@ -60,14 +62,15 @@ $language_data = array (
|
||||
'ESCAPE_CHAR' => '\\',
|
||||
'KEYWORDS' => array(
|
||||
1 => array(
|
||||
'as', 'auto', 'base', 'break', 'case', 'catch', 'const', 'continue',
|
||||
'abstract', 'add', 'as', 'base', 'break', 'by', 'case', 'catch', 'const', 'continue',
|
||||
'default', 'do', 'else', 'event', 'explicit', 'extern', 'false',
|
||||
'finally', 'fixed', 'for', 'foreach', 'from', 'goto', 'if',
|
||||
'implicit', 'in', 'internal', 'lock', 'namespace', 'null',
|
||||
'finally', 'fixed', 'for', 'foreach', 'from', 'get', 'goto', 'group', 'if',
|
||||
'implicit', 'in', 'into', 'internal', 'join', 'lock', 'namespace', 'null',
|
||||
'operator', 'out', 'override', 'params', 'partial', 'private',
|
||||
'protected', 'public', 'readonly', 'ref', 'return', 'sealed',
|
||||
'select', 'stackalloc', 'static', 'switch', 'this', 'throw', 'true',
|
||||
'try', 'unsafe', 'using', 'virtual', 'where', 'while', 'yield'
|
||||
'protected', 'public', 'readonly', 'remove', 'ref', 'return', 'sealed',
|
||||
'select', 'set', 'stackalloc', 'static', 'switch', 'this', 'throw', 'true',
|
||||
'try', 'unsafe', 'using', 'var', 'value', 'virtual', 'volatile', 'where',
|
||||
'while', 'yield'
|
||||
),
|
||||
2 => array(
|
||||
'#elif', '#endif', '#endregion', '#else', '#error', '#define', '#if',
|
||||
@ -78,7 +81,7 @@ $language_data = array (
|
||||
),
|
||||
4 => array(
|
||||
'bool', 'byte', 'char', 'class', 'decimal', 'delegate', 'double',
|
||||
'enum', 'float', 'int', 'interface', 'long', 'object', 'sbyte',
|
||||
'dynamic', 'enum', 'float', 'int', 'interface', 'long', 'object', 'sbyte',
|
||||
'short', 'string', 'struct', 'uint', 'ulong', 'ushort', 'void'
|
||||
),
|
||||
5 => array(
|
||||
|
@ -4,7 +4,7 @@
|
||||
* -------
|
||||
* Author: Nigel McNie (nigel@geshi.org)
|
||||
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2004/06/18
|
||||
*
|
||||
* CSS language file for GeSHi.
|
||||
@ -72,6 +72,8 @@ $language_data = 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',
|
||||
@ -215,7 +217,8 @@ $language_data = array (
|
||||
'TAB_WIDTH' => 4,
|
||||
'PARSER_CONTROL' => array(
|
||||
'KEYWORDS' => array(
|
||||
'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-&\.])'
|
||||
'DISALLOWED_AFTER' => '(?![\-a-zA-Z0-9_\|%\\-&\.])',
|
||||
'DISALLOWED_BEFORE' => '(?<![\-a-zA-Z0-9_\|%\\~&\.])'
|
||||
)
|
||||
)
|
||||
);
|
||||
|
@ -4,7 +4,7 @@
|
||||
* ----------
|
||||
* Author: Benny Baumann (benbe@geshi.org)
|
||||
* Copyright: (c) 2009 Benny Baumann (http://qbnz.com/highlighter/)
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2009/12/21
|
||||
*
|
||||
* Cuesheet language file for GeSHi.
|
||||
|
@ -3,14 +3,18 @@
|
||||
* d.php
|
||||
* -----
|
||||
* Author: Thomas Kuehne (thomas@kuehne.cn)
|
||||
* Contributors:
|
||||
* - Jimmy Cao
|
||||
* Copyright: (c) 2005 Thomas Kuehne (http://thomas.kuehne.cn/)
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2005/04/22
|
||||
*
|
||||
* D language file for GeSHi.
|
||||
*
|
||||
* CHANGES
|
||||
* -------
|
||||
* 2011/06/28 (0.0.3) (Jimmy Cao)
|
||||
* - added D2 features
|
||||
* 2005/04/22 (0.0.2)
|
||||
* - added _d_* and sizeof/ptrdiff_t
|
||||
* 2005/04/20 (0.0.1)
|
||||
@ -45,7 +49,7 @@
|
||||
$language_data = array (
|
||||
'LANG_NAME' => 'D',
|
||||
'COMMENT_SINGLE' => array(2 => '///', 1 => '//'),
|
||||
'COMMENT_MULTI' => array('/*' => '*/'),
|
||||
'COMMENT_MULTI' => array('/*' => '*/', '/+' => '+/'),
|
||||
'COMMENT_REGEXP' => array(
|
||||
// doxygen comments
|
||||
3 => '#/\*\*(?![\*\/]).*\*/#sU',
|
||||
@ -126,63 +130,39 @@ $language_data = array (
|
||||
1 => array(
|
||||
'break', 'case', 'continue', 'do', 'else',
|
||||
'for', 'foreach', 'goto', 'if', 'return',
|
||||
'switch', 'while'
|
||||
'switch', 'while', 'foreach_reverse'
|
||||
),
|
||||
2 => array(
|
||||
'alias', 'asm', 'assert', 'body', 'cast',
|
||||
'catch', 'default', 'delegate', 'delete',
|
||||
'extern', 'false', 'finally', 'function',
|
||||
'import', 'in', 'inout', 'interface',
|
||||
'invariant', 'is', 'mixin', 'module', 'new',
|
||||
'import', 'in', 'inout',
|
||||
'invariant', 'is', 'lazy', 'mixin', 'module', 'new',
|
||||
'null', 'out', 'pragma', 'ref', 'super', 'this',
|
||||
'throw', 'true', 'try', 'typedef', 'typeid',
|
||||
'typeof', 'union', 'with'
|
||||
'throw', 'true', 'try', 'typeid',
|
||||
'typeof', 'union', 'with', 'scope'
|
||||
),
|
||||
3 => array(
|
||||
'ArrayBoundsError', 'AssertError',
|
||||
'ClassInfo', 'Error', 'Exception',
|
||||
'Interface', 'ModuleInfo', 'Object',
|
||||
'OutOfMemoryException', 'SwitchError',
|
||||
'TypeInfo', '_d_arrayappend',
|
||||
'_d_arrayappendb', '_d_arrayappendc',
|
||||
'_d_arrayappendcb', '_d_arraycast',
|
||||
'_d_arraycast_frombit', '_d_arraycat',
|
||||
'_d_arraycatb', '_d_arraycatn',
|
||||
'_d_arraycopy', '_d_arraycopybit',
|
||||
'_d_arraysetbit', '_d_arraysetbit2',
|
||||
'_d_arraysetlength', '_d_arraysetlengthb',
|
||||
'_d_callfinalizer',
|
||||
'_d_create_exception_object',
|
||||
'_d_criticalenter', '_d_criticalexit',
|
||||
'_d_delarray', '_d_delclass',
|
||||
'_d_delinterface', '_d_delmemory',
|
||||
'_d_dynamic_cast', '_d_exception',
|
||||
'_d_exception_filter', '_d_framehandler',
|
||||
'_d_interface_cast', '_d_interface_vtbl',
|
||||
'_d_invariant', '_d_isbaseof',
|
||||
'_d_isbaseof2', '_d_local_unwind',
|
||||
'_d_monitorenter', '_d_monitorexit',
|
||||
'_d_monitorrelease', '_d_monitor_epilog',
|
||||
'_d_monitor_handler', '_d_monitor_prolog',
|
||||
'_d_new', '_d_newarrayi', '_d_newbitarray',
|
||||
'_d_newclass', '_d_obj_cmp', '_d_obj_eq',
|
||||
'_d_OutOfMemory', '_d_switch_dstring',
|
||||
'_d_switch_string', '_d_switch_ustring',
|
||||
'_d_throw',
|
||||
'Interface', 'Object', 'IMonitor',
|
||||
'OffsetTypeInfo', 'Throwable',
|
||||
'TypeInfo_Class', 'TypeInfo', '__traits',
|
||||
'__EOF__', '__FILE__', '__LINE__',
|
||||
),
|
||||
4 => array(
|
||||
'abstract', 'align', 'auto', 'bit', 'bool',
|
||||
'byte', 'cdouble', 'cent', 'cfloat', 'char',
|
||||
'class', 'const', 'creal', 'dchar', 'debug',
|
||||
'byte', 'cdouble', 'cfloat', 'char',
|
||||
'class', 'const', 'creal', 'dchar', 'dstring', 'debug',
|
||||
'deprecated', 'double', 'enum', 'export',
|
||||
'final', 'float', 'idouble', 'ifloat', 'int',
|
||||
'ireal', 'long', 'override', 'package',
|
||||
'private', 'protected', 'ptrdiff_t',
|
||||
'public', 'real', 'short', 'size_t',
|
||||
'static', 'struct', 'synchronized',
|
||||
'final', 'float', 'idouble', 'ifloat', 'immutable', 'int',
|
||||
'interface', 'ireal', 'long', 'nothrow', 'override',
|
||||
'package', 'private', 'protected', 'ptrdiff_t',
|
||||
'public', 'real', 'short', 'shared', 'size_t',
|
||||
'static', 'string', 'struct', 'synchronized',
|
||||
'template', 'ubyte', 'ucent', 'uint',
|
||||
'ulong', 'unittest', 'ushort', 'version',
|
||||
'void', 'volatile', 'wchar'
|
||||
'void', 'volatile', 'wchar', 'wstring',
|
||||
'__gshared', '@disable', '@property', 'pure', 'safe'
|
||||
)
|
||||
),
|
||||
'SYMBOLS' => array(
|
||||
|
192
htdocs/application/libraries/geshi/geshi/dcl.php
Normal file
192
htdocs/application/libraries/geshi/geshi/dcl.php
Normal file
@ -0,0 +1,192 @@
|
||||
<?php
|
||||
/*************************************************************************************
|
||||
* dcl.php
|
||||
* --------
|
||||
* Author: Petr Hendl (petr@hendl.cz)
|
||||
* Copyright: (c) 2011 Petr Hendl http://hendl.cz/geshi/
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2011/02/17
|
||||
*
|
||||
* DCL language file for GeSHi.
|
||||
*
|
||||
* CHANGES
|
||||
* -------
|
||||
* 2011-02-17 (1.0.8.11)
|
||||
* - First Release
|
||||
*
|
||||
* TODO
|
||||
* -------------------------
|
||||
*
|
||||
*************************************************************************************
|
||||
*
|
||||
* 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' => 'DCL',
|
||||
'COMMENT_SINGLE' => array('$!', '!'),
|
||||
'COMMENT_MULTI' => array(),
|
||||
'COMMENT_REGEXP' => array(
|
||||
2 => '/(?<=\$)\s*sql\s+.*?(?:quit|exit);?\s*?$/sim' // do not highlight inline sql
|
||||
),
|
||||
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
|
||||
'QUOTEMARKS' => array('"'),
|
||||
'HARDESCAPE' => array(),
|
||||
'ESCAPE_CHAR' => '',
|
||||
'ESCAPE_REGEXP' => array(
|
||||
1 => "/''[a-zA-Z\\-_]+'/"
|
||||
),
|
||||
'KEYWORDS' => array(
|
||||
1 => array( // commands
|
||||
'ACCOUNTING', 'ALLOCATE', 'ANALYZE', 'APPEND', 'ASSIGN', 'ATTACH', 'BACKUP',
|
||||
'CALL', 'CANCEL', 'CHECKSUM', 'CLOSE', 'CONNECT', 'CONTINUE', 'CONVERT',
|
||||
'COPY', 'CREATE', 'DEALLOCATE', 'DEASSIGN', 'DEBUG', 'DECK',
|
||||
'DECRYPT', 'DEFINE', 'DELETE', 'DEPOSIT', 'DIFFERENCES', 'DIRECTORY',
|
||||
'DISABLE', 'AUTOSTART', 'DISCONNECT', 'DISMOUNT', 'DUMP', 'EDIT', 'ENABLE',
|
||||
'ENCRYPT', 'ENDSUBROUTINE', 'EOD', 'EOJ', 'EXAMINE', 'EXCHANGE',
|
||||
'EXIT', 'FONT', 'GOSUB', 'GOTO', 'HELP', 'IF', 'THEN', 'ELSE', 'ENDIF', 'INITIALIZE', 'INQUIRE',
|
||||
'INSTALL', 'JAVA', 'JOB', 'LIBRARY', 'LICENSE', 'LINK', 'LOGIN', 'LOGOUT',
|
||||
'MACRO', 'MAIL', 'MERGE', 'MESSAGE', 'MONITOR', 'MOUNT', 'NCS', 'ON', 'OPEN',
|
||||
'PASSWORD', 'PATCH', 'PHONE', 'PIPE', 'PPPD', 'PRINT', 'PRODUCT', 'PURGE',
|
||||
'READ', 'RECALL', 'RENAME', 'REPLY', 'REQUEST', 'RETURN', 'RMU', 'RUN', 'RUNOFF',
|
||||
'SEARCH', 'SET', 'SET AUDIT', 'SET BOOTBLOCK', 'SET BROADCAST',
|
||||
'SET CACHE', 'SET CARD_READER', 'SET CLUSTER', 'SET COMMAND', 'SET CONTROL',
|
||||
'SET CPU', 'SET DAY', 'SET DEFAULT', 'SET DEVICE', 'SET DIRECTORY',
|
||||
'SET DISPLAY', 'SET ENTRY', 'SET FILE', 'SET HOST', 'SET IMAGE', 'SET KEY',
|
||||
'SET LOGINS', 'SET MAGTAPE', 'SET MESSAGE', 'SET NETWORK', 'SET ON', 'SET OUTPUT_RATE',
|
||||
'SET PASSWORD', 'SET PREFERRED_PATH', 'SET PREFIX', 'SET PRINTER', 'SET PROCESS',
|
||||
'SET PROMPT', 'SET PROTECTION', 'SET QUEUE', 'SET RESTART_VALUE',
|
||||
'SET RIGHTS_LIST', 'SET RMS_DEFAULT', 'SET ROOT', 'SET SECURITY',
|
||||
'SET SERVER ACME_SERVER', 'SET SERVER REGISTRY_SERVER', 'SET SERVER SECURITY_SERVER',
|
||||
'SET SHADOW', 'SET SYMBOL', 'SET TERMINAL', 'SET TIME', 'SET VERIFY',
|
||||
'SET VOLUME', 'SET WORKING_SET', 'SHOW', 'SHOW AUDIT',
|
||||
'SHOW BROADCAST', 'SHOW CLUSTER', 'SHOW CPU', 'SHOW DEFAULT', 'SHOW DEVICES',
|
||||
'SHOW DISPLAY', 'SHOW ENTRY', 'SHOW ERROR', 'SHOW FASTPATH', 'SHOW IMAGE',
|
||||
'SHOW INTRUSION', 'SHOW KEY', 'SHOW LICENSE', 'SHOW LOGICAL', 'SHOW MEMORY',
|
||||
'SHOW NETWORK', 'SHOW PRINTER', 'SHOW PROCESS', 'SHOW PROTECTION', 'SHOW QUEUE',
|
||||
'SHOW QUOTA', 'SHOW RMS_DEFAULT', 'SHOW ROOT', 'SHOW SECURITY',
|
||||
'SHOW SERVER ACME_SERVER', 'SHOW SERVER REGISTRY_SERVER', 'SHOW SHADOW',
|
||||
'SHOW STATUS', 'SHOW SYMBOL', 'SHOW SYSTEM', 'SHOW TERMINAL', 'SHOW TIME',
|
||||
'SHOW TRANSLATION', 'SHOW USERS', 'SHOW WORKING_SET', 'SHOW ZONE', 'SORT',
|
||||
'SPAWN', 'START', 'STOP', 'SUBMIT', 'SUBROUTINE', 'SYNCHRONIZE', 'TYPE',
|
||||
'UNLOCK', 'VIEW', 'WAIT', 'WRITE', 'XAUTH'
|
||||
),
|
||||
2 => array( // lexical functions
|
||||
'F$CONTEXT', 'F$CSID', 'F$CUNITS', 'F$CVSI', 'F$CVTIME', 'F$CVUI',
|
||||
'F$DELTA_TIME', 'F$DEVICE', 'F$DIRECTORY', 'F$EDIT', 'F$ELEMENT',
|
||||
'F$ENVIRONMENT', 'F$EXTRACT', 'F$FAO', 'F$FID_TO_NAME', 'F$FILE_ATTRIBUTES',
|
||||
'F$GETDVI', 'F$GETENV', 'F$GETJPI', 'F$GETQUI', 'F$GETSYI', 'F$IDENTIFIER',
|
||||
'F$INTEGER', 'F$LENGTH', 'F$LICENSE', 'F$LOCATE', 'F$MATCH_WILD', 'F$MESSAGE',
|
||||
'F$MODE', 'F$MULTIPATH', 'F$PARSE', 'F$PID', 'F$PRIVILEGE', 'F$PROCESS',
|
||||
'F$SEARCH', 'F$SETPRV', 'F$STRING', 'F$TIME', 'F$TRNLNM', 'F$TYPE', 'F$UNIQUE',
|
||||
'F$USER', 'F$VERIFY'
|
||||
),
|
||||
3 => array( // special variables etc
|
||||
'sql$database', 'P1', 'P2', 'P3', 'P4', 'P5', 'P6', 'P7', 'P8', 'P9',
|
||||
'$status', '$severity', 'sys$login', 'sys$system',
|
||||
'sys$input', 'sys$output', 'sys$pipe'
|
||||
)
|
||||
),
|
||||
'SYMBOLS' => array(
|
||||
'(', ')', '[', ']', '@', '&', '|', '<', '>', '-',
|
||||
'.eqs.', '.eq.', '.lt.', '.lts.', '.gt.', '.gts.', '.ne.', '.nes.',
|
||||
'.le.', '.ge.', '.ges.', '.les.',
|
||||
'.EQS.', '.EQ.', '.LT.', '.LTS.', '.GT.', '.GTS.', '.NE.', '.NES.',
|
||||
'.LE.', '.GE.', '.GES.', '.LES.',
|
||||
'.and.', '.or.', '.not.',
|
||||
'.AND.', '.OR.', '.NOT.',
|
||||
'==', ':==', '=', ':='
|
||||
),
|
||||
'CASE_SENSITIVE' => array(
|
||||
GESHI_COMMENTS => false,
|
||||
1 => false,
|
||||
2 => false,
|
||||
3 => false
|
||||
),
|
||||
'STYLES' => array(
|
||||
'KEYWORDS' => array(
|
||||
1 => 'color: #000099; font-weight: bold;',
|
||||
2 => 'color: #0066FF;',
|
||||
3 => 'color: #993300;'
|
||||
),
|
||||
'COMMENTS' => array(
|
||||
0 => 'color: #666666; font-style: italic;',
|
||||
1 => 'color: #666666; font-style: italic;',
|
||||
2 => 'color: #9999FF; font-style: italic;'
|
||||
),
|
||||
'ESCAPE_CHAR' => array(
|
||||
0 => 'color: #006666;',
|
||||
1 => 'color: #0099FF;',
|
||||
2 => 'color: red;',
|
||||
3 => 'color: #007800;',
|
||||
4 => 'color: #007800;',
|
||||
5 => 'color: #780078;'
|
||||
),
|
||||
'BRACKETS' => array(
|
||||
0 => 'color: #7a0874; font-weight: bold;'
|
||||
),
|
||||
'STRINGS' => array(
|
||||
0 => 'color: #009900;'
|
||||
),
|
||||
'NUMBERS' => array(
|
||||
0 => 'color: #000000;'
|
||||
),
|
||||
'METHODS' => array(
|
||||
),
|
||||
'SYMBOLS' => array(
|
||||
0 => 'color: #000000; font-weight: bold;'
|
||||
),
|
||||
'REGEXPS' => array(
|
||||
0 => 'color: #0099FF;', // variables
|
||||
1 => 'color: #0000FF;', // qualifiers
|
||||
2 => 'color: #FF6600; font-weight: bold;' // labels
|
||||
),
|
||||
'SCRIPT' => array(
|
||||
)
|
||||
),
|
||||
'URLS' => array(
|
||||
1 => '',
|
||||
2 => '',
|
||||
3 => ''
|
||||
),
|
||||
'OOLANG' => false,
|
||||
'OBJECT_SPLITTERS' => array(
|
||||
),
|
||||
'REGEXPS' => array(
|
||||
// variables
|
||||
0 => "'[a-zA-Z_\\-$]+'",
|
||||
// qualifiers and parameters
|
||||
1 => "(?:\/[a-zA-Z_\/]+)[\s=]",
|
||||
// labels
|
||||
2 => '(?<=\$)\s*[a-zA-Z\-_]+:'
|
||||
),
|
||||
'STRICT_MODE_APPLIES' => GESHI_NEVER,
|
||||
'SCRIPT_DELIMITERS' => array(
|
||||
),
|
||||
'HIGHLIGHT_STRICT_BLOCK' => array(
|
||||
),
|
||||
'TAB_WIDTH' => 4,
|
||||
'PARSER_CONTROL' => array(
|
||||
'COMMENTS' => array(
|
||||
),
|
||||
'KEYWORDS' => array(
|
||||
)
|
||||
)
|
||||
);
|
||||
|
||||
?>
|
131
htdocs/application/libraries/geshi/geshi/dcpu16.php
Normal file
131
htdocs/application/libraries/geshi/geshi/dcpu16.php
Normal file
@ -0,0 +1,131 @@
|
||||
<?php
|
||||
/*************************************************************************************
|
||||
* dcpu16.php
|
||||
* -------
|
||||
* Author: Benny Baumann (BenBE@omorphia.de)
|
||||
* Copyright: (c) 2007-2012 Benny Baumann (http://geshi.org/)
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2012/04/12
|
||||
*
|
||||
* DCPU/16 Assembly language file for GeSHi.
|
||||
* Syntax definition based on http://0x10c.com/doc/dcpu-16.txt
|
||||
*
|
||||
* CHANGES
|
||||
* -------
|
||||
* 2012/04/12 (1.0.0)
|
||||
* - First Release
|
||||
*
|
||||
* TODO (updated 2012/04/12)
|
||||
* -------------------------
|
||||
*
|
||||
*************************************************************************************
|
||||
*
|
||||
* 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' => 'DCPU-16 Assembly',
|
||||
'COMMENT_SINGLE' => array(1 => ';'),
|
||||
'COMMENT_MULTI' => array(),
|
||||
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
|
||||
'QUOTEMARKS' => array("'", '"'),
|
||||
'ESCAPE_CHAR' => '',
|
||||
'NUMBERS' => GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_HEX_PREFIX,
|
||||
'KEYWORDS' => array(
|
||||
/*CPU*/
|
||||
1 => array(
|
||||
'set','add','sub','mul','div','mod','shl','shr','and','bor','xor',
|
||||
'ife','ifn','ifg','ifb',
|
||||
'jsr'
|
||||
),
|
||||
/*registers*/
|
||||
2 => array(
|
||||
'a','b','c','x','y','z','i','j',
|
||||
'pc','sp','o',
|
||||
'pop','peek','push' //Special cases with DCPU-16
|
||||
),
|
||||
),
|
||||
'SYMBOLS' => array(
|
||||
'[', ']', '+', '-', ','
|
||||
),
|
||||
'CASE_SENSITIVE' => array(
|
||||
GESHI_COMMENTS => false,
|
||||
1 => false,
|
||||
2 => false,
|
||||
),
|
||||
'STYLES' => array(
|
||||
'KEYWORDS' => array(
|
||||
1 => 'color: #000088; font-weight:bold;',
|
||||
2 => 'color: #0000ff;'
|
||||
),
|
||||
'COMMENTS' => array(
|
||||
1 => 'color: #adadad; font-style: italic;',
|
||||
),
|
||||
'ESCAPE_CHAR' => array(
|
||||
0 => 'color: #000099; font-weight: bold;'
|
||||
),
|
||||
'BRACKETS' => array(
|
||||
0 => 'color: #000088;'
|
||||
),
|
||||
'STRINGS' => array(
|
||||
0 => 'color: #7f007f;'
|
||||
),
|
||||
'NUMBERS' => array(
|
||||
0 => 'color: #880000;'
|
||||
),
|
||||
'METHODS' => array(
|
||||
),
|
||||
'SYMBOLS' => array(
|
||||
0 => 'color: #008000;'
|
||||
),
|
||||
'REGEXPS' => array(
|
||||
2 => 'color: #993333;'
|
||||
),
|
||||
'SCRIPT' => array(
|
||||
)
|
||||
),
|
||||
'URLS' => array(
|
||||
1 => 'http://0x10c.com/doc/dcpu-16.txt',
|
||||
2 => ''
|
||||
),
|
||||
'OOLANG' => false,
|
||||
'OBJECT_SPLITTERS' => array(
|
||||
),
|
||||
'REGEXPS' => array(
|
||||
//Hex numbers
|
||||
//0 => '0[0-9a-fA-F]{1,32}[hH]',
|
||||
//Binary numbers
|
||||
//1 => '\%[01]{1,64}|[01]{1,64}[bB]?(?![^<]*>)',
|
||||
//Labels
|
||||
2 => '^:[_a-zA-Z][_a-zA-Z0-9]?(?=\s|$)'
|
||||
),
|
||||
'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_\|%\\-])"
|
||||
)
|
||||
)
|
||||
);
|
||||
|
||||
?>
|
@ -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.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2009/01/20
|
||||
*
|
||||
* DCS language file for GeSHi.
|
||||
|
@ -4,13 +4,17 @@
|
||||
* ----------
|
||||
* Author: J<EFBFBD>rja Norbert (jnorbi@vipmail.hu), Benny Baumann (BenBE@omorphia.de)
|
||||
* Copyright: (c) 2004 J<EFBFBD>rja Norbert, Benny Baumann (BenBE@omorphia.de), Nigel McNie (http://qbnz.com/highlighter)
|
||||
* Release Version: 1.0.8.10
|
||||
* Release Version: 1.0.8.11
|
||||
* Date Started: 2004/07/26
|
||||
*
|
||||
* Delphi (Object Pascal) language file for GeSHi.
|
||||
*
|
||||
* CHANGES
|
||||
* -------
|
||||
* 2012/06/27 (1.0.8.11)
|
||||
* - Added some keywords
|
||||
* - fixed hex numbers and hex char literals (including WideChar)
|
||||
* - Added support for FPC-Style generics
|
||||
* 2008/05/23 (1.0.7.22)
|
||||
* - Added description of extra language features (SF#1970248)
|
||||
* 2005/11/19 (1.0.3)
|
||||
@ -51,27 +55,28 @@ $language_data = array (
|
||||
'COMMENT_MULTI' => array('(*' => '*)', '{' => '}'),
|
||||
//Compiler directives
|
||||
'COMMENT_REGEXP' => array(2 => '/\\{\\$.*?}|\\(\\*\\$.*?\\*\\)/U'),
|
||||
'CASE_KEYWORDS' => 0,
|
||||
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
|
||||
'QUOTEMARKS' => array("'"),
|
||||
'ESCAPE_CHAR' => '',
|
||||
|
||||
'KEYWORDS' => array(
|
||||
1 => array(
|
||||
'Abstract', 'And', 'Array', 'As', 'Asm', 'At', 'Begin', 'Case',
|
||||
'Class', 'Const', 'Constructor', 'Contains', 'Destructor',
|
||||
'Class', 'Const', 'Constructor', 'Contains', 'Default', 'delayed', 'Destructor',
|
||||
'DispInterface', 'Div', 'Do', 'DownTo', 'Else', 'End', 'Except',
|
||||
'Export', 'Exports', 'External', 'File', 'Finalization', 'Finally',
|
||||
'For', 'Function', 'Goto', 'If', 'Implementation', 'In', 'Inherited',
|
||||
'Initialization', 'Inline', 'Interface', 'Is', 'Label', 'Library',
|
||||
'Mod', 'Not', 'Object', 'Of', 'On', 'Or', 'Overload', 'Override',
|
||||
'Export', 'Exports', 'External', 'File', 'Finalization', 'Finally', 'For',
|
||||
'Function', 'Generic', 'Goto', 'If', 'Implementation', 'In', 'Inherited',
|
||||
'Initialization', 'Inline', 'Interface', 'Is', 'Label', 'Library', 'Message',
|
||||
'Mod', 'Nil', 'Not', 'Object', 'Of', 'On', 'Or', 'Overload', 'Override',
|
||||
'Package', 'Packed', 'Private', 'Procedure', 'Program', 'Property',
|
||||
'Protected', 'Public', 'Published', 'Raise', 'Record', 'Register',
|
||||
'Repeat', 'Requires', 'Resourcestring', 'Set', 'Shl', 'Shr', 'Then',
|
||||
'ThreadVar', 'To', 'Try', 'Type', 'Unit', 'Until', 'Uses', 'Var',
|
||||
'Virtual', 'While', 'With', 'Xor', 'assembler', 'far',
|
||||
'Protected', 'Public', 'Published', 'Read', 'Raise', 'Record', 'Register',
|
||||
'Repeat', 'Requires', 'Resourcestring', 'Set', 'Shl', 'Shr', 'Specialize', 'Stored',
|
||||
'Then', 'ThreadVar', 'To', 'Try', 'Type', 'Unit', 'Until', 'Uses', 'Var',
|
||||
'Virtual', 'While', 'With', 'Write', 'Xor', 'assembler', 'far',
|
||||
'near', 'pascal', 'cdecl', 'safecall', 'stdcall', 'varargs'
|
||||
),
|
||||
2 => array(
|
||||
'nil', 'false', 'self', 'true', 'var', 'type', 'const'
|
||||
'false', 'self', 'true',
|
||||
),
|
||||
3 => array(
|
||||
'Abs', 'AcquireExceptionObject', 'Addr', 'AnsiToUtf8', 'Append', 'ArcTan',
|
||||
@ -250,7 +255,7 @@ $language_data = array (
|
||||
1 => 'color: #006600;'
|
||||
),
|
||||
'REGEXPS' => array(
|
||||
0 => 'color: #9ac;',
|
||||
0 => 'color: #0000cc;',
|
||||
1 => 'color: #ff0000;'
|
||||
),
|
||||
'SYMBOLS' => array(
|
||||
@ -274,16 +279,23 @@ $language_data = array (
|
||||
),
|
||||
'REGEXPS' => array(
|
||||
//Hex numbers
|
||||
0 => '\$[0-9a-fA-F]+',
|
||||
0 => '(?<!\#)\$[0-9a-fA-F]+(?!\w)',
|
||||
//Characters
|
||||
1 => '\#(?:\$[0-9a-fA-F]{1,2}|\d{1,3})'
|
||||
1 => '\#(?:\$[0-9a-fA-F]{1,4}|\d{1,5})'
|
||||
),
|
||||
'STRICT_MODE_APPLIES' => GESHI_NEVER,
|
||||
'SCRIPT_DELIMITERS' => array(
|
||||
),
|
||||
'HIGHLIGHT_STRICT_BLOCK' => array(
|
||||
),
|
||||
'TAB_WIDTH' => 2
|
||||
'TAB_WIDTH' => 2,
|
||||
'PARSER_CONTROL' => array(
|
||||
'KEYWORDS' => array(
|
||||
3 => array(
|
||||
'DISALLOWED_AFTER' => '(?=\s*[(;])'
|
||||
)
|
||||
)
|
||||
)
|
||||
);
|
||||
|
||||
?>
|
||||
?>
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user