* enhanced ProjectModel->create() to remove dependency on the external script 'repo.sh'

* enhanced the code_folder view to display properties.
* fixed a minor bug in the code_history view.
* got rid of websvn totally.
This commit is contained in:
2010-04-13 11:38:26 +00:00
parent 3104736b42
commit 75d3c271d6
300 changed files with 84 additions and 58454 deletions

View File

@ -87,6 +87,7 @@ LICENSE
CodeIgniter 1.7.2 See src/system/license.txt
Google code prettify Apache License 2.0
JavaScript Creole 1.0 Wiki Markup Parser See src/js/creole.js
WebSVN 2.1.0 See src/websvn/license.txt
jQuery JavaScript Library v1.4.2 See http://jquery.org/license
jQuery UI 1.8 MIT or GPL
------------------------------------------------------------------------

View File

@ -45,7 +45,6 @@ rm -rf $RPM_BUILD_ROOT
%config(noreplace) /etc/codepot/codepot.ini
/etc/codepot/codepot.sql
/etc/codepot/codepot.a2ldap
/etc/codepot/repo.sh
/etc/codepot/start-commit
/etc/codepot/pre-commit
/etc/codepot/post-commit

16
codepot/configure vendored
View File

@ -3120,7 +3120,7 @@ cachedir=$cachedir
ac_config_files="$ac_config_files Makefile codepot.spec etc/Makefile etc/codepot.ini etc/codepot.a2ldap DEBIAN/Makefile DEBIAN/control DEBIAN/postinst DEBIAN/postrm src/config.php src/codepot/config/Makefile src/codepot/controllers/Makefile src/codepot/errors/Makefile src/codepot/helpers/Makefile src/codepot/hooks/Makefile src/codepot/language/english/Makefile src/codepot/language/indonesian/Makefile src/codepot/language/korean/Makefile src/codepot/language/Makefile src/codepot/libraries/Makefile src/codepot/models/Makefile src/codepot/views/Makefile src/codepot/Makefile src/css/images/Makefile src/css/Makefile src/js/prettify/Makefile src/js/Makefile src/system/cache/Makefile src/system/codeigniter/Makefile src/system/database/drivers/mssql/Makefile src/system/database/drivers/mysql/Makefile src/system/database/drivers/mysqli/Makefile src/system/database/drivers/oci8/Makefile src/system/database/drivers/odbc/Makefile src/system/database/drivers/postgre/Makefile src/system/database/drivers/sqlite/Makefile src/system/database/drivers/Makefile src/system/database/Makefile src/system/fonts/Makefile src/system/helpers/Makefile src/system/language/english/Makefile src/system/language/korean/Makefile src/system/language/Makefile src/system/libraries/Makefile src/system/logs/Makefile src/system/plugins/Makefile src/system/scaffolding/images/Makefile src/system/scaffolding/views/Makefile src/system/scaffolding/Makefile src/system/Makefile src/websvn/cache/Makefile src/websvn/doc/Makefile src/websvn/include/Makefile src/websvn/languages/Makefile src/websvn/lib/geshi/Makefile src/websvn/lib/Makefile src/websvn/temp/Makefile src/websvn/templates/calm/images/Makefile src/websvn/templates/calm/star-light/smilies/Makefile src/websvn/templates/calm/star-light/src/Makefile src/websvn/templates/calm/star-light/Makefile src/websvn/templates/calm/Makefile src/websvn/templates/Makefile src/websvn/Makefile src/Makefile"
ac_config_files="$ac_config_files Makefile codepot.spec etc/Makefile etc/codepot.ini etc/codepot.a2ldap DEBIAN/Makefile DEBIAN/control DEBIAN/postinst DEBIAN/postrm src/config.php src/codepot/config/Makefile src/codepot/controllers/Makefile src/codepot/errors/Makefile src/codepot/helpers/Makefile src/codepot/hooks/Makefile src/codepot/language/english/Makefile src/codepot/language/indonesian/Makefile src/codepot/language/korean/Makefile src/codepot/language/Makefile src/codepot/libraries/Makefile src/codepot/models/Makefile src/codepot/views/Makefile src/codepot/Makefile src/css/images/Makefile src/css/Makefile src/js/prettify/Makefile src/js/Makefile src/system/cache/Makefile src/system/codeigniter/Makefile src/system/database/drivers/mssql/Makefile src/system/database/drivers/mysql/Makefile src/system/database/drivers/mysqli/Makefile src/system/database/drivers/oci8/Makefile src/system/database/drivers/odbc/Makefile src/system/database/drivers/postgre/Makefile src/system/database/drivers/sqlite/Makefile src/system/database/drivers/Makefile src/system/database/Makefile src/system/fonts/Makefile src/system/helpers/Makefile src/system/language/english/Makefile src/system/language/korean/Makefile src/system/language/Makefile src/system/libraries/Makefile src/system/logs/Makefile src/system/plugins/Makefile src/system/scaffolding/images/Makefile src/system/scaffolding/views/Makefile src/system/scaffolding/Makefile src/system/Makefile src/Makefile"
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure
@ -3856,20 +3856,6 @@ do
"src/system/scaffolding/views/Makefile") CONFIG_FILES="$CONFIG_FILES src/system/scaffolding/views/Makefile" ;;
"src/system/scaffolding/Makefile") CONFIG_FILES="$CONFIG_FILES src/system/scaffolding/Makefile" ;;
"src/system/Makefile") CONFIG_FILES="$CONFIG_FILES src/system/Makefile" ;;
"src/websvn/cache/Makefile") CONFIG_FILES="$CONFIG_FILES src/websvn/cache/Makefile" ;;
"src/websvn/doc/Makefile") CONFIG_FILES="$CONFIG_FILES src/websvn/doc/Makefile" ;;
"src/websvn/include/Makefile") CONFIG_FILES="$CONFIG_FILES src/websvn/include/Makefile" ;;
"src/websvn/languages/Makefile") CONFIG_FILES="$CONFIG_FILES src/websvn/languages/Makefile" ;;
"src/websvn/lib/geshi/Makefile") CONFIG_FILES="$CONFIG_FILES src/websvn/lib/geshi/Makefile" ;;
"src/websvn/lib/Makefile") CONFIG_FILES="$CONFIG_FILES src/websvn/lib/Makefile" ;;
"src/websvn/temp/Makefile") CONFIG_FILES="$CONFIG_FILES src/websvn/temp/Makefile" ;;
"src/websvn/templates/calm/images/Makefile") CONFIG_FILES="$CONFIG_FILES src/websvn/templates/calm/images/Makefile" ;;
"src/websvn/templates/calm/star-light/smilies/Makefile") CONFIG_FILES="$CONFIG_FILES src/websvn/templates/calm/star-light/smilies/Makefile" ;;
"src/websvn/templates/calm/star-light/src/Makefile") CONFIG_FILES="$CONFIG_FILES src/websvn/templates/calm/star-light/src/Makefile" ;;
"src/websvn/templates/calm/star-light/Makefile") CONFIG_FILES="$CONFIG_FILES src/websvn/templates/calm/star-light/Makefile" ;;
"src/websvn/templates/calm/Makefile") CONFIG_FILES="$CONFIG_FILES src/websvn/templates/calm/Makefile" ;;
"src/websvn/templates/Makefile") CONFIG_FILES="$CONFIG_FILES src/websvn/templates/Makefile" ;;
"src/websvn/Makefile") CONFIG_FILES="$CONFIG_FILES src/websvn/Makefile" ;;
"src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
*) as_fn_error "invalid argument: \`$ac_config_target'" "$LINENO" 5;;

View File

@ -131,20 +131,6 @@ AC_CONFIG_FILES([
src/system/scaffolding/views/Makefile
src/system/scaffolding/Makefile
src/system/Makefile
src/websvn/cache/Makefile
src/websvn/doc/Makefile
src/websvn/include/Makefile
src/websvn/languages/Makefile
src/websvn/lib/geshi/Makefile
src/websvn/lib/Makefile
src/websvn/temp/Makefile
src/websvn/templates/calm/images/Makefile
src/websvn/templates/calm/star-light/smilies/Makefile
src/websvn/templates/calm/star-light/src/Makefile
src/websvn/templates/calm/star-light/Makefile
src/websvn/templates/calm/Makefile
src/websvn/templates/Makefile
src/websvn/Makefile
src/Makefile
])
AC_OUTPUT

View File

@ -1,7 +1,7 @@
cfgdir=$(CFGDIR)
cfg_DATA = codepot.ini codepot.sql codepot.a2ldap
cfg_SCRIPTS = repo.sh start-commit pre-commit post-commit
cfg_SCRIPTS = start-commit pre-commit post-commit
EXTRA_DIST = $(cfg_DATA) $(cfg_SCRIPTS)

View File

@ -169,7 +169,7 @@ top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
wwwdir = @wwwdir@
cfg_DATA = codepot.ini codepot.sql codepot.a2ldap
cfg_SCRIPTS = repo.sh start-commit pre-commit post-commit
cfg_SCRIPTS = start-commit pre-commit post-commit
EXTRA_DIST = $(cfg_DATA) $(cfg_SCRIPTS)
all: all-am

View File

@ -41,11 +41,6 @@ ldap_admin_password = ""
;------------------------------------------------------------------------------
language = "auto"
;------------------------------------------------------------------------------
; Use websvn as a repository browser.
;------------------------------------------------------------------------------
enable_websvn = "no"
;------------------------------------------------------------------------------
; When set to yes, viewing pages require a user to sign in.
;------------------------------------------------------------------------------

View File

@ -1,83 +0,0 @@
#!/bin/sh
make_repo() {
local repodir="$1"
local reponame="$2"
local cfgdir="$3"
local api="$4"
echo "${reponame}" | grep -qF '/' && {
echo "ERROR: invalid repository name - ${reponame}"
return 1
}
mkdir -p "${repodir}" >/dev/null 2>&1 || {
echo "ERROR: cannot create directory - ${repodir}"
return 1
}
[ -d "${repodir}" -a -w "${repodir}" -a -x "${repodir}" ] || {
echo "ERROR: directory set with wrong permission - ${repodir}"
return 1;
}
#[ -f "${repodir}/start-commit" ] || {
sed "s|%API%|${api}|g" "${cfgdir}/start-commit" > "${repodir}/start-commit" || {
echo "ERROR: cannot install start-commit to ${repodir}"
return 1;
}
chmod 0755 "${repodir}/start-commit"
#}
#[ -f "${repodir}/pre-commit" ] || {
# sed "s|%API%|${api}|g" "${cfgdir}/pre-commit" > "${repodir}/pre-commit" || {
# echo "ERROR: cannot install pre-commit to ${repodir}"
# return 1;
# }
# chmod 0755 "${repodir}/pre-commit"
#}
#[ -f "${repodir}/post-commit" ] || {
sed "s|%API%|${api}|g" "${cfgdir}/post-commit" > "${repodir}/post-commit" || {
echo "ERROR: cannot install post-commit to ${repodir}"
return 1;
}
chmod 0755 "${repodir}/post-commit"
#}
#svnadmin create "${repodir}/${reponame}" && {
oldpwd="`pwd`"
cd "${repodir}/${reponame}/hooks"
ln -sf ../../start-commit start-commit
ln -sf ../../post-commit post-commit
cd "${oldpwd}"
#}
return 0;
}
delete_repo() {
local repodir="$1"
local reponame="$2"
echo "${reponame}" | grep -qF '/' && {
echo "ERROR: invalid repository name - ${reponame}"
return 1
}
rm -rf "${repodir}/${reponame}"
}
case $1 in
make)
make_repo "$2" "$3" "$4" "$5"
;;
delete)
delete_repo "$2" "$3"
;;
*)
exit 1
;;
esac

View File

@ -1,4 +1,4 @@
SUBDIRS = codepot css js system websvn
SUBDIRS = codepot css js system
wwwdir=$(WWWDIR)
www_DATA = \

View File

@ -206,7 +206,7 @@ top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
wwwdir = $(WWWDIR)
SUBDIRS = codepot css js system websvn
SUBDIRS = codepot css js system
www_DATA = \
index.php \
config.php

View File

@ -139,25 +139,66 @@ class ProjectModel extends Model
$cfgdir = CODEPOT_CFG_DIR;
$repodir = CODEPOT_SVNREPO_DIR;
// create repository
if (@svn_repos_create ("{$repodir}/{$project->id}") === FALSE)
{
$this->db->trans_rollback ();
return FALSE;
}
$cmd = "'{$cfgdir}/repo.sh' make '{$repodir}' '{$project->id}' '{$cfgdir}' '{$api}'";
exec (escapeshellcmd($cmd), $output = array(), $retval);
if ($retval != 0)
// copy hook scripts to the top repository directory
// overwriting existing scripts are ok as they are
// just updated to the latest scripts anyway.
$contents = @file_get_contents("{$cfgdir}/start-commit");
if ($contents === FALSE)
{
$this->deleteDirectory ("{$repodir}/{$project->id}");
$this->db->trans_rollback ();
return FALSE;
}
else
if (@file_put_contents (
"{$repodir}/start-commit",
str_replace('%API%', $api, $contents)) === FALSE)
{
$this->db->trans_commit ();
return TRUE;
$this->deleteDirectory ("{$repodir}/{$project->id}");
$this->db->trans_rollback ();
return FALSE;
}
$contents = @file_get_contents("{$cfgdir}/post-commit");
if ($contents === FALSE)
{
$this->deleteDirectory ("{$repodir}/{$project->id}");
$this->db->trans_rollback ();
return FALSE;
}
if (@file_put_contents(
"{$repodir}/post-commit",
str_replace('%API%', $api, $contents)) === FALSE)
{
$this->deleteDirectory ("{$repodir}/{$project->id}");
$this->db->trans_rollback ();
return FALSE;
}
// install hook scripts to the new project repository
if (@chmod ("{$repodir}/start-commit", 0755) === FALSE ||
@chmod ("{$repodir}/post-commit", 0755) === FALSE ||
@symlink ("../../start-commit", "{$repodir}/{$project->id}/hooks/start-commit") === FALSE ||
@symlink ("../../post-commit", "{$repodir}/{$project->id}/hooks/post-commit") === FALSE)
{
// keep {$repodir}/start-commit, {$repodir}/post-commit
// to minimize impact on other projects. just delete the attempted
// project repository directory.
$this->deleteDirectory ("{$repodir}/{$project->id}");
$this->db->trans_rollback ();
return FALSE;
}
$this->db->trans_commit ();
return TRUE;
}
}

View File

@ -26,13 +26,13 @@ $(function () {
if ($("#code_blame_mainarea_result_info").is(":visible"))
{
$("#code_blame_mainarea_result_info").hide();
$("#code_blame_mainarea_result_info").hide("blind",{},200);
$("#code_blame_mainarea_details_button").button(
"option", "label", "<?=$this->lang->line('CODE_SHOW_DETAILS')?>");
}
else
{
$("#code_blame_mainarea_result_info").show();
$("#code_blame_mainarea_result_info").show("blind",{},200);
$("#code_blame_mainarea_details_button").button(
"option", "label", "<?=$this->lang->line('CODE_HIDE_DETAILS')?>");
}

View File

@ -26,13 +26,13 @@ $(function () {
if ($("#code_file_mainarea_result_info").is(":visible"))
{
$("#code_file_mainarea_result_info").hide();
$("#code_file_mainarea_result_info").hide("blind",{},200);
$("#code_file_mainarea_details_button").button(
"option", "label", "<?=$this->lang->line('CODE_SHOW_DETAILS')?>");
}
else
{
$("#code_file_mainarea_result_info").show();
$("#code_file_mainarea_result_info").show("blind",{},200);
$("#code_file_mainarea_details_button").button(
"option", "label", "<?=$this->lang->line('CODE_HIDE_DETAILS')?>");
}

View File

@ -41,6 +41,26 @@ $this->load->view (
<div class="box" id="code_folder_sidebar_info">
<div class="boxtitle"><?=$this->lang->line('Revision')?>: <?=$file['created_rev']?></div>
<pre><?=$file['logmsg']?></pre>
<?php
if (array_key_exists('properties', $file) &&
count($file['properties']))
{
print '<div class="boxtitle">';
print $this->lang->line('CODE_PROPERTIES');
print '</div>';
print '<ul>';
foreach ($file['properties'] as $pk => $pv)
{
print '<li>';
print htmlspecialchars ($pk);
print ' - ';
print htmlspecialchars ($pv);
print '</li>';
}
print '</ul>';
}
?>
</div>
</div> <!-- code_folder_sidebar -->

View File

@ -105,7 +105,9 @@ $this->load->view (
print '</td>';
print '<td>';
print htmlspecialchars($h['author']);
// Repository migration from googlecode reveales that it did not put
// 'author' for initial project creation. So I've added the following check.
if (array_key_exists('author', $h)) print htmlspecialchars($h['author']);
print '</td>';
print '<td><code>';

View File

@ -61,26 +61,12 @@ function show_projectbar ($con, $banner, $page, $ctxmenuitems)
array ("file/home/{$project->id}", $con->lang->line('Files'))
);
$langcodes = array (
"english" => "en",
"indonesian" => "id",
"korean" => "ko"
);
$lang = $langcodes[CODEPOT_LANG];
$websvn = base_url() . "websvn/listing.php?langchoice={$lang}&repname={$project->id}";
foreach ($menuitems as $item)
{
$menuid = substr ($item[0], 0, strpos($item[0], '/'));
$extra = ($menuid == $id)? 'class="selected"': '';
$menulink = $item[0];
if ($menuid == 'code')
{
if (CODEPOT_ENABLE_WEBSVN === TRUE ||
!function_exists('svn_ls')) $menulink = $websvn;
}
print anchor ($menulink, $item[1], $extra);
}
}

View File

@ -17,7 +17,6 @@ function load_ini ($file)
array ('default_site_name', 'string', '@PACKAGE@'),
array ('language', 'string', 'auto'),
array ('enable_websvn', 'boolean', FALSE),
array ('signin_compulsory', 'boolean', FALSE),
array ('https_compulsory', 'boolean', FALSE),

View File

@ -414,7 +414,7 @@ pre.prettyprint .nocode a:hover {
}
.content .sidebar ul {
margin: 0.2em 0 0.2em 0;
margin: 0.2em 0 0.2em 0.5em;
padding: 0.2em 0 0.2em 1em;
}

View File

@ -1,12 +1,4 @@
/*!
* jQuery UI 1.8
*
* Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT (MIT-LICENSE.txt)
* and GPL (GPL-LICENSE.txt) licenses.
*
* http://docs.jquery.com/UI
*/
/*
* jQuery UI 1.8
*
* Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)

View File

@ -1,19 +0,0 @@
SUBDIRS = cache doc include languages lib temp templates
wwwdir=$(WWWDIR)/websvn
www_DATA = \
blame.php \
comp.php \
diff.php \
dl.php \
filedetails.php \
form.php \
index.php \
listing.php \
log.php \
revision.php \
rss.php \
wsvn.php
EXTRA_DIST = $(www_DATA) license.txt changes.txt

View File

@ -1,590 +0,0 @@
# Makefile.in generated by automake 1.11 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = src/websvn
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/ac/m4/as-ac-expand.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/./config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
html-recursive info-recursive install-data-recursive \
install-dvi-recursive install-exec-recursive \
install-html-recursive install-info-recursive \
install-pdf-recursive install-ps-recursive install-recursive \
installcheck-recursive installdirs-recursive pdf-recursive \
ps-recursive uninstall-recursive
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(wwwdir)"
DATA = $(www_DATA)
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
distdir
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
dir0=`pwd`; \
sed_first='s,^\([^/]*\)/.*$$,\1,'; \
sed_rest='s,^[^/]*/*,,'; \
sed_last='s,^.*/\([^/]*\)$$,\1,'; \
sed_butlast='s,/*[^/]*$$,,'; \
while test -n "$$dir1"; do \
first=`echo "$$dir1" | sed -e "$$sed_first"`; \
if test "$$first" != "."; then \
if test "$$first" = ".."; then \
dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
else \
first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
if test "$$first2" = "$$first"; then \
dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
else \
dir2="../$$dir2"; \
fi; \
dir0="$$dir0"/"$$first"; \
fi; \
fi; \
dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
done; \
reldir="$$dir2"
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BINDIR = @BINDIR@
CACHEDIR = @CACHEDIR@
CFGDIR = @CFGDIR@
CYGPATH_W = @CYGPATH_W@
DATADIR = @DATADIR@
DEFS = @DEFS@
DEPOTDIR = @DEPOTDIR@
DOCDIR = @DOCDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LD = @LD@
LIBDIR = @LIBDIR@
LIBEXECDIR = @LIBEXECDIR@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LOCALSTATEDIR = @LOCALSTATEDIR@
LOGDIR = @LOGDIR@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PREFIX = @PREFIX@
RM = @RM@
RMDIR = @RMDIR@
SBINDIR = @SBINDIR@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
SYSCONFDIR = @SYSCONFDIR@
VERSION = @VERSION@
WWWDIR = @WWWDIR@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
am__leading_dot = @am__leading_dot@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
cachedir = @cachedir@
cfgdir = @cfgdir@
datadir = @datadir@
datarootdir = @datarootdir@
depotdir = @depotdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
logdir = @logdir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
wwwdir = $(WWWDIR)/websvn
SUBDIRS = cache doc include languages lib temp templates
www_DATA = \
blame.php \
comp.php \
diff.php \
dl.php \
filedetails.php \
form.php \
index.php \
listing.php \
log.php \
revision.php \
rss.php \
wsvn.php
EXTRA_DIST = $(www_DATA) license.txt changes.txt
all: all-recursive
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/websvn/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign src/websvn/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-wwwDATA: $(www_DATA)
@$(NORMAL_INSTALL)
test -z "$(wwwdir)" || $(MKDIR_P) "$(DESTDIR)$(wwwdir)"
@list='$(www_DATA)'; test -n "$(wwwdir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(wwwdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(wwwdir)" || exit $$?; \
done
uninstall-wwwDATA:
@$(NORMAL_UNINSTALL)
@list='$(www_DATA)'; test -n "$(wwwdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(wwwdir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(wwwdir)" && rm -f $$files
# This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile.
# To change the values of `make' variables: instead of editing Makefiles,
# (1) if the variable is set in `config.status', edit `config.status'
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
@failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
dot_seen=yes; \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
$(RECURSIVE_CLEAN_TARGETS):
@failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
*) list='$(SUBDIRS)' ;; \
esac; \
rev=''; for subdir in $$list; do \
if test "$$subdir" = "."; then :; else \
rev="$$subdir $$rev"; \
fi; \
done; \
rev="$$rev ."; \
target=`echo $@ | sed s/-recursive//`; \
for subdir in $$rev; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
done
ctags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
set x; \
here=`pwd`; \
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
include_option=--etags-include; \
empty_fix=.; \
else \
include_option=--include; \
empty_fix=; \
fi; \
list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test ! -f $$subdir/TAGS || \
set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
fi; \
done; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
if test $$# -gt 0; then \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi
ctags: CTAGS
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|| exit 1; \
fi; \
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
$(am__relativize); \
new_distdir=$$reldir; \
dir1=$$subdir; dir2="$(top_distdir)"; \
$(am__relativize); \
new_top_distdir=$$reldir; \
echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
($(am__cd) $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$$new_top_distdir" \
distdir="$$new_distdir" \
am__remove_distdir=: \
am__skip_length_check=: \
am__skip_mode_fix=: \
distdir) \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-recursive
all-am: Makefile $(DATA)
installdirs: installdirs-recursive
installdirs-am:
for dir in "$(DESTDIR)$(wwwdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-recursive
install-exec: install-exec-recursive
install-data: install-data-recursive
uninstall: uninstall-recursive
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-recursive
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-recursive
clean-am: clean-generic mostlyclean-am
distclean: distclean-recursive
-rm -f Makefile
distclean-am: clean-am distclean-generic distclean-tags
dvi: dvi-recursive
dvi-am:
html: html-recursive
html-am:
info: info-recursive
info-am:
install-data-am: install-wwwDATA
install-dvi: install-dvi-recursive
install-dvi-am:
install-exec-am:
install-html: install-html-recursive
install-html-am:
install-info: install-info-recursive
install-info-am:
install-man:
install-pdf: install-pdf-recursive
install-pdf-am:
install-ps: install-ps-recursive
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-recursive
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-recursive
mostlyclean-am: mostlyclean-generic
pdf: pdf-recursive
pdf-am:
ps: ps-recursive
ps-am:
uninstall-am: uninstall-wwwDATA
.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
install-am install-strip tags-recursive
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
all all-am check check-am clean clean-generic ctags \
ctags-recursive distclean distclean-generic distclean-tags \
distdir dvi dvi-am html html-am info info-am install \
install-am install-data install-data-am install-dvi \
install-dvi-am install-exec install-exec-am install-html \
install-html-am install-info install-info-am install-man \
install-pdf install-pdf-am install-ps install-ps-am \
install-strip install-wwwDATA installcheck installcheck-am \
installdirs installdirs-am maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \
uninstall-wwwDATA
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -1,223 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004-2006 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// blame.php
//
// Show the blame information of a file.
//
require_once'include/setup.php';
require_once'include/svnlook.php';
require_once'include/utils.php';
require_once'include/template.php';
$vars['action'] = $lang['BLAME'];
$svnrep = new SVNRepository($rep);
// If there's no revision info, go to the lastest revision for this path
$history = $svnrep->getLog($path, '', '', true);
$youngest = $history->entries[0]->rev;
if (empty($rev)) {
$rev = $youngest;
}
if ($path{0} != '/') {
$ppath = '/'.$path;
} else {
$ppath = $path;
}
// Find the parent path (or the whole path if it's already a directory)
$pos = strrpos($ppath, '/');
$parent = substr($ppath, 0, $pos + 1);
$vars['repname'] = htmlentities($rep->getDisplayName(), ENT_QUOTES, 'UTF-8');
$vars['rev'] = $rev;
$vars['path'] = htmlentities($ppath, ENT_QUOTES, 'UTF-8');
createDirLinks($rep, $ppath, $rev);
$url = $config->getURL($rep, $path, "file");
if ($rev != $youngest) {
$vars["goyoungestlink"] = '<a href="'.$url.'">'.$lang["GOYOUNGEST"].'</a>';
} else {
$vars["goyoungestlink"] = "";
}
$vars['indexurl'] = $config->getURL($rep, '', 'index');
$vars['repurl'] = $config->getURL($rep, '', 'dir');
$vars['codepot_sitehomeurl'] = $config->getURL($rep, '', 'codepot_sitehome');
$vars['codepot_projectlisturl'] = $config->getURL($rep, '', 'codepot_projectlist');
$vars['codepot_indexurl'] = $config->getURL($rep, '', 'codepot_index');
$vars['codepot_wikiurl'] = $config->getURL($rep, '', 'codepot_wiki');
$vars['codepot_sourceurl'] = $config->getURL($rep, '', 'codepot_source');
$vars['codepot_fileurl'] = $config->getURL($rep, '', 'codepot_file');
$url = $config->getURL($rep, $path, "file");
$vars["filedetaillink"] = "<a href=\"${url}rev=$rev&amp;isdir=0\">${lang["FILEDETAIL"]}</a>";
$url = $config->getURL($rep, $path, "log");
$vars["fileviewloglink"] = "<a href=\"${url}rev=$rev&amp;isdir=0\">${lang["VIEWLOG"]}</a>";
$url = $config->getURL($rep, $path, "diff");
$vars["prevdifflink"] = "<a href=\"${url}rev=$rev\">${lang["DIFFPREV"]}</a>";
$listing = array();
// Get the contents of the file
$tfname = tempnam('temp', '');
$svnrep->getFileContents($path, $tfname, $rev, '', true);
if ($file = fopen($tfname, 'r')) {
// Get the blame info
$tbname = tempnam('temp', '');
$svnrep->getBlameDetails($path, $tbname, $rev);
$ent = true;
$extension = strrchr(basename($path), '.');
if (($extension && isset($extEnscript[$extension]) && ('php' == $extEnscript[$extension])) || ($config->useEnscript || $config->useGeshi)) {
$ent = false;
}
if ($blame = fopen($tbname, 'r')) {
// Create an array of version/author/line
$index = 0;
$seen_rev = array();
$last_rev = "";
$row_class = 'light';
while (!feof($blame) && !feof($file)) {
$blameline = fgets($blame);
if ($blameline != '') {
list($revision, $author, $remainder) = sscanf($blameline, '%d %s %s');
$empty = !$remainder;
$listing[$index]['lineno'] = $index + 1;
if ($last_rev != $revision) {
$url = $config->getURL($rep, $parent, 'revision');
$listing[$index]['revision'] = "<a id=\"l$index-rev\" class=\"blame-revision\" href=\"${url}rev=$revision\">$revision</a>";
$seen_rev[$revision] = 1;
$row_class = ($row_class == 'light') ? 'dark' : 'light';
$listing[$index]['author'] = $author;
} else {
$listing[$index]['revision'] = "";
$listing[$index]['author'] = '';
}
$listing[$index]['row_class'] = $row_class;
$last_rev = $revision;
$line = rtrim(fgets($file));
if ($ent) $line = replaceEntities($line, $rep);
if ($empty) $line = '&nbsp;';
$listing[$index]['line'] = hardspace($line);
$index++;
}
}
fclose($blame);
}
fclose($file);
}
@unlink($tfname);
@unlink($tbname);
$vars['version'] = $version;
if (!$rep->hasReadAccess($path, false)) {
$vars['noaccess'] = true;
}
$vars['javascript'] = <<<HTML
<script type='text/javascript'>
/* <![CDATA[ */
var rev = new Array();
var a = document.getElementsByTagName('a');
for (var i = 0; i < a.length; i++) {
if (a[i].className == 'blame-revision') {
var id = a[i].id;
addEvent(a[i], 'mouseover', function() { mouseover(this) } );
addEvent(a[i], 'mouseout', function() { mouseout(this) } );
}
}
function mouseover(a) {
// Find the revision by using the link
var m = /rev=(\d+)/.exec(a.href);
var r = m[1];
div = document.createElement('div');
div.className = 'blame-popup';
div.innerHTML = rev[r];
a.parentNode.appendChild(div);
}
function mouseout(a) {
var div = a.parentNode.parentNode.getElementsByTagName('div');
for (var i = 0; i < div.length; i++) {
if (div[i].className = 'blame-popup') {
div[i].parentNode.removeChild(div[i]);
}
}
}
function addEvent(obj, type, func) {
if (obj.addEventListener) {
obj.addEventListener(type, func, false);
return true;
} else if (obj.attachEvent) {
return obj.attachEvent('on' + type, func);
} else {
return false;
}
}
HTML;
foreach ($seen_rev as $key => $val) {
$history = $svnrep->getLog($path, $key, $key, false, 1);
if (!empty($history)) {
$vars['javascript'] .= "rev[$key] = '";
$vars['javascript'] .= "<div class=\"info\">";
$vars['javascript'] .= "<span class=\"date\">".$history->curEntry->date."<\/span>";
$vars['javascript'] .= "<\/div>";
$vars['javascript'] .= "<div class=\"msg\">".addslashes(preg_replace('/\n/', "<br />", $history->curEntry->msg))."<\/div>";
$vars['javascript'] .= "';\n";
}
}
$vars['javascript'] .= "/* ]]> */\n</script>";
// ob_start('ob_gzhandler');
parseTemplate($rep->getTemplatePath().'header.tmpl', $vars, $listing);
parseTemplate($rep->getTemplatePath().'blame.tmpl', $vars, $listing);
parseTemplate($rep->getTemplatePath().'footer.tmpl', $vars, $listing);

View File

@ -1,6 +0,0 @@
wwwdir=$(WWWDIR)/websvn/cache
www_DATA = \
tmp
EXTRA_DIST = $(www_DATA)

View File

@ -1,376 +0,0 @@
# Makefile.in generated by automake 1.11 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = src/websvn/cache
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/ac/m4/as-ac-expand.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/./config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(wwwdir)"
DATA = $(www_DATA)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BINDIR = @BINDIR@
CACHEDIR = @CACHEDIR@
CFGDIR = @CFGDIR@
CYGPATH_W = @CYGPATH_W@
DATADIR = @DATADIR@
DEFS = @DEFS@
DEPOTDIR = @DEPOTDIR@
DOCDIR = @DOCDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LD = @LD@
LIBDIR = @LIBDIR@
LIBEXECDIR = @LIBEXECDIR@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LOCALSTATEDIR = @LOCALSTATEDIR@
LOGDIR = @LOGDIR@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PREFIX = @PREFIX@
RM = @RM@
RMDIR = @RMDIR@
SBINDIR = @SBINDIR@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
SYSCONFDIR = @SYSCONFDIR@
VERSION = @VERSION@
WWWDIR = @WWWDIR@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
am__leading_dot = @am__leading_dot@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
cachedir = @cachedir@
cfgdir = @cfgdir@
datadir = @datadir@
datarootdir = @datarootdir@
depotdir = @depotdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
logdir = @logdir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
wwwdir = $(WWWDIR)/websvn/cache
www_DATA = \
tmp
EXTRA_DIST = $(www_DATA)
all: all-am
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/websvn/cache/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign src/websvn/cache/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-wwwDATA: $(www_DATA)
@$(NORMAL_INSTALL)
test -z "$(wwwdir)" || $(MKDIR_P) "$(DESTDIR)$(wwwdir)"
@list='$(www_DATA)'; test -n "$(wwwdir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(wwwdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(wwwdir)" || exit $$?; \
done
uninstall-wwwDATA:
@$(NORMAL_UNINSTALL)
@list='$(www_DATA)'; test -n "$(wwwdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(wwwdir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(wwwdir)" && rm -f $$files
tags: TAGS
TAGS:
ctags: CTAGS
CTAGS:
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(DATA)
installdirs:
for dir in "$(DESTDIR)$(wwwdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am: install-wwwDATA
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-wwwDATA
.MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic distclean \
distclean-generic distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am install-dvi \
install-dvi-am install-exec install-exec-am install-html \
install-html-am install-info install-info-am install-man \
install-pdf install-pdf-am install-ps install-ps-am \
install-strip install-wwwDATA installcheck installcheck-am \
installdirs maintainer-clean maintainer-clean-generic \
mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
uninstall-am uninstall-wwwDATA
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -1 +0,0 @@
This file is here so that the directory gets included in the ZIP files

View File

@ -1,476 +0,0 @@
2.1
* Fixed: Several security fixed
* Added: Added GeSHi for code highlighting.
* Added: New languages.
* Changed: Separated modified files and directory listing.
* Changed: Updated used libraries.
CHANGES
FIX: XSS vulnarabilities (Issue 179)
FIX: Hide modified files in revision view based on authentication.
FIX: Numerous other security problems.
NEW: Added translations: hungarian, indonesian, slovak, uzbek.
CHANGED: Some code cleanup.
2.0
* Changed: many cleanups and optimisations.
* Added: more documentation for *.php files.
* Removed: extraneous bits.
* Changed: line endings now use UNIX-style across the board.
CHANGES
NEW: New default template theme offered by Erik P<>hler
NEW: Template files may now be specified on a per repository basis
NEW: Add RSS 'alternate' <link> elements to the HTML headers in
directory listings. This lets you, for example, easily create a
'live bookmark' in Firefox to monitor commits to a particular SVN path.
NEW: Russian translation.
CHANGE: Bugtraq handling has been updated to account for the latest spec.
FIX: Syntax highlighting across lines has been fixed (Issue 85)
2.00 beta 8
CHANGE: Remove path comparison boxes when using the flat view display
CHANGE: Tidy up URLs generated from the listing view (Remove default parameters).
CHANGE: wsvn now selectes either the listing or file view automatically when the op parameter
isn't present. This allows for nicer URLS (eg. /http://example.com/wsvn/repo1/myfile.doc)
FIX: Fix warnings when using an access file that didn't define a groups section
FIX: Fix tarballing of directories with spaces
FIX: Path history information in the log view of a file was incorrect.
2.00 beta 7
NEW: Projects may now be assigned to groups, to simplify the index view
NEW: The index may be displayed as a collapsable tree of groups
CHANGE: The syntax for the per repository configurations has changed. It's now much simpler and
will work on all versions of PHP
FIX: Various bug fixes for the access rights module
FIX: Language choice selection with MultiViews enabled didn't work
FIX: Various small bugs introduced during 2.0 development
2.00 beta 6
Note: the $config->addRepository command now takes a URL and not a filesystem path!
NEW: WebSVN can now host remote repositories!
FIX: The access rights handling didn't work if you had give a repository a display name
different from it's "real" svn name.
FIX: The deleted file list no longer links to non-existant files!
FIX: Neaten the directory display when the download/compare links aren't available
2.00 beta 5
NEW: Access rights files can now be specified on a per repository basis
CHANGE: Further improvements have been made to character encoding handling. In particular,
it is now possible to specify the encoding of the repository contents separately
from the system encoding. This is the case for windows users, whereby the command
line tools typically returning CP850 encoded strings, whereas the source files are
encoded as iso-8859-1. Now, when displaying text files, WebSVN will convert them
from the content encoding to the output encoding (UTF-8).
CHANGE: Update Danish translation
CHANGE: The log display has a "max number of revisions to show" fiter option, which defaults
to 30. This significantly improves performance of the log display.
FIX: It wasn't possible to display the contents of a file which had brackets in the name.
FIX: Correct problem with download of tarballs containing special characters
FIX: Improve time display
FIX: Remove non-UTF8 language options from distconfig.php
FIX: Fix recent bug whereby the log messages would contain unnecessary blank lines
FIX: Access right file section groups without a trailing / are no correctly treated
2.00 beta 4
NEW: The log display may now be filtered to show a range of revisions
NEW: You can now have control over the specification of directories that can or
cannot be tarball'ed. Tarballing can be turned on only after a certain directory
depth and directories can be allow/disallowed on a per directory/repository basis.
NEW: The user can now choose their language via a drop down box
CHANGE: Character encodings are now handled differently. The output encoding is ALWAYS
defined as UTF-8, and the setOutputEncoding option has been removed.
FIX: Diff had been broken by 1.70 beta 2
FIX: Download of tarballs is prohibited if the user doesn't have read access to the directory
AND all of its subdirectories
FIX: The character set type is now sent in the HTTP header. No need to hack the Apache config
2.00 beta 3
NEW: WebSVN may now be configured to display a flat view rather than a tree view
FIX: Only use --limit option on svn 1.2 or greater
FIX: Correct spelling of "danish" in distconfig
FIX: Fix RSS, previously broken 1.7 beta 1
2.00 beta 2
CHANGE: WebSVN no longer requires the entire revision history when accessing a directory,
resulting in a faster access for large repositories
FIX: The new access rights module didn't always hide directories
FIX: Tree icons have been fixed (broken in 1.70 beta 1)
2.00 beta 1
NEW: Access rights module (Finally!) - see install.txt for details
NEW: Added language file for Danish, Finnish, Turkish, Norwegian and Simplified Chinese
NEW: The "View Log" link is now available for templates to use from the file view
NEW: Added bugtraq:logregex support
CHANGE: Ages are now displayed with higher resolution
CHANGE: Update German translation
CHANGE: Tex file are no longer delivered as binary by defaut, but displayed by enscript
CHANGE: The last modified files display now shows the most recently modified files of
the current directory
CHANGE: Improve diff colours of Blue Grey Scheme for better readability
CHANGE: WebSVN no longer requires the entire revision history when accessing a directory,
resulting in a faster access for large repositories
FIX: Directories containing accents weren't always displayed
FIX: File version can be compared via the log display (as oppoed to just directories)
FIX: Corrected RSS encoding issue
FIX: Corrected bug whereby diff lines would be displayed twice
FIX: svn: Can't check path '/root/.subversion': Permission denied
FIX: Sometimes files delivered (as opposed to disaplyed) by WebSVN were empty
FIX: Fix problem with large tarball delivery
FIX: Compare with previous always used HEAD
FIX: .sh files are now viewable
FIX: Allow special characters in repository names
FIX: It wasn't possible to go into a module if another module starts with the same name.
FIX: Remove hard-coded timezone from the RSS feed creator.
FIX: Caching of RSS feeds wasn't working
1.62
NEW: RSS feed can now list changed files
NEW: Templates can now show an open folder icon
NEW: Polish translation
NEW: Dutch translation
CHANGE: Window is scrolled to appropriate location when opening a new directory
FIX: Allow repository names containing '/'
FIX: Fixed sloppy HTML in diff templates
FIX: Fix problems with the diff output
FIX: Repositories on Windows network shares can now be accessed.
FIX: Accented characters weren't shown correctly in the directory comparison
view.
FIX: Remove error when only one revision was available
1.61
NEW: Multibyte encodings are considered when urlencoding path names
CHANGE: The listing view will now always show the revision asked for
(HEAD by default), but the log message will show the log
string for the latest modification to the current directory).
This means the the parent directory structure won't change as you
browse through old directories.
FIX: A bug prevented downloading of tarballs from working
1.60
NEW: Directory displays are now shown in tree view (so that it's harder
to get lost). Many thanks to Brent Lu for this excellent patch.
The prettiest result are available in the BlueGrey scheme.
NEW: Comparison of entire directories
NEW: Tarballs of directories may now be downloaded.
Set $config->allowdownload(); in config.php to allow this.
NEW: New style 'Zinn' based on the templates created for
http://www.projectzinn.org/. Thanks to Justin Doran.
NEW: File delivery now looks at the defined Mime-Type. Thanks to
Peter Valdemar M<>rch for this patch.
NEW: Various configuration options may now be applied on a per project
basis. Look in distconfig for instructions.
NEW: Support for using 'bugtraq' properties when display log entries.
See http://svn.collab.net/repos/tortoisesvn/trunk/doc/issuetrackers.txt
NEW: Traditional Chinese translation
NEW: Spanish translation
CHANGE: Style information removed from RSS feed
CHANGE: Changed files are now hidden by defaut (since the directory
comparison link is far more useful)
FIX: File listing were't being shown with the correct accented characters
under windows.
FIX: File listing sometimes failed when there were spaces in the filename
FIX: Some setups wouldn't allow diff generations with enscript
enabled.
FIX: Filenames are URL encoded correctly before calling svn file:///
FIX: Keywords weren't expanded in file view when enscript was disabled
1.51
NEW: Korean translation
NEW: Russian translation
FIX: Repositories may now have spaces in their path (eg: c:\my reps)
FIX: Diff now works when the file name has changed between versions
FIX: RSS feed now generates Content-Type header for XML so that IE can display
the contents
FIX: Diff and Blame didn't work properly for php files when enscript wasn't used
FIX: Use svn --non-interactive to ensure that svn doesn't prompt WebSVN for input
FIX: Corrections to the French translation
FIX: Display an explanatory message when the user hasn't configured any
repository paths
FIX: When using Multiviews, change to the WebSVN directory before executing
commands so that tempnam works. This used to cause problems on some
systems when running diff and blame.
1.50
Notes: Before installing this version you should delete all the existing
cache files.
wsvn.php has changed. You should redo any appropriate configuration
changes inside this file.
NEW: Blame information for a file can now be viewed
NEW: The cached files are now compressed
NEW: The project selection box shows the current project by default
NEW: Swedish translation
NEW: Japanese translation
NEW: The install file explains how to set up permission based repository
access such that access via the web interface is the same as access
via a client (assuming Apache2).
NEW: SVN keywords are now expanded in file listings
CHANGE: The extraction of the directory listings is now accomplished using
the svn command via file:/// access rather than svnlook. This has
the advantage of being non-recursive, and thereby eliminates the need
for caching the entire directory listing, and is much quicker on
complex direcory structures. No more 50Mb directory caches!
FIX: Deleted directories are now viewable.
FIX: SHOWALL was being redefined in the language files
FIX: The directory listing view sometimes showed [lang:DELETEDFILES
FIX: Under Windows, links in the RSS output would start with "\" if WebSVN
was installed in the server's root directory.
FIX: Sed wouldn't work under all versions of Windows due to the use of single
quotes around the paramters
FIX: Improved character encoding support for log messages etc.
FIX: Paths passed by URL are encoded
FIX: Generated HTML code is strictly 4.01
1.40
NEW: RSS feed support (thanks to L<>bbe Onken for his work on this)
NEW: Translatations for French and Portuguese
NEW: .exe is recognised by default as having content-type
application/x-msdownload
NEW: Recognised links are now 'linkified' in the log messages
NEW: Tabs in file/diff listings are now expanded by a user
configurable number of spaces.
NEW: WebSVN URLs now access the repository by name rather than number.
This means that bookmarks will stay the same when new projects
are added. The old behaviour can be configured in config.php.
FIX: Removed the revision 0 that has appeared since the previous version
FIX: Repositories were not sorted alphabetically when using ParentPath
FIX: The PNG support script needed for IE (and the BlueGrey scheme) is
now only loaded with IE
1.39
CHANGE: In the human-readable date strings, display up to 119 minutes,
47 hours, 13 days or 23 months before moving up to the next
quantity, like ViewCVS.
FIX: Links followed after viewing the contents of a file go to the
revision of the repository previously being viewed
FIX: Paths with spaces are now correctly showed in the log view
FIX: Blank lines in the diff output are set to &nbsp; so the browser
won't compress them
FIX: A blank author field is set to an &nbsp; cell.
FIX: A year is 365 days, not 356.
FIX: Base ages correctly upon GMT
FIX: The diff output did not escape html entities when enscript was
enabled and the file extension was not recognised for enscript.
FIX: distconfig.php has a few minor errors in the examples.
FIX: It wasn't possible to call ParentPath multiple times
1.38
NEW: Templates can now define icons for particular file types
(see BlueGrey scheme for an example)
NEW: Display of PHP files with syntax highlighting
NEW: Improve site navigation with links to each directory level on all
pages.
1.37
NEW: Display a message when there are no results found
CHANGE: Aesthetic changes to the BlueGrey scheme
CHANGE: Sort entries more naturally
FIX: Really make sure that we redirect to the right place when using the
drop-down box to select projects.
FIX: Nested [webtest]'s didn't always work
FIX: Fixed use of "standard" and "Standard", which caused problems on
non-windows machines
1.36
NEW: Log message search feature
NEW: Diff display tries to display changed lines as changed, rather than
showing the line deleted then added.
FIX: Problem surrounding the quoting of commands and command line arguments
on Windows machines.
1.35
NEW: You can now specify a list of file types (extensions) for files which
should be delivered to the user in a GZIP'd archive rather than
displayed as ASCII in the browser window.
CHANGE: Files delived with a MIME Content type are now sent as "inline".
The browser will try to display them in the browser window, offering
a save box only if they can't be displayed in this mannor.
FIX: Detect use of the HTTPS protocol when using the drop-down box to
select projects. (-- FIX INCORRECT. USE v1.36 -- )
FIX: The PNGs in the BlueGrey style are now transparent under Internet
Explorer 5.5 and higher.
1.34
NEW: Support for switching between projects using a drop-down box control
(MultiViews users - note that wsvn.php has been changed)
NEW: Sort the repositories alphabetically when using parentPath
NEW: Better support for internationalisation
(Template writers: Please note the use of the new variable 'charset')
NEW: More useful info in browser titles with the standard templates
FIX: Accented characters should now be displayed correctly (I hope).
FIX: HTML files now display correcly on all machines
FIX: Removed spurious BRs from the file listings
1.33
There are a few changes to the config file in this release. Copy
distconfig.php to config.php and redo any configuration changes that you
had made.
NEW: Recognised non-text files are now delivered to the user as attachments.
The list of files types to be sent back to the user (rather than displayed
using WebSVN) is user configurable.
NEW: File comparisons are now colourised based on the file extension
CHANGE: Only the Enscript file extensions that the user wishes to override are
now listed in the config file.
1.32
FIX: Links no longer functionned correctly when used in basic
(non-multiviews) mode.
FIX: Stop diff from comparing space changes
1.31
FIX: Directory view had disappeared!
FIX: Included missing file setup.php
FIX: Handle spaces in filenames
1.30
There are a few changes to the config file in this release. Copy
distconfig.php to config.php and redo any configuration changes that you
had made.
NEW: MultiViews support. You can now set up WebSVN to access the
repositories using a URL such as:
http://server/wsvn/repname/path/to/rep
NEW: Colourisation support using Enscript
NEW: [websvn-test] function can now be nested
NEW: locwebsvnhttp variable added in template system
NEW: Bluegrey scheme now has show/hide changed link
FIX: Possible security hole with abuse of popen
FIX: WebSVN should now function correctly (again) on non windows servers.
FIX: First character of diff listing was missing
1.20
NEW: Comprehensive templating solution
NEW: Show the age of a revision in the log view
CHANGE: The youngest revision of the current directory is now shown by
default (as opposed to the head revision of the entire repository.
This means that clicking on a directory will show the lastest
changes associated with it. A specific revision can still be
selected from a log view
CHANGE: Only show the leaf name when viewing directory contents
FIX: Fixed error concerning use of pclose
1.10/1.10a
There are a few changes to the config file in this release. Copy
distconfig.php to config.php and redo any configuration changes that you
had made.
NEW: WebSVN now caches information on the repositories. Once a revision
has been viewed subsequent revisions use the cached infomation to
display the directory structure. This significantly improves the
browsing speed.
NEW: German language file (thanks to Stephan Stapel)
1.04/1.04a
Please note that the config file is now stored in include/
FIX: Directories in the log view lacked their trailing slashes.
FIX: Diff is now far more efficient with Apache's memory,
and shows the corrrect line numbers.
FIX: setDiffPath now works.
FIX: Bug introduced in 1.03 whereby the revision number always showed '1'
corrected.
Note that you can't view logs with 1.04! Use 1.04a.
1.03
Note that the config.php file has completely changed in this release, in
order to make it more "future proof" and resiliant. You'll need to copy
distconfig.php to config.php redo the appropriate changes are described.
NEW: A 'ParentPath' can now be specified, rather than having to specify the
directories by hand.
FIX: Rewrite of the file list code. Should now be quite a bit faster
FIX: Use a more memory efficient algorithm to list file contents
FIX: Spaces in Windows path to svnlook and diff are now handled properly
FIX: Calls to external commands such as svnlook no longer require Windows
style line endings.
1.02
NEW: Improved command handling to report returned errors. Considerably helps
initial installation problems.
NEW: Show the author of each revision in the log view
FIX: Removed the spurious &nbsp that some people were seeing
1.01 (5 Feb 2004)
FIX: Files with HTML content are now shown correcty
FIX: The diff output had the revision lables the wrong way round
1.00 (4 Feb 2004)
First Public Release

View File

@ -1,370 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004-2006 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// comp.php
//
// Compare two paths using "svn diff"
//
require_once("include/setup.php");
require_once("include/svnlook.php");
require_once("include/utils.php");
require_once("include/template.php");
function checkRevision($rev) {
if (is_numeric($rev) && ((int)$rev > 0)) {
return $rev;
}
$rev = strtoupper($rev);
switch($rev) {
case "HEAD":
// fall through
case "PREV":
// fall through
case "COMMITTED":
return $rev;
}
return "HEAD";
}
$svnrep = new SVNRepository($rep);
// Retrieve the request information
$path1 = @$_REQUEST["compare"][0];
$path2 = @$_REQUEST["compare"][1];
$rev1 = (int)@$_REQUEST["compare_rev"][0];
$rev2 = (int)@$_REQUEST["compare_rev"][1];
// Some page links put the revision with the path...
if (strpos($path1, "@")) list($path1, $rev1) = explode("@", $path1);
if (strpos($path2, "@")) list($path2, $rev2) = explode("@", $path2);
$rev1 = checkRevision($rev1);
$rev2 = checkRevision($rev2);
// Choose a sensible comparison order unless told not to
if (!@$_REQUEST["manualorder"] && is_numeric($rev1) && is_numeric($rev2)) {
if ($rev1 > $rev2) {
$temppath = $path1;
$temprev = $rev1;
$path1 = $path2;
$rev1 = $rev2;
$path2 = $temppath;
$rev2 = $temprev;
}
}
$vars['indexurl'] = $config->getURL($rep, '', 'index');
$vars['repurl'] = $config->getURL($rep, '', 'dir');
$vars['codepot_sitehomeurl'] = $config->getURL($rep, '', 'codepot_sitehome');
$vars['codepot_projectlisturl'] = $config->getURL($rep, '', 'codepot_projectlist');
$vars['codepot_indexurl'] = $config->getURL($rep, '', 'codepot_index');
$vars['codepot_wikiurl'] = $config->getURL($rep, '', 'codepot_wiki');
$vars['codepot_sourceurl'] = $config->getURL($rep, '', 'codepot_source');
$vars['codepot_fileurl'] = $config->getURL($rep, '', 'codepot_file');
$url = $config->getURL($rep, "/", "comp");
$vars["revlink"] = "<a href=\"${url}compare%5B%5D=".urlencode($path2)."@$rev2&amp;compare%5B%5D=".urlencode($path1)."@$rev1&amp;manualorder=1\">${lang["REVCOMP"]}</a>";
if ($rev1 == 0) $rev1 = "HEAD";
if ($rev2 == 0) $rev2 = "HEAD";
$vars["repname"] = $rep->getDisplayName();
$vars["action"] = $lang["PATHCOMPARISON"];
$vars["compare_form"] = "<form action=\"$url\" method=\"post\">";
$vars["compare_path1input"] = "<input type=\"text\" size=\"40\" name=\"compare[0]\" value=\"".htmlentities($path1, ENT_QUOTES, 'UTF-8')."\" />";
$vars["compare_rev1input"] = "<input type=\"text\" size=\"5\" name=\"compare_rev[0]\" value=\"$rev1\" />";
$vars["compare_path2input"] = "<input type=\"text\" size=\"40\" name=\"compare[1]\" value=\"".htmlentities($path2, ENT_QUOTES, 'UTF-8')."\" />";
$vars["compare_rev2input"] = "<input type=\"text\" size=\"5\" name=\"compare_rev[1]\" value=\"$rev2\" />";
$vars["compare_submit"] = "<input name=\"comparesubmit\" type=\"submit\" value=\"${lang["COMPAREPATHS"]}\" />";
$vars["compare_hidden"] = "<input type=\"hidden\" name=\"op\" value=\"comp\" /><input type=\"hidden\" name=\"manualorder\" value=\"1\" />";
$vars["compare_endform"] = "</form>";
// safe paths are a hack for fixing XSS sploit
$vars["path1"] = htmlentities($path1, ENT_QUOTES, 'UTF-8');
$vars['safepath1'] = htmlentities($path1, ENT_QUOTES, 'UTF-8');
$vars["path2"] = htmlentities($path2, ENT_QUOTES, 'UTF-8');
$vars['safepath2'] = htmlentities($path2, ENT_QUOTES, 'UTF-8');
$vars["rev1"] = $rev1;
$vars["rev2"] = $rev2;
$noinput = empty($path1) || empty($path2);
$listing = array();
// Generate the diff listing
$relativePath1 = $path1;
$relativePath2 = $path2;
$path1 = encodepath(str_replace(DIRECTORY_SEPARATOR, "/", $svnrep->repConfig->path.$path1));
$path2 = encodepath(str_replace(DIRECTORY_SEPARATOR, "/", $svnrep->repConfig->path.$path2));
$debug = false;
if (!$noinput) {
$rawcmd = $config->svn." diff ".$rep->svnParams().quote($path1."@".$rev1)." ".quote($path2."@".$rev2);
$cmd = quoteCommand($rawcmd);
if ($debug) echo "$cmd\n";
}
function clearVars() {
global $listing, $index;
$listing[$index]["newpath"] = null;
$listing[$index]["endpath"] = null;
$listing[$index]["info"] = null;
$listing[$index]["diffclass"] = null;
$listing[$index]["difflines"] = null;
$listing[$index]["enddifflines"] = null;
$listing[$index]["properties"] = null;
}
$vars["success"] = false;
if (!$noinput) {
if ($diff = popen($cmd, "r")) {
$index = 0;
$indiff = false;
$indiffproper = false;
$getLine = true;
$node = null;
$bufferedLine = false;
$vars["success"] = true;
while (!feof($diff)) {
if ($getLine) {
if ($bufferedLine === false) {
$bufferedLine = rtrim(fgets($diff), "\r\n");
}
$newlineR = strpos($bufferedLine, "\r");
$newlineN = strpos($bufferedLine, "\n");
if ($newlineR === false && $newlineN === false) {
$line = $bufferedLine;
$bufferedLine = false;
} else {
$newline = ($newlineR < $newlineN ? $newlineR : $newlineN);
$line = substr($bufferedLine, 0, $newline);
$bufferedLine = substr($bufferedLine, $newline + 1);
}
}
clearVars();
$getLine = true;
if ($debug) print "Line = '$line'<br />";
if ($indiff) {
// If we're in a diff proper, just set up the line
if ($indiffproper) {
if (strlen($line) > 0 && ($line[0] == " " || $line[0] == "+" || $line[0] == "-")) {
$subline = replaceEntities(substr($line, 1), $rep);
if (empty($subline)) $subline = "&nbsp;";
$subline = hardspace($subline);
$listing[$index]["line"] = $subline;
switch ($line[0]) {
case " ":
$listing[$index]["diffclass"] = "diff";
if ($debug) print "Including as diff: $subline<br />";
break;
case "+":
$listing[$index]["diffclass"] = "diffadded";
if ($debug) print "Including as added: $subline<br />";
break;
case "-":
$listing[$index]["diffclass"] = "diffdeleted";
if ($debug) print "Including as removed: $subline<br />";
break;
}
$index++;
continue;
} else if ($line == '\ No newline at end of file') {
continue;
} else {
$indiffproper = false;
$listing[$index++]["enddifflines"] = true;
$getLine = false;
if ($debug) print "Ending lines<br />";
continue;
}
}
// Check for the start of a new diff area
if (!strncmp($line, "@@", 2)) {
$pos = strpos($line, "+");
$posline = substr($line, $pos);
sscanf($posline, "+%d,%d", $sline, $eline);
if ($debug) print "sline = '$sline', eline = '$eline'<br />";
// Check that this isn't a file deletion
if ($sline == 0 && $eline == 0) {
$line = fgets($diff);
if ($debug) print "Ignoring: $line<br />" ;
while ($line[0] == " " || $line[0] == "+" || $line[0] == "-") {
$line = fgets($diff);
if ($debug) print "Ignoring: $line<br />" ;
}
$getLine = false;
if ($debug) print "Unignoring previous - marking as deleted<b>";
$listing[$index++]["info"] = $lang["FILEDELETED"];
} else {
$listing[$index]["difflines"] = $line;
sscanf($line, "@@ -%d,%d +%d,%d @@", $sline, $slen, $eline, $elen);
$listing[$index]["rev1line"] = $sline;
$listing[$index]["rev1len"] = $slen;
$listing[$index]["rev2line"] = $eline;
$listing[$index]["rev2len"] = $elen;
$indiffproper = true;
$index++;
}
continue;
} else {
$indiff = false;
if ($debug) print "Ending diff";
}
}
// Check for a new node entry
if (strncmp(trim($line), "Index: ", 7) == 0) {
// End the current node
if ($node) {
$listing[$index++]["endpath"] = true;
clearVars();
}
$node = trim($line);
$node = substr($node, 7);
if ($node == '' || $node{0} != '/') $node = '/'.$node;
$listing[$index]["newpath"] = $node;
$listing[$index]["fileurl"] = $config->getURL($rep, $node, "file").'rev='.$rev2;
if ($debug) echo "Creating node $node<br />";
// Skip past the line of ='s
$line = fgets($diff);
if ($debug) print "Skipping: $line<br />" ;
// Check for a file addition
$line = fgets($diff);
if ($debug) print "Examining: $line<br />" ;
if (strpos($line, "(revision 0)")) {
$listing[$index]["info"] = $lang["FILEADDED"];
}
if (strncmp(trim($line), "Cannot display:", 15) == 0) {
$index++;
clearVars();
$listing[$index++]["info"] = $line;
continue;
}
// Skip second file info
$line = fgets($diff);
if ($debug) print "Skipping: $line<br />" ;
$indiff = true;
$index++;
continue;
}
if (strncmp(trim($line), "Property changes on: ", 21) == 0) {
$propnode = trim($line);
$propnode = substr($propnode, 21);
if ($debug) print "Properties on $propnode (cur node $ $node)";
if ($propnode != $node) {
if ($node) {
$listing[$index++]["endpath"] = true;
clearVars();
}
$node = $propnode;
$listing[$index++]["newpath"] = $node;
clearVars();
}
$listing[$index++]["properties"] = true;
clearVars();
if ($debug) echo "Creating node $node<br />";
// Skip the row of underscores
$line = fgets($diff);
if ($debug) print "Skipping: $line<br />" ;
while ($line = trim(fgets($diff))) {
$listing[$index++]["info"] = $line;
clearVars();
}
continue;
}
// Check for error messages
if (strncmp(trim($line), "svn: ", 5) == 0) {
$listing[$index++]["info"] = urldecode($line);
$vars["success"] = false;
continue;
}
$listing[$index++]["info"] = $line;
}
if ($node) {
clearVars();
$listing[$index++]["endpath"] = true;
}
if ($debug) print_r($listing);
pclose($diff);
}
}
$vars["version"] = $version;
if (!$rep->hasUnrestrictedReadAccess($relativePath1) || !$rep->hasUnrestrictedReadAccess($relativePath2, false)) {
$vars["noaccess"] = true;
}
parseTemplate($rep->getTemplatePath()."header.tmpl", $vars, $listing);
parseTemplate($rep->getTemplatePath()."compare.tmpl", $vars, $listing);
parseTemplate($rep->getTemplatePath()."footer.tmpl", $vars, $listing);

View File

@ -1,393 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004-2006 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// diff.php
//
// Show the differences between 2 revisions of a file.
//
require_once("include/setup.php");
require_once("include/svnlook.php");
require_once("include/utils.php");
require_once("include/template.php");
$context = 5;
$vars["action"] = $lang["DIFF"];
$all = (@$_REQUEST["all"] == 1)?1:0;
// Make sure that we have a repository
if (!isset($rep)) {
echo $lang["NOREP"];
exit;
}
$svnrep = new SVNRepository($rep);
// If there's no revision info, go to the lastest revision for this path
$history = $svnrep->getLog($path, "", "", true);
$youngest = $history->entries[0]->rev;
if (empty($rev)) {
$rev = $youngest;
}
$history = $svnrep->getLog($path, $rev);
if ($path{0} != "/") {
$ppath = "/".$path;
} else {
$ppath = $path;
}
$prevrev = @$history->entries[1]->rev;
$vars["repname"] = htmlentities($rep->getDisplayName(), ENT_QUOTES, 'UTF-8');
$vars["rev"] = $rev;
$vars["path"] = htmlentities($ppath, ENT_QUOTES, 'UTF-8');
$vars["prevrev"] = $prevrev;
$vars["rev1"] = $history->entries[0]->rev;
$vars["rev2"] = $prevrev;
createDirLinks($rep, $ppath, $rev);
$listing = array();
$url = $config->getURL($rep, $path, "file");
if ($rev != $youngest) {
$vars["goyoungestlink"] = '<a href="'.$url.'">'.$lang['GOYOUNGEST'].'</a>';
} else {
$vars["goyoungestlink"] = "";
}
$vars['indexurl'] = $config->getURL($rep, '', 'index');
$vars['repurl'] = $config->getURL($rep, '', 'dir');
$vars['codepot_sitehomeurl'] = $config->getURL($rep, '', 'codepot_sitehome');
$vars['codepot_projectlisturl'] = $config->getURL($rep, '', 'codepot_projectlist');
$vars['codepot_indexurl'] = $config->getURL($rep, '', 'codepot_index');
$vars['codepot_wikiurl'] = $config->getURL($rep, '', 'codepot_wiki');
$vars['codepot_sourceurl'] = $config->getURL($rep, '', 'codepot_source');
$vars['codepot_fileurl'] = $config->getURL($rep, '', 'codepot_file');
$url = $config->getURL($rep, $path, "file");
$vars["filedetaillink"] = "<a href=\"${url}rev=$rev&amp;isdir=0\">${lang["FILEDETAIL"]}</a>";
$url = $config->getURL($rep, $path, "log");
$vars["fileviewloglink"] = "<a href=\"${url}rev=$rev&amp;isdir=0\">${lang["VIEWLOG"]}</a>";
$url = $config->getURL($rep, $path, "diff");
$vars["prevdifflink"] = "<a href=\"${url}rev=$rev\">${lang["DIFFPREV"]}</a>";
$url = $config->getURL($rep, $path, "blame");
$vars["blamelink"] = "<a href=\"${url}rev=$rev\">${lang["BLAME"]}</a>";
if ($prevrev) {
$url = $config->getURL($rep, $path, "diff");
if (!$all) {
$vars["showalllink"] = "<a href=\"${url}rev=$rev&amp;all=1\">${lang["SHOWENTIREFILE"]}</a>";
$vars["showcompactlink"] = "";
} else {
$vars["showcompactlink"] = "<a href=\"${url}rev=$rev&amp;all=0\">${lang["SHOWCOMPACT"]}</a>";
$vars["showalllink"] = "";
}
// Get the contents of the two files
$newtname = tempnam("temp", "");
$svnrep->getFileContents($history->entries[0]->path, $newtname, $history->entries[0]->rev, "", true);
$oldtname = tempnam("temp", "");
$svnrep->getFileContents($history->entries[1]->path, $oldtname, $history->entries[1]->rev, "", true);
$ent = true;
$extension = strrchr(basename($path), ".");
if (($extension && isset($extEnscript[$extension]) && ('php' == $extEnscript[$extension])) || ($config->useEnscript || $config->useGeshi)) {
$ent = false;
}
if ($all) {
// Setting the context to 0 makes diff generate the wrong line numbers!
$context = 1;
}
// Open a pipe to the diff command with $context lines of context
$cmd = quoteCommand($config->diff." -w -U $context \"$oldtname\" \"$newtname\"");
if ($all) {
$ofile = fopen($oldtname, "r");
$nfile = fopen($newtname, "r");
}
$descriptorspec = array(0 => array('pipe', 'r'), 1 => array('pipe', 'w'), 2 => array('pipe', 'w'));
$resource = proc_open($cmd, $descriptorspec, $pipes);
$error = "";
if (is_resource($resource)) {
// We don't need to write
fclose($pipes[0]);
$diff = $pipes[1];
// Ignore the 3 header lines
$line = fgets($diff);
$line = fgets($diff);
// Get the first real line
$line = fgets($diff);
$index = 0;
$listing = array();
$curoline = 1;
$curnline = 1;
while (!feof($diff)) {
// Get the first line of this range
sscanf($line, "@@ -%d", $oline);
$line = substr($line, strpos($line, "+"));
sscanf($line, "+%d", $nline);
if ($all) {
while ($curoline < $oline || $curnline < $nline) {
$listing[$index]["rev1diffclass"] = "diff";
$listing[$index]["rev2diffclass"] = "diff";
if ($curoline < $oline) {
$nl = fgets($ofile);
$line = rtrim($nl);
if ($ent) $line = replaceEntities($line, $rep);
$listing[$index]["rev1line"] = hardspace($line);
$curoline++;
} else {
$listing[$index]["rev1line"] = "&nbsp;";
}
if ($curnline < $nline) {
$nl = fgets($nfile);
$line = rtrim($nl);
if ($ent) $line = replaceEntities($line, $rep);
$listing[$index]["rev2line"] = hardspace($line);
$curnline++;
} else {
$listing[$index]["rev2line"] = "&nbsp;";
}
$listing[$index]["rev1lineno"] = 0;
$listing[$index]["rev2lineno"] = 0;
$index++;
}
} else {
// Output the line numbers
$listing[$index]["rev1lineno"] = $oline;
$listing[$index]["rev2lineno"] = $nline;
$index++;
}
$fin = false;
while (!feof($diff) && !$fin) {
$line = fgets($diff);
if ($line === false || strncmp($line, "@@", 2) == 0) {
$fin = true;
} else {
$listing[$index]["rev1lineno"] = 0;
$listing[$index]["rev2lineno"] = 0;
$mod = $line{0};
$line = rtrim(substr($line, 1));
if ($ent) $line = replaceEntities($line, $rep);
if (strip_tags($line) == '') $line = '&nbsp;';
$listing[$index]["rev1line"] = hardspace($line);
$text = hardspace($line);
switch ($mod) {
case "-":
$listing[$index]["rev1diffclass"] = "diffdeleted";
$listing[$index]["rev2diffclass"] = "diff";
$listing[$index]["rev1line"] = $text;
$listing[$index]["rev2line"] = "&nbsp;";
if ($all) {
fgets($ofile);
$curoline++;
}
break;
case "+":
// Try to mark "changed" line sensibly
if (!empty($listing[$index-1]) && empty($listing[$index-1]["rev1lineno"]) && @$listing[$index-1]["rev1diffclass"] == "diffdeleted" && @$listing[$index-1]["rev2diffclass"] == "diff") {
$i = $index - 1;
while (!empty($listing[$i-1]) && empty($listing[$i-1]["rev1lineno"]) && $listing[$i-1]["rev1diffclass"] == "diffdeleted" && $listing[$i-1]["rev2diffclass"] == "diff") {
$i--;
}
$listing[$i]["rev1diffclass"] = "diffchanged";
$listing[$i]["rev2diffclass"] = "diffchanged";
$listing[$i]["rev2line"] = $text;
if ($all) {
fgets($nfile);
$curnline++;
}
// Don't increment the current index count
$index--;
} else {
$listing[$index]["rev1diffclass"] = "diff";
$listing[$index]["rev2diffclass"] = "diffadded";
$listing[$index]["rev1line"] = "&nbsp;";
$listing[$index]["rev2line"] = $text;
if ($all) {
fgets($nfile);
$curnline++;
}
}
break;
default:
$listing[$index]["rev1diffclass"] = "diff";
$listing[$index]["rev2diffclass"] = "diff";
$listing[$index]["rev1line"] = $text;
$listing[$index]["rev2line"] = $text;
if ($all) {
fgets($ofile);
fgets($nfile);
$curoline++;
$curnline++;
}
break;
}
}
if (!$fin) {
$index++;
}
}
}
// Output the rest of the files
if ($all) {
while (!feof($ofile) || !feof($nfile)) {
$listing[$index]["rev1diffclass"] = "diff";
$listing[$index]["rev2diffclass"] = "diff";
$line = rtrim(fgets($ofile));
if ($ent) $line = replaceEntities($line, $rep);
if (!feof($ofile)) {
$listing[$index]["rev1line"] = hardspace($line);
} else {
$listing[$index]["rev1line"] = "&nbsp;";
}
$line = rtrim(fgets($nfile));
if ($ent) $line = replaceEntities(rtrim(fgets($nfile)), $rep);
if (!feof($nfile)) {
$listing[$index]["rev2line"] = hardspace($line);
} else {
$listing[$index]["rev2line"] = "&nbsp;";
}
$listing[$index]["rev1lineno"] = 0;
$listing[$index]["rev2lineno"] = 0;
$index++;
}
}
fclose($pipes[1]);
while (!feof($pipes[2])) {
$error .= fgets($pipes[2]);
}
$error = toOutputEncoding(trim($error));
if (!empty($error)) $error = "<p>".$lang['BADCMD'].": <code>".$cmd."</code></p><p>".nl2br($error)."</p>";
fclose($pipes[2]);
proc_close($resource);
} else {
$error = "<p>".$lang['BADCMD'].": <code>".$cmd."</code></p>";
}
if (!empty($error)) {
echo $error;
if (is_resource($resource)) {
fclose($pipes[0]);
fclose($pipes[1]);
fclose($pipes[2]);
proc_close($resource);
}
exit;
}
if ($all) {
fclose($ofile);
fclose($nfile);
}
// Remove our temporary files
@unlink($oldtname);
@unlink($newtname);
} else {
$vars["noprev"] = 1;
$url = $config->getURL($rep, $path, "file");
$vars["filedetaillink"] = "<a href=\"${url}rev=$rev\">${lang["SHOWENTIREFILE"]}.</a>";
}
$vars["version"] = $version;
if (!$rep->hasReadAccess($path, false)) {
$vars["noaccess"] = true;
}
parseTemplate($rep->getTemplatePath()."header.tmpl", $vars, $listing);
parseTemplate($rep->getTemplatePath()."diff.tmpl", $vars, $listing);
parseTemplate($rep->getTemplatePath()."footer.tmpl", $vars, $listing);

View File

@ -1,128 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004-2006 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// dl.php
//
// Create gz/tar files of the requested item
require_once("include/setup.php");
require_once("include/svnlook.php");
require_once("include/utils.php");
function removeDirectory($dir) {
if (is_dir($dir)) {
$dir = rtrim($dir, '/');
$handle = dir($dir);
while (($file = $handle->read()) !== false) {
if ($file == '.' || $file == '..') {
continue;
}
$f = $dir.DIRECTORY_SEPARATOR.$file;
if (!is_link($f) && is_dir($f)) {
removeDirectory($f);
} else {
@unlink($f);
}
}
$handle->close();
@rmdir($dir);
return true;
}
return false;
}
// Make sure that this operation is allowed
if (!$rep->isDownloadAllowed($path)) {
exit;
}
$svnrep = new SVNRepository($rep);
// Fetch information about latest revision for this path
if (empty($rev)) {
$history = $svnrep->getLog($path, 'HEAD', '', true, 1);
} else {
$history = $svnrep->getLog($path, $rev, $rev - 1, true, 1);
}
$logEntry = $history->entries[0];
if (empty($rev)) {
$rev = $logEntry->rev;
}
// Create a temporary directory. Here we have an unavoidable but highly
// unlikely to occure race condition
$tmpname = tempnam($config->getTarballTmpDir(), 'wsvn');
@unlink($tmpname);
if (mkdir($tmpname)) {
// Get the name of the directory being archived
$arcname = $path;
if (substr($arcname, -1) == '/') {
$arcname = substr($arcname, 0, -1);
}
$arcname = basename($arcname);
if ($arcname == '') {
$arcname = $rep->name;
}
$arcname = $arcname.'.r'.$rev;
$tararc = $arcname.'.tar';
$gzarc = $arcname.'.tar.gz';
$svnrep->exportDirectory($path, $tmpname.DIRECTORY_SEPARATOR.$arcname, $rev);
// change to temp directory so that only relative paths are stored in tar
chdir($tmpname);
// Set datetime of exported and directory to datetime of revision
$date = $logEntry->date;
$ts = substr($date, 0, 4).substr($date, 5, 2).substr($date, 8, 2).substr($date, 11, 2).substr($date, 14, 2).'.'.substr($date, 17, 2);
exec(quoteCommand($config->touch.' -t '.$ts.' '.quote($tmpname.DIRECTORY_SEPARATOR.$arcname)));
// Create the tar file
exec(quoteCommand($config->tar.' -cf '.quote($tmpname.DIRECTORY_SEPARATOR.$tararc).' '.quote($arcname)));
// Set datetime of tar file to datetime of revision
exec(quoteCommand($config->touch.' -t '.$ts.' '.quote($tmpname.DIRECTORY_SEPARATOR.$tararc)));
// ZIP it up
exec(quoteCommand($config->gzip.' '.quote($tmpname.DIRECTORY_SEPARATOR.$tararc)));
// Give the file to the browser
if (is_readable($tmpname.DIRECTORY_SEPARATOR.$gzarc)) {
$size = filesize($tmpname.DIRECTORY_SEPARATOR.$gzarc);
header('Content-Type: application/x-gzip');
header('Content-Length: '.$size);
header('Content-Disposition: attachment; filename="'.$rep->name.'-'.$gzarc.'"');
readfile($tmpname.DIRECTORY_SEPARATOR.$gzarc);
} else {
print'Unable to open file '.$gzarc;
}
chdir('..');
removeDirectory($tmpname);
}

View File

@ -1,8 +0,0 @@
wwwdir=$(WWWDIR)/websvn/doc
www_DATA = \
install.html \
style.css \
templates.html
EXTRA_DIST = $(www_DATA)

View File

@ -1,378 +0,0 @@
# Makefile.in generated by automake 1.11 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = src/websvn/doc
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/ac/m4/as-ac-expand.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/./config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(wwwdir)"
DATA = $(www_DATA)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BINDIR = @BINDIR@
CACHEDIR = @CACHEDIR@
CFGDIR = @CFGDIR@
CYGPATH_W = @CYGPATH_W@
DATADIR = @DATADIR@
DEFS = @DEFS@
DEPOTDIR = @DEPOTDIR@
DOCDIR = @DOCDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LD = @LD@
LIBDIR = @LIBDIR@
LIBEXECDIR = @LIBEXECDIR@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LOCALSTATEDIR = @LOCALSTATEDIR@
LOGDIR = @LOGDIR@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PREFIX = @PREFIX@
RM = @RM@
RMDIR = @RMDIR@
SBINDIR = @SBINDIR@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
SYSCONFDIR = @SYSCONFDIR@
VERSION = @VERSION@
WWWDIR = @WWWDIR@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
am__leading_dot = @am__leading_dot@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
cachedir = @cachedir@
cfgdir = @cfgdir@
datadir = @datadir@
datarootdir = @datarootdir@
depotdir = @depotdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
logdir = @logdir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
wwwdir = $(WWWDIR)/websvn/doc
www_DATA = \
install.html \
style.css \
templates.html
EXTRA_DIST = $(www_DATA)
all: all-am
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/websvn/doc/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign src/websvn/doc/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-wwwDATA: $(www_DATA)
@$(NORMAL_INSTALL)
test -z "$(wwwdir)" || $(MKDIR_P) "$(DESTDIR)$(wwwdir)"
@list='$(www_DATA)'; test -n "$(wwwdir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(wwwdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(wwwdir)" || exit $$?; \
done
uninstall-wwwDATA:
@$(NORMAL_UNINSTALL)
@list='$(www_DATA)'; test -n "$(wwwdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(wwwdir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(wwwdir)" && rm -f $$files
tags: TAGS
TAGS:
ctags: CTAGS
CTAGS:
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(DATA)
installdirs:
for dir in "$(DESTDIR)$(wwwdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am: install-wwwDATA
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-wwwDATA
.MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic distclean \
distclean-generic distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am install-dvi \
install-dvi-am install-exec install-exec-am install-html \
install-html-am install-info install-info-am install-man \
install-pdf install-pdf-am install-ps install-ps-am \
install-strip install-wwwDATA installcheck installcheck-am \
installdirs maintainer-clean maintainer-clean-generic \
mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
uninstall-am uninstall-wwwDATA
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -1,263 +0,0 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<meta http-equiv="content-script-type" content="text/javascript" />
<meta http-equiv="content-style-type" content="text/css" />
<title>WebSVN Installation Guide</title>
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<h1>WebSVN Installation Guide</h1>
<div class="misc">
<h2><a name="content"></a>Content</h2>
<ul>
<li><a href="#why">Why WebSVN?</a></li>
<li><a href="#installation">Installation</a></li>
<li><a href="#accentedchars">Accented characters</a></li>
<li><a href="#colourisation">Colourisation</a></li>
<li><a href="#multiviews">Mulitviews</a></li>
<li><a href="#multiviewsexample">Mulitviews example</a></li>
<li><a href="#authentication">Access rights and authentication</a></li>
<li><a href="#problems">Common problems</a></li>
<li><a href="#license">License</a></li>
</ul>
</div>
<div class="content">
<h2><a name="why"></a>Why WebSVN?</h2>
<p>WebSVN offers a view onto your subversion repositories that's been designed
to reflect the Subversion methodology. You can view the log of any file or
directory and see a list of all the files changed, added or deleted in any
given revision. You can also view the differences between 2 versions of a
file so as to see exactly what was changed in a particular revision.</p>
<p>WebSVN offers the following features:</p>
<ul>
<li>Easy to use interface</li>
<li>Highly customisable templating system</li>
<li>Colourisation of file listings</li>
<li>Blame view</li>
<li>Log message searching</li>
<li>Apache MultiViews support</li>
<li>RSS feed support</li>
<li>Support for bugtraq: properties</li>
</ul>
<p>Since it's written using PHP, WebSVN is also very portable and easy to install.</p>
<h2><a name="installation"></a>Installation</h2>
<p>Grab the source and stick it somewhere that your server can get to. You
obviously need to have <strong>PHP 4.3.0</strong> or greater installed and working. Also note that WebSVN
won't currently work in safe mode, due to the need to call svnlook.</p>
<p>If it isn't already, make sure to chmod the cache directory to 0777. This is
used to cache RSS files.</p>
<p>You'll also need diff (preferably the GNU version; for Windows users I'd
recommend the Cygwin version) and svnlook available.</p>
<p>Rename distconfig.php as config.php (found in the includes directory) and then
edit it as directed in the file itself.</p>
<p>If everything has gone well, you should be able to view your projects by
pointing your browser at the index.php file.</p>
<p>For those of you wishing to customise the look and feel a little, you should
read templates.txt, which explains the highly configurable template system.</p>
<p><b>Windows users:</b> Note that some of the features offered by WebSVN, when
enabled, require the use of various external programs. They can be downloaded
from these locations:</p>
<p>Diff/Sed/Gzip/Tar: <a href="http://www.cygwin.com/">http://www.cygwin.com/</a><br />
Enscript: <a href="http://people.ssh.com/mtr/genscript/">http://people.ssh.com/mtr/genscript/</a></p>
<h2><a name="accentedchars"></a>Accented characters</h2>
<p>WebSVN is designed to worked with accented characters. To do this, it uses
the iconv function. This may not be installed on your system. If you aren't
getting the characters that you expect, make sure that the iconv module is
being loaded in php.ini. Windows users will need to copy the appropriate
DLLs to the system directory (from the PHP installation directory).</p>
<h2><a name="colourisation"></a>Colourisation</h2>
<p>Per default WebSVN uses the Generic Syntax Highlighter GeSHi which is bundle with WebSVN.</p>
<p>Alternatively, if you have Enscript 1.6 or higher installed on your system,
you can use that to view files with syntax colouring. You'll also need Sed.</p>
<p>Simply set the paths in the config file and then uncomment the line:</p>
<pre class="code">
$config->useEnscript();
</pre>
<p>and comment the line:</p>
<p>Alternatively you can use GeSHi which is bundle with WebSVN.</p>
<p>Simply uncomment the line:</p>
<pre class="code">
$config->useGeshi();
</pre>
<h2><a name="multiviews"></a>Multiviews</h2>
<p>You may choose to configure access to your repository via Apache's MultiView
system. This will enable you to access a respositoy using a url such as:</p>
<p>http://servername/wsvn/repname/path/in/repository</p>
<p>To do this you must:</p>
<ul>
<li>Place wsvn.php where you want to. Normally you place it such that it's accessible straight after the servername, as shown above.</li>
<li>Configure the parent directory of wsvn.php to use MultiViews (see Apache docs).</li>
<li>Change config.php to include the line $config->useMultiViews();</li>
<li>Change the path configured at the beginning of the wsvn.php script.</li>
</ul>
<p>Now go to http://servername/wsvn/ and make sure that you get the index page.</p>
<p>The repname part of the URL is the name given to it in the config.php file.
For this reason you may wish to avoid putting spaces in the name.</p>
<h2><a name="multiviewsexample"></a>Multiviews example</h2>
<p>First, you must get the Multiviews option working. In my set up, my Apache
directory root is set to a location on my harddrive:</p>
<pre class="code">
DocumentRoot "D:/svnpage"
</pre>
<p>In that directory, I have WebSVN installed in a directory called websvn.
Normally WebSVN would be accessed by http://servername/websvn</p>
<p>wsvn.php is then copied from the WebSVN installation to the document root
directory and the variable at the beginning of the script configured as
follows (based on your own directory location, obviously):</p>
<pre class="code">
// Location of websvn directory via HTTP
//
// e.g. For http://servername/websvn use /websvn
//
// Note that wsvn.php need not be in the /websvn directory (and normally isn't).
$locwebsvnhttp = "/websvn";
</pre>
<p>Next, turn on Multiviews in the WebSVN config.php file:</p>
<pre class="code">
$config->useMultiViews();
</pre>
<p>Finally, Apache needs to know that you want to enable MultiViews for the root
directory. This can be done by including this line in the directory's
.htaccess file (assuming that the appropriate AllowOverrides directive is set
up):</p>
<pre class="code">
Options MultiViews
</pre>
<p>If all has gone well, repositories should now by accessible by
<code>http://servername/wsvn/repname</code></p>
<p>Note the index page can be accessed through http://servername/wsvn
If you want to view the index page by <code>http://servername/</code> you need to
add another directive to the .htaccess file:</p>
<pre class="code">
DirectoryIndex wsvn.php
</pre>
<h2><a name="authentication"></a>Access rights and authentication</h2>
<p>You may wish to provide an authentication mechanism for WebSVN. One obvious
solution is to protect the entire WebSVN directory with some form of Apache
authentication mechanism, but that doesn't allow for per repository
authentication.</p>
<p>WebSVN provides and access rights mechanism that uses your SVN access file to
control read access to the repository. This means that you only have to
maintain one file to define both Subversion and WebSVN access rights.</p>
<p>For this to work, you need to configure your authentication method to the /WebSVN/
(or /wsvn/) directory. This should be the same authentication as you use for
the svn repositories themselves. Here's an example using SSPI:</p>
<pre class="code">
&lt;Location /WebSVN/>
AuthType SSPI
SSPIAuth On
SSPIAuthoritative On
SSPIDomain IMAJEMAIL
SSPIOfferBasic On
Require valid-user
&lt;/Location>
</pre>
<p>Note the use of the / after <code>/WebSVN/</code> in the location directive. If you use
&lt;Location /WebSVN> then you won't be able to access the index.</p>
<p>You should change <code>/WebSVN/</code> to <code>/wsvn/</code> if you're using multiviews.</p>
<p>Also note that you shouldn't use the AuthzSVNAccessFile command to define the
access file.</p>
<p>Now that you've defined your authentication, you'll be asked for your user name
and password in order to access the WebSVN directory. All that's left is to
configure WebSVN to use your Subversion access file to control access. Add this
line to your config.php file:</p>
<pre class="code">
$config->useAuthenticationFile("/path/to/accessfile");
</pre>
<p>Note that if your access file gives read access to, for example, path <code>/a/b/c/</code> but
not to <code>/a/b/</code>, then the user will be given restricted access to <code>/a/b/</code> in order to
reach <code>/a/b/c/</code>. The user will not be able to see any other files or directories in
<code>/a</code> or <code>/a/b/</code>.</p>
<p>You should read the <a href="http://svnbook.red-bean.com/">Subversion book</a> for information on the access file format.</p>
<h2><a name="problems"></a>Common problems</h2>
<ol>
<li>
On a Windows machine, this error is reported:<br />
Warning: shell_exec(): Unable to execute<br />
If you experience this problem, you need to give IUSR_&lt;machinename> execute
permissions on %systemroot%\system32\cmd.exe. Under most systems, the file will
be C:\WINDOWS\system32\cmd.exe.<br />
Right-click on the file, choose properties, and on the security tab click
the "Add" button. Add the IUSR_&lt;machinename> user, and then select the
"read" and "read &amp; execute" boxes.
</li>
</ol>
<h2><a name="license"></a>License</h2>
<p><a href="http://www.fsf.org/licensing/licenses/gpl.html">GNU Public licence</a>.</p>
</div>
</body>
</html>

View File

@ -1,71 +0,0 @@
body {
font-family: 'Trebuchet MS', Verdana, Arial, sans-serif;
font-size: 10pt;
padding: 0;
margin: 14px 28px;
color: gray;
}
h1, h2, h3 {
font-weight: normal;
}
h1 {
font-size: 1.7em;
color: gray;
border-bottom: 1px solid gray;
padding: 10px 5px;
margin: 0;
}
h2 {
font-size: 1.4em;
margin: 0;
padding: 10px 5px;
border-bottom: 1px solid gray;
}
a, a:visited {
color: black;
text-decoration: none;
}
a:hover, a:active {
background-color: khaki;
}
.misc {
width: 250px;
float: left;
margin: 0;
padding: 0;
margin-top: 22px;
}
.misc ul {
list-style-type: none;
margin: 0;
padding: 0;
}
.misc ul li {
padding:3px 0 5px 10px;
border-top:1px dotted lightgray;
}
.content {
padding: 0;
margin: 0;
margin-left: 270px;
margin-top: 22px;
}
.code {
border: 1px dotted lightgray;
background-color: #f7f7f7;
margin-left: 20px;
margin-right: 20px;
padding: 5px;
}
em {
font-style: normal;
color: #e25f53;
}

View File

@ -1,440 +0,0 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<meta http-equiv="content-script-type" content="text/javascript" />
<meta http-equiv="content-style-type" content="text/css" />
<title>WebSVN Templating System</title>
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<h1>WebSVN Templating System</h1>
<div class="misc">
<h2><a name="content"></a>Content</h2>
<ul>
<li><a href="#intro">Introduction</a></li>
</ul>
</div>
<div class="content">
<h2><a name="intro"></a>Introduction</h2>
<p><em>The documentation of the variables for each template is currently not up to date due to major changes on the trunk. User defined templates will not work with the current development version.</em></p>
<p>Everyone wants their view onto their SVN repository to fit in with their look
and feel. With WebSVN's templating system this is very possible.</p>
<p>To create your own templates, you first need to change your config.php file to
tell WebSVN where the templates are stored. For example:</p>
<pre class="code">
$config->setTemplatePath("./templates/Standard/");
</pre>
<p>This directory should contain at least the following files:</p>
<dl>
<dt>header.tmpl</dt><dd>Header templated included before any other</dd>
<dt>footer.tmpl</dt><dd>Footer templated included after any other</dd>
<dt>index.tmpl</dt><dd>The main project page template</dd>
<dt>directory.tmpl</dt><dd>Listing of a directory</dd>
<dt>log.tmple</dt><dd>Log of a directory or file</dd>
<dt>file.tmpl</dt><dd>Contents of a text file</dd>
<dt>diff.tmpl</dt><dd>Differences between text files</dd>
<dt>blame.tmpl</dt><dd>Blame information for a file</dd>
</dl>
<p>Each template file should be written in HTML, but is allowed to contain certain
WebSVN controls. There are two control types, commands and variables.</p>
<h2><a name="commands"></a>Commands</h2>
<p>NOTE: Commands MUST appear on their own line</p>
<pre class="code">
[websvn-test:varname]
...
[websvn-else]
...
[websvn-endtest]
</pre>
<p>If the variable is non-0 write out the first part else write out the second</p>
<pre class="code">
[websvn-startlisting]
...
[websvn-endlisting]
</pre>
<p>Used in pages that contain listings of files, logs, etc. Everything between
the controls is repeated for each item in the list</p>
<pre class="code">
[websvn-defineicons] (used in directory.tmpl only)
...
[websvn-enddefineicons]
...
[websvn-treenode]
[websvn-icon]
</pre>
<p>These commands are used to display certain icons next to certain file types in
the directory view.</p>
<p>The [websvn-defineicons] block should contain a line for each file type,
defining the HTML to be used for that file type. To define the HTML for a
particular extension use the syntax:</p>
<pre class="code">
.&lt;extension>=&lt;HTML code>
</pre>
<p>There are also some special filetypes:</p>
<dl>
<dt>dir=&lt;HTML code></dt><dd>is used for directory icons</dd>
<dt>diropen=&lt;HTML code></dt><dd>is used for open directory icons</dd>
<dt>*=&lt;HTML code></dt><dd>is used for all filetypes which have no other definition</dd>
<dt>i-node</dt><dd>| shaped node of the tree view</dd>
<dt>t-node</dt><dd>T shaped node of the tree view</dd>
<dt>l-node</dt><dd>L shaped node of the tree view</dd>
<dt>e-node</dt><dd>Empty node of the tree view</dd>
</dl>
<p>Example from the BlueGrey scheme:</p>
<pre class="code">
[websvn-defineicons]
dir=&lt;img align="middle" valign="center" src="[websvn:locwebsvnhttp]/templates/BlueGrey/folder.png" alt="[FOLDER]">
diropen=&lt;img align="middle" valign="center" src="[websvn:locwebsvnhttp]/templates/BlueGrey/folder-open.png" alt="[FOLDER]">
*=&lt;img align="middle" src="[websvn:locwebsvnhttp]/templates/BlueGrey/file.png" alt="[FILE]">
.c=&lt;img align="middle" src="[websvn:locwebsvnhttp]/templates/BlueGrey/filec.png" alt="[C-FILE]">
.h=&lt;img align="middle" src="[websvn:locwebsvnhttp]/templates/BlueGrey/fileh.png" alt="[H-FILE]">
.s=&lt;img align="middle" src="[websvn:locwebsvnhttp]/templates/BlueGrey/files.png" alt="[S-FILE]">
i-node=&lt;img align="middle" border="0" width="24" height="26" src="[websvn:locwebsvnhttp]/templates/BlueGrey/i-node.png" alt="[NODE]">
t-node=&lt;img align="middle" border="0" width="24" height="26" src="[websvn:locwebsvnhttp]/templates/BlueGrey/t-node.png" alt="[NODE]">
l-node=&lt;img align="middle" border="0" width="24" height="26" src="[websvn:locwebsvnhttp]/templates/BlueGrey/l-node.png" alt="[NODE]">
e-node=&lt;img align="middle" border="0" width="24" height="26" src="[websvn:locwebsvnhttp]/templates/BlueGrey/e-node.png" alt="[NODE]">
[websvn-enddefineicons]
</pre>
<p>Inside the [websvn-startlisting] block, the command [websvn-treeview] will
output the HTML code defined for the appropriate tree view icon.
[websvn-icon] will output the HTML code defined for the type of the current
file.</p>
<pre class="code">
[websvn-getlisting] (used in file.tmpl only)
</pre>
<p>Get the contents of the file being viewed and output it exactly (surrounded
with &lt;PRE> .. &lt;/PRE>).</p>
<h2><a name="variables"></a>Variables</h2>
<p>Variables are written in the form [websvn:varname] where varname is the name of
a variable passed to the template. The control is replaced with the variable
required.</p>
<p>The variables available are described below for each template.
You may also access the language file using [lang:varname] is order to keep your
templates international!</p>
<p>Take special notice of the use of the locwebsvnhttp variable. It should be used
to locate other files and graphics that your templates need. For example:</p>
<pre class="code">
&lt;link href="[websvn:locwebsvnhttp]/templates/tmptname/styles.css" ...
</pre>
<p>You may imagine that simply using . in place should work, however this isn't
the case when MultiViews are turned on. Using this variable gives you a way to
access your template files in all cases.</p>
<h2><a name="varsall"></a>Variables defined for all scripts</h2>
<dl>
<dt>locwebsvnhttp</dt><dd>Root of websvn directory</dd>
<dt>indexurl</dt><dd>The URL to the WebSVN index page</dd>
<dt>charset</dt><dd>The charset requested by the user</dd>
<dt>projects_form</dt><dd>HTML &lt;form> specification for the projects selection box</dd>
<dt>projects_select</dt><dd>HTML &lt;select>...&lt;/select> specification for the project
options</dd>
<dt>projects_submit</dt><dd>HTML &lt;input> specification for the projects selection GO
button</dd>
<dt>projects_hidden</dt><dd>Hidden parameters that need to be passed from this form</dd>
<dt>projects_endform</dt><dd>HTML &lt;/form> specification for the projects selection
box (includes hidden field declarations)</dd>
<dt>lang_code</dt><dd>The RFC 2616 language code of the selected language</dd>
<dt>lang_form</dt><dd>HTML &lt;form> specification for the language selection box</dd>
<dt>lang_select</dt><dd>HTML &lt;select>...&lt;/select> specification for the language options</dd>
<dt>lang_submit</dt><dd>HTML &lt;input> specification for the language selection GO button</dd>
<dt>lang_endform</dt><dd>HTML &lt;/form> specification for the language selection box</dd>
<dt>noaccess</dt><dd>True if the user should be blocked from accessing this page due
to insufficient access rights.</dd>
</dl>
<h2><a name="varsindex"></a>Variables defined for index.tmpl</h2>
<dl>
<dt>treeview</dt><dd>true if the index should be displayed as a tree of grouped projects</dd>
<dt>flatview</dt><dd>true if the index should be displayed as a simple list of projects</dd>
<dt>opentree</dt><dd>true if the tree viewed should be open by default</dd>
</dl>
Used in [websvn-startlisting] ... [websvn-endlisting] block of a flat view:
<dl>
<dt>projlink</dt><dd>Link to the project</dd>
<dt>rowparity</dt><dd>Parity of the row (0 or 1). Used to generate striped tables</dd>
</dl>
Used in [websvn-startlisting] ... [websvn-endlisting] block of a tree view:
<dl>
<dt>isprojlink</dt><dd>This item is a project link</dd>
<dt>isgrouphead</dt><dd>This item is a group name</dd>
<dt>rowparity</dt><dd>Parity of the row (0 or 1). Used to generate striped tables</dd>
<dt>listitem</dt><dd>The item to display</dd>
</dl>
<h2><a name="varsdir"></a>Variables defined for directory.tmpl</h2>
<dl>
<dt>restricted</dt><dd>True if the users has restricted access to this directory (to
allow access to a readable directory lower down only)</dd>
<dt>repname</dt><dd>Name of the repository</dd>
<dt>rev</dt><dd>Revision being viewed</dd>
<dt>path</dt><dd>Path of item being logged</dd>
<dt>author</dt><dd>Author of current revision</dd>
<dt>date</dt><dd>Date that revision was committed</dd>
<dt>log</dt><dd>Log message of revision</dd>
<dt>lastchangedrev</dt><dd>Revision of the last modification to current directory</dd>
<dt>goyoungestlink</dt><dd>Link to head revision of repository</dd>
<dt>showchanges</dt><dd>1 if showing changes (for websvn-test)</dd>
<dt>hidechanges</dt><dd>1 if hiding changes (for websvn-test)</dd>
<dt>showchangeslink</dt><dd>Link to page with changes hidden</dd>
<dt>hidechangeslink</dt><dd>Link to page with changes shown</dd>
<dt>newfilesbr</dt><dd>list of the new files separated by &lt;BR>'s</dd>
<dt>changedfilesbr</dt><dd>list of the changed files separated by &lt;BR>'s</dd>
<dt>deletedfilesbr</dt><dd>list of the deleted files separated by &lt;BR>'s</dd>
<dt>newfiles</dt><dd>list of the new files separated by spaces</dd>
<dt>changedfiles</dt><dd>list of the changed files separated by spaces</dd>
<dt>deletedfiles</dt><dd>list of the deleted files separated by spaces</dd>
<dt>curdirlinks</dt><dd>List of the path of this directory with links to each one</dd>
<dt>curdirloglink</dt><dd>Link to the log view of current directory</dd>
<dt>curdirrsslink</dt><dd>Link to the RSS feed for the current directory</dd>
<dt>curdirrssanchor</dt><dd>The &lt;a href=...> tag to the RSS feed for the current directory</dd>
<dt>curdirrsshref</dt><dd>URL of the feed for the current directory (without anchor tag)</dd>
<dt>curdirdllink</dt><dd>Link to the tarball of current directory</dd>
<dt>curdircomplink</dt><dd>Link to comparison with previously changed revision</dd>
<dt>allowdownload</dt><dd>True if downloading has been configured</dd>
<dt>compare_form</dt><dd>HTML &lt;form> specification for the comparison form</dd>
<dt>compare_submit</dt><dd>HTML &lt;input> specification for the comparison button</dd>
<dt>compare_endform</dt><dd>HTML &lt;/form> specification for the comparison form</dd>
</dl>
Used in [websvn-startlisting] ... [websvn-endlisting] block:
<dl>
<dt>compare_box</dt><dd>HTML checkbox specification for the comparison option</dd>
<dt>filelink</dt><dd>Link to the file</dd>
<dt>rowparity</dt><dd>Parity of the row (0 or 1). Used to generate striped tables</dd>
<dt>fileviewloglink</dt><dd>Link to the log page for the file</dd>
<dt>fileviewdllink</dt><dd>Link to the tarball of current directory</dd>
<dt>isDir</dt><dd>true if the current file is a directory (use with [websvn-test:isDir]
to display icons)</dd>
<dt>rsslink</dt><dd>Link to the RSS feed for this file/directory</dd>
<dt>rssanchor</dt><dd>The &lt;a href=...> tag to the RSS feed for this file/directory</dd>
</dl>
<h2><a name="varslog"></a>Variables defined for log.tmpl</h2>
<dl>
<dt>action</dt><dd>Action being performed ("Log")</dd>
<dt>repname</dt><dd>Name of the repository</dd>
<dt>rev</dt><dd>Revision being viewed</dd>
<dt>path</dt><dd>Path of item being logged</dd>
<dt>curdirlinks</dt><dd>List of the path of this directory with links to each one</dd>
<dt>error</dt><dd>Error message when results not available</dd>
<dt>pagelinks</dt><dd>List of list to all the pages of the log</dd>
<dt>showalllink</dt><dd>Link to show the entire log in one go</dd>
<dt>prevdifflink</dt><dd>Link to comparison with previous revision</dd>
<dt>blamelink</dt><dd>Link to the blame information for this file</dd>
<dt>fileviewloglink</dt><dd>Link to the log page for the file</dd>
<dt>logsearch_form</dt><dd>HTML &lt;form> specification for the log search box</dd>
<dt>logsearch_inputbox</dt><dd>HTML &lt;input> specification for the log search box</dd>
<dt>logsearch_submit</dt><dd>HTML &lt;input> specification for the log search GO button</dd>
<dt>logsearch_endform</dt><dd>HTML &lt;/form> specification for the log search box box
(includes hidden field declarations)</dd>
<dt>logsearch_clearloglink</dt><dd>Link to unfiltered display (remove current search
criteria)</dd>
<dt>logsearch_resultsfound</dt><dd>true when there are logs to display</dd>
<dt>logsearch_nomatches</dt><dd>true when there are no matches for the current request</dd>
<dt>logsearch_nomorematches</dt><dd>true when there are no further matches to the current
request (but there have been previous pages,
for example)</dd>
<dt>compare_form</dt><dd>HTML &lt;form> specification for the comparison form</dd>
<dt>compare_submit</dt><dd>HTML &lt;input> specification for the comparison button</dd>
<dt>compare_endform </dt><dd>HTML &lt;/form> specification for the comparison form</dd>
</dl>
Used in [websvn-startlisting] ... [websvn-endlisting] block:
<dl>
<dt>compare_box</dt><dd>HTML checkbox specification for the comparison option</dd>
<dt>revpathlink</dt><dd>Link to revision</dd>
<dt>revauthor</dt><dd>Author of this revision</dd>
<dt>revage</dt><dd>Age of revision</dd>
<dt>revlog</dt><dd>Log message of revision</dd>
</dl>
<h2><a name="varsfile"></a>Variables defined for file.tmpl</h2>
<dl>
<dt>repname</dt><dd>Name of the repository</dd>
<dt>rev</dt><dd>Revision being viewed</dd>
<dt>path</dt><dd>Path of item being logged</dd>
<dt>curdirlinks</dt><dd>List of the path of this directory with links to each one</dd>
<dt>goyoungestlink</dt><dd>Link to head revision of repository</dd>
<dt>prevdifflink</dt><dd>Link to comparison with previous revision</dd>
<dt>blamelink</dt><dd>Link to the blame information for this file</dd>
<dt>fileviewloglink</dt><dd>Link to the log page for the file</dd>
</dl>
Note: Use command [websvn-getlisting] to display the listing.
<h2><a name="varsdiff"></a>Variables defined for diff.tmpl</h2>
<dl>
<dt>action</dt><dd>Action being performed ("Diff")</dd>
<dt>locwebsvnhttp</dt><dd>Root of websvn directory</dd>
<dt>charset</dt><dd>The charset requested by the user</dd>
<dt>repname</dt><dd>Name of the repository</dd>
<dt>rev</dt><dd>Revision being viewed</dd>
<dt>path</dt><dd>Path of item being logged</dd>
<dt>curdirlinks</dt><dd>List of the path of this directory with links to each one</dd>
<dt>goyoungestlink</dt><dd>Link to head revision of repository</dd>
<dt>prevdifflink</dt><dd>Link to comparison with previous revision</dd>
<dt>blamelink</dt><dd>Link to the blame information for this file</dd>
<dt>fileviewloglink</dt><dd>Link to the log page for the file</dd>
<dt>rev1</dt><dd>Revision of the older file</dd>
<dt>rev2</dt><dd>Revision of the newer file</dd>
<dt>showcompactlink</dt><dd>Link to compact view</dd>
<dt>showalllink</dt><dd>Link to full view</dd>
</dl>
Used in [websvn-startlisting] ... [websvn-endlisting] block:
<dl>
<dt>rev1lineno / rev2lineno</dt><dd>Line number of the next difference block. Only
defined at the start of the block.</dd>
<dt>rev2diffclass / rev2diffclass</dt><dd>Class name of the diff block used for colouring
differences. The result is one of:
* diff (no changes)
* diffadded
* diffchanged
* diffdeleted</dd>
<dt>rev1line / rev2line</dt><dd>The line under comparison</dd>
</dl>
<h2><a name="varsblame"></a>Variables defined for blame.tmpl</h2>
<dl>
<dt>locwebsvnhttp</dt><dd>Root of websvn directory</dd>
<dt>charset</dt><dd>The charset requested by the user</dd>
<dt>repname</dt><dd>Name of the repository</dd>
<dt>rev</dt><dd>Revision being viewed</dd>
<dt>path</dt><dd>Path of item being logged</dd>
<dt>curdirlinks</dt><dd>List of the path of this directory with links to each one</dd>
<dt>prevdifflink</dt><dd>Link to comparison with previous revision</dd>
<dt>blamelink</dt><dd>Link to the blame information for this file</dd>
<dt>fileviewloglink</dt><dd>Link to the log page for the file</dd>
</dl>
Used in [websvn-startlisting] ... [websvn-endlisting] block:
<dl>
<dt>lineno</dt><dd>Line number of the line</dd>
<dt>revision</dt><dd>Revision in which the line changed</dd>
<dt>author</dt><dd>Last author to modify the line</dd>
<dt>line</dt><dd>The line itself</dd>
</dl>
<h2><a name="varscompare"></a>Variables defined for compare.tmpl</h2>
<dl>
<dt>action</dt><dd>Action being performed ("Path Comparison")</dd>
<dt>repname</dt><dd>Name of the repository</dd>
<dt>path1</dt><dd>First path being compared</dd>
<dt>rev1</dt><dd>Revision of first path</dd>
<dt>path2</dt><dd>Second path being compared</dd>
<dt>rev2</dt><dd>Revision of second path</dd>
<dt>success</dt><dd>true if the comparison succeeded</dd>
<dt>revlink</dt><dd>Link to reverse comparison</dd>
<dt>compare_form</dt><dd>HTML &lt;form> specification for the comparison form</dd>
<dt>compare_path1input/compare_path2input</dt><dd>HTML specifications for the path input areas</dd>
<dt>compare_rev1input/compare_rev2input</dt><dd>HTML specifications for the revision input areas </dd>
<dt>compare_submit</dt><dd>HTML &lt;input> specification for the comparison button</dd>
<dt>compare_endform</dt><dd>HTML &lt;/form> specification for the comparison form</dd>
</dl>
Used in [websvn-startlisting] ... [websvn-endlisting] block:
<dl>
<dt>newpath</dt><dd>Name of new file under comparison (only defined at start of block)</dd>
<dt>difflines</dt><dd>Lines changed information for this file. Start of diff lines.
(only defined after newpath)</dd>
<dt>diffclass</dt><dd>Class name of the diff block used for colouring
differences. The result is one of:
* diff (no changes)
* diffadded
* diffdeleted</dd>
<dt>line</dt><dd>The line under comparison</dd>
<dt>enddifflines</dt><dd>End of diff lines</dd>
<dt>properties</dt><dd>Property changes</dd>
<dt>endpath</dt><dd>End of current path</dd>
</dl>
</div>
</body>
</html>

View File

@ -1,157 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004-2006 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// filedetails.php
//
// Simply lists the contents of a file
require_once("include/setup.php");
require_once("include/svnlook.php");
require_once("include/utils.php");
require_once("include/template.php");
// Make sure that we have a repository
if (!isset($rep)) {
echo $lang["NOREP"];
exit;
}
$svnrep = new SVNRepository($rep);
if ($path{0} != "/") {
$ppath = "/".$path;
} else {
$ppath = $path;
}
$passrev = $rev;
// If there's no revision info, go to the lastest revision for this path
$history = $svnrep->getLog($path, "", "", true);
$youngest = isset($history->entries[0]) ? $history->entries[0]->rev: false;
if (empty($rev)) {
$rev = $youngest;
}
$extn = strtolower(strrchr($path, "."));
// Check to see if the user has requested that this type be zipped and sent
// to the browser as an attachment
if (in_array($extn, $zipped) && $rep->hasReadAccess($path, false)) {
$base = basename($path);
header("Content-Type: application/x-gzip");
header("Content-Disposition: attachment; filename=".urlencode($base).".gz");
// Get the file contents and pipe into gzip. All this without creating
// a temporary file. Damn clever.
$svnrep->getFileContents($path, "", $rev, "| ".$config->gzip." -n -f");
exit;
}
// Check to see if we should serve it with a particular content-type.
// The content-type could come from an svn:mime-type property on the
// file, or from the $contentType array in setup.php.
if (!$rep->getIgnoreSvnMimeTypes()) {
$svnMimeType = $svnrep->getProperty($path, 'svn:mime-type', $rev);
}
if (!$rep->getIgnoreWebSVNContentTypes()) {
$setupContentType = @$contentType[$extn];
}
// Use this set of priorities when establishing what content-type to
// actually use.
if (!empty($svnMimeType) && $svnMimeType != 'application/octet-stream') {
$cont = $svnMimeType;
} else if (!empty($setupContentType)) {
$cont = $setupContentType;
} else if (!empty($svnMimeType)) {
// It now is equal to application/octet-stream due to logic
// above....
$cont = $svnMimeType;
}
// If there's a MIME type associated with this format, then we deliver it
// with this information
if (!empty($cont) && $rep->hasReadAccess($path, false)) {
$base = basename($path);
header("Content-Type: $cont");
//header("Content-Length: $size");
header("Content-Disposition: inline; filename=".urlencode($base));
$svnrep->getFileContents($path, "", $rev);
exit;
}
// There's no associated MIME type. Show the file using WebSVN.
$url = $config->getURL($rep, $path, "file");
if ($rev != $youngest) {
$vars["goyoungestlink"] = "<a href=\"${url}\">${lang["GOYOUNGEST"]}</a>";
} else {
$vars["goyoungestlink"] = "";
}
$vars["action"] = "";
$vars["repname"] = htmlentities($rep->getDisplayName(), ENT_QUOTES, 'UTF-8');
$vars["rev"] = htmlentities($rev, ENT_QUOTES, 'UTF-8');
$vars["path"] = htmlentities($ppath, ENT_QUOTES, 'UTF-8');
createDirLinks($rep, $ppath, $passrev);
$vars['indexurl'] = $config->getURL($rep, '', 'index');
$vars['repurl'] = $config->getURL($rep, '', 'dir');
$vars['codepot_sitehomeurl'] = $config->getURL($rep, '', 'codepot_sitehome');
$vars['codepot_projectlisturl'] = $config->getURL($rep, '', 'codepot_projectlist');
$vars['codepot_indexurl'] = $config->getURL($rep, '', 'codepot_index');
$vars['codepot_wikiurl'] = $config->getURL($rep, '', 'codepot_wiki');
$vars['codepot_sourceurl'] = $config->getURL($rep, '', 'codepot_source');
$vars['codepot_fileurl'] = $config->getURL($rep, '', 'codepot_file');
$url = $config->getURL($rep, $path, "log");
$vars["fileviewloglink"] = "<a href=\"${url}rev=$passrev&amp;isdir=0\">${lang["VIEWLOG"]}</a>";
$url = $config->getURL($rep, $path, "diff");
$vars["prevdifflink"] = "<a href=\"${url}rev=$passrev\">${lang["DIFFPREV"]}</a>";
$url = $config->getURL($rep, $path, "blame");
$vars["blamelink"] = "<a href=\"${url}rev=$passrev\">${lang["BLAME"]}</a>";
$listing = array();
$vars["version"] = $version;
if (!$rep->hasReadAccess($path, false)) {
$vars["noaccess"] = true;
}
parseTemplate($rep->getTemplatePath()."header.tmpl", $vars, $listing);
parseTemplate($rep->getTemplatePath()."file.tmpl", $vars, $listing);
parseTemplate($rep->getTemplatePath()."footer.tmpl", $vars, $listing);

View File

@ -1,65 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004-2006 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// form.php
//
// Handling of WebSVN forms
require_once("include/setup.php");
require_once("include/utils.php");
// Generic redirect handling
function redirect($loc) {
$url = getFullURL($loc);
// technically, a die(header('Location: '.$url)); would suffice for all web browsers... ~J
header("Location: $url");
echo "<html>\n";
echo " <head>\n";
echo " <title>Redirecting...</title>\n";
echo " <meta http-equiv=\"refresh\" content=\"0; url=$url\" />\n";
echo " <script type='application/x-javascript'><![CDATA[ window.location.href = '$url'; ]]></script>\n";
echo " </head>\n";
echo " <body>\n";
echo " <p>If you are not automatically redirected, please click <a href=\"$url\">here</a> to continue.</p>\n";
echo " </body>\n";
echo "</html>";
}
// Handle project selection
if (@$_REQUEST["selectproj"]) {
$basedir = dirname($_SERVER["PHP_SELF"]);
if ($basedir != "" && $basedir != DIRECTORY_SEPARATOR && $basedir != "\\" && $basedir != "/" ) {
$basedir .= "/";
} else {
$basedir = "/";
}
$url = $config->getURL($rep, "/", "dir");
$url = html_entity_decode($url);
if ($config->multiViews) {
redirect($url);
} else {
redirect($basedir.$url);
}
}

View File

@ -1,17 +0,0 @@
wwwdir=$(WWWDIR)/websvn/include
www_DATA = \
accessfile.php \
auth.php \
bugtraq.php \
command.php \
config.php \
configclass.php \
header \
setup.php \
svnlook.php \
template.php \
utils.php \
version.php
EXTRA_DIST = $(www_DATA)

View File

@ -1,387 +0,0 @@
# Makefile.in generated by automake 1.11 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = src/websvn/include
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/ac/m4/as-ac-expand.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/./config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(wwwdir)"
DATA = $(www_DATA)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BINDIR = @BINDIR@
CACHEDIR = @CACHEDIR@
CFGDIR = @CFGDIR@
CYGPATH_W = @CYGPATH_W@
DATADIR = @DATADIR@
DEFS = @DEFS@
DEPOTDIR = @DEPOTDIR@
DOCDIR = @DOCDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LD = @LD@
LIBDIR = @LIBDIR@
LIBEXECDIR = @LIBEXECDIR@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LOCALSTATEDIR = @LOCALSTATEDIR@
LOGDIR = @LOGDIR@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PREFIX = @PREFIX@
RM = @RM@
RMDIR = @RMDIR@
SBINDIR = @SBINDIR@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
SYSCONFDIR = @SYSCONFDIR@
VERSION = @VERSION@
WWWDIR = @WWWDIR@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
am__leading_dot = @am__leading_dot@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
cachedir = @cachedir@
cfgdir = @cfgdir@
datadir = @datadir@
datarootdir = @datarootdir@
depotdir = @depotdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
logdir = @logdir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
wwwdir = $(WWWDIR)/websvn/include
www_DATA = \
accessfile.php \
auth.php \
bugtraq.php \
command.php \
config.php \
configclass.php \
header \
setup.php \
svnlook.php \
template.php \
utils.php \
version.php
EXTRA_DIST = $(www_DATA)
all: all-am
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/websvn/include/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign src/websvn/include/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-wwwDATA: $(www_DATA)
@$(NORMAL_INSTALL)
test -z "$(wwwdir)" || $(MKDIR_P) "$(DESTDIR)$(wwwdir)"
@list='$(www_DATA)'; test -n "$(wwwdir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(wwwdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(wwwdir)" || exit $$?; \
done
uninstall-wwwDATA:
@$(NORMAL_UNINSTALL)
@list='$(www_DATA)'; test -n "$(wwwdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(wwwdir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(wwwdir)" && rm -f $$files
tags: TAGS
TAGS:
ctags: CTAGS
CTAGS:
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(DATA)
installdirs:
for dir in "$(DESTDIR)$(wwwdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am: install-wwwDATA
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-wwwDATA
.MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic distclean \
distclean-generic distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am install-dvi \
install-dvi-am install-exec install-exec-am install-html \
install-html-am install-info install-info-am install-man \
install-pdf install-pdf-am install-ps install-ps-am \
install-strip install-wwwDATA installcheck installcheck-am \
installdirs maintainer-clean maintainer-clean-generic \
mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
uninstall-am uninstall-wwwDATA
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -1,95 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004-2006 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// accessfile.php
//
// Read a .ini style file
class IniFile {
var $sections;
// {{{ __construct
function IniFile() {
$this->sections = array();
}
// }}}
// {{{ readIniFile
function readIniFile($name) {
$contents = file($name);
$cursection = '';
$first = true;
foreach ($contents as $str) {
$str = trim($str);
if (empty($str)) {
continue;
}
if ($str{0} == '#' or $str{0} == "'") {
continue;
}
if ($str{0} == '[') {
$cursection = strtolower(substr($str, 1, strlen($str) - 2));
if (!($str{strlen($str) - 2} == '/' or $str == '[groups]')) {
$cursection .= '/';
}
$first = true;
} else if (!empty($cursection)) {
if ($first === true) {
$this->sections[$cursection] = array();
}
list($key, $val) = split('=', $str);
$this->sections[$cursection][strtolower(trim($key))] = strtolower(trim($val));
$first = false;
}
}
}
// }}}
// {{{ getSections
function &getSections() {
return $this->sections;
}
// }}}
// {{{ getValues
function getValues($section) {
return @$this->sections[strtolower($section)];
}
// }}}
// {{{ getValue
function getValue($section, $key) {
return @$this->sections[strtolower($section)][strtolower($key)];
}
// }}}
}

View File

@ -1,231 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004-2006 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// auth.php
//
// Handle reading and interpretation of an SVN auth file
require_once("include/accessfile.php");
define("UNDEFINED", 0);
define("ALLOW", 1);
define("DENY", 2);
class Authentication {
var $rights;
var $user;
var $usersGroups = array();
// {{{ __construct
function Authentication($accessfile) {
$this->rights = new IniFile();
$this->rights->readIniFile($accessfile);
$this->setUsername();
$this->identifyGroups();
}
// }}}
// {{{ setUsername()
//
// Set the username from the current http session
function setUsername() {
if (isset($_SERVER["REMOTE_USER"])) {
$this->user = $_SERVER["REMOTE_USER"];
} else if (isset($_SERVER["REDIRECT_REMOTE_USER"])) {
$this->user = $_SERVER["REDIRECT_REMOTE_USER"];
}
}
// }}}
// {{{ identifyGroups()
//
// Checks to see which groups the user belongs to
function identifyGroups() {
$this->usersGroups[] = "*";
if (is_array($this->rights->getValues("groups"))) {
foreach ($this->rights->getValues("groups")as $group => $names) {
if (in_array(strtolower($this->user), preg_split('/\s*,\s*/', $names))) {
$this->usersGroups[] = "@".$group;
}
foreach ($this->usersGroups as $users_group) {
if (in_array($users_group, preg_split('/\s*,\s*/', $names))) {
$this->usersGroups[] = "@".$group;
}
}
}
}
}
// }}}
// {{{ inList
//
// Check if the user is in the given list and return their read status
// if they are (UNDEFINED, ALLOW or DENY)
function inList($accessors, $user) {
$output = UNDEFINED;
foreach ($accessors As $key => $rights) {
$keymatch = false;
if (in_array($key, $this->usersGroups) || !strcmp($key, strtolower($user))) {
$keymatch = true;
}
if ($keymatch) {
if (strpos($rights, "r") !== false) {
return ALLOW;
} else {
$output = DENY;
}
}
}
return $output;
}
// }}}
// {{{ hasReadAccess
//
// Returns true if the user has read access to the given path
function hasReadAccess($repos, $path, $checkSubFolders = false) {
$access = UNDEFINED;
$repos = strtolower($repos); // .ini parser converts groups to lower-case
$path = strtolower($path);
if ($path == '' || $path{0} != "/") {
$path = "/$path";
}
// If were told to, we should check sub folders of the path to see if there's
// a read access below this level. This is used to display the folders needed
// to get to the folder to which read access is granted.
if ($checkSubFolders) {
$sections = $this->rights->getSections();
foreach ($sections As $section => $accessers) {
$qualified = $repos.":".$path;
$len = strlen($qualified);
if ($len < strlen($section) && strncmp($section, $qualified, $len) == 0) {
$access = $this->inList($accessers, $this->user);
}
if ($access != ALLOW) {
$len = strlen($path);
if ($len < strlen($section) && strncmp($section, $path, $len) == 0) {
$access = $this->inList($accessers, $this->user);
}
}
if ($access == ALLOW) {
break;
}
}
}
// If we still don't have access, check each subpath of the path until we find an
// access level...
if ($access != ALLOW) {
$access = UNDEFINED;
do {
$accessers = $this->rights->getValues($repos.":".$path);
if (!empty($accessers)) {
$access = $this->inList($accessers, $this->user);
}
if ($access == UNDEFINED) {
$accessers = $this->rights->getValues($path);
if (!empty($accessers)) {
$access = $this->inList($accessers, $this->user);
}
}
// If we've not got a match, remove the sub directory and start again
if ($access == UNDEFINED) {
if ($path == "/") {
break;
}
$path = substr($path, 0, strrpos(substr($path, 0, -1), "/") + 1);
}
} while ($access == UNDEFINED && $path != "");
}
return $access == ALLOW;
}
// }}}
// {{{ hasUnrestrictedReadAccess
//
// Returns true if the user has read access to the given path and too
// all subfolders
function hasUnrestrictedReadAccess($repos, $path) {
// First make sure that we have full read access at this level
if (!$this->hasReadAccess($repos, $path, false)) {
return false;
}
// Now check to see if there is a sub folder that's protected
$repos = strtolower($repos); // .ini parser converts groups to lower-case
$path = strtolower($path);
$sections = $this->rights->getSections();
foreach ($sections As $section => $accessers) {
$qualified = $repos.":".$path;
$len = strlen($qualified);
$access = UNDEFINED;
if ($len <= strlen($section) && strncmp($section, $qualified, $len) == 0) {
$access = $this->inList($accessers, $this->user);
}
if ($access != DENY) {
$len = strlen($path);
if ($len <= strlen($section) && strncmp($section, $path, $len) == 0) {
$access = $this->inList($accessers, $this->user);
}
}
if ($access == DENY) {
return false;
}
}
return true;
}
// }}}
}

View File

@ -1,365 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004-2006 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// bugtraq.php
//
// Functions for accessing the bugtraq properties and replacing issue IDs
// with URLs.
//
// For more information about bugtraq, see
// http://svn.collab.net/repos/tortoisesvn/trunk/doc/issuetrackers.txt
class Bugtraq {
// {{{ Properties
var $msgstring;
var $urlstring;
var $logregex;
var $append;
var $firstPart;
var $firstPartLen;
var $lastPart;
var $lastPartLen;
var $propsfound = false;
// }}}
// {{{ __construct($rep, $svnrep, $path)
function Bugtraq($rep, $svnrep, $path) {
global $config;
if ($rep->getBugtraq()) {
$pos = strrpos($path, "/");
$parent = substr($path, 0, $pos + 1);
$this->append = true;
$enoughdata = false;
while(!$enoughdata && (strpos($parent, "/") !== false)) {
if (empty($this->msgstring)) $this->msgstring = $svnrep->getProperty($parent, 'bugtraq:message');
if (empty($this->logregex)) $this->logregex = $svnrep->getProperty($parent, 'bugtraq:logregex');
if (empty($this->urlstring)) $this->urlstring = $svnrep->getProperty($parent, 'bugtraq:url');
if (empty($this->append)) $this->append = ($svnrep->getProperty($parent, 'bugtraq:append') == "true");
$parent = substr($parent, 0, -1); // Remove the trailing slash
$pos = strrpos($parent, "/"); // Find the last trailing slash
$parent = substr($parent, 0, $pos + 1); // Find the previous parent directory
$enoughdata = ((!empty($this->msgstring) || !empty($this->logregex)) && !empty($this->urlstring));
}
$this->msgstring = trim(@$this->msgstring);
$this->urlstring = trim(@$this->urlstring);
if ($enoughdata && !empty($this->msgstring)) {
$this->initPartInfo();
}
if ($enoughdata) {
$this->propsfound = true;
}
}
}
// }}}
// {{{ initPartInfo()
function initPartInfo() {
if (($bugidpos = strpos($this->msgstring, "%BUGID%")) !== false && strpos($this->urlstring, "%BUGID%") !== false) {
// Get the textual parts of the message string for comparison purposes
$this->firstPart = substr($this->msgstring, 0, $bugidpos);
$this->firstPartLen = strlen($this->firstPart);
$this->lastPart = substr($this->msgstring, $bugidpos + 7);
$this->lastPartLen = strlen($this->lastPart);
}
}
// }}}
// {{{ replaceIDs($message)
function replaceIDs($message) {
if ($this->propsfound) {
// First we search for the message string
$logmsg = "";
$message = rtrim($message);
if ($this->append) {
// Just compare the last line
if (($offset = strrpos($message, "\n")) !== false) {
$logmsg = substr($message, 0, $offset + 1);
$bugLine = substr($message, $offset + 1);
} else {
$bugLine = $message;
}
} else {
if (($offset = strpos($message, "\n")) !== false) {
$bugLine = substr($message, 0, $offset);
$logmsg = substr($message, $offset);
} else {
$bugLine = $message;
}
}
// Make sure that our line really is an issue tracker message
if (isset($this->firstPart) && isset($this->lastPart) && ((strncmp($bugLine, $this->firstPart, $this->firstPartLen) == 0)) && strcmp(substr($bugLine, -$this->lastPartLen, $this->lastPartLen), $this->lastPart) == 0) {
// Get the issues list
if ($this->lastPartLen > 0) {
$issues = substr($bugLine, $this->firstPartLen, -$this->lastPartLen);
} else {
$issues = substr($bugLine, $this->firstPartLen);
}
// Add each reference to the first part of the line
$line = $this->firstPart;
while ($pos = strpos($issues, ",")) {
$issue = trim(substr($issues, 0, $pos));
$issues = substr($issues, $pos + 1);
$line .= "<a href=\"".str_replace("%BUGID%", $issue, $this->urlstring)."\">$issue</a>, ";
}
$line .= "<a href=\"".str_replace("%BUGID%", trim($issues), $this->urlstring)."\">".trim($issues)."</a>".$this->lastPart;
if ($this->append) {
$message = $logmsg.$line;
} else {
$message = $line.$logmsg;
}
}
// Now replace all other instances of bug IDs that match the regex
if ($this->logregex) {
$message = rtrim($message);
$line = "";
$allissues = "";
$lines = split("\n", $this->logregex);
$regex_all = "~".$lines[0]."~";
$regex_single = @$lines[1];
if (empty($regex_single)) {
// If the property only contains one line, then the pattern is only designed
// to find one issue number at a time. e.g. [Ii]ssue #?(\d+). In this case
// we need to replace the matched issue ID with the link.
if ($numMatches = preg_match_all($regex_all, $message, $matches, PREG_SET_ORDER | PREG_OFFSET_CAPTURE)) {
$addedOffset = 0;
for ($match = 0; $match < $numMatches; $match++) {
$issue = $matches[$match][1][0];
$issueOffset = $matches[$match][1][1];
$issueLink = "<a href=\"".str_replace("%BUGID%", $issue, $this->urlstring)."\">".$issue."</a>";
$message = substr_replace($message, $issueLink, $issueOffset + $addedOffset, strlen($issue));
$addedOffset += strlen($issueLink) - strlen($issue);
}
}
} else {
// It the property contains two lines, then the first is a pattern for extracting
// multiple issue numbers, and the second is a pattern extracting each issue
// number from the multiple match. e.g. [Ii]ssue #?(\d+)(,? ?#?(\d+))+ and (\d+)
while (preg_match($regex_all, $message, $matches, PREG_OFFSET_CAPTURE)) {
$completeMatch = $matches[0][0];
$completeMatchOffset = $matches[0][1];
$replacement = $completeMatch;
if ($numMatches = preg_match_all("~".$regex_single."~", $replacement, $matches, PREG_SET_ORDER | PREG_OFFSET_CAPTURE)) {
$addedOffset = 0;
for ($match = 0; $match < $numMatches; $match++) {
$issue = $matches[$match][1][0];
$issueOffset = $matches[$match][1][1];
$issueLink = "<a href=\"".str_replace("%BUGID%", $issue, $this->urlstring)."\">".$issue."</a>";
$replacement = substr_replace($replacement, $issueLink, $issueOffset + $addedOffset, strlen($issue));
$addedOffset += strlen($issueLink) - strlen($issue);
}
}
$message = substr_replace($message, $replacement, $completeMatchOffset, strlen($completeMatch));
}
}
}
}
return $message;
}
// }}}
}
// The BugtraqTestable class is a derived class that is used to test the matching
// abilities of the Bugtraq class. In particular, it allows for the initialisation of the
// class without the need for a repository.
class BugtraqTestable extends Bugtraq {
// {{{ __construct()
function BugtraqTestable() {
// This constructor serves to assure that the parent constructor is not
// called.
}
// }}}
// {{{ setUpVars($message, $url, $regex, $append)
function setUpVars($message, $url, $regex, $append) {
$this->msgstring = $message;
$this->urlstring = $url;
$this->logregex = $regex;
$this->append = $append;
$this->propsfound = true;
$this->initPartInfo();
}
// }}}
// {{{ setMessage($message)
function setMessage($message) {
$this->msgstring = $message;
}
// }}}
// {{{ setUrl($url)
function setUrl($url) {
$this->urlstring = $url;
}
// }}}
// {{{ setRegex($regex)
function setRegEx($regex) {
$this->logregex = $regex;
}
// }}}
// {{{ setAppend($append)
function setAppend($append) {
$this->append = $append;
}
// }}}
// {{{ printVars()
function printVars() {
echo "msgstring = ".$this->msgstring."\n";
echo "urlstring = ".$this->urlstring."\n";
echo "logregex = ".$this->logregex."\n";
echo "append = ".$this->append."\n";
echo "firstPart = ".$this->firstPart."\n";
echo "firstPartLen = ".$this->firstPartLen."\n";
echo "lastPart = ".$this->lastPart."\n";
echo "lastPartLen = ".$this->lastPartLen."\n";
}
// }}}
}
// {{{ test_bugtraq()
function test_bugtraq() {
$tester = new BugtraqTestable;
$tester->setUpVars("BugID: %BUGID%",
"http://bugtracker/?id=%BUGID%",
"[Ii]ssue #?(\d+)",
true
);
//$tester->printVars();
$res = $tester->replaceIDs("BugID: 789\n".
"This is a test message that refers to issue #123 and\n".
"issue #456.\n".
"BugID: 789"
);
echo nl2br($res)."<p>";
$res = $tester->replaceIDs("BugID: 789, 101112\n".
"This is a test message that refers to issue #123 and\n".
"issue #456.\n".
"BugID: 789, 101112"
);
echo nl2br($res)."<p>";
$tester->setAppend(false);
$res = $tester->replaceIDs("BugID: 789\n".
"This is a test message that refers to issue #123 and\n".
"issue #456.\n".
"BugID: 789"
);
echo nl2br($res)."<p>";
$res = $tester->replaceIDs("BugID: 789, 101112\n".
"This is a test message that refers to issue #123 and\n".
"issue #456.\n".
"BugID: 789, 101112"
);
echo nl2br($res)."<p>";
$tester->setUpVars("BugID: %BUGID%",
"http://bugtracker/?id=%BUGID%",
"[Ii]ssues?:?(\s*(,|and)?\s*#\d+)+\n(\d+)",
true
);
$res = $tester->replaceIDs("BugID: 789, 101112\n".
"This is a test message that refers to issue #123 and\n".
"issues #456, #654 and #321.\n".
"BugID: 789, 101112"
);
echo nl2br($res)."<p>";
$tester->setUpVars("Test: %BUGID%",
"http://bugtracker/?id=%BUGID%",
"\s*[Cc]ases*\s*[IDs]*\s*[#: ]+((\d+[ ,:;#]*)+)\n(\d+)",
true
);
$res = $tester->replaceIDs("Cosmetic change\n".
"CaseIDs: 48"
);
echo nl2br($res)."<p>";
}
// }}}

View File

@ -1,167 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004-2006 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// command.php
//
// External command handling
// {{{ replaceEntities
//
// Replace character codes with HTML entities for display purposes.
// This routine assumes that the character encoding of the string is
// that of the local system (i.e., it's a string returned from a command
// line command).
function replaceEntities($str, $rep) {
global $config;
// Ideally, we'd do this:
//
// $str = htmlentities($str, ENT_COMPAT, $config->inputEnc);
//
// However, htmlentities is very limited in it's ability to process
// character encodings. We have to rely on something more powerful.
if (version_compare(phpversion(), "4.1.0", "<")) {
// In this case, we can't do any better than assume that the
// input encoding is ISO-8859-1.
$str = htmlentities($str, ENT_COMPAT);
} else {
$str = toOutputEncoding($str, $rep->getContentEncoding());
// $str is now encoded as UTF-8.
$str = htmlentities($str, ENT_COMPAT, $config->outputEnc);
}
return $str;
}
// }}}
// {{{ toOutputEncoding
function toOutputEncoding($str, $inputEncoding = "") {
global $config;
if (empty($inputEncoding)) {
$inputEncoding = $config->inputEnc;
}
// Try to convert the messages based on the locale information
if ($config->inputEnc && $config->outputEnc) {
if (function_exists("iconv")) {
$output = @iconv($inputEncoding, $config->outputEnc, $str);
if (!empty($output)) {
$str = $output;
}
}
}
return $str;
}
// }}}
// {{{ quoteCommand
function quoteCommand($cmd) {
global $config;
// On Windows machines, the whole line needs quotes round it so that it's
// passed to cmd.exe correctly
if ($config->serverIsWindows) {
$cmd = "\"$cmd\"";
}
return $cmd;
}
// }}}
// {{{ runCommand
function runCommand($cmd, $mayReturnNothing = false) {
global $lang;
$output = array();
$err = false;
$c = quoteCommand($cmd);
$descriptorspec = array(0 => array('pipe', 'r'), 1 => array('pipe', 'w'), 2 => array('pipe', 'w'));
$resource = proc_open($c, $descriptorspec, $pipes);
$error = "";
if (!is_resource($resource)) {
echo"<p>".$lang['BADCMD'].": <code>".$cmd."</code></p>";
exit;
}
$handle = $pipes[1];
$firstline = true;
while (!feof($handle)) {
$line = fgets($handle);
if ($firstline && empty($line) && !$mayReturnNothing) {
$err = true;
}
$firstline = false;
$output[] = toOutputEncoding(rtrim($line));
}
while (!feof($pipes[2])) {
$error .= fgets($pipes[2]);
}
$error = toOutputEncoding(trim($error));
fclose($pipes[0]);
fclose($pipes[1]);
fclose($pipes[2]);
proc_close($resource);
if (!$err) {
return $output;
} else {
echo"<p>".$lang['BADCMD'].": <code>".$cmd."</code></p><p>".nl2br($error)."</p>";
}
}
// }}}
// {{{ quote
//
// Quote a string to send to the command line
function quote($str) {
global $config;
if ($config->serverIsWindows) {
return "\"$str\"";
} else {
return escapeshellarg($str);
}
}
// }}}

View File

@ -1,375 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004-2006 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// config.php
//
// Configuration parameters
// --- FOLLOW THE INSTRUCTIONS BELOW TO CONFIGURE YOUR SETUP ---
// == magic to include codepot constants.php ==
define('BASEPATH', '.');
include_once dirname(__FILE__).'/../../config.php';
// == end of magic ==
// {{{ PLATFORM CONFIGURATION ---
// Uncomment the next line if you're running a windows server
//
// $config->setServerIsWindows();
// Configure these lines if your commands aren't on your path.
//
// $config->setSVNCommandPath('Path/to/svn and svnlook/ e.g. c:\\program files\\subversion\\bin');
// $config->setDiffPath('Path/to/diff/command/');
// For syntax colouring, if option enabled...
// $config->setEnscriptPath('Path/to/enscript/command/');
// $config->setSedPath('Path/to/sed/command/');
// For delivered tarballs, if option enabled...
// $config->setTarPath('Path/to/tar/command/');
// For delivered GZIP'd files and tarballs, if option enabled...
// $config->setGZipPath('Path/to/gzip/command/');
// }}}
// {{{ REPOSITORY SETUP ---
// There are 2 methods for defining the repositiories available on the system. Either you list
// them by hand, in which case you can give each one the name of your choice, or you use the
// parent path function, in which case the name of the directory is used as the repository name.
//
// In all cases, you may optionally supply a group name to the repositories. This is useful in the
// case that you need to separate your projects. Grouped Repositories are referred to using the
// convention GroupName.RepositoryName
//
// Performance is much better on local repositories (e.g. accessed by file:///). However, you
// can also provide an interface onto a remote repository. In this case you should supply the
// username and password needed to access it.
//
// To configure the repositories by hand, copy the appropriate line below, uncomment it and
// replace the name and URL of your repository.
// Local repositories (without and with optional group):
//
// $config->addRepository('NameToDisplay', 'URL to repository (e.g. file:///c:/svn/proj)');
// $config->addRepository('NameToDisplay', 'URL to repository (e.g. file:///c:/svn/proj)', 'group');
//
// Remote repositories (without and with optional group):
//
// $config->addRepository('NameToDisplay', 'URL (e.g. http://path/to/rep)', NULL, 'username', 'password');
// $config->addRepository('NameToDisplay', 'URL (e.g. http://path/to/rep)', 'group', 'username', 'password');
//
// To use the parent path method (without and with optional group), uncomment the next line
// and replace the path with your one. You can call the function several times if you have several parent paths.
// Note that in this case the path is a filesystem path.
//
// $config->parentPath('Path/to/parent (e.g. c:\\svn)');
// $config->parentPath('Path/to/parent (e.g. c:\\svn)', 'group');
//
// To add only a subset of repositories specified by the parent path you can call the function with a pattern.
//
// $config->parentPath('Path/to/parent (e.g. c:\\svn)', 'group', '/^beginwith/');
$config->parentPath(CODEPOT_SVNREPO_DIR);
// }}}
// {{{ LOOK AND FEEL ---
//
// Uncomment ONLY the template file that you want.
$config->setTemplatePath("$locwebsvnreal/templates/calm/");
// You may also specify a per repository template file by uncommenting and changing the following
// line as necessary. Use the convention "groupname.myrep" if your repository is in a group.
// $config->setTemplatePath('$locwebsvnreal/templates/Standard/', 'myrep'); // Access file for myrep
// The index page containing the projects may either be displayed as a flat view (the default),
// where grouped repositories are displayed as "GroupName.RepName" or as a tree view.
// In the case of a tree view, you may choose whether the entire tree is open by default.
// $config->useTreeIndex(false); // Tree index, closed by default
// $config->useTreeIndex(true); // Tree index, open by default
// By default, WebSVN displays a tree view onto the current directory. You can however
// choose to display a flat view of the current directory only, which may make the display
// load faster. Uncomment this line if you want that.
// $config->useFlatView();
// By default, WebSVN displays the information of the last modification
// (revision, age and author) for each entry in an extra column.
// To disable that uncomment this line.
// $config->setShowLastModInListing(false);
// By default, WebSVN displays the a form to select an other repository.
// To disable that uncomment this line.
// $config->setShowRepositorySelectionForm(false);
// }}}
// {{{ LANGUAGE SETUP ---
// WebSVN uses the iconv module to convert messages from your system's character set to the
// UTF-8 output encoding. If you find that your log messages aren't displayed correctly then
// you'll need to change the value here.
//
// You may also specify the character encoding of the repository contents if different from
// the system encoding. This is typically the case for windows users, whereby the command
// line returns, for example, CP850 encoded strings, whereas the source files are encoded
// as iso-8859-1 by Windows based text editors. When display text file, WebSVN will convert
// them from the content encoding to the output encoding (UTF-8).
//
// WebSVN does its best to automate all this, so only use the following if it doesn't work
// "out of the box". Uncomment and change one of the examples below.
//
// $config->setInputEncoding('CP850'); // Encoding of result returned by svn command line, etc.
// $config->setContentEncoding('iso-8859-1'); // Content encoding of all your repositories
// You may also specify a content encoding on a per repository basis. Uncomment and copy this
// line as necessary.
//
// $config->setContentEncoding('iso-8859-1', 'MyEnc');
// Note for Windows users: To enable iconv you'll need to enable the extension in your php.ini file
// AND copy iconv.dll (not php_iconv.dll) to your Windows system folder. In most cases the correct
// encoding is set when you call $config->setServerIsWindows();.
// Note for *nix users. You'll need to have iconv compiled into your binary. The default input and
// output encodings are taken from your locale informations. Override these if they aren't correct.
// Set the default language. If you want English then don't do anything here.
//
// $config->setDefaultLanguage('en');
// }}}
// {{{ MULTIVIEWS ---
// Uncomment this line if you want to use MultiView to access the repository by, for example:
//
// http://servername/wsvn/repname/path/in/repository
//
// Note: The websvn directory will need to have Multiviews turned on in Apache, and you'll need to configure
// wsvn.php
// $config->useMultiViews();
// }}}
// {{{ ACCESS RIGHTS ---
// Uncomment this line if you want to use your Subversion access file to control access
// rights via WebSVN. For this to work, you'll need to set up the same Apache based authentication
// to the WebSVN (or wsvn) directory as you have for Subversion itself. More information can be
// found in install.txt
// $config->useAuthenticationFile('/path/to/accessfile'); // Global access file
// You may also specify a per repository access file by uncommenting and copying the following
// line as necessary. Use the convention 'groupname.myrep' if your repository is in a group.
// $config->useAuthenticationFile('/path/to/accessfile', 'myrep'); // Access file for myrep
// }}}
// {{{ FILE CONTENT ---
//
// You may wish certain file types to be GZIP'd and delieved to the user when clicked apon.
// This is useful for binary files and the like that don't display well in a browser window!
// Copy, uncomment and modify this line for each extension to which this rule should apply.
// (Don't forget the . before the extension. You don't need an index between the []'s).
// If you'd rather that the files were delivered uncompressed with the associated MIME type,
// then read below.
//
// $zipped[] = '.dll';
// Subversion controlled files have an svn:mime-type property that can
// be set on a file indicating its mime type. By default binary files
// are set to the generic appcliation/octet-stream, and other files
// don't have it set at all. WebSVN also has a built-in list of
// associations from file extension to MIME content type. (You can
// view this list in setup.php).
//
// Determining the content-type: By default, if the svn:mime-type
// property exists and is different from application/octet-stream, it
// is used. Otherwise, if the built-in list has a contentType entry
// for the extension of the file, that is used. Otherwise, if the
// svn:mime-type property exists has the generic binary value of
// application/octet-stream, the file will be served as a binary
// file. Otherwise, the file will be brought up as ASCII text in the
// browser window (although this text may optionally be colourised.
// See below).
//
// Uncomment this if you want to ignore any svn:mime-type property on your
// files.
//
// $config->ignoreSvnMimeTypes();
//
// Uncomment this if you want skip WebSVN's custom mime-type handling
//
// $config->ignoreWebSVNContentTypes();
//
// Following the examples below, you can add new associations, modify
// the default ones or even delete them entirely (to show them in
// ASCII via WebSVN).
// $contentType['.c'] = 'text/plain'; // Create a new association
// $contentType['.doc'] = 'text/plain'; // Modify an existing one
// unset($contentType['.m']); // Remove a default association
// }}}
// {{{ TARBALLS ---
// You need tar and gzip installed on your system. Set the paths above if necessary
//
// Uncomment the line below to offer a tarball download option across all your
// repositories.
//
// $config->allowDownload();
//
// Change the line below to set the temporary directory where to store generated tarball.
//
// $config->setTarballTmpDir('temp');
//
// To change the global option for individual repositories, uncomment and replicate
// the required line below (replacing 'myrep' for the name of the repository to be changed).
// Use the convention 'groupname.myrep' if your repository is in a group.
// $config->allowDownload('myrep'); // Specifically allow downloading for 'myrep'
// $config->disallowDownload('myrep'); // Specifically disallow downloading for 'myrep'
// You can also choose the minimum directory level from which you'll allow downloading.
// A value of zero will allow downloading from the root. 1 will allow downloding of directories
// in the root, etc.
//
// If your project is arranged with trunk, tags and branches at the root level, then a value of 2
// would allow the downloading of directories within branches/tags while disallowing the download
// of the entire branches or tags directories. This would also stop downloading of the trunk, but
// see after for path exceptions.
//
// Change the line below to set the download level across all your repositories.
$config->setMinDownloadLevel(2);
// To change the level for individual repositories, uncomment and replicate
// the required line below (replacing 'myrep' for the name of the repository to be changed).
// Use the convention 'groupname.myrep' if your repository is in a group.
// $config->setMinDownloadLevel(2, 'myrep');
// Finally, you may add or remove certain directories (and their contents) either globally
// or on a per repository basis. Uncomment and copy the following lines as necessary. Note
// that the these are searched in the order than you give them until a match is made (with the
// exception that all the per repository exceptions are tested before the global ones). This means
// that you must disallow /a/b/c/ before you allow /a/b/ otherwise the allowed match on /a/b/ will
// stop any further searching, thereby allowing downloads on /a/b/c/.
// Global exceptions possibilties:
//
// $config->addAllowedDownloadException('/path/to/allowed/directory/');
// $config->addDisAllowedDownloadException('/path/to/disallowed/directory/');
//
// Per repository exception possibilties:
// Use the convention 'groupname.myrep' if your repository is in a group.
//
// $config->addAllowedDownloadException('/path/to/allowed/directory/', 'myrep');
// $config->addDisAllowedDownloadException('/path/to/disallowed/directory/', 'myrep');
// }}}
// {{{ COLOURISATION ---
// Uncomment this line if you want to use Enscript to colourise your file listings
//
// You'll need Enscript version 1.6 or higher AND Sed installed to use this feature.
// Set the path above.
//
// $config->useEnscript();
// Enscript need to be told what the contents of a file are so that it can be colourised
// correctly. WebSVN includes a predefined list of mappings from file extension to Enscript
// file type (viewable in setup.php).
//
// Here you should add and other extensions not already listed or redefine the default ones. eg:
//
// $extEnscript['.pas'] = 'pascal';
//
// Note that extensions are case sensitive.
// Uncomment this line if you want to use GeSHi to colourise your file listings
//
$config->useGeshi();
// }}}
// {{{ RSSFEED ---
// Uncomment this line if you wish to hide the RSS feed links across all repositories
//
$config->hideRSS();
//
// To change the global option for individual repositories, uncomment and replicate
// the required line below (replacing 'myrep' for the name of the repository to be changed).
// Use the convention 'groupname.myrep' if your repository is in a group.
// $config->hideRSS('myrep'); // Specifically hide RSS links for 'myrep'
// $config->showRSS('myrep'); // Specifically show RSS links for 'myrep'
// }}}
// {{{ BUGTRAQ ---
// Uncomment this line if you wish to use bugtraq: properties to show links to your BugTracker
// from the log messages.
//
// $config->useBugtraqProperties();
//
// To change the global option for individual repositories, uncomment and replicate
// the required line below (replacing 'myrep' for the name of the repository to be changed).
// Use the convention 'groupname.myrep' if your repository is in a group.
// $config->useBugtraqProperties('myrep'); // Specifically use bugtraq properties for 'myrep'
// $config->ignoreBugtraqProperties('myrep'); // Specifically ignore bugtraq properties for 'myrep'
// }}}
// {{{ MISCELLANEOUS ---
// Comment out this if you don't have the right to use it. Be warned that you may need it however!
set_time_limit(0);
// Number of spaces to expand tabs to in diff/listing view across all repositories
$config->expandTabsBy(8);
// To change the global option for individual repositories, uncomment and replicate
// the required line below (replacing 'myrep' for the name of the repository to be changed).
// Use the convention 'groupname.myrep' if your repository is in a group.
// $config->expandTabsBy(3, 'myrep'); // Expand Tabs by 3 for repository 'myrep'
// }}}

File diff suppressed because it is too large Load Diff

View File

@ -1,22 +0,0 @@
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004-2006 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// filename
//
// Description

View File

@ -1,440 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004-2006 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// setup.php
//
// Global setup
// --- DON'T CHANGE THIS FILE ---
//
// User changes should be done in config.ini
// Include the configuration class
require_once 'include/configclass.php';
// Create the config
$config = new WebSvnConfig();
// Set up the default character encodings
if (function_exists('iconv_get_encoding')) {
$config->setInputEncoding(iconv_get_encoding('input_encoding'));
}
// Set up locwebsvnhttp
// Note: we will use nothing in MultiViews mode so that the URLs use the root
// directory by default.
if (empty($locwebsvnhttp)) {
$locwebsvnhttp = defined('WSVN_MULTIVIEWS') ? '' : '.';
}
if (empty($locwebsvnreal)) {
$locwebsvnreal = '.';
}
$vars['locwebsvnhttp'] = $locwebsvnhttp;
// BACON
$vars['loccodepothttp'] = dirname(dirname($_SERVER['PHP_SELF']));
if ($vars['loccodepothttp'] == '/') $vars['loccodepothttp'] = '';
// END BACON
// {{{ Content-Type's
// Set up the default content-type extension handling
$contentType = array (
'.dwg' => 'application/acad', // AutoCAD Drawing files
'.arj' => 'application/arj', // <20>
'.ccad' => 'application/clariscad', // ClarisCAD files
'.drw' => 'application/drafting', // MATRA Prelude drafting
'.dxf' => 'application/dxf', // DXF (AutoCAD)
'.xl' => 'application/excel', // Microsoft Excel
'.unv' => 'application/i-deas', //SDRC I-DEAS files
'.igs' => 'application/iges', // IGES graphics format
'.iges' => 'application/iges', // IGES graphics format
'.hqx' => 'application/mac-binhex40', // Macintosh BinHex format
'.word' => 'application/msword', // Microsoft Word
'.w6w' => 'application/msword', // Microsoft Word
'.doc' => 'application/msword', // Microsoft Word
'.wri' => 'application/mswrite', // Microsoft Write
'.bin' => 'application/octet-stream', // Uninterpreted binary
'.exe' => 'application/x-msdownload', // Windows EXE
'.oda' => 'application/oda', // <20>
'.pdf' => 'application/pdf', // PDF (Adobe Acrobat)
'.ai' => 'application/postscript', // PostScript
'.ps' => 'application/postscript', // PostScript
'.eps' => 'application/postscript', // PostScript
'.prt' => 'application/pro_eng', // PTC Pro/ENGINEER
'.part' => 'application/pro_eng', // PTC Pro/ENGINEER
'.rtf' => 'application/rtf', // Rich Text Format
'.set' => 'application/set', // SET (French CAD standard)
'.stl' => 'application/sla', // Stereolithography
'.sol' => 'application/solids', // MATRA Prelude Solids
'.stp' => 'application/STEP', // ISO-10303 STEP data files
'.step' => 'application/STEP', // ISO-10303 STEP data files
'.vda' => 'application/vda', // VDA-FS Surface data
'.dir' => 'application/x-director', // Macromedia Director
'.dcr' => 'application/x-director', // Macromedia Director
'.dxr' => 'application/x-director', // Macromedia Director
'.mif' => 'application/x-mif', // FrameMaker MIF Format
'.csh' => 'application/x-csh', // C-shell script
'.dvi' => 'application/x-dvi', // TeX DVI
'.gz' => 'application/x-gzip', // GNU Zip
'.gzip' => 'application/x-gzip', // GNU Zip
'.hdf' => 'application/x-hdf', // ncSA HDF Data File
'.latex' => 'application/x-latex', // LaTeX source
'.nc' => 'application/x-netcdf', // Unidata netCDF
'.cdf' => 'application/x-netcdf', // Unidata netCDF
'.sit' => 'application/x-stuffit', // Stiffut Archive
'.tcl' => 'application/x-tcl', // TCL script
'.texinfo' => 'application/x-texinfo', // Texinfo (Emacs)
'.texi' => 'application/x-texinfo', // Texinfo (Emacs)
'.t' => 'application/x-troff', // Troff
'.tr' => 'application/x-troff', // Troff
'.roff' => 'application/x-troff', // Troff
'.man' => 'application/x-troff-man', // Troff with MAN macros
'.me' => 'application/x-troff-me', // Troff with ME macros
'.ms' => 'application/x-troff-ms', // Troff with MS macros
'.src' => 'application/x-wais-source', // WAIS source
'.bcpio' => 'application/x-bcpio', // Old binary CPIO
'.cpio' => 'application/x-cpio', // POSIX CPIO
'.gtar' => 'application/x-gtar', // GNU tar
'.shar' => 'application/x-shar', // Shell archive
'.sv4cpio' => 'application/x-sv4cpio', // SVR4 CPIO
'.sv4crc' => 'application/x-sv4crc', // SVR4 CPIO with CRC
'.tar' => 'application/x-tar', // 4.3BSD tar format
'.ustar' => 'application/x-ustar', // POSIX tar format
'.hlp' => 'application/x-winhelp', // Windows Help
'.zip' => 'application/zip', // ZIP archive
'.au' => 'audio/basic', // Basic audio (usually m-law)
'.snd' => 'audio/basic', // Basic audio (usually m-law)
'.aif' => 'audio/x-aiff', // AIFF audio
'.aiff' => 'audio/x-aiff', // AIFF audio
'.aifc' => 'audio/x-aiff', // AIFF audio
'.ra' => 'audio/x-pn-realaudio', // RealAudio
'.ram' => 'audio/x-pn-realaudio', // RealAudio
'.rpm' => 'audio/x-pn-realaudio-plugin', // RealAudio (plug-in)
'.wav' => 'audio/x-wav', // Windows WAVE audio
'.mp3' => 'audio/x-mp3', // MP3 files
'.gif' => 'image/gif', // gif image
'.ief' => 'image/ief', // Image Exchange Format
'.jpg' => 'image/jpeg', // JPEG image
'.jpe' => 'image/jpeg', // JPEG image
'.jpeg' => 'image/jpeg', // JPEG image
'.pict' => 'image/pict', // Macintosh PICT
'.tiff' => 'image/tiff', // TIFF image
'.tif' => 'image/tiff', // TIFF image
'.ras' => 'image/x-cmu-raster', // CMU raster
'.pnm' => 'image/x-portable-anymap', // PBM Anymap format
'.pbm' => 'image/x-portable-bitmap', // PBM Bitmap format
'.pgm' => 'image/x-portable-graymap', // PBM Graymap format
'.ppm' => 'image/x-portable-pixmap', // PBM Pixmap format
'.rgb' => 'image/x-rgb', // RGB Image
'.xbm' => 'image/x-xbitmap', // X Bitmap
'.xpm' => 'image/x-xpixmap', // X Pixmap
'.xwd' => 'image/x-xwindowdump', // X Windows dump (xwd) format
'.zip' => 'multipart/x-zip', // PKZIP Archive
'.gzip' => 'multipart/x-gzip', // GNU ZIP Archive
'.mpeg' => 'video/mpeg', // MPEG video
'.mpg' => 'video/mpeg', // MPEG video
'.mpe' => 'video/mpeg', // MPEG video
'.mpeg' => 'video/mpeg', // MPEG video
'.qt' => 'video/quicktime', // QuickTime Video
'.mov' => 'video/quicktime', // QuickTime Video
'.avi' => 'video/msvideo', // Microsoft Windows Video
'.movie' => 'video/x-sgi-movie', // SGI Movieplayer format
'.wrl' => 'x-world/x-vrml', // VRML Worlds
'.odt' => 'application/vnd.oasis.opendocument.text', // OpenDocument Text
'.ott' => 'application/vnd.oasis.opendocument.text-template', // OpenDocument Text Template
'.ods' => 'application/vnd.oasis.opendocument.spreadsheet', // OpenDocument Spreadsheet
'.ots' => 'application/vnd.oasis.opendocument.spreadsheet-template', // OpenDocument Spreadsheet Template
'.odp' => 'application/vnd.oasis.opendocument.presentation', // OpenDocument Presentation
'.otp' => 'application/vnd.oasis.opendocument.presentation-template', // OpenDocument Presentation Template
'.odg' => 'application/vnd.oasis.opendocument.graphics', // OpenDocument Drawing
'.otg' => 'application/vnd.oasis.opendocument.graphics-template', // OpenDocument Drawing Template
'.odc' => 'application/vnd.oasis.opendocument.chart', // OpenDocument Chart
'.otc' => 'application/vnd.oasis.opendocument.chart-template', // OpenDocument Chart Template
'.odf' => 'application/vnd.oasis.opendocument.formula', // OpenDocument Formula
'.otf' => 'application/vnd.oasis.opendocument.formula-template', // OpenDocument Formula Template
'.odi' => 'application/vnd.oasis.opendocument.image', // OpenDocument Image
'.oti' => 'application/vnd.oasis.opendocument.image-template', // OpenDocument Image Template
'.odm' => 'application/vnd.oasis.opendocument.text-master', // OpenDocument Master Document
'.oth' => 'application/vnd.oasis.opendocument.text-web', // HTML Document Template
'.odb' => 'application/vnd.oasis.opendocument.database', // OpenDocument Database
);
// }}}
// {{{ Enscript file extensions
// List of extensions recognised by enscript.
$extEnscript = array
(
'.ada' => 'ada',
'.adb' => 'ada',
'.ads' => 'ada',
'.awk' => 'awk',
'.c' => 'c',
'.c++' => 'cpp',
'.cc' => 'cpp',
'.cpp' => 'cpp',
'.csh' => 'csh',
'.cxx' => 'cpp',
'.diff' => 'diffu',
'.dpr' => 'delphi',
'.e' => 'eiffel',
'.el' => 'elisp',
'.eps' => 'postscript',
'.f' => 'fortran',
'.for' => 'fortran',
'.gs' => 'haskell',
'.h' => 'c',
'.hpp' => 'cpp',
'.hs' => 'haskell',
'.htm' => 'html',
'.html' => 'html',
'.idl' => 'idl',
'.java' => 'java',
'.js' => 'javascript',
'.lgs' => 'haskell',
'.lhs' => 'haskell',
'.m' => 'objc',
'.m4' => 'm4',
'.man' => 'nroff',
'.nr' => 'nroff',
'.p' => 'pascal',
'.pas' => 'delphi',
'.patch' => 'diffu',
'.pkg' => 'sql',
'.pl' => 'perl',
'.pm' => 'perl',
'.pp' => 'pascal',
'.ps' => 'postscript',
'.s' => 'asm',
'.scheme' => 'scheme',
'.scm' => 'scheme',
'.scr' => 'synopsys',
'.sh' => 'sh',
'.shtml' => 'html',
'.sql' => 'sql',
'.st' => 'states',
'.syn' => 'synopsys',
'.synth' => 'synopsys',
'.tcl' => 'tcl',
'.tex' => 'tex',
'.texi' => 'tex',
'.texinfo' => 'tex',
'.v' => 'verilog',
'.vba' => 'vba',
'.vh' => 'verilog',
'.vhd' => 'vhdl',
'.vhdl' => 'vhdl',
'.py' => 'python',
// The following are handled internally by WebSVN, since there's no
// support for them in Enscript
'.php' => 'php',
'.phtml' => 'php',
'.php3' => 'php',
'.php' => 'php'
);
// }}}
// Include a default language file (must go before config.php)
require 'languages/english.php';
// Get the user's personalised config (requires the locwebsvnhttp stuff above)
require_once 'config.php';
require_once 'include/svnlook.php';
// Make sure that the input locale is set up correctly
setlocale(LC_ALL, '');
// Default 'zipped' array
$zipped = array();
// Set up the version info
initSvnVersion($major,$minor);
// Get the user choice if there is one, and memorise the setting
// as a cookie (since we don't have user accounts, we can't store the setting
// anywhere else). We try to memorise a permanent cookie and a per session cookie
// in case the user has disabled permanent ones.
$userLang = false;
if (!empty($_REQUEST['langchoice'])) {
$userLang = $_REQUEST['langchoice'];
setcookie('storedlang', $_REQUEST['langchoice'], time()+(3600*24*356*10), '/');
setcookie('storedsesslang', $_REQUEST['langchoice']);
} else { // Try to read an existing cookie if there is one
if (!empty($_COOKIE['storedlang'])) $userLang = $_COOKIE['storedlang'];
else if (!empty($_COOKIE['storedsesslang'])) $userLang = $_COOKIE['storedsesslang'];
}
// Load available languages
require 'languages/languages.php';
// Get the default language as defined as the default by config.php
$defaultLang = $config->getDefaultLanguage();
if (!isset($languages[$defaultLang])) $defaultLang = 'en';
// Negotiate language
$userLang = getUserLanguage($languages, $defaultLang, $userLang);
$file = $languages[$userLang][0];
// Define the language array
$lang = array();
// XXX: this shouldn't be necessary
// ^ i.e. just require english.php, then the desired language
// Reload english to get untranslated strings
require 'languages/english.php';
// Reload the default language
require 'languages/'.$file.'.php';
$vars['lang_code'] = $userLang;
$url = '?'.buildQuery($_GET + $_POST);
$vars["lang_form"] = "<form action=\"$url\" method=\"post\" id=\"langform\">";
$vars["lang_select"] = "<select name=\"langchoice\" onchange=\"javascript:this.form.submit();\">";
foreach ($languages as $code => $d) {
$sel = ($code == $userLang) ? ' selected="selected"' : '';
$vars["lang_select"] .= '<option value="'.$code.'"'.$sel.'>'.$d[2].' - '.$d[1].'</option>';
}
$vars["lang_select"] .= "</select>";
$vars["lang_submit"] = "<input type=\"submit\" value=\"${lang["GO"]}\" />";
$vars["lang_endform"] = "</form>";
// Set up headers
header('Content-Type: text/html; charset=UTF-8');
header('Content-Language: '.$userLang);
// Make sure that the user has set up a repository
$reps = $config->getRepositories();
if (empty($reps[0])) {
echo $lang["SUPPLYREP"];
exit;
}
// Override the rep parameter with the repository name if it's available
$repname = @$_REQUEST["repname"];
if (isset($repname)) {
$repname = urldecode($repname);
$rep = $config->findRepository($repname);
} else {
$rep = $reps[0];
}
// Retrieve other standard parameters
// due to possible XSS exploit, we need to clean up path first
$path = !empty($_REQUEST['path']) ? $_REQUEST['path'] : null;
$vars['safepath'] = htmlentities($path, ENT_QUOTES, 'UTF-8');
$rev = (int)@$_REQUEST["rev"];
// Function to create the project selection HTML form
function createProjectSelectionForm() {
global $config, $vars, $rep, $lang;
if (!$config->showRepositorySelectionForm()) {
$vars["projects_form"] = '';
$vars["projects_select"] = '';
$vars["projects_submit"] = '';
$vars["projects_hidden"] = '';
$vars["projects_endform"] = '';
return;
}
$url = $config->getURL(-1, "", "form");
$vars["projects_form"] = "<form action=\"$url\" method=\"post\" id=\"projectform\">";
$reps = $config->getRepositories();
$vars["projects_select"] = "<select name=\"repname\" onchange=\"javascript:this.form.submit();\">";
foreach ($reps as $trep) {
if ($trep->hasReadAccess("/", true)) {
if ($rep->getDisplayName() == $trep->getDisplayName()) {
$sel = ' selected="selected"';
} else {
$sel = "";
}
$vars["projects_select"] .= "<option value=\"".$trep->getDisplayName()."\"$sel>".$trep->getDisplayName()."</option>";
}
}
$vars["projects_select"] .= "</select>";
$vars["projects_submit"] = "<input type=\"submit\" value=\"${lang["GO"]}\" />";
$vars["projects_hidden"] = "<input type=\"hidden\" name=\"selectproj\" value=\"1\" /><input type=\"hidden\" name=\"op\" value=\"form\" />";
$vars["projects_endform"] = "</form>";
}
// Function to create the revision selection HTML form
function createRevisionSelectionForm() {
global $config, $vars, $rep, $lang, $showchanged, $rev;
if ($rev == 0) {
$thisrev = "HEAD";
} else {
$thisrev = $rev;
}
list($url, $params) = $config->getUrlParts($rep, '', 'revision');
$vars["revision_form"] = "<form action=\"$url\" method=\"get\" id=\"revisionform\">";
$vars["revision_input"] = "<input type=\"text\" size=\"4\" name=\"rev\" value=\"$thisrev\" />";
$hidden = '';
foreach ($params as $k => $v) {
$hidden .= "<input type=\"hidden\" name=\"$k\" value=\"".htmlspecialchars($v)."\" />";
}
$vars["revision_hidden"] = $hidden;
$vars["revision_submit"] = "<input type=\"submit\" value=\"${lang["GO"]}\" />";
$vars["revision_endform"] = "</form>";
}
// Create the form if we're not in MultiViews. Otherwise wsvn must create the form once the current project has
// been found
if (!$config->multiViews) {
createProjectSelectionForm();
createRevisionSelectionForm();
}
if ($rep) {
$vars["allowdownload"] = $rep->getAllowDownload();
$vars["repname"] = htmlentities($rep->getDisplayName(), ENT_QUOTES, 'UTF-8');
}
// As of version 1.70 the output encoding is forced to be UTF-8, since this is the output
// encoding returned by svn log --xml. This is good, since we are no longer reliant on PHP's
// rudimentary conversions.
$vars["charset"] = "UTF-8";

View File

@ -1,994 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004-2006 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// svn-look.php
//
// Svn bindings
//
// These binding currently use the svn command line to achieve their goal. Once a proper
// SWIG binding has been produced for PHP, there'll be an option to use that instead.
require_once("include/utils.php");
// {{{ Classes for retaining log information ---
$debugxml = false;
class SVNMod {
var $action = '';
var $copyfrom = '';
var $copyrev = '';
var $path = '';
}
class SVNListEntry {
var $rev = 1;
var $author = '';
var $date = '';
var $committime;
var $age = '';
var $file = '';
var $isdir = false;
}
class SVNList {
var $entries; // Array of entries
var $curEntry; // Current entry
var $path = ''; // The path of the list
}
class SVNLogEntry {
var $rev = 1;
var $author = '';
var $date = '';
var $committime;
var $age = '';
var $msg = '';
var $path = '';
var $mods;
var $curMod;
}
function SVNLogEntry_compare($a, $b) {
return strnatcasecmp($a->path, $b->path);
}
class SVNLog {
var $entries; // Array of entries
var $curEntry; // Current entry
var $path = ''; // Temporary variable used to trace path history
// findEntry
//
// Return the entry for a given revision
function findEntry($rev) {
foreach ($this->entries as $index => $entry) {
if ($entry->rev == $rev) {
return $index;
}
}
}
}
// }}}
// {{{ XML parsing functions---
$curTag = '';
$curList = 0;
// {{{ listStartElement
function listStartElement($parser, $name, $attrs) {
global $curList, $curTag, $debugxml;
switch ($name) {
case "LIST":
if ($debugxml) print "Starting list\n";
if (sizeof($attrs)) {
while (list($k, $v) = each($attrs)) {
switch ($k) {
case "PATH":
if ($debugxml) print "Path $v\n";
$curList->path = $v;
break;
}
}
}
break;
case "ENTRY":
if ($debugxml) print "Creating new entry\n";
$curList->curEntry = new SVNListEntry;
if (sizeof($attrs)) {
while (list($k, $v) = each($attrs)) {
switch ($k) {
case "KIND":
if ($debugxml) print "Kind $v\n";
$curList->curEntry->isdir = ($v == 'dir');
break;
}
}
}
break;
case "COMMIT":
if ($debugxml) print "Commit\n";
if (sizeof($attrs)) {
while (list($k, $v) = each($attrs)) {
switch ($k) {
case "REVISION":
if ($debugxml) print "Revision $v\n";
$curList->curEntry->rev = $v;
break;
}
}
}
break;
default:
$curTag = $name;
break;
}
}
// }}}
// {{{ listEndElement
function listEndElement($parser, $name) {
global $curList, $debugxml, $curTag;
switch ($name) {
case "ENTRY":
if ($debugxml) print "Ending new list entry\n";
if ($curList->curEntry->isdir) {
$curList->curEntry->file .= '/';
}
$curList->entries[] = $curList->curEntry;
$curList->curEntry = null;
break;
}
$curTag = "";
}
// }}}
// {{{ listCharacterData
function listCharacterData($parser, $data) {
global $curList, $curTag, $lang, $debugxml;
switch ($curTag) {
case "NAME":
if ($debugxml) print "Name: $data\n";
if (empty($data)) return;
$curList->curEntry->file .= $data;
break;
case "AUTHOR":
if ($debugxml) print "Author: $data\n";
if (empty($data)) return;
$curList->curEntry->author .= htmlentities($data, ENT_COMPAT, "UTF-8");
break;
case "DATE":
if ($debugxml) print "Date: $data\n";
$data = trim($data);
if (empty($data)) return;
sscanf($data, "%d-%d-%dT%d:%d:%d.", $y, $mo, $d, $h, $m, $s);
$mo = substr("00".$mo, -2);
$d = substr("00".$d, -2);
$h = substr("00".$h, -2);
$m = substr("00".$m, -2);
$s = substr("00".$s, -2);
$curList->curEntry->date = "$y-$mo-$d $h:$m:$s GMT";
$committime = strtotime($curList->curEntry->date);
$curList->curEntry->committime = $committime;
$curtime = time();
// Get the number of seconds since the commit
$agesecs = $curtime - $committime;
if ($agesecs < 0) $agesecs = 0;
$curList->curEntry->age = datetimeFormatDuration($agesecs, true, true);
break;
}
}
// }}}
$curLog = 0;
// {{{ logStartElement
function logStartElement($parser, $name, $attrs) {
global $curLog, $curTag, $debugxml;
switch ($name) {
case "LOGENTRY":
if ($debugxml) print "Creating new log entry\n";
$curLog->curEntry = new SVNLogEntry;
$curLog->curEntry->mods = array();
$curLog->curEntry->path = $curLog->path;
if (sizeof($attrs)) {
while (list($k, $v) = each($attrs)) {
switch ($k) {
case "REVISION":
if ($debugxml) print "Revision $v\n";
$curLog->curEntry->rev = $v;
break;
}
}
}
break;
case "PATH":
if ($debugxml) print "Creating new path\n";
$curLog->curEntry->curMod = new SVNMod;
if (sizeof($attrs)) {
while (list($k, $v) = each($attrs)) {
switch ($k) {
case "ACTION":
if ($debugxml) print "Action $v\n";
$curLog->curEntry->curMod->action = $v;
break;
case "COPYFROM-PATH":
if ($debugxml) print "Copy from: $v\n";
$curLog->curEntry->curMod->copyfrom = $v;
break;
case "COPYFROM-REV":
$curLog->curEntry->curMod->copyrev = $v;
break;
}
}
}
$curTag = $name;
break;
default:
$curTag = $name;
break;
}
}
// }}}
// {{{ logEndElement
function logEndElement($parser, $name) {
global $curLog, $debugxml, $curTag;
switch ($name) {
case "LOGENTRY":
if ($debugxml) print "Ending new log entry\n";
$curLog->entries[] = $curLog->curEntry;
break;
case "PATH":
if ($debugxml) print "Ending path\n";
$curLog->curEntry->mods[] = $curLog->curEntry->curMod;
break;
case "MSG":
$curLog->curEntry->msg = trim($curLog->curEntry->msg);
if ($debugxml) print "Completed msg = '".$curLog->curEntry->msg."'\n";
break;
}
$curTag = "";
}
// }}}
// {{{ logCharacterData
function logCharacterData($parser, $data) {
global $curLog, $curTag, $lang, $debugxml;
switch ($curTag) {
case "AUTHOR":
if ($debugxml) print "Author: $data\n";
if (empty($data)) return;
$curLog->curEntry->author .= htmlentities($data, ENT_COMPAT, "UTF-8");
break;
case "DATE":
if ($debugxml) print "Date: $data\n";
$data = trim($data);
if (empty($data)) return;
sscanf($data, "%d-%d-%dT%d:%d:%d.", $y, $mo, $d, $h, $m, $s);
$mo = substr("00".$mo, -2);
$d = substr("00".$d, -2);
$h = substr("00".$h, -2);
$m = substr("00".$m, -2);
$s = substr("00".$s, -2);
$curLog->curEntry->date = "$y-$mo-$d $h:$m:$s GMT";
$committime = strtotime($curLog->curEntry->date);
$curLog->curEntry->committime = $committime;
$curtime = time();
// Get the number of seconds since the commit
$agesecs = $curtime - $committime;
if ($agesecs < 0) $agesecs = 0;
$curLog->curEntry->age = datetimeFormatDuration($agesecs, true, true);
break;
case "MSG":
if ($debugxml) print "Msg: '$data'\n";
$curLog->curEntry->msg .= htmlentities($data, ENT_COMPAT, "UTF-8");
break;
case "PATH":
if ($debugxml) print "Path name: '$data'\n";
$data = trim($data);
if (empty($data)) return;
$curLog->curEntry->curMod->path .= $data;
// The XML returned when a file is renamed/branched in inconsistant. In the case
// of a branch, the path information doesn't include the leafname. In the case of
// a rename, it does. Ludicrous.
if (!empty($curLog->path)) {
$pos = strrpos($curLog->path, "/");
$curpath = substr($curLog->path, 0, $pos);
$leafname = substr($curLog->path, $pos + 1);
} else {
$curpath = "";
$leafname = "";
}
if ($curLog->curEntry->curMod->action == "A") {
if ($debugxml) print "Examining added path '".$curLog->curEntry->curMod->copyfrom."' - Current path = '$curpath', leafname = '$leafname'\n";
if ($data == $curLog->path) { // For directories and renames
if ($debugxml) print "New path for comparison: '".$curLog->curEntry->curMod->copyfrom."'\n";
$curLog->path = $curLog->curEntry->curMod->copyfrom;
} else if ($data == $curpath || $data == $curpath."/") { // Logs of files that have moved due to branching
if ($debugxml) print "New path for comparison: '".$curLog->curEntry->curMod->copyfrom."/$leafname'\n";
$curLog->path = $curLog->curEntry->curMod->copyfrom."/$leafname";
}
}
break;
}
}
// }}}
// }}}
// {{{ internal functions (_topLevel and _listSort)
// Function returns true if the give entry in a directory tree is at the top level
function _topLevel($entry) {
// To be at top level, there must be one space before the entry
return (strlen($entry) > 1 && $entry{0} == " " && $entry{1} != " ");
}
// Function to sort two given directory entries. Directories go at the top
function _listSort($e1, $e2) {
$isDir1 = $e1->file{strlen($e1->file) - 1} == "/";
$isDir2 = $e2->file{strlen($e2->file) - 1} == "/";
if ($isDir1 && !$isDir2) return -1;
if ($isDir2 && !$isDir1) return 1;
return strnatcasecmp($e1->file, $e2->file);
}
// }}}
// {{{ encodePath
// Function to encode a URL without encoding the /'s
function encodePath($uri) {
global $config;
$uri = str_replace(DIRECTORY_SEPARATOR, "/", $uri);
$parts = explode('/', $uri);
for ($i = 0; $i < count($parts); $i++) {
if ( function_exists("mb_detect_encoding") && function_exists("mb_convert_encoding")) {
$parts[$i] = mb_convert_encoding($parts[$i], "UTF-8", mb_detect_encoding($parts[$i]));
}
$parts[$i] = rawurlencode($parts[$i]);
}
$uri = implode('/', $parts);
// Quick hack. Subversion seems to have a bug surrounding the use of %3A instead of :
$uri = str_replace("%3A" ,":", $uri);
// Correct for Window share names
if ( $config->serverIsWindows==true ) {
if (substr($uri, 0,2) == "//") {
$uri = "\\".substr($uri, 2, strlen($uri));
}
if (substr($uri, 0,10)=="file://///" ) {
$uri="file:///\\".substr($uri, 10, strlen($uri));
}
}
return $uri;
}
// }}}
// The SVNRepository class
class SVNRepository {
var $repConfig;
function SVNRepository($repConfig) {
$this->repConfig = $repConfig;
}
// {{{ highlightLine
//
// Distill line-spanning syntax highlighting so that each line can stand alone
// (when invoking on the first line, $attributes should be an empty array)
// Invoked to make sure all open syntax highlighting tags (<font>, <i>, <b>, etc.)
// are closed at the end of each line and re-opened on the next line
function highlightLine($line, &$attributes) {
$hline = "";
// Apply any highlighting in effect from the previous line
foreach ($attributes as $attr) {
$hline.=$attr['text'];
}
// append the new line
$hline.=$line;
// update attributes
for ($line = strstr($line, "<"); $line; $line = strstr(substr($line,1), "<")) {
if (substr($line,1,1) == "/") { // if this closes a tag, remove most recent corresponding opener
$tagNamLen = strcspn($line, "> \t", 2);
$tagNam = substr($line,2,$tagNamLen);
foreach (array_reverse(array_keys($attributes)) as $k) {
if ($attributes[$k]['tag'] == $tagNam) {
unset($attributes[$k]);
break;
}
}
} else { // if this opens a tag, add it to the list
$tagNamLen = strcspn($line, "> \t", 1);
$tagNam = substr($line,1,$tagNamLen);
$tagLen = strcspn($line, ">") + 1;
$attributes[] = array('tag' => $tagNam, 'text' => substr($line,0,$tagLen));
}
}
// close any still-open tags
foreach (array_reverse($attributes) as $attr) {
$hline.="</".$attr['tag'].">";
}
// XXX: this just simply replaces [ and ] with their entities to prevent
// it from being parsed by the template parser; maybe something more
// elegant is in order?
$hline = str_replace('[', '&#91;', str_replace(']', '&#93;', $hline) );
return $hline;
}
// }}}
// {{{ getFileContents
//
// Dump the content of a file to the given filename
function getFileContents($path, $filename, $rev = 0, $pipe = "", $perLineHighlighting = false) {
global $config, $extEnscript;
// If there's no filename, we'll just deliver the contents as it is to the user
if ($filename == "") {
$path = encodepath($this->repConfig->path.$path);
passthru(quoteCommand($config->svn." cat ".$this->repConfig->svnParams().quote($path).' -r '.$rev.' '.$pipe));
return;
}
// Get the file contents info
$ext = strrchr($path, ".");
$l = @$extEnscript[$ext];
if ($l == "php") {
// Output the file to the filename
$path = encodepath($this->repConfig->path.$path);
$cmd = quoteCommand($config->svn." cat ".$this->repConfig->svnParams().quote($path).' -r '.$rev.' > '.quote($filename));
@exec($cmd);
// Get the file as a string (memory hogging, but we have no other options)
$content = '<PRE>' . highlight_file($filename, true) . '</PRE>';
// Destroy the previous version, and replace it with the highlighted version
$f = fopen($filename, "w");
if ($f) {
// The highlight file function doesn't deal with line endings very nicely at all. We'll have to do it
// by hand.
// Remove the first line generated by highlight()
$pos = strpos($content, "\n");
$content = substr($content, $pos+1);
$content = explode("<br />", $content);
if ($perLineHighlighting) {
// If we need each line independently highlighted (e.g. for diff or blame)
// hen we'll need to filter the output of the highlighter
// to make sure tags like <font>, <i> or <b> don't span lines
// $attributes is used to remember what highlighting attributes
// are in effect from one line to the next
$attributes = array(); // start with no attributes in effect
foreach ($content as $line) {
fputs($f, $this->highlightLine(rtrim($line),$attributes)."\n");
}
} else {
foreach ($content as $line) {
fputs($f, rtrim($line)."\n");
}
}
fclose($f);
}
} else {
if ($l !== null && $config->useGeshi) {
$this->applyGeshi($path, $filename, $rev, $l);
} else if ($config->useEnscript) {
// Get the files, feed it through enscript, then remove the enscript headers using sed
//
// Note that the sec command returns only the part of the file between <PRE> and </PRE>.
// It's complicated because it's designed not to return those lines themselves.
$path = encodepath($this->repConfig->path.$path);
$cmd = quoteCommand($config->svn." cat ".$this->repConfig->svnParams().quote($path).' -r '.$rev.' | '.
$config->enscript." --language=html ".
($l ? "--color --pretty-print=$l" : "")." -o - | ".
$config->sed." -n ".$config->quote."1,/^<PRE.$/!{/^<\\/PRE.$/,/^<PRE.$/!p;}".$config->quote." > $filename");
@exec($cmd);
} else {
$path = encodepath(str_replace(DIRECTORY_SEPARATOR, "/", $this->repConfig->path.$path));
$cmd = quoteCommand($config->svn." cat ".$this->repConfig->svnParams().quote($path).' -r '.$rev.' > '.quote($filename));
@exec($cmd);
}
}
}
// }}}
// {{{ applyGeshi
//
// perform syntax highlighting using geshi
function applyGeshi($path, $filename, $rev = 0, $l, $return = false) {
global $config;
// Output the file to the filename
$path = encodepath($this->repConfig->path.$path);
$cmd = quoteCommand($config->svn." cat ".$this->repConfig->svnParams().quote($path).' -r '.$rev.' > '.quote($filename));
@exec($cmd);
$source = file_get_contents($filename);
require_once 'lib/geshi.php';
$geshi = new GeSHi($source, $l);
if ($return) {
return $geshi->parse_code();
} else {
$code = $geshi->parse_code();
$code = preg_replace("/^<pre.*?>/", '', $code);
$code = preg_replace("/<\/pre>$/", '', $code);
$f = @fopen($filename, 'w');
fwrite($f, $code);
fclose($f);
}
}
// }}}
// {{{ listFileContents
//
// Print the contents of a file without filling up Apache's memory
function listFileContents($path, $rev = 0) {
global $config, $extEnscript;
$pre = false;
// Get the file contents info
$ext = strrchr($path, ".");
$l = @$extEnscript[$ext];
// Deal with php highlighting internally
if ($l == "php") {
$tmp = tempnam("temp", "wsvn");
// Output the file to a temporary file
$path = encodepath($this->repConfig->path.$path);
$cmd = quoteCommand($config->svn." cat ".$this->repConfig->svnParams().quote($path).' -r '.$rev.' > '.$tmp);
@exec($cmd);
$tmpStr = file_get_contents($tmp);
$tmpStr = str_replace(array("\r\n"), array("\n"), $tmpStr);
print '<PRE>';
highlight_string($tmpStr);
print '</PRE>';
@unlink($tmp);
} else if ($l !== null && $config->useGeshi) {
$tmp = tempnam("temp", "wsvn");
print $this->applyGeshi($path, $tmp, $rev, $l, true);
unlink($tmp);
} else {
if ($config->useEnscript) {
$path = encodepath($this->repConfig->path.$path);
$cmd = quoteCommand($config->svn." cat ".$this->repConfig->svnParams().quote($path).' -r '.$rev.' | '.
$config->enscript." --language=html ".
($l ? "--color --pretty-print=$l" : "")." -o - | ".
$config->sed." -n ".$config->quote."/^<PRE.$/,/^<\\/PRE.$/p".$config->quote
);
} else {
$path = encodepath($this->repConfig->path.$path);
$cmd = quoteCommand($config->svn." cat ".$this->repConfig->svnParams().quote($path).' -r '.$rev);
$pre = true;
}
if ($result = popen($cmd, "r")) {
if ($pre) echo "<PRE>";
while (!feof($result)) {
$line = fgets($result, 1024);
if ($pre) $line = replaceEntities($line, $this->repConfig);
print hardspace($line);
}
if ($pre) echo "</PRE>";
pclose($result);
}
}
}
// }}}
// {{{ getBlameDetails
//
// Dump the blame content of a file to the given filename
function getBlameDetails($path, $filename, $rev = 0) {
global $config;
$path = encodepath($this->repConfig->path.$path);
$cmd = quoteCommand($config->svn." blame ".$this->repConfig->svnParams().quote($path).' -r '.$rev.' > '.quote($filename));
@exec($cmd);
}
// }}}
// {{{ getProperty
function getProperty($path, $property, $rev = 0) {
global $config;
$path = encodepath($this->repConfig->path.$path);
if ($rev > 0) {
$rev = ' -r '.$rev;
} else {
$rev = '';
}
$ret = runCommand($config->svn." propget $property ".$this->repConfig->svnParams().quote($path).$rev, true);
// Remove the surplus newline
if (count($ret)) {
unset($ret[count($ret) - 1]);
}
return implode("\n", $ret);
}
// }}}
// {{{ exportDirectory
//
// Exports the directory to the given location
function exportDirectory($path, $filename, $rev = 0) {
global $config;
$path = encodepath($this->repConfig->path.$path);
$cmd = quoteCommand($config->svn." export ".$this->repConfig->svnParams().quote($path).' -r '.$rev.' '.quote($filename));
@exec($cmd);
}
// }}}
// {{{ getList
function getList($path, $rev = 0) {
global $config, $curList, $vars, $lang;
$xml_parser = xml_parser_create("UTF-8");
xml_parser_set_option($xml_parser, XML_OPTION_CASE_FOLDING, true);
xml_set_element_handler($xml_parser, "listStartElement", "listEndElement");
xml_set_character_data_handler($xml_parser, "listCharacterData");
// Since directories returned by svn log don't have trailing slashes (:-(), we need to remove
// the trailing slash from the path for comparison purposes
if ($path{strlen($path) - 1} == "/" && $path != "/") {
$path = substr($path, 0, -1);
}
$curList = new SVNList;
$curList->entries = array();
$curList->path = $path;
// Get the list info
$path = encodepath($this->repConfig->path.$path);
if ($rev == 0) {
$headlog = $this->getLog("/", "", "", true, 1);
if (isset($headlog->entries[0])) $rev = $headlog->entries[0]->rev;
}
$revStr = "-r $rev";
$cmd = quoteCommand($config->svn." list --xml $revStr ".$this->repConfig->svnParams().quote($path));
$descriptorspec = array(0 => array('pipe', 'r'), 1 => array('pipe', 'w'), 2 => array('pipe', 'w'));
$resource = proc_open($cmd, $descriptorspec, $pipes);
$error = "";
if (!is_resource($resource)) {
echo "<p>".$lang['BADCMD'].": <code>".$cmd."</code></p>";
exit;
}
$handle = $pipes[1];
$firstline = true;
while (!feof($handle)) {
$line = fgets($handle);
if (!xml_parse($xml_parser, $line, feof($handle))) {
if (xml_get_error_code($xml_parser) != 5) {
// errors can contain sensitive info! don't echo this ~J
error_log(sprintf("XML error: %s (%d) at line %d column %d byte %d\ncmd: %s",
xml_error_string(xml_get_error_code($xml_parser)),
xml_get_error_code($xml_parser),
xml_get_current_line_number($xml_parser),
xml_get_current_column_number($xml_parser),
xml_get_current_byte_index($xml_parser),
$cmd));
exit;
} else {
$vars["error"] = $lang["UNKNOWNREVISION"];
return 0;
}
}
}
while (!feof($pipes[2])) {
$error .= fgets($pipes[2]);
}
$error = toOutputEncoding(trim($error));
fclose($pipes[0]);
fclose($pipes[1]);
fclose($pipes[2]);
proc_close($resource);
if (!empty($error)) {
echo "<p>".$lang['BADCMD'].": <code>".$cmd."</code></p><p>".nl2br($error)."</p>";
exit;
}
xml_parser_free($xml_parser);
// Sort the entries into alphabetical order with the directories at the top of the list
usort($curList->entries, "_listSort");
return $curList;
}
// }}}
// {{{ getLog
function getLog($path, $brev = "", $erev = 1, $quiet = false, $limit = 2) {
global $config, $curLog, $vars, $lang;
$xml_parser = xml_parser_create("UTF-8");
xml_parser_set_option($xml_parser, XML_OPTION_CASE_FOLDING, true);
xml_set_element_handler($xml_parser, "logStartElement", "logEndElement");
xml_set_character_data_handler($xml_parser, "logCharacterData");
// Since directories returned by svn log don't have trailing slashes (:-(), we need to remove
// the trailing slash from the path for comparison purposes
if ($path{strlen($path) - 1} == "/" && $path != "/") {
$path = substr($path, 0, -1);
}
$curLog = new SVNLog;
$curLog->entries = array();
$curLog->path = $path;
$revStr = "";
if ($brev && $erev) {
$revStr = "-r$brev:$erev";
} else if ($brev) {
$revStr = "-r$brev:1";
}
if (($config->subversionMajorVersion > 1 || $config->subversionMinorVersion >=2) && $limit != 0) {
$revStr .= " --limit $limit";
}
// Get the log info
$path = encodepath($this->repConfig->path.$path);
$info = "--verbose";
if ($quiet) $info = "--quiet";
$cmd = quoteCommand($config->svn." log --xml $info $revStr ".$this->repConfig->svnParams().quote($path));
$descriptorspec = array(0 => array('pipe', 'r'), 1 => array('pipe', 'w'), 2 => array('pipe', 'w'));
$resource = proc_open($cmd, $descriptorspec, $pipes);
$error = "";
if (!is_resource($resource)) {
echo "<p>".$lang['BADCMD'].": <code>".$cmd."</code></p>";
exit;
}
$handle = $pipes[1];
$firstline = true;
while (!feof($handle)) {
$line = fgets($handle);
if (!xml_parse($xml_parser, $line, feof($handle))) {
if (xml_get_error_code($xml_parser) != 5) {
// errors can contain sensitive info! don't echo this ~J
error_log(sprintf("XML error: %s (%d) at line %d column %d byte %d\ncmd: %s",
xml_error_string(xml_get_error_code($xml_parser)),
xml_get_error_code($xml_parser),
xml_get_current_line_number($xml_parser),
xml_get_current_column_number($xml_parser),
xml_get_current_byte_index($xml_parser),
$cmd));
exit;
} else {
$vars["error"] = $lang["UNKNOWNREVISION"];
return 0;
}
}
}
while (!feof($pipes[2])) {
$error .= fgets($pipes[2]);
}
$error = toOutputEncoding(trim($error));
fclose($pipes[0]);
fclose($pipes[1]);
fclose($pipes[2]);
proc_close($resource);
if (!empty($error)) {
echo "<p>".$lang['BADCMD'].": <code>".$cmd."</code></p><p>".nl2br($error)."</p>";
exit;
}
xml_parser_free($xml_parser);
foreach ($curLog->entries as $entryKey => $entry) {
$fullModAccess = true;
$anyModAccess = (count($entry->mods) == 0);
foreach ($entry->mods as $modKey => $mod) {
$access = $this->repConfig->hasReadAccess($mod->path);
if ($access) {
$anyModAccess = true;
} else {
// hide modified entry when access is prohibited
unset($curLog->entries[$entryKey]->mods[$modKey]);
$fullModAccess = false;
}
}
if (!$fullModAccess) {
// hide commit message when access to any of the entries is prohibited
$curLog->entries[$entryKey]->msg = '';
}
if (!$anyModAccess) {
// hide author and date when access to all of the entries is prohibited
$curLog->entries[$entryKey]->author = '';
$curLog->entries[$entryKey]->date = '';
$curLog->entries[$entryKey]->committime = '';
$curLog->entries[$entryKey]->age = '';
}
}
return $curLog;
}
// }}}
}
// {{{ initSvnVersion
function initSvnVersion(&$major, &$minor) {
global $config;
$ret = runCommand($config->svn_noparams." --version", false);
if (preg_match("~([0-9]?)\.([0-9]?)\.([0-9]?)~",$ret[0],$matches)) {
$major = $matches[1];
$minor = $matches[2];
}
$config->setSubversionMajorVersion($major);
$config->setSubversionMinorVersion($minor);
}
// }}}

View File

@ -1,263 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004-2006 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// templates.php
//
// Templating system to allow advanced page customisation
$ignore = false;
// Stack of previous test results
$ignorestack = array();
// Number of test levels currently ignored
$ignorelevel = 0;
// parseCommand
//
// Parse a special command
function parseCommand($line, $vars, $handle) {
global $ignore, $ignorestack, $ignorelevel;
// Check for test conditions
if (strncmp(trim($line), "[websvn-test:", 13) == 0) {
if (!$ignore) {
$line = trim($line);
$var = substr($line, 13, -1);
if (empty($vars[$var])) {
array_push($ignorestack, $ignore);
$ignore = true;
}
} else {
$ignorelevel++;
}
return true;
}
if (strncmp(trim($line), "[websvn-else]", 13) == 0) {
if ($ignorelevel == 0) {
$ignore = !$ignore;
}
return true;
}
if (strncmp(trim($line), "[websvn-endtest]", 16) == 0) {
if ($ignorelevel > 0) {
$ignorelevel--;
} else {
$ignore = array_pop($ignorestack);
}
return true;
}
if (strncmp(trim($line), "[websvn-getlisting]", 19) == 0) {
global $path, $rev, $svnrep;
if (!$ignore) {
$svnrep->listFileContents($path, $rev);
}
return true;
}
if (strncmp(trim($line), "[websvn-defineicons]", 19) == 0) {
global $icons;
if (!isset($icons)) {
$icons = array();
}
// Read all the lines until we reach the end of the definition, storing
// each one...
if (!$ignore) {
while (!feof($handle)) {
$line = trim(fgets($handle));
if (strncmp($line, "[websvn-enddefineicons]", 22) == 0) {
return true;
}
$eqsign = strpos($line, "=");
$match = substr($line, 0, $eqsign);
$def = substr($line, $eqsign + 1);
$icons[$match] = $def;
}
}
return true;
}
if (strncmp(trim($line), "[websvn-icon]", 13) == 0) {
global $icons, $vars;
if (!$ignore) {
// The current filetype should be defined my $vars["filetype"]
if (!empty($icons[$vars["filetype"]])) {
echo parseTags($icons[$vars["filetype"]], $vars);
} else if (!empty($icons["*"])) {
echo parseTags($icons["*"], $vars);
}
}
return true;
}
if (strncmp(trim($line), "[websvn-treenode]", 17) == 0) {
global $icons, $vars;
if (!$ignore) {
if ((!empty($icons["i-node"])) && (!empty($icons["t-node"])) && (!empty($icons["l-node"]))) {
for ($n = 1; $n < $vars["level"]; $n++) {
if ($vars["last_i_node"][$n]) {
echo parseTags($icons["e-node"], $vars);
} else {
echo parseTags($icons["i-node"], $vars);
}
}
if ($vars["level"] != 0) {
if ($vars["node"] == 0) {
echo parseTags($icons["t-node"], $vars);
} else {
echo parseTags($icons["l-node"], $vars);
$vars["last_i_node"][$vars["level"]] = TRUE;
}
}
}
}
return true;
}
return false;
}
// parseTemplate
//
// Parse the given template, replacing the variables with the values passed
function parseTemplate($template, $vars, $listing) {
global $ignore, $vars;
if (!is_file($template)) {
print"No template file found ($template)";
exit;
}
$handle = fopen($template, "r");
$inListing = false;
$ignore = false;
$listLines = array();
while (!feof($handle)) {
$line = fgets($handle);
// Check for the end of the file list
if ($inListing) {
if (strcmp(trim($line), "[websvn-endlisting]") == 0) {
$inListing = false;
// For each item in the list
foreach ($listing as $listvars) {
// Copy the value for this list item into the $vars array
foreach ($listvars as $id => $value) {
$vars[$id] = $value;
}
// Output the list item
foreach ($listLines as $line) {
if (!parseCommand($line, $vars, $handle)) {
if (!$ignore) {
print parseTags($line, $vars);
}
}
}
}
} else {
if ($ignore == false) {
$listLines[] = $line;
}
}
} else if (parseCommand($line, $vars, $handle)) {
continue;
} else {
// Check for the start of the file list
if (strncmp(trim($line), "[websvn-startlisting]", 21) == 0) {
$inListing = true;
} else {
if ($ignore == false) {
print parseTags($line, $vars);
}
}
}
}
fclose($handle);
}
// parseTags
//
// Replace all occurences of [websvn:varname] with the give variable
function parseTags($line, $vars) {
global $lang;
$l = '';
// Replace the websvn variables
while (ereg("\[websvn:([a-zA-Z0-9_]+)\]", $line, $matches)) {
// Find beginning
$p = strpos($line, $matches[0]);
// add everything up to beginning
if ($p > 0) {
$l .= substr($line, 0, $p);
}
// Replace variable (special token, if not exists)
$l .= isset($vars[$matches[1]]) ? $vars[$matches[1]]: ('?'.$matches[1].'?');
// Remove allready processed part of line
$line = substr($line, $p + strlen($matches[0]));
}
// Rebuild line, add remaining part of line
$line = $l.$line;
// Replace the language strings
while (ereg("\[lang:([a-zA-Z0-9_]+)\]", $line, $matches)) {
// Make sure that the variable exists
if (!isset($lang[$matches[1]])) {
$lang[$matches[1]] = "?${matches[1]}?";
}
$line = str_replace($matches[0], $lang[$matches[1]], $line);
}
// Return the results
return $line;
}

View File

@ -1,323 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004-2006 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// utils.php
//
// General utility commands
// {{{ createDirLinks
//
// Create a list of links to the current path that'll be available from the template
function createDirLinks($rep, $path, $rev) {
global $vars, $config;
$subs = explode('/', htmlentities($path, ENT_QUOTES, 'UTF-8'));
$sofar = "";
$count = count($subs);
$vars["curdirlinks"] = "";
// The number of links depends on the last item. It's empty if
// we're looing at a directory, and full if it's a file
if (empty($subs[$count - 1])) {
$limit = $count - 2;
$dir = true;
} else {
$limit = $count - 1;
$dir = false;
}
for ($n = 0; $n < $limit; $n++) {
$sofar .= html_entity_decode($subs[$n])."/";
$sofarurl = $config->getURL($rep, $sofar, "dir");
$vars["curdirlinks"] .= "[<a href=\"${sofarurl}rev=$rev\">".$subs[$n]."/</a>] ";
}
if ($dir) {
$vars["curdirlinks"] .= "[<b>".$subs[$n]."</b>/]";
} else {
$vars["curdirlinks"] .= "[<b>".$subs[$n]."</b>]";
}
}
// }}}
// {{{ create_anchors
//
// Create links out of http:// and mailto: tags
// TODO: the target="_blank" nonsense should be optional (or specified by the template)
function create_anchors($text) {
$ret = $text;
// Match correctly formed URLs that aren't already links
$ret = preg_replace("#\b(?<!href=\")([a-z]+?)://(\S*)([\w/]+)#i",
"<a href=\"\\1://\\2\\3\" target=\"_blank\">\\1://\\2\\3</a>",
$ret);
// Now match anything beginning with www, as long as it's not //www since they were matched above
$ret = preg_replace("#\b(?<!//)www\.(\S*)([\w/]+)#i",
"<a href=\"http://www.\\1\\2\" target=\"_blank\">www.\\1\\2</a>",
$ret);
// Match email addresses
$ret = preg_replace("#\b([\w\-_.]+)@([\w\-.]+)\b#i",
"<a href=\"mailto:\\1@\\2\">\\1@\\2</a>",
$ret);
return $ret;
}
// }}}
// {{{ getFullURL
function getFullURL($loc) {
$protocol = 'http';
if (isset($_SERVER['HTTP_X_FORWARDED_PROTO'])) {
$protocol = $_SERVER['HTTP_X_FORWARDED_PROTO'];
} else if (isset($_SERVER['HTTPS']) && (strtolower($_SERVER['HTTPS']) != 'off')) {
$protocol = 'https';
}
$port = ':'.$_SERVER['SERVER_PORT'];
if ((':80' == $port && 'http' == $protocol) || (':443' == $port && 'https' == $protocol)) {
$port = '';
}
if (isset($_SERVER['HTTP_X_FORWARDED_HOST'])) {
$host = $_SERVER['HTTP_X_FORWARDED_HOST'];
} else if (isset($_SERVER['HTTP_HOST'])) {
$host = $_SERVER['HTTP_HOST'];
} else if (isset($_SERVER['SERVER_NAME'])) {
$host = $_SERVER['SERVER_NAME'].$port;
} else if (isset($_SERVER['SERVER_ADDR'])) {
$host = $_SERVER['SERVER_ADDR'].$port;
} else {
print 'Unable to redirect';
exit;
}
// make sure we have a directory to go to
if (empty($loc)) {
$loc = '/';
} else if ($loc{0} != '/') {
$loc = '/'.$loc;
}
$url = $protocol . '://' . $host . $loc;
return $url;
}
// }}}
// {{{ hardspace
//
// Replace the spaces at the front of a line with hard spaces
// XXX: this is an unnecessary function; you can prevent whitespace from being
// trimmed via CSS (use the "white-space: pre;" properties). ~J
// in the meantime, here's an improved function (does nothing)
function hardspace($s) {
return '<code>' . expandTabs($s) . '</code>';
}
// }}}
// {{{ expandTabs
/**
* Expands the tabs in a line that may or may not include HTML.
*
* Enscript generates code with HTML, so we need to take that into account.
*
* @param string $s Line of possibly HTML-encoded text to expand
* @param int $tabwidth Tab width, -1 to use repository's default, 0 to collapse
* all tabs.
* @return string The expanded line.
* @since 2.1
*/
function expandTabs($s, $tabwidth = -1) {
global $rep;
if ($tabwidth == -1) {
$tabwidth = $rep->getExpandTabsBy();
}
$pos = 0;
// Parse the string into chunks that are either 1 of: HTML tag, tab char, run of any other stuff
$chunks = preg_split("/((?:<.+?>)|(?:&.+?;)|(?:\t))/", $s, -1, PREG_SPLIT_DELIM_CAPTURE);
// Count the sizes of the chunks and replace tabs as we go
for ($i = 0; $i < count($chunks); $i++) {
// make sure we're not dealing with an empty string
if (empty($chunks[$i])) continue;
switch ($chunks[$i]{0}) {
case '<': // HTML tag: ignore its width by doing nothing
break;
case '&': // HTML entity: count its width as 1 char
$pos += 1;
break;
case "\t": // Tab char: replace it with a run of spaces between length tabwidth and 1
$tabsize = $tabwidth - ($pos % $tabwidth);
$chunks[$i] = str_repeat(' ', $tabsize);
$pos += $tabsize;
break;
default: // Anything else: just keep track of its width
$pos += strlen($chunks[$i]);
break;
}
}
// Put the chunks back together and we've got the original line, detabbed.
return join('', $chunks);
}
// }}}
// {{{ datetimeFormatDuration
//
// Formats a duration of seconds for display.
//
// $seconds the number of seconds until something
// $nbsp true if spaces should be replaced by nbsp
// $skipSeconds true if seconds should be omitted
//
// return the formatted duration (e.g. @c "8h 6m 1s")
function datetimeFormatDuration($seconds, $nbsp = false, $skipSeconds = false) {
global $lang;
$neg = false;
if ($seconds < 0) {
$seconds = -$seconds;
$neg = true;
}
$qty = array();
$names = array($lang["DAYLETTER"], $lang["HOURLETTER"], $lang["MINUTELETTER"]);
$qty[] = (int)($seconds / (60 * 60 * 24));
$seconds %= 60 * 60 * 24;
$qty[] = (int)($seconds / (60 * 60));
$seconds %= 60 * 60;
$qty[] = (int)($seconds / 60);
if (!$skipSeconds) {
$qty[] = (int)($seconds % 60);
$names[] = $lang["SECONDLETTER"];
}
$text = $neg ? '-' : '';
$any = false;
$count = count($names);
$parts = 0;
for ($i = 0; $i < $count; $i++) {
// If a "higher valued" time slot had a value or this time slot
// has a value or this is the very last entry (i.e. all values
// are 0 and we still want to print seconds)
if ($any || $qty[$i] > 0 || $i == $count - 1) {
if ($any) $text .= $nbsp ? '&nbsp;' : ' ';
if ($any && $qty[$i] < 10) $text .= '0';
$text .= $qty[$i].$names[$i];
$any = true;
$parts++;
if ($parts >= 2) break;
}
}
return $text;
}
// }}}
// {{{ buildQuery
//
// Build parameters for url query part
function buildQuery($data, $separator = '&amp;', $key = '') {
if (is_object($data)) $data = get_object_vars($data);
$p = array();
foreach ($data as $k => $v) {
$k = urlencode($k);
if (!empty($key)) $k = $key.'['.$k.']';
if (is_array($v) || is_object($v)) {
$p[] = buildQuery($v, $separator, $k);
} else {
$p[] = $k.'='.urlencode($v);
}
}
return implode($separator, $p);
}
// }}}
// {{{ getUserLanguage
function getUserLanguage($languages, $default, $userchoice) {
$acceptlangs = isset($_SERVER['HTTP_ACCEPT_LANGUAGE']) ? $_SERVER['HTTP_ACCEPT_LANGUAGE'] : false;
if (!$acceptlangs) return $default;
$langs = array();
$sublangs = array();
foreach (explode(',', $acceptlangs) as $str) {
$a = explode(';', $str, 2);
$lang = trim($a[0]);
$pos = strpos($lang, '-');
if ($pos !== false) $sublangs[] = substr($lang, 0, $pos);
$q = 1.0;
if (sizeof($a) == 2) {
$v = trim($a[1]);
if (substr($v, 0, 2) == 'q=') $q = doubleval(substr($v, 2));
}
if ($userchoice) $q *= 0.9;
$langs[$lang] = $q;
}
foreach ($sublangs as $l) if (!isset($langs[$l])) $langs[$l] = 0.1;
if ($userchoice) $langs[$userchoice] = 1.0;
arsort($langs);
foreach ($langs as $code => $q) {
if (isset($languages[$code])) {
return $code;
}
}
return $default;
}
// }}}

View File

@ -1,25 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004-2006 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// version.php
//
// Version information
$version = '2.1.0';

View File

@ -1,121 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004-2006 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// index.php
//
// Main page. Lists all the projects
require_once("include/setup.php");
require_once("include/svnlook.php");
require_once("include/template.php");
$vars["action"] = $lang["PROJECTS"];
$vars["repname"] = "";
$vars["rev"] = 0;
$vars["path"] = "";
// Sort the repositories by group
$config->sortByGroup();
if ($config->flatIndex) {
// Create the flat view
$projects = $config->getRepositories();
$i = 0;
$listing = array();
foreach ($projects as $project) {
if ($project->hasReadAccess("/", true)) {
$url = $config->getURL($project, "/", "dir");
$listing[$i]["rowparity"] = $i % 2;
$listing[$i]["projlink"] = "<a href=\"${url}\">".$project->getDisplayName()."</a>";
$i++;
}
}
$vars["flatview"] = true;
$vars["treeview"] = false;
} else {
// Create the tree view
$projects = $config->getRepositories();
reset($projects);
$i = 0;
$listing = array();
$curgroup = NULL;
$parity = 0;
foreach ($projects as $project) {
if ($project->hasReadAccess("/", true)) {
$listing[$i] = array();
if ($curgroup != $project->group) {
// TODO: this should be de-soupified
if (!empty($curgroup)) {
// Close the switchcontent div
$listing[$i]["listitem"] = "</div>\n";
} else {
$listing[$i]["listitem"] = "";
}
$listing[$i]["isprojlink"] = false;
$listing[$i]["isgrouphead"] = true;
$curgroup = $project->group;
$id = strtr(base64_encode('grp'.$curgroup), array('+' => '-', '/' => '_', '=' => ''));
$listing[$i]["listitem"] .= "<div class=\"groupname\" onclick=\"expandcontent(this, '$id');\" style=\"cursor:hand; cursor:pointer\"><div class=\"a\"><span class=\"showstate\"></span>$curgroup</div></div>\n<div id=\"$id\" class=\"switchcontent\">";
$i++;
$listing[$i] = array();
}
$listing[$i]["isgrouphead"] = false;
$listing[$i]["isprojlink"] = true;
$url = $config->getURL($project, "/", "dir");
$listing[$i]["listitem"] = "<a href=\"${url}\">".$project->name."</a>\n";
$listing[$i]["rowparity"] = $parity % 2;
$parity++;
$i++;
}
}
if (!empty($curgroup)) {
// Close the switchcontent div
$listing[$i]["isprojlink"] = false;
$listing[$i]["isgrouphead"] = false;
$listing[$i]["listitem"] = "</div>";
}
$vars["flatview"] = false;
$vars["treeview"] = true;
$vars["opentree"] = $config->openTree;
}
$vars['indexurl'] = $config->getURL($rep, '', 'index');
$vars['codepot_sitehomeurl'] = $config->getURL($rep, '', 'codepot_sitehome');
$vars['codepot_projectlisturl'] = $config->getURL($rep, '', 'codepot_projectlist');
$vars['codepot_indexurl'] = $config->getURL($rep, '', 'codepot_index');
$vars['codepot_wikiurl'] = $config->getURL($rep, '', 'codepot_wiki');
$vars['codepot_sourceurl'] = $config->getURL($rep, '', 'codepot_source');
$vars['codepot_fileurl'] = $config->getURL($rep, '', 'codepot_file');
$vars["version"] = $version;
parseTemplate($config->getTemplatePath()."header.tmpl", $vars, $listing);
parseTemplate($config->getTemplatePath()."index.tmpl", $vars, $listing);
parseTemplate($config->getTemplatePath()."footer.tmpl", $vars, $listing);

View File

@ -1,33 +0,0 @@
wwwdir=$(WWWDIR)/websvn/languages
www_DATA = \
catalan.php \
czech.php \
danish.php \
dutch.php \
english.php \
finnish.php \
french.php \
german.php \
hebrew.php \
hungarian.php \
indonesian.php \
italian.php \
japanese.php \
korean.php \
languages.php \
norwegian.php \
polish.php \
portuguese-br.php \
portuguese.php \
russian.php \
schinese.php \
slovak.php \
slovenian.php \
spanish.php \
swedish.php \
tchinese.php \
turkish.php \
uzbek.php
EXTRA_DIST = $(www_DATA)

View File

@ -1,403 +0,0 @@
# Makefile.in generated by automake 1.11 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = src/websvn/languages
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/ac/m4/as-ac-expand.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/./config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(wwwdir)"
DATA = $(www_DATA)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BINDIR = @BINDIR@
CACHEDIR = @CACHEDIR@
CFGDIR = @CFGDIR@
CYGPATH_W = @CYGPATH_W@
DATADIR = @DATADIR@
DEFS = @DEFS@
DEPOTDIR = @DEPOTDIR@
DOCDIR = @DOCDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LD = @LD@
LIBDIR = @LIBDIR@
LIBEXECDIR = @LIBEXECDIR@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LOCALSTATEDIR = @LOCALSTATEDIR@
LOGDIR = @LOGDIR@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PREFIX = @PREFIX@
RM = @RM@
RMDIR = @RMDIR@
SBINDIR = @SBINDIR@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
SYSCONFDIR = @SYSCONFDIR@
VERSION = @VERSION@
WWWDIR = @WWWDIR@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
am__leading_dot = @am__leading_dot@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
cachedir = @cachedir@
cfgdir = @cfgdir@
datadir = @datadir@
datarootdir = @datarootdir@
depotdir = @depotdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
logdir = @logdir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
wwwdir = $(WWWDIR)/websvn/languages
www_DATA = \
catalan.php \
czech.php \
danish.php \
dutch.php \
english.php \
finnish.php \
french.php \
german.php \
hebrew.php \
hungarian.php \
indonesian.php \
italian.php \
japanese.php \
korean.php \
languages.php \
norwegian.php \
polish.php \
portuguese-br.php \
portuguese.php \
russian.php \
schinese.php \
slovak.php \
slovenian.php \
spanish.php \
swedish.php \
tchinese.php \
turkish.php \
uzbek.php
EXTRA_DIST = $(www_DATA)
all: all-am
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/websvn/languages/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign src/websvn/languages/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-wwwDATA: $(www_DATA)
@$(NORMAL_INSTALL)
test -z "$(wwwdir)" || $(MKDIR_P) "$(DESTDIR)$(wwwdir)"
@list='$(www_DATA)'; test -n "$(wwwdir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(wwwdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(wwwdir)" || exit $$?; \
done
uninstall-wwwDATA:
@$(NORMAL_UNINSTALL)
@list='$(www_DATA)'; test -n "$(wwwdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(wwwdir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(wwwdir)" && rm -f $$files
tags: TAGS
TAGS:
ctags: CTAGS
CTAGS:
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(DATA)
installdirs:
for dir in "$(DESTDIR)$(wwwdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am: install-wwwDATA
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-wwwDATA
.MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic distclean \
distclean-generic distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am install-dvi \
install-dvi-am install-exec install-exec-am install-html \
install-html-am install-info install-info-am install-man \
install-pdf install-pdf-am install-ps install-ps-am \
install-strip install-wwwDATA installcheck installcheck-am \
installdirs maintainer-clean maintainer-clean-generic \
mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
uninstall-am uninstall-wwwDATA
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -1,122 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// catalan.php
//
// Catalan language strings
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Català-Valencià";
$lang['LANGUAGETAG'] = 'ca';
$lang["LOG"] = "Registre";
$lang["DIFF"] = "Diferència";
$lang["NOREP"] = "No s'ha proporcionat cap dipòsit";
$lang["NOPATH"] = "No s'ha trobat cap camí";
$lang["NOACCESS"] = "No teniu els permisos necessaris per a llegir aquest directori";
$lang["RESTRICTED"] = "Accés restringit";
$lang["SUPPLYREP"] = "Definiu un camí per al dipòsit a include/config.php utilitzant \$config->parentPath o \$config->addRepository<p>Vegeu la guia d'instal·lació per a més detalls";
$lang["DIFFREVS"] = "Diferències entre revisions";
$lang["AND"] = "i";
$lang["REV"] = "Revisió";
$lang["LINE"] = "Línia";
$lang["SHOWENTIREFILE"] = "Mostra el fitxer sencer";
$lang["SHOWCOMPACT"] = "Mostra només les àrees amb diferències";
$lang["DIFFPREV"] = "Compara amb l'anterior";
$lang["BLAME"] = "Culpa";
$lang["REVINFO"] = "Informació de la revisió";
$lang["GOYOUNGEST"] = "Vés a la revisió més recent";
$lang["LASTMOD"] = "Darrera modificació";
$lang["LOGMSG"] = "Missatge de registre";
$lang["CHANGES"] = "Canvis";
$lang["SHOWCHANGED"] = "Mostra els fitxers canviats";
$lang["HIDECHANGED"] = "Amaga els fitxers canviats";
$lang["NEWFILES"] = "Nous fitxers";
$lang["CHANGEDFILES"] = "Fitxers modificats";
$lang["DELETEDFILES"] = "Fitxers suprimits";
$lang["VIEWLOG"] = "Visualitza&nbsp;el&nbsp;registre";
$lang["PATH"] = "Camí";
$lang["AUTHOR"] = "Autor";
$lang["AGE"] = "Edat";
$lang["LOG"] = "Registre";
$lang["CURDIR"] = "Directori actual";
$lang["TARBALL"] = "Arxiu tar";
$lang["PREV"] = "Anterior";
$lang["NEXT"] = "Següent";
$lang["SHOWALL"] = "Mostra-ho tot";
$lang["BADCMD"] = "S'ha produït un error en exectuar aquesta ordre";
$lang["UNKNOWNREVISION"] = "No s'ha trobat la revisió";
$lang["POWERED"] = "Funciona amb <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "Dipòsits&nbsp;de&nbsp;Subversion";
$lang["SERVER"] = "Servidor&nbsp;de&nbsp;Subversion";
$lang["FILTER"] = "Opcions de filtratge";
$lang["STARTLOG"] = "Des de la revisió";
$lang["ENDLOG"] = "A la revisió";
$lang["MAXLOG"] = "Màximes revisions";
$lang["SEARCHLOG"] = "Cerca";
$lang["CLEARLOG"] = "Neteja el filtre actual";
$lang["MORERESULTS"] = "Cerca més coincidències...";
$lang["NORESULTS"] = "No hi ha cap registre que coincideixi amb la vostra cerca";
$lang["NOMORERESULTS"] = "No hi ha més registres que coincideixin amb la vostra cerca";
$lang['NOPREVREV'] = 'No hi ha cap revisió anterior.';
$lang["RSSFEEDTITLE"] = "Canal RSS del WebSVN";
$lang["FILESMODIFIED"] = "fitxer(s) modificat(s)";
$lang["RSSFEED"] = "Canal RSS";
$lang["LINENO"] = "Línia núm.";
$lang["BLAMEFOR"] = "Informació de culpa per a la revisió";
$lang["DAYLETTER"] = "d";
$lang["HOURLETTER"] = "h";
$lang["MINUTELETTER"] = "m";
$lang["SECONDLETTER"] = "s";
$lang["GO"] = "Vés-hi";
$lang["PATHCOMPARISON"] = "Comparació de camins";
$lang["COMPAREPATHS"] = "Compara els camins";
$lang["COMPAREREVS"] = "Compara les revisions";
$lang["PROPCHANGES"] = "Canvis de propietat:";
$lang["CONVFROM"] = "Aquesta comparació mostra els canvis necessaris per a convertir el camí ";
$lang["TO"] = "a";
$lang["REVCOMP"] = "Comparació inversa";
$lang["COMPPATH"] = "Camí de comparació:";
$lang["WITHPATH"] = "Amb el camí:";
$lang["FILEDELETED"] = "Fitxer suprimit";
$lang["FILEADDED"] = "Nou fitxer";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";
// $lang["NOBR"] = "<nobr>";
// $lang["ENDNOBR"] = "</nobr>";

View File

@ -1,124 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// czech.php
//
// Czech language strings
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Česky";
// This is the RFC 2616 (§3.10) language tag that corresponds to this translation
// see also RFC 4646
$lang['LANGUAGETAG'] = 'cs';
$lang["LOG"] = "Log";
$lang["DIFF"] = "Diff";
$lang["NOREP"] = "Není určen žádný repozitář";
$lang["NOPATH"] = "Cesta nebyla nalezena";
$lang["NOACCESS"] = "Nemáte dostatečná přístupová práva pro čtení adresáře";
$lang["RESTRICTED"] = "Omezený přístup";
$lang["SUPPLYREP"] = "Nastavte prosím cestu k repozitáři v include/config.php pomocí \$config->parentPath nebo \$config->addRepository<p>Podívejte se do insatlační příručky pro podrobnější informace";
$lang["DIFFREVS"] = "Rozdíly mezi revizemi";
$lang["AND"] = "a";
$lang["REV"] = "Revevize";
$lang["LINE"] = "Line";
$lang["SHOWENTIREFILE"] = "Zobraz celý soubor";
$lang["SHOWCOMPACT"] = "Zobraz pouze rozdílné části";
$lang["DIFFPREV"] = "Porovnej s předchozí";
$lang["BLAME"] = "Blame";
$lang["REVINFO"] = "Informace o revizi";
$lang["GOYOUNGEST"] = "Přejdi na současnou revizi";
$lang["LASTMOD"] = "Poslední změna";
$lang["LOGMSG"] = "Záznam";
$lang["CHANGES"] = "Změny";
$lang["SHOWCHANGED"] = "Zobraz změněné soubory";
$lang["HIDECHANGED"] = "Schovej změněné soubory";
$lang["NEWFILES"] = "Nové soubory";
$lang["CHANGEDFILES"] = "Změněné soubory";
$lang["DELETEDFILES"] = "Smazané soubory";
$lang["VIEWLOG"] = "Ukaž";
$lang["PATH"] = "Cesta";
$lang["AUTHOR"] = "Autor";
$lang["AGE"] = "Stáří";
$lang["LOG"] = "Záznam";
$lang["CURDIR"] = "Aktuální adresář";
$lang["TARBALL"] = "Tarball";
$lang["PREV"] = "Předchozí";
$lang["NEXT"] = "Následující";
$lang["SHOWALL"] = "Ukaž všechny";
$lang["BADCMD"] = "Nepodařilo se spustit tento příkaz";
$lang["UNKNOWNREVISION"] = "Revize nebyla nalezena";
$lang["POWERED"] = "Poháněno <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "Subversion&nbsp;Repozitáře";
$lang["SERVER"] = "Subversion&nbsp;Servery";
$lang["FILTER"] = "Nastavení filtrování";
$lang["STARTLOG"] = "Od revize";
$lang["ENDLOG"] = "Do revize";
$lang["MAXLOG"] = "Max revizí";
$lang["SEARCHLOG"] = "Hledat";
$lang["CLEARLOG"] = "Zruš aktuální filtr";
$lang["MORERESULTS"] = "Najdi další...";
$lang["NORESULTS"] = "Nejsou tu žádné zázanmy odpovídající vašim požadavkům";
$lang["NOMORERESULTS"] = "Nejsou tu žádné další záznamy odpovídající vašim požadavkům";
$lang['NOPREVREV'] = 'Není předchozí revize.';
$lang["RSSFEEDTITLE"] = "WebSVN RSS feed";
$lang["FILESMODIFIED"] = "soubor(y) změněn(y)";
$lang["RSSFEED"] = "RSS";
$lang["LINENO"] = "Číslo řádky";
$lang["BLAMEFOR"] = "Blame information for rev";
$lang["DAYLETTER"] = "d";
$lang["HOURLETTER"] = "h";
$lang["MINUTELETTER"] = "m";
$lang["SECONDLETTER"] = "s";
$lang["GO"] = "Go";
$lang["PATHCOMPARISON"] = "Porovnání cest";
$lang["COMPAREPATHS"] = "Porovnej cesty";
$lang["COMPAREREVS"] = "Porovnej revize";
$lang["PROPCHANGES"] = "Změněné vlastnosti:";
$lang["CONVFROM"] = "Toto porovnání ukazuje změny pro převedení";
$lang["TO"] = "na";
$lang["REVCOMP"] = "Reverzní porovnání";
$lang["COMPPATH"] = "Porovnej cestu:";
$lang["WITHPATH"] = "S umístěním:";
$lang["FILEDELETED"] = "Soubor smazán";
$lang["FILEADDED"] = "Nový soubor";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";
// $lang["NOBR"] = "<nobr>";
// $lang["ENDNOBR"] = "</nobr>";

View File

@ -1,122 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// danish.php
//
// Danish language strings based on TortoiseSVN translation.
// by Jan Normann Nielsen, <span@dubbekarl.dk>
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Dansk";
$lang['LANGUAGETAG'] = 'da';
$lang["LOG"] = "Log";
$lang["DIFF"] = "Sammenlign";
$lang["NOREP"] = "Der er ikke angivet noget versionarkiv";
$lang["NOPATH"] = "Stien blev ikke fundet";
$lang["NOACCESS"] = "Du har ikke de n&oslash;dvendige rettigheder til at l&aelig;se denne mappe";
$lang["RESTRICTED"] = "Begr&aelig;nset adgang";
$lang["SUPPLYREP"] = "Konfigurer venligst stier til versionsarkiver i include/config.php ved at bruge \$config->parentPath eller \$config->addRepository<p>. Se installationsguiden for n&aelig;rmere detaljer.";
$lang["DIFFREVS"] = "Sammenlign revisionerne";
$lang["AND"] = "og";
$lang["REV"] = "Rev";
$lang["LINE"] = "Linje";
$lang["SHOWENTIREFILE"] = "Vis hele filen";
$lang["SHOWCOMPACT"] = "Vis kun omr&aring;der med forskelle";
$lang["DIFFPREV"] = "Sammenlign med forrige";
$lang["BLAME"] = "&aelig;ndringsfordeling";
$lang["REVINFO"] = "Informationer om revision";
$lang["GOYOUNGEST"] = "G&aring; til nyeste revision";
$lang["LASTMOD"] = "Sidste &aelig;ndring";
$lang["LOGMSG"] = "Logbesked";
$lang["CHANGES"] = "&aelig;ndringer";
$lang["SHOWCHANGED"] = "Vis &aelig;ndrede filer";
$lang["HIDECHANGED"] = "Skjul &aelig;ndrede filer";
$lang["NEWFILES"] = "Nye filer";
$lang["CHANGEDFILES"] = "&aelig;ndrede filer";
$lang["DELETEDFILES"] = "Slettede filer";
$lang["VIEWLOG"] = "Vis&nbsp;log";
$lang["PATH"] = "Sti";
$lang["AUTHOR"] = "Forfatter";
$lang["AGE"] = "Alder";
$lang["LOG"] = "Log";
$lang["CURDIR"] = "Nuv&aelig;rende mappe";
$lang["TARBALL"] = "Tar-pakke";
$lang["PREV"] = "Forrige";
$lang["NEXT"] = "N&aelig;ste";
$lang["SHOWALL"] = "Vis alle";
$lang["BADCMD"] = "Fejl ved udf&oslash;relse af kommandoen";
$lang["UNKNOWNREVISION"] = "Revisionen findes ikke";
$lang["POWERED"] = "Leveret af <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "Subversion-versionsarkiver";
$lang["SERVER"] = "Subversion-server";
$lang["FILTER"] = "Filter-indstillinger";
$lang["STARTLOG"] = "Fra rev";
$lang["ENDLOG"] = "Til rev";
$lang["SEARCHLOG"] = "S&oslash;g efter";
$lang["CLEARLOG"] = "Ryd aktuelle filter";
$lang["MORERESULTS"] = "Vis flere resultater...";
$lang["NORESULTS"] = "Der er ingen logbeskeder, der passer p&aring; s&oslash;gningen";
$lang["NOMORERESULTS"] = "Der er ikke flere logbeskeder, som svarer til s&oslash;gningen";
$lang['NOPREVREV'] = 'Ingen forrige revision';
$lang["RSSFEEDTITLE"] = "WebSVN RSS-feed";
$lang["FILESMODIFIED"] = "fil(er) &aelig;ndret";
$lang["RSSFEED"] = "RSS-feed";
$lang["LINENO"] = "Linjenr.";
$lang["BLAMEFOR"] = "&aelig;ndringsfordeling for revision";
$lang["DAYLETTER"] = "d";
$lang["HOURLETTER"] = "t";
$lang["MINUTELETTER"] = "m";
$lang["SECONDLETTER"] = "s";
$lang["GO"] = "G&aring; til";
$lang["PATHCOMPARISON"] = "Sammenligning af stier";
$lang["COMPAREPATHS"] = "Sammenlign stier";
$lang["COMPAREREVS"] = "Sammenlign revisioner";
$lang["PROPCHANGES"] = "&aelig;ndringer i egenskaber:";
$lang["CONVFROM"] = "Denne sammenligning viser de &aelig;ndringer, der skal til for at konvertere stien ";
$lang["TO"] = "til";
$lang["REVCOMP"] = "Omvendt sammenligning";
$lang["COMPPATH"] = "Sammenlign sti:";
$lang["WITHPATH"] = "med sti:";
$lang["FILEDELETED"] = "Fil slettet";
$lang["FILEADDED"] = "Ny fil";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";
// $lang["NOBR"] = "<nobr>";
// $lang["ENDNOBR"] = "</nobr>";

View File

@ -1,119 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// dutch.php
//
// Dutch language strings
//
// By David Gartner david A.T net2ftp D-O-T com
// Comments welcome.
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Dutch";
$lang['LANGUAGETAG'] = 'nl';
$lang["LOG"] = "Log";
$lang["DIFF"] = "Diff";
$lang["NOREP"] = "Geen repository ingegeven";
$lang["NOPATH"] = "Pad niet gevonden";
$lang["SUPPLYREP"] = "Gelieve een repository pad aan te maken in include/config.php met behulp van \$config->parentPath of \$config->addRepository<p>Zie de installatiegids voor meer details";
$lang["DIFFREVS"] = "Verschil tussen de revisies";
$lang["AND"] = "en";
$lang["REV"] = "Rev";
$lang["LINE"] = "Lijn";
$lang["SHOWENTIREFILE"] = "Toon volledig bestand";
$lang["SHOWCOMPACT"] = "Toon enkel de delen met verschillen";
$lang["DIFFPREV"] = "Vergelijk met vorige";
$lang["BLAME"] = "Blame";
$lang["REVINFO"] = "Revisie Informatie";
$lang["GOYOUNGEST"] = "Ga naar de meest recente revisie";
$lang["LASTMOD"] = "Laatste wijziging";
$lang["LOGMSG"] = "Log bericht";
$lang["CHANGES"] = "Wijzigingen";
$lang["SHOWCHANGED"] = "Toon gewijzigde bestanden";
$lang["HIDECHANGED"] = "Verberg gewijzigde bestanden";
$lang["NEWFILES"] = "Nieuwe bestanden";
$lang["CHANGEDFILES"] = "Gewijzigde bestanden";
$lang["DELETEDFILES"] = "Gewiste files";
$lang["VIEWLOG"] = "Toon&nbsp;Log";
$lang["PATH"] = "Pad";
$lang["AUTHOR"] = "Auteur";
$lang["AGE"] = "Ouderdom";
$lang["LOG"] = "Log";
$lang["CURDIR"] = "Huidige map";
$lang["TARBALL"] = "Tarball";
$lang["PREV"] = "Vorige";
$lang["NEXT"] = "Volgende";
$lang["SHOWALL"] = "Toon alles";
$lang["BADCMD"] = "Een fout is opgetreden tijdens het uitvoeren van dit commando";
$lang["POWERED"] = "Aangedreven door <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "Subversion&nbsp;Projecten";
$lang["SERVER"] = "Subversion&nbsp;Server";
$lang["SEARCHLOG"] = "Doorzoek de logs";
$lang["CLEARLOG"] = "Wis deze zoekopdracht";
$lang["MORERESULTS"] = "Vind meer resultaten...";
$lang["NORESULTS"] = "Er zijn geen logs die aan de zoekcriteria voldoen";
$lang["NOMORERESULTS"] = "Er zijn geen logs meer die aan de zoekcriteria voldoen";
$lang["RSSFEEDTITLE"] = "WebSVN RSS feed";
$lang["FILESMODIFIED"] = "bestand(en) gewijzigd";
$lang["RSSFEED"] = "RSS feed";
$lang["LINENO"] = "Lijn Nr.";
$lang["BLAMEFOR"] = "Blame informatie voor revisie";
$lang["YEARS"] = "jaren";
$lang["MONTHS"] = "maanden";
$lang["WEEKS"] = "weken";
$lang["DAYS"] = "dagen";
$lang["HOURS"] = "uren";
$lang["MINUTES"] = "minuten";
$lang["GO"] = "Ga";
$lang["PATHCOMPARISON"] = "Pad vergelijking";
$lang["COMPAREPATHS"] = "Vergelijk paden";
$lang["COMPAREREVS"] = "Vergelijk revisies";
$lang["PROPCHANGES"] = "Eigenschap wijzigingen :";
$lang["CONVFROM"] = "Deze vergelijking geeft de veranderingen weer die nodig zijn om het pad te converteren ";
$lang["TO"] = "TO";
$lang["REVCOMP"] = "Omgekeerde vergelijking";
$lang["COMPPATH"] = "Vergelijk pad:";
$lang["WITHPATH"] = "Met pad:";
$lang["FILEDELETED"] = "Bestand gewist";
$lang["FILEADDED"] = "Nieuw bestand";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";
// $lang["NOBR"] = "<nobr>";
// $lang["ENDNOBR"] = "</nobr>";

View File

@ -1,130 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// english.php
//
// English language strings
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "English";
// This is the RFC 2616 (§3.10) language tag that corresponds to this translation
// see also RFC 4646
$lang['LANGUAGETAG'] = 'en';
$lang["LOG"] = "Log";
$lang["DIFF"] = "Diff";
$lang["NOREP"] = "No repository given";
$lang["NOPATH"] = "Path not found";
$lang["NOACCESS"] = "You do not have the necessary permissions to read this content";
$lang["RESTRICTED"] = "Restricted access";
$lang["SUPPLYREP"] = "Please set up a repository path in include/config.php using \$config->parentPath or \$config->addRepository<p>See the installation guide for more details";
$lang["DIFFREVS"] = "Diff between revs";
$lang["AND"] = "and";
$lang["REV"] = "Rev";
$lang["LINE"] = "Line";
$lang["SHOWENTIREFILE"] = "Show entire file";
$lang["SHOWCOMPACT"] = "Only display areas with differences";
$lang["LISTING"] = "Directory listing";
$lang["FILEDETAIL"] = "Details";
$lang["DIFFPREV"] = "Compare with Previous";
$lang["BLAME"] = "Blame";
$lang["REVINFO"] = "Revision Information";
$lang["GOYOUNGEST"] = "Go to most recent revision";
$lang["LASTMOD"] = "Last modification";
$lang["LOGMSG"] = "Log message";
$lang["CHANGES"] = "Changes";
$lang["SHOWCHANGED"] = "Show changed files";
$lang["HIDECHANGED"] = "Hide changed files";
$lang["NEWFILES"] = "New Files";
$lang["CHANGEDFILES"] = "Modified files";
$lang["DELETEDFILES"] = "Deleted files";
$lang["VIEWLOG"] = "View&nbsp;Log";
$lang["PATH"] = "Path";
$lang["AUTHOR"] = "Author";
$lang["AGE"] = "Age";
$lang["LOG"] = "Log";
$lang["CURDIR"] = "Current Directory";
$lang["TARBALL"] = "Tarball";
$lang["PREV"] = "Prev";
$lang["NEXT"] = "Next";
$lang["SHOWALL"] = "Show All";
$lang["BADCMD"] = "Error running this command";
$lang["UNKNOWNREVISION"] = "Revision not found";
$lang["POWERED"] = "Powered by <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "Project";
$lang["SERVER"] = "Server";
$lang["WIKI"] = "Wiki";
$lang["SOURCE"] = "Source";
$lang["FILES"] = "Files";
$lang["HOME"] = "Home";
$lang["FILTER"] = "Filtering Options";
$lang["STARTLOG"] = "From rev";
$lang["ENDLOG"] = "To rev";
$lang["MAXLOG"] = "Max revs";
$lang["SEARCHLOG"] = "Search for";
$lang["CLEARLOG"] = "Clear current filter";
$lang["MORERESULTS"] = "Find more matches...";
$lang["NORESULTS"] = "There are no logs matching your query";
$lang["NOMORERESULTS"] = "There are no more logs matching your query";
$lang['NOPREVREV'] = 'No previous revision';
$lang["RSSFEEDTITLE"] = "WebSVN RSS feed";
$lang["FILESMODIFIED"] = "file(s) modified";
$lang["RSSFEED"] = "RSS feed";
$lang["LINENO"] = "Line No.";
$lang["BLAMEFOR"] = "Blame information for rev";
$lang["DAYLETTER"] = "d";
$lang["HOURLETTER"] = "h";
$lang["MINUTELETTER"] = "m";
$lang["SECONDLETTER"] = "s";
$lang["GO"] = "Go";
$lang["PATHCOMPARISON"] = "Path Comparison";
$lang["COMPAREPATHS"] = "Compare Paths";
$lang["COMPAREREVS"] = "Compare Revisions";
$lang["PROPCHANGES"] = "Property changes :";
$lang["CONVFROM"] = "This comparison shows the changes necessary to convert path ";
$lang["TO"] = "TO";
$lang["REVCOMP"] = "Reverse comparison";
$lang["COMPPATH"] = "Compare Path:";
$lang["WITHPATH"] = "With Path:";
$lang["FILEDELETED"] = "File deleted";
$lang["FILEADDED"] = "New file";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";
// $lang["NOBR"] = "<nobr>";
// $lang["ENDNOBR"] = "</nobr>";

View File

@ -1,117 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2005 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// finnish.php
//
// Finnish language strings
// Matti Pöllä <mpo@iki.fi>
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Finnish";
$lang['LANGUAGETAG'] = 'fi';
$lang["LOG"] = "Loki";
$lang["DIFF"] = "Diff";
$lang["NOREP"] = "Tietokantaa ei ole valittu";
$lang["NOPATH"] = "Polkua ei löydy";
$lang["SUPPLYREP"] = "Aseta tietokannan polku tiedostossa include/config.php käyttäen muuttujaa \$config->parentPath tai \$config->addRepository<p>Katso asennusoppaasta yksityiskohtaiset ohjeet";
$lang["DIFFREVS"] = "Versioiden väliset muutokset";
$lang["AND"] = "ja";
$lang["REV"] = "Versio";
$lang["LINE"] = "Rivi";
$lang["SHOWENTIREFILE"] = "Näytä koko tiedosto";
$lang["SHOWCOMPACT"] = "Näytä vain muutoksia sisältävät alueet";
$lang["DIFFPREV"] = "Vertaa Edelliseen";
$lang["BLAME"] = "Blame";
$lang["REVINFO"] = "Version Tiedot";
$lang["GOYOUNGEST"] = "Siirry uusimpaan versioon";
$lang["LASTMOD"] = "Viimeinen muokkaus";
$lang["LOGMSG"] = "Lokiviesti";
$lang["CHANGES"] = "Muutokset";
$lang["SHOWCHANGED"] = "Näytä muutoksia siältävät tiedostot";
$lang["HIDECHANGED"] = "Piilota muutoksia sisältävät tiedostot";
$lang["NEWFILES"] = "Uudet tiedostot";
$lang["CHANGEDFILES"] = "Muokatut tiedostot";
$lang["DELETEDFILES"] = "Poistetut tiedostot";
$lang["VIEWLOG"] = "Näytä&nbsp;Loki";
$lang["PATH"] = "Polku";
$lang["AUTHOR"] = "Tekijä";
$lang["AGE"] = "Ikä";
$lang["LOG"] = "Loki";
$lang["CURDIR"] = "Tämä Hakemisto";
$lang["TARBALL"] = "Tar-tiedosto";
$lang["PREV"] = "Edellinen";
$lang["NEXT"] = "Seuraava";
$lang["SHOWALL"] = "Näytä Kaikki";
$lang["BADCMD"] = "Virhe komennon suorittamisessa";
$lang["POWERED"] = "Moottorina <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "Subversion&nbsp;Projektit";
$lang["SERVER"] = "Subversion-palvelin";
$lang["SEARCHLOG"] = "Etsi lokista";
$lang["CLEARLOG"] = "Tyhjennä tämä haku";
$lang["MORERESULTS"] = "Hae lisää osumia...";
$lang["NORESULTS"] = "Mikään loki ei vastaa kyselyä";
$lang["NOMORERESULTS"] = "Kyselyä vastaavia lokeja ei ole enemmän";
$lang["RSSFEEDTITLE"] = "WebSVN RSS-syöte";
$lang["FILESMODIFIED"] = "tiedosto(a) muokattu";
$lang["RSSFEED"] = "RSS-syöte";
$lang["LINENO"] = "Rivi Nro.";
$lang["BLAMEFOR"] = "Blame-tiedot versiolle";
$lang["YEARS"] = "vuotta";
$lang["MONTHS"] = "kuukautta";
$lang["WEEKS"] = "viikkoa";
$lang["DAYS"] = "päivää";
$lang["HOURS"] = "tuntia";
$lang["MINUTES"] = "minuuttia";
$lang["GO"] = "Siirry";
$lang["PATHCOMPARISON"] = "Polkujen Vertailu";
$lang["COMPAREPATHS"] = "Vertaa Polkuja";
$lang["COMPAREREVS"] = "Vertaile Versioita";
$lang["PROPCHANGES"] = "Ominaisuuksien muutokset :";
$lang["CONVFROM"] = "Tämä vertailu näyttää polun muuntamiseen tarvittavat muutokset ";
$lang["TO"] = "TO";
$lang["REVCOMP"] = "Vertailu käänteiseen suuntaan";
$lang["COMPPATH"] = "Vertaile Polkua:";
$lang["WITHPATH"] = "Vertailtava Polku:";
$lang["FILEDELETED"] = "Tiedosto poistettu";
$lang["FILEADDED"] = "Uusi tiedosto";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";
// $lang["NOBR"] = "<nobr>";
// $lang["ENDNOBR"] = "</nobr>";

View File

@ -1,95 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Erik Le Blanc
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// french.php
//
// French language strings
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Francais";
$lang['LANGUAGETAG'] = 'fr';
$lang["LOG"] = "Log";
$lang["DIFF"] = "Diff";
$lang["NOREP"] = "Pas de repository";
$lang["NOPATH"] = "Fichier ou r&eacute;pertoire non trouv&eacute;";
$lang["DIFFREVS"] = "Diff&eacute;rences entre les r&eacute;visions";
$lang["AND"] = "et";
$lang["REV"] = "R&eacute;vision";
$lang["LINE"] = "Ligne";
$lang["SHOWENTIREFILE"] = "Afficher tout le fichier";
$lang["SHOWCOMPACT"] = "Afficher seulement les passages avec des diff&eacute;rences";
$lang["FILEDETAIL"] = "D&eacute;tails";
$lang["DIFFPREV"] = "Diff&eacute;rence avec le pr&eacute;c&eacute;dent";
$lang["BLAME"] = "Responsabilit&eacute;";
$lang["REVINFO"] = "Information sur la R&eacute;vision";
$lang["GOYOUNGEST"] = "Aller &agrave; la R&eacute;vision la plus r&eacute;cente";
$lang["LASTMOD"] = "Derni&egrave;re modification";
$lang["LOGMSG"] = "Message de Log";
$lang["CHANGES"] = "Changements";
$lang["SHOWCHANGED"] = "Montrer les fichiers modifi&eacute;s";
$lang["HIDECHANGED"] = "Cacher les fichiers modifi&eacute;s";
$lang["NEWFILES"] = "Nouveaux fichiers";
$lang["CHANGEDFILES"] = "Fichier(s) modifi&eacute;(s)";
$lang["DELETEDFILES"] = "Fichier(s) effac&eacute;(s)";
$lang["VIEWLOG"] = "Afficher&nbsp;le&nbsp;Log";
$lang["PATH"] = "Chemin";
$lang["AUTHOR"] = "Auteur";
$lang["AGE"] = "Anciennet&eacute;";
$lang["LOG"] = "Log";
$lang["CURDIR"] = "R&eacute;pertoire courant";
$lang["PREV"] = "Pr&eacute;c&eacute;dent";
$lang["NEXT"] = "Suivant";
$lang["SHOWALL"] = "Tout montrer";
$lang["BADCMD"] = "Cette commande a provoqu&eacute; une erreur";
$lang["POWERED"] = "Powered by <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "Projets&nbsp;Subversion";
$lang["SERVER"] = "Serveur&nbsp;Subversion";
$lang["SEARCHLOG"] = "Rechercher dans les Logs";
$lang["CLEARLOG"] = "Effacer la recherche courante";
$lang["MORERESULTS"] = "Trouver plus de r&eacute;ponses...";
$lang["NORESULTS"] = "Il n'y a pas de r&eacute;ponse &agrave; votre recherche dans les Logs";
$lang["NOMORERESULTS"] = "Il n'y a pas plus de r&eacute;ponses &agrave; votre recherche";
$lang["RSSFEEDTITLE"] = "Fil RSS de WebSVN";
$lang["FILESMODIFIED"] = "fichier(s) modifi&eacute;(s)";
$lang["RSSFEED"] = "RSS";
$lang["LINENO"] = "Ligne num&eacute;ro";
$lang["BLAMEFOR"] = "Dernier responsable";
$lang["YEARS"] = "ann&eacute;es";
$lang["MONTHS"] = "mois";
$lang["WEEKS"] = "semaines";
$lang["DAYS"] = "jours";
$lang["HOURS"] = "heures";
$lang["MINUTES"] = "minutes";
$lang["GO"] = "Go";

View File

@ -1,126 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Stephan Stapel, <stephan.stapel@web.de>
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// germany.php
//
// German language strings
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "German";
// This is the RFC 2616 (<28>3.10) language tag that corresponds to this translation
// see also RFC 4646
$lang['LANGUAGETAG'] = 'de';
$lang["LOG"] = "Log";
$lang["DIFF"] = "Diff";
$lang["NOREP"] = "Kein Repository angegeben.";
$lang["NOPATH"] = "Pfad nicht gefunden";
$lang["NOACCESS"] = "Sie haben keine ausreichende Berechtigungen um diese Inhalte zu lesen";
$lang["RESTRICTED"] = "Beschr&auml;nkter Zugriff";
$lang["SUPPLYREP"] = "Bitte den Repository-Pfad in include/config.php mit \$config->parentPath oder \$config->addRepository angeben.<p>Genauere Informationen finden sich in der Installationsanleitung";
$lang["DIFFREVS"] = "Vergleich zwischen Revisionen";
$lang["AND"] = "und";
$lang["REV"] = "Revision";
$lang["LINE"] = "Zeile";
$lang["SHOWENTIREFILE"] = "Ganze Datei anzeigen";
$lang["SHOWCOMPACT"] = "Nur ge&auml;nderte Bereiche";
$lang["LISTING"] = "Verzeichnisansicht";
$lang["FILEDETAIL"] = "Details";
$lang["DIFFPREV"] = "Vergleich mit vorheriger";
$lang["BLAME"] = "Blame";
$lang["REVINFO"] = "Revisionsinformation";
$lang["GOYOUNGEST"] = "Zur aktuellen Revision";
$lang["LASTMOD"] = "Letzte &Auml;nderung";
$lang["LOGMSG"] = "Logeintrag";
$lang["CHANGES"] = "&Auml;nderungen";
$lang["SHOWCHANGED"] = "Ge&auml;nderte Dateien anzeigen";
$lang["HIDECHANGED"] = "Ge&auml;nderte Dateien verstecken";
$lang["NEWFILES"] = "Neue Dateien";
$lang["CHANGEDFILES"] = "Ge&auml;nderte Dateien";
$lang["DELETEDFILES"] = "Gel&ouml;schte Dateien";
$lang["VIEWLOG"] = "Log&nbsp;anzeigen";
$lang["PATH"] = "Pfad";
$lang["AUTHOR"] = "Autor";
$lang["AGE"] = "Alter";
$lang["LOG"] = "Log";
$lang["CURDIR"] = "Aktuelles Verzeichnis";
$lang["TARBALL"] = "Archiv Download";
$lang["PREV"] = "Zur&uuml;ck";
$lang["NEXT"] = "Weiter";
$lang["SHOWALL"] = "Alles anzeigen";
$lang["BADCMD"] = "Fehler beim Ausf&uuml;hren des Befehls";
$lang["UNKNOWNREVISION"] = "Revision nicht gefunden";
$lang["POWERED"] = "Powered by <a href=\"http://www.websvn.info\">WebSVN</a>";
$lang["PROJECTS"] = "Subversion-Projekte";
$lang["SERVER"] = "Subversion-Server";
$lang["FILTER"] = "Filteroptionen";
$lang["STARTLOG"] = "Von Rev.";
$lang["ENDLOG"] = "bis Rev.";
$lang["MAXLOG"] = "Max. Rev.";
$lang["SEARCHLOG"] = "Suche im Log nach";
$lang["CLEARLOG"] = "Aktuelle Suche l&ouml;schen";
$lang["MORERESULTS"] = "Weitere Ergebnisse finden...";
$lang["NORESULTS"] = "Es wurden keine Treffer erzielt";
$lang["NOMORERESULTS"] = "Keine weiteren Treffer f&uuml;r diese Suche";
$lang['NOPREVREV'] = 'Keine vorherige Revision';
$lang["RSSFEEDTITLE"] = "WebSVN RSS feed";
$lang["FILESMODIFIED"] = "Ver&auml;nderte Dateien";
$lang["RSSFEED"] = "RSS feed";
$lang["LINENO"] = "Zeilennr.";
$lang["BLAMEFOR"] = "Blame-Information f&uuml;r Rev.";
$lang["DAYLETTER"] = "t";
$lang["HOURLETTER"] = "h";
$lang["MINUTELETTER"] = "m";
$lang["SECONDLETTER"] = "s";
$lang["GO"] = "Los";
$lang["PATHCOMPARISON"] = "Pfadvergleich";
$lang["COMPAREPATHS"] = "Vergleiche Pfade";
$lang["COMPAREREVS"] = "Vergleiche Revisionen";
$lang["PROPCHANGES"] = "Ge&auml;nderte Eigenschaften :";
$lang["CONVFROM"] = "Dieser Vergleich zeigt die &Auml;nderungen zwischen ";
$lang["TO"] = "und";
$lang["REVCOMP"] = "Revisionen vertauschen";
$lang["COMPPATH"] = "Vergleiche Pfad:";
$lang["WITHPATH"] = "Mit Pfad:";
$lang["FILEDELETED"] = "Datei gel&ouml;scht";
$lang["FILEADDED"] = "Neue Datei";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";
// $lang["NOBR"] = "<nobr>";
// $lang["ENDNOBR"] = "</nobr>";

View File

@ -1,124 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// Hebrew.php
//
// Hebrew language strings
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "עברית";
// This is the RFC 2616 (?§3.10) language tag that corresponds to this translation
// see also RFC 4646
$lang['LANGUAGETAG'] = 'he-IL';
$lang["LOG"] = "לוג";
$lang["DIFF"] = "שוני";
$lang["NOREP"] = "גנזך לא נמצא";
$lang["NOPATH"] = "נתיב לא נמצא";
$lang["NOACCESS"] = "אין לך את ההרשאות הנחוצות לתיקייה זו";
$lang["RESTRICTED"] = "גישה מוגבלת";
$lang["SUPPLYREP"] = 'אנא הוסף את הנתיב לגנזך ב include/config.php ע"י $config->parentPath או $config->addRepository<p>בדוק את מדריך ההתקנה עבור הפרטים';
$lang["DIFFREVS"] = "שוני בין גרסאות";
$lang["AND"] = "ו";
$lang["REV"] = "גרסה";
$lang["LINE"] = "שורה";
$lang["SHOWENTIREFILE"] = "הראה את כל הקובץ";
$lang["SHOWCOMPACT"] = "הראה רק חלקים ששונו";
$lang["DIFFPREV"] = "השווה עם הקודם";
$lang["BLAME"] = "האשם";
$lang["REVINFO"] = "מידע על הגרסה";
$lang["GOYOUNGEST"] = "לך לגרסה האחרונה";
$lang["LASTMOD"] = "שינוי אחרון";
$lang["LOGMSG"] = "מסר הלוג";
$lang["CHANGES"] = "שינויים";
$lang["SHOWCHANGED"] = "הראה קבצים ששונו";
$lang["HIDECHANGED"] = "החבא קבצים ששונו";
$lang["NEWFILES"] = "קבצים חדשים";
$lang["CHANGEDFILES"] = "קבצים ששונו";
$lang["DELETEDFILES"] = "קבצים שנמחקו";
$lang["VIEWLOG"] = "הראה לוג";
$lang["PATH"] = "נתיב";
$lang["AUTHOR"] = "כותב";
$lang["AGE"] = "גיל";
$lang["LOG"] = "לוג";
$lang["CURDIR"] = "תיקייה נוכחית";
$lang["TARBALL"] = "אוסך מכווץ";
$lang["PREV"] = "הקודם";
$lang["NEXT"] = "הבא";
$lang["SHOWALL"] = "הראה הכל";
$lang["BADCMD"] = "שגיאה בהרצת הפקודה";
$lang["UNKNOWNREVISION"] = "גרסה לא נמצאה";
$lang["POWERED"] = "פועל על ידי <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "Subversion&nbsp;גנזכי";
$lang["SERVER"] = "Subversion&nbsp;שרת";
$lang["FILTER"] = "אפשרויות חיפוש";
$lang["STARTLOG"] = "מגרסה";
$lang["ENDLOG"] = "עד גרסה";
$lang["MAXLOG"] = "מקסימום גרסאות";
$lang["SEARCHLOG"] = "חפש את";
$lang["CLEARLOG"] = "נקה חיפוש נוכחי";
$lang["MORERESULTS"] = "מצא עוד נתונים...";
$lang["NORESULTS"] = "אין לוגים התואמים את החיפוש שלך";
$lang["NOMORERESULTS"] = "אין יותר לוגים התואמים את החיפוש שלך";
$lang['NOPREVREV'] = 'אין גרסה קודמת';
$lang["RSSFEEDTITLE"] = "WebSVN RSS feed";
$lang["FILESMODIFIED"] = "קבצים ששונו";
$lang["RSSFEED"] = "RSS feed";
$lang["LINENO"] = "מס שורה";
$lang["BLAMEFOR"] = "האשמה בגרסה";
$lang["DAYLETTER"] = "יום";
$lang["HOURLETTER"] = "שעה";
$lang["MINUTELETTER"] = "דקה";
$lang["SECONDLETTER"] = "שניה";
$lang["GO"] = "בצע";
$lang["PATHCOMPARISON"] = "השוואת נתיבים";
$lang["COMPAREPATHS"] = "השווה נתיבים";
$lang["COMPAREREVS"] = "השווה גרסאות";
$lang["PROPCHANGES"] = "שינוי מאפיינים";
$lang["CONVFROM"] = "ההשואה הנוכחית מראה את השינויים הנחוצים להמרת נתיב";
$lang["TO"] = "מ";
$lang["REVCOMP"] = "השוואה הפוכה";
$lang["COMPPATH"] = "השוואת נתיב:";
$lang["WITHPATH"] = "עם נתיב:";
$lang["FILEDELETED"] = "קובץ נמחק";
$lang["FILEADDED"] = "קובץ חדש";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";
// $lang["NOBR"] = "<nobr>";
// $lang["ENDNOBR"] = "</nobr>";

View File

@ -1,126 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// english.php
//
// English language strings
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Magyar";
// This is the RFC 2616 (§3.10) language tag that corresponds to this translation
// see also RFC 4646
$lang['LANGUAGETAG'] = 'hu';
$lang["LOG"] = "Napló";
$lang["DIFF"] = "Diff";
$lang["NOREP"] = "Nincs megadva repository";
$lang["NOPATH"] = "Az útvonal nem található";
$lang["NOACCESS"] = "Nincs megfelelő jogosultságod ahhoz, hogy olvasd ezt a könyvtárat";
$lang["RESTRICTED"] = "Korlátozott hozzáférés";
$lang["SUPPLYREP"] = "Kérlek, hogy állíts be legalább egy repository útvonalat az include/config.php file-ban a \$config->parentPath vagy \$config->addRepository használatával.<p>További részletekért nézd meg a telepítési kézikönyvet";
$lang["DIFFREVS"] = "Revíziók közti diff-ek";
$lang["AND"] = "és";
$lang["REV"] = "Rev";
$lang["LINE"] = "Sor";
$lang["SHOWENTIREFILE"] = "A teljes file mutatása";
$lang["SHOWCOMPACT"] = "Csak a különbségeket tartalmazó területeket mutassuk";
$lang["FILEDETAIL"] = "Részletek";
$lang["DIFFPREV"] = "Összehasonlítás az előzővel";
$lang["BLAME"] = "Felelős";
$lang["REVINFO"] = "Revízió információ";
$lang["GOYOUNGEST"] = "Ugrás a legfrissebb revízióhoz";
$lang["LASTMOD"] = "Utolsó módosítás";
$lang["LOGMSG"] = "Napló üzenet";
$lang["CHANGES"] = "Változások";
$lang["SHOWCHANGED"] = "Módosult file-ok mutatása";
$lang["HIDECHANGED"] = "Módosult file-ok elrejtése";
$lang["NEWFILES"] = "Új file-ok";
$lang["CHANGEDFILES"] = "Módosult file-ok";
$lang["DELETEDFILES"] = "Törölt file-ok";
$lang["VIEWLOG"] = "Napló&nbsp;megtekintése";
$lang["PATH"] = "Útvonal";
$lang["AUTHOR"] = "Szerző";
$lang["AGE"] = "Kor";
$lang["LOG"] = "Napló";
$lang["CURDIR"] = "Aktuális könyvtár";
$lang["TARBALL"] = "Tarball";
$lang["PREV"] = "Előző";
$lang["NEXT"] = "Következő";
$lang["SHOWALL"] = "Az összes mutatása";
$lang["BADCMD"] = "Hiba történt ennek a parancsnak a futtatásakor";
$lang["UNKNOWNREVISION"] = "A revízió nem található";
$lang["POWERED"] = "Powered by <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "Subversion&nbsp;repository-k";
$lang["SERVER"] = "Subversion&nbsp;szerver";
$lang["FILTER"] = "Szűrő feltételek";
$lang["STARTLOG"] = "Revíziótól";
$lang["ENDLOG"] = "Revízióig";
$lang["MAXLOG"] = "Maximum revíziók száma";
$lang["SEARCHLOG"] = "Keresés";
$lang["CLEARLOG"] = "Aktuális szűrő törlése";
$lang["MORERESULTS"] = "További találatok keresése...";
$lang["NORESULTS"] = "Nincsenek a feltételnek megfelelő napló üzenetek";
$lang["NOMORERESULTS"] = "Nincsen több olyan napló üzenet, ami megfelelne a feltételnek";
$lang['NOPREVREV'] = 'Nincs előző revízió';
$lang["RSSFEEDTITLE"] = "WebSVN RSS feed";
$lang["FILESMODIFIED"] = "file(-ok) módosultak";
$lang["RSSFEED"] = "RSS feed";
$lang["LINENO"] = "Sor száma.";
$lang["BLAMEFOR"] = "A revízió felelőse";
$lang["DAYLETTER"] = "n";
$lang["HOURLETTER"] = "ó";
$lang["MINUTELETTER"] = "p";
$lang["SECONDLETTER"] = "m";
$lang["GO"] = "Mehet";
$lang["PATHCOMPARISON"] = "Útvonalak összehasonlítása";
$lang["COMPAREPATHS"] = "Útvonalak hasonlítása";
$lang["COMPAREREVS"] = "Revíziók összehasonlítása";
$lang["PROPCHANGES"] = "Tulajdonos változások :";
$lang["CONVFROM"] = "Ez az összehasonlítás azokat a változtatások mutatja, amik az útvonal konvertálásához szükségesek ";
$lang["TO"] = "ERRE";
$lang["REVCOMP"] = "Fordított összehasonlítás";
$lang["COMPPATH"] = "Útvonal hasonlítása:";
$lang["WITHPATH"] = "ezzel az útvonallal:";
$lang["FILEDELETED"] = "A file törölve";
$lang["FILEADDED"] = "Új file";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";
// $lang["NOBR"] = "<nobr>";
// $lang["ENDNOBR"] = "</nobr>";

View File

@ -1,130 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// indonesian.php
//
// Indonesian language strings
// by Zaenal Muttaqin <public@lokamaya.com>
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Indonesian";
// This is the RFC 2616 (§3.10) language tag that corresponds to this translation
// see also RFC 4646
$lang['LANGUAGETAG'] = 'id';
$lang["LOG"] = "Log";
$lang["DIFF"] = "Perbedaan";
$lang["NOREP"] = "Tidak ada repositori yang disediakan";
$lang["NOPATH"] = "Path tidak ditemukan";
$lang["NOACCESS"] = "Anda tidak memiliki hak akses untuk masuk ke direktori ini";
$lang["RESTRICTED"] = "Akses terbatas";
$lang["SUPPLYREP"] = "Harap memberikan path ke repositori di file include/config.php, baik dengan \$config->parentPath atau pun \$config->addRepository<p>Lihat petunjuk instalasi untuk mendapatkan informasi yang lebih detail.";
$lang["DIFFREVS"] = "Perbedaan antar revisi";
$lang["AND"] = "dan";
$lang["REV"] = "Rev";
$lang["LINE"] = "Baris";
$lang["SHOWENTIREFILE"] = "Tampilkan Semua";
$lang["SHOWCOMPACT"] = "Tampilkan bagian yang berbeda saja";
$lang["FILEDETAIL"] = "Detail";
$lang["DIFFPREV"] = "Bandingkan";
$lang["BLAME"] = "Bubuhi";
$lang["REVINFO"] = "Informasi Revisi";
$lang["GOYOUNGEST"] = "Tampilkan revisi terbaru";
$lang["LASTMOD"] = "Perubahan terakhir";
$lang["LOGMSG"] = "Pesan log";
$lang["CHANGES"] = "Daftar yang berubah";
$lang["SHOWCHANGED"] = "Tampilkan perubahan file";
$lang["HIDECHANGED"] = "Sembunyikan perubahan file";
$lang["NEWFILES"] = "Daftar file baru";
$lang["CHANGEDFILES"] = "Daftar file yang berubah";
$lang["DELETEDFILES"] = "Daftar file yang dihapus";
$lang["VIEWLOG"] = "Lihat&nbsp;Log";
$lang["PATH"] = "Path";
$lang["AUTHOR"] = "Pemrakarsa";
$lang["AGE"] = "Usia";
$lang["LOG"] = "Log";
$lang["CURDIR"] = "Direktori saat ini";
$lang["TARBALL"] = "Tarball";
$lang["PREV"] = "Kembali";
$lang["NEXT"] = "Lanjut";
$lang["SHOWALL"] = "Tampilkan Semua";
$lang["BADCMD"] = "Kesalahan menjalankan instruksi ini";
$lang["UNKNOWNREVISION"] = "Revisi tidak ditemukan";
$lang["POWERED"] = "Didukung oleh <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "Repositori";
$lang["SERVER"] = "Server";
$lang["WIKI"] = "Wiki";
$lang["SOURCE"] = "sumber";
$lang["FILES"] = "File";
$lang["HOME"] = "Home";
$lang["FILTER"] = "Pilihan Filter";
$lang["STARTLOG"] = "Dari rev";
$lang["ENDLOG"] = "Ke rev";
$lang["MAXLOG"] = "Maks rev";
$lang["SEARCHLOG"] = "Pencarian untuk";
$lang["CLEARLOG"] = "Hapus filter yang ada";
$lang["MORERESULTS"] = "Cari lebih lanjut...";
$lang["NORESULTS"] = "Tidak ada log yang sesuai dengan permintaan anda";
$lang["NOMORERESULTS"] = "Tidak ada lagi log yang bisa ditampilkan";
$lang['NOPREVREV'] = 'Tidak ada lagi revisi yang lebih lama';
$lang["RSSFEEDTITLE"] = "Feed RSS WebSVN";
$lang["FILESMODIFIED"] = "file yang berubah";
$lang["RSSFEED"] = "Feed RSS";
$lang["LINENO"] = "Baris No.";
$lang["BLAMEFOR"] = "Bubuhi (blame) informasi for rev";
$lang["DAYLETTER"] = "d";
$lang["HOURLETTER"] = "h";
$lang["MINUTELETTER"] = "m";
$lang["SECONDLETTER"] = "s";
$lang["GO"] = "Pilih";
$lang["PATHCOMPARISON"] = "Perbandingan Path";
$lang["COMPAREPATHS"] = "Bandingkan Paths";
$lang["COMPAREREVS"] = "Bandingkan Revisi";
$lang["PROPCHANGES"] = "Perubahan properti :";
$lang["CONVFROM"] = "Perbandingan ini menunjukkan perubahan yang diperlukan untuk mengkonversi path ";
$lang["TO"] = "Ke";
$lang["REVCOMP"] = "Balikan Perbandingan";
$lang["COMPPATH"] = "Bandingkan Path:";
$lang["WITHPATH"] = "Dengan Path:";
$lang["FILEDELETED"] = "File dihapus";
$lang["FILEADDED"] = "File baru";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";
// $lang["NOBR"] = "<nobr>";
// $lang["ENDNOBR"] = "</nobr>";

View File

@ -1,121 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// italian.inc
//
// Italian language strings
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Italian";
$lang["LOG"] = "Log";
$lang["DIFF"] = "Diff";
$lang["NOREP"] = "Nessun repository specificato";
$lang["NOPATH"] = "Percorso non trovato";
$lang["NOACCESS"] = "Non hai i permessi necessari per leggere questa directory";
$lang["RESTRICTED"] = "Accesso limitato";
$lang["SUPPLYREP"] = "Configurare un percorso ai repository in include/config.inc usando \$config->parentPath o \$config->addRepository<p>Per maggiori dettagli consultare la guida d'installazione";
$lang["DIFFREVS"] = "Differenze tra le revisioni";
$lang["AND"] = "e";
$lang["REV"] = "Revisione";
$lang["LINE"] = "Linea";
$lang["SHOWENTIREFILE"] = "Mostra tutto il file";
$lang["SHOWCOMPACT"] = "Mostra solo aree con differenze";
$lang["DIFFPREV"] = "Confronta con la precedente";
$lang["BLAME"] = "Responsabilità";
$lang["REVINFO"] = "Informazioni sulla revisione";
$lang["GOYOUNGEST"] = "Vai alla revisione più recente";
$lang["LASTMOD"] = "Ultima modifica";
$lang["LOGMSG"] = "Messaggio di log";
$lang["CHANGES"] = "Cambiamenti";
$lang["SHOWCHANGED"] = "Mostra file modificati";
$lang["HIDECHANGED"] = "Nascondi file modificati";
$lang["NEWFILES"] = "Nuovi File";
$lang["CHANGEDFILES"] = "File modificati";
$lang["DELETEDFILES"] = "File cancellati";
$lang["VIEWLOG"] = "Visualizza&nbsp;Log";
$lang["PATH"] = "Percorso";
$lang["AUTHOR"] = "Autore";
$lang["AGE"] = "Anzianità";
$lang["LOG"] = "Log";
$lang["CURDIR"] = "Directory corrente";
$lang["TARBALL"] = "Archivio";
$lang["PREV"] = "Precedente";
$lang["NEXT"] = "Successivo";
$lang["SHOWALL"] = "Mostra tutti";
$lang["BADCMD"] = "Errore durante l'esecuzione del comando";
$lang["UNKNOWNREVISION"] = "Revisione non trovata";
$lang["POWERED"] = "Powered by <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "Repository&nbsp;Subversion";
$lang["SERVER"] = "Subversion&nbsp;Server";
$lang["FILTER"] = "Opzioni Filtro";
$lang["STARTLOG"] = "Dalla revisione";
$lang["ENDLOG"] = "Alla revisione";
$lang["MAXLOG"] = "Massime revisioni";
$lang["SEARCHLOG"] = "Cerca";
$lang["CLEARLOG"] = "Pulisci il fitro corrente";
$lang["MORERESULTS"] = "Trova più risultati...";
$lang["NORESULTS"] = "Non ci sono log che soddifano la tua ricerca";
$lang["NOMORERESULTS"] = "Non ci sono più log che soddifano la tua ricerca";
$lang["RSSFEEDTITLE"] = "WebSVN feed RSS";
$lang["FILESMODIFIED"] = "file modificati";
$lang["RSSFEED"] = "feed RSS";
$lang["LINENO"] = "Linea Num.";
$lang["BLAMEFOR"] = "Informazioni sui responsabili della revisione";
$lang["DAYLETTER"] = "d";
$lang["HOURLETTER"] = "h";
$lang["MINUTELETTER"] = "m";
$lang["SECONDLETTER"] = "s";
$lang["GO"] = "Vai";
$lang["PATHCOMPARISON"] = "Confronto percorso";
$lang["COMPAREPATHS"] = "Confronta percorsi";
$lang["COMPAREREVS"] = "Confronta Revisioni";
$lang["PROPCHANGES"] = "Modifica delle proprietà :";
$lang["CONVFROM"] = "Questo confronto mostra i cambiamenti necessari per convertire il percorso ";
$lang["TO"] = "A";
$lang["REVCOMP"] = "Confronto inverso";
$lang["COMPPATH"] = "Confronta percorso:";
$lang["WITHPATH"] = "Con il percorso:";
$lang["FILEDELETED"] = "File cancellato";
$lang["FILEADDED"] = "Nuovo file";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";
// $lang["NOBR"] = "<nobr>";
// $lang["ENDNOBR"] = "</nobr>";

View File

@ -1,126 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// japanese.php
// Translatior: BEPPU Masamichi
//
// Japanese(UTF-8) language strings
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Japanese";
$lang['LANGUAGETAG'] = 'ja';
$lang["LOG"] = "ログ";
$lang["DIFF"] = "差分";
$lang["NOREP"] = "リポジトリが指定されていません";
$lang["NOPATH"] = "パスが見付かりません";
$lang["RESTRICTED"] = "アクセスが制限されています";
$lang["SUPPLYREP"] = "ファイル include/config.php 内に \$config->parentPath もしくは \$config->addRepository を使用してリポジトリパスを設定してください。<p>詳しくはインストールガイドを参照してください。";
$lang["DIFFREVS"] = "リビジョン間の差分";
$lang["AND"] = "";
$lang["REV"] = "リビジョン";
$lang["LINE"] = "";
$lang["SHOWENTIREFILE"] = "全て表示";
$lang["SHOWCOMPACT"] = "異なる行の周辺だけ表示";
$lang["DIFFPREV"] = "前のリビジョンとの差分";
$lang["BLAME"] = "詳細表示";
$lang["REVINFO"] = "リビジョン情報";
$lang["GOYOUNGEST"] = "最新のリビジョンへ";
$lang["LASTMOD"] = "最終更新日時";
$lang["LOGMSG"] = "ログメッセージ";
$lang["CHANGES"] = "変更";
$lang["SHOWCHANGED"] = "変更されたファイルの一覧を表示する";
$lang["HIDECHANGED"] = "変更されたファイルの一覧を表示しない";
$lang["NEWFILES"] = "追加ファイル";
$lang["CHANGEDFILES"] = "修正ファイル";
$lang["DELETEDFILES"] = "削除ファイル";
$lang["VIEWLOG"] = "ログを見る";
$lang["PATH"] = "パス";
$lang["AUTHOR"] = "修正者";
$lang["AGE"] = "無修正時間";
$lang["LOG"] = "ログ";
$lang["CURDIR"] = "カレントディレクトリ";
$lang["TARBALL"] = "Tarball";
$lang["PREV"] = "";
$lang["NEXT"] = "";
$lang["SHOWALL"] = "全て表示";
$lang["BADCMD"] = "コマンド実行中のエラー";
$lang["UNKNOWNREVISION"] = "指定のリビジョンがありません";
$lang["POWERED"] = "Powered by <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "Subversion&nbsp;リポジトリ一覧";
$lang["SERVER"] = "Subversion&nbsp;サーバ";
$lang["FILTER"] = "フィルタオプション";
$lang["STARTLOG"] = "開始リビジョン";
$lang["ENDLOG"] = "終了リビジョン";
$lang["MAXLOG"] = "最大リビジョン数";
$lang["SEARCHLOG"] = "ログを検索";
$lang["CLEARLOG"] = "検索条件をクリアする";
$lang["MORERESULTS"] = "検索条件を絞り込む";
$lang["NORESULTS"] = "検索条件にマッチするものはありませんでした";
$lang["NOMORERESULTS"] = "これ以上検索条件にマッチするものはありません";
$lang['NOPREVREV'] = "前のリビジョンはありません";
$lang["RSSFEEDTITLE"] = "WebSVN RSS feed";
$lang["FILESMODIFIED"] = "ファイルが修正されました";
$lang["RSSFEED"] = "RSS feed";
$lang["LINENO"] = "行番号";
$lang["BLAMEFOR"] = "詳細表示 対象リビジョン";
$lang["YEARS"] = "年間";
$lang["MONTHS"] = "ヵ月間";
$lang["WEEKS"] = "週間";
$lang["DAYS"] = "日間";
$lang["HOURS"] = "時間";
$lang["MINUTES"] = "";
$lang["DAYLETTER"] = "日間";
$lang["HOURLETTER"] = "時間";
$lang["MINUTELETTER"] = "";
$lang["SECONDLETTER"] = "";
$lang["GO"] = "GO";
$lang["PATHCOMPARISON"] = "パス比較";
$lang["COMPAREPATHS"] = "パス比較";
$lang["COMPAREREVS"] = "リビジョン比較";
$lang["PROPCHANGES"] = "プロパティ変更:";
$lang["CONVFROM"] = "この比較は次の2つのパス配下すべてのファイルの比較をします。比較対象パス";
$lang["TO"] = "";
$lang["REVCOMP"] = "逆比較";
$lang["COMPPATH"] = "比較元パス:";
$lang["WITHPATH"] = "比較先パス:";
$lang["FILEDELETED"] = "ファイル削除";
$lang["FILEADDED"] = "新規ファイル";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "<nobr>";
$lang["ENDNOBR"] = "</nobr>";

View File

@ -1,120 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// korean-utf8.php
// Translator: Lee Jae-Hong
// Korean(utf8) language strings
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Korean";
$lang['LANGUAGETAG'] = 'ko';
$lang["LOG"] = "로그";
$lang["DIFF"] = "비교";
$lang["NOREP"] = "저장소가 지정되어 있지 않습니다.";
$lang["NOPATH"] = "경로를 찾을 수 없습니다.";
$lang["SUPPLYREP"] = "include/config.php 파일의 \$config->parentPath 또는 \$config->addRepository에 저장소의 경로를 지정해 주십시오.<p>설치 설명서를 참조해 주십시오.";
$lang["DIFFREVS"] = "리비전간 비교";
$lang["AND"] = "와(과)";
$lang["REV"] = "리비전";
$lang["LINE"] = "";
$lang["SHOWENTIREFILE"] = "모두 보기";
$lang["SHOWCOMPACT"] = "바뀐 부분만 보기";
$lang["LISTING"] = "디렉토리열람";
$lang["FILEDETAIL"] = "자세히 보기";
$lang["DIFFPREV"] = "이전 리비전과 비교";
$lang["BLAME"] = "수정한 사람 보기";
$lang["REVINFO"] = "리비전 정보";
$lang["GOYOUNGEST"] = "최신 리비전으로 가기";
$lang["LASTMOD"] = "마지막 변경";
$lang["LOGMSG"] = "로그 메시지";
$lang["CHANGES"] = "변경";
$lang["SHOWCHANGED"] = "변경된 파일 보기";
$lang["HIDECHANGED"] = "변경된 파일 숨기기";
$lang["NEWFILES"] = "새 파일";
$lang["CHANGEDFILES"] = "수정된 파일";
$lang["DELETEDFILES"] = "삭제된 파일";
$lang["VIEWLOG"] = "로그보기";
$lang["PATH"] = "경로";
$lang["AUTHOR"] = "작성자";
$lang["AGE"] = "기간";
$lang["LOG"] = "로그";
$lang["CURDIR"] = "현재 디렉토리";
$lang["TARBALL"] = "Tarball";
$lang["PREV"] = "이전";
$lang["NEXT"] = "다음";
$lang["SHOWALL"] = "모두 보기";
$lang["BADCMD"] = "명령 실행 에러";
$lang["POWERED"] = "Powered by <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "프로젝트";
$lang["SERVER"] = "서버";
$lang["WIKI"] = "위키";
$lang["SOURCE"] = "소스";
$lang["FILES"] = "파일";
$lang["HOME"] = "";
$lang["SEARCHLOG"] = "로그 검색";
$lang["CLEARLOG"] = "검색 조건 삭제";
$lang["MORERESULTS"] = "나머지 검색 결과...";
$lang["NORESULTS"] = "검색 조건에 맞는 결과가 없습니다.";
$lang["NOMORERESULTS"] = "더 이상 검색 조건에 맞는 결과가 없습니다.";
$lang["RSSFEEDTITLE"] = "WebSVN RSS feed";
$lang["FILESMODIFIED"] = "파일 수정됨";
$lang["RSSFEED"] = "RSS feed";
$lang["LINENO"] = "행번호";
$lang["BLAMEFOR"] = "수정한 사람 보기, 리비전 ";
$lang["YEARS"] = "";
$lang["MONTHS"] = "개월";
$lang["WEEKS"] = "주일";
$lang["DAYS"] = "";
$lang["HOURS"] = "시간";
$lang["MINUTES"] = "";
$lang["GO"] = "Go";
$lang["PATHCOMPARISON"] = "경로 비교";
$lang["COMPAREPATHS"] = "경로 비교하기";
$lang["COMPAREREVS"] = "리비전 비교하기";
$lang["PROPCHANGES"] = "특성 변경 :";
$lang["CONVFROM"] = "이 비교는 바뀐 경로를 보여 줍니다.";
$lang["TO"] = "에서";
$lang["REVCOMP"] = "역 비교";
$lang["COMPPATH"] = "비교 경로:";
$lang["WITHPATH"] = "경로:";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";
// $lang["NOBR"] = "<nobr>";
// $lang["ENDNOBR"] = "</nobr>";

View File

@ -1,54 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004-2006 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// languages.php
//
// declares all available languages
$languages = array(
'ca' => array('catalan', 'Catalan', 'Catal&agrave;-Valenci&agrave;'),
'cs' => array('czech', 'Cesky', '&#268;esky'),
'da' => array('danish', 'Dansk', 'Dansk'),
'nl' => array('dutch', 'Dutch', 'Dutch'),
'en' => array('english', 'English', 'English'),
'fi' => array('finnish', 'Finnish', 'Finnish'),
'fr' => array('french', 'Francais', 'Fran&ccedil;ais'),
'de' => array('german', 'German', 'Deutsch'),
'he-IL' => array('hebrew', 'Hebrew', '&#1506;&#1489;&#1512;&#1497;&#1514;'),
'hu' => array('hungarian', 'Hungarian', 'Magyar'),
'id' => array('indonesian', 'Indonesian', 'Bahasa Indonesia'),
'it' => array('italian', 'Italian', 'Italiano'),
'ja' => array('japanese', 'Japanese', '&#26085;&#26412;&#35486;'),
'ko' => array('korean', 'Korean', '&#54620;&#44397;&#50612;'),
'no' => array('norwegian', 'Norwegian', 'Norsk'),
'pl' => array('polish', 'Polish', 'Polski'),
'pt' => array('portuguese', 'Portuguese', 'Portugu&ecirc;s'),
'pt-BR' => array('portuguese-br', 'Brazilian Portuguese', 'Portugu&ecirc;s'),
'ru' => array('russian', 'Russian', '&#1056;&#1091;&#1089;&#1089;&#1082;&#1080;&#1081;'),
'zh-CN' => array('schinese', 'Simplified Chinese', '&#20013;&#25991;'),
'sk' => array('slovak', 'Slovak', 'Sloven&#269;ina'),
'sl' => array('slovenian', 'Slovenian', 'Sloven&#269;ina'),
'es' => array('spanish', 'Spanish', 'Espa&ntilde;ol'),
'sv' => array('swedish', 'Swedish', 'Svenska'),
'zh-TW' => array('tchinese', 'Traditional Chinese', '&#20013;&#25991;'),
'tr' => array('turkish', 'Turkish', 'T&uuml;rk&ccedil;e'),
'uz' => array('uzbek', 'Uzbek', 'O<>zbekcha'),
);

View File

@ -1,123 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// norwegian.php
//
// Norwegian language strings
// by Sigve Indregard <sigve.indregard@gmail.com>.
// Translation notes:
// - I've tried to keep with the translations made in the norwegian version
// of "Version control with Subversion"
// - I've kept the abbreviation "diff"
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Norwegian";
$lang['LANGUAGETAG'] = 'no';
$lang["LOG"] = "Logg";
$lang["DIFF"] = "Diff";
$lang["NOREP"] = "Depot ble ikke angitt";
$lang["NOPATH"] = "Stien ble ikke funnet";
$lang["SUPPLYREP"] = "Vennligst sett opp en depotsti i include/config.php ved hjelp av \$config->parentPath eller \$config->addRepository.<p>Se installasjonsguiden for detaljer.";
$lang["DIFFREVS"] = "Diff mellom revisjoner";
$lang["AND"] = "og";
$lang["REV"] = "Rev";
$lang["LINE"] = "Linje";
$lang["SHOWENTIREFILE"] = "Vis hele filen";
$lang["SHOWCOMPACT"] = "Vis kun omr&aring;der med forskjeller";
$lang["DIFFPREV"] = "Sammenlign med forrige";
$lang["BLAME"] = "Ansvarlig";
$lang["REVINFO"] = "Revisjonsinformasjon";
$lang["GOYOUNGEST"] = "G&aring; til nyeste revisjon";
$lang["LASTMOD"] = "Siste endring";
$lang["LOGMSG"] = "Loggmelding";
$lang["CHANGES"] = "Endringer";
$lang["SHOWCHANGED"] = "Vis endrede filer";
$lang["HIDECHANGED"] = "Gjem endrede filer";
$lang["NEWFILES"] = "Nye filer";
$lang["CHANGEDFILES"] = "Endrede filer";
$lang["DELETEDFILES"] = "Slettede filer";
$lang["VIEWLOG"] = "Vis&nbsp;logg";
$lang["PATH"] = "Sti";
$lang["AUTHOR"] = "Forfatter";
$lang["AGE"] = "Alder";
$lang["LOG"] = "Logg";
$lang["CURDIR"] = "Gjeldende katalog";
$lang["TARBALL"] = "Tar-ball";
$lang["PREV"] = "Forrige";
$lang["NEXT"] = "Neste";
$lang["SHOWALL"] = "Vis alle";
$lang["BADCMD"] = "En feil oppstod under utf&oslash;relse av denne kommandoen";
$lang["POWERED"] = "Kj&oslash;rer p&aring; <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "Subversionprosjekter";
$lang["SERVER"] = "Subversiontjener";
$lang["SEARCHLOG"] = "S&oslash;k i loggen etter";
$lang["CLEARLOG"] = "T&oslash;m gjeldende s&oslash;k";
$lang["MORERESULTS"] = "Finn flere treff...";
$lang["NORESULTS"] = "Ingen loggmeldinger passer til ditt s&oslash;k";
$lang["NOMORERESULTS"] = "Ingen flere loggmeldinger passer til ditt s&oslash;k";
$lang['NOPREVREV'] = 'Ingen tidligere revisjon';
$lang["RSSFEEDTITLE"] = "WebSVN RSS-str&oslash;m";
$lang["FILESMODIFIED"] = "fil(er) endret";
$lang["RSSFEED"] = "RSS-str&oslash;m";
$lang["LINENO"] = "Linjenr.";
$lang["BLAMEFOR"] = "Ansvarliginformasjon for rev.";
$lang["YEARS"] = "&aring;r";
$lang["MONTHS"] = "m&aring;neder";
$lang["WEEKS"] = "uker";
$lang["DAYS"] = "dager";
$lang["HOURS"] = "timer";
$lang["MINUTES"] = "minutter";
$lang["GO"] = "G&aring;";
$lang["PATHCOMPARISON"] = "Stisammenligning";
$lang["COMPAREPATHS"] = "Sammenlign stier";
$lang["COMPAREREVS"] = "Sammenlign revisjoner";
$lang["PROPCHANGES"] = "Egenskapsendringer :";
$lang["CONVFROM"] = "Denne sammenligningen viser hva som m&aring; til for &aring; konvertere stien ";
$lang["TO"] = "med";
$lang["REVCOMP"] = "Baklengs sammenligning";
$lang["COMPPATH"] = "Sammenlign sti:";
$lang["WITHPATH"] = "Med sti:";
$lang["FILEDELETED"] = "Fil slettet";
$lang["FILEADDED"] = "Ny fil";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";
// $lang["NOBR"] = "<nobr>";
// $lang["ENDNOBR"] = "</nobr>";

View File

@ -1,121 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// polish.php
//
// Polish language strings in UTF-8 encoding
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Polish";
$lang['LANGUAGETAG'] = 'pl';
$lang["LOG"] = "Dziennik zmian";
$lang["DIFF"] = "Różnice";
$lang["NOREP"] = "Nie podano żadnego repozytorium";
$lang["NOPATH"] = "Nie odnaleziono ścieżki";
$lang["SUPPLYREP"] = "Proszę ustawić ścieżkę do repozytoriów w
include/config.php za pomocą \$config->parentPath lub
\$config->addRepository<p>Aby uzyskać więcej szczegółów zapoznaj się z
podręcznikiem instalacyjnym";
$lang["DIFFREVS"] = "Różnice pomiędzy wersjami";
$lang["AND"] = "i";
$lang["REV"] = "Wersja";
$lang["LINE"] = "Linia";
$lang["SHOWENTIREFILE"] = "Pokaż cały plik";
$lang["SHOWCOMPACT"] = "Pokaż tylko fragmety w których zaszły zmiany";
$lang["DIFFPREV"] = "Porównaj z poprzednią wersją";
$lang["BLAME"] = "Wkład pracy";
$lang["REVINFO"] = "Informacje o wersji";
$lang["GOYOUNGEST"] = "Przejdź do najnowszej wersji";
$lang["LASTMOD"] = "Ostatnia zmiana";
$lang["LOGMSG"] = "Wpis z dziennika zmian";
$lang["CHANGES"] = "Zmiany";
$lang["SHOWCHANGED"] = "Pokaż zmienione pliki";
$lang["HIDECHANGED"] = "Ukryj zmienione pliki";
$lang["NEWFILES"] = "Nowe pliki";
$lang["CHANGEDFILES"] = "Zmienione pliki";
$lang["DELETEDFILES"] = "Usunięte pliki";
$lang["VIEWLOG"] = "Pokaż&nbsp;dziennik&nbsp;zmian";
$lang["PATH"] = "Ścieżka";
$lang["AUTHOR"] = "Autor";
$lang["AGE"] = "Wiek";
$lang["LOG"] = "Dziennik&nbsp;zmian";
$lang["CURDIR"] = "Aktualny katalog";
$lang["TARBALL"] = "Archiwum tar";
$lang["PREV"] = "Poprzednia strona";
$lang["NEXT"] = "Następna strona";
$lang["SHOWALL"] = "Pokaż wszyskie";
$lang["BADCMD"] = "Błąd podczas wykonywania polecenia";
$lang["POWERED"] = "Obsługiwane przez <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "Projekty&nbsp;Subversion";
$lang["SERVER"] = "Serwer Subversion";
$lang["SEARCHLOG"] = "Przeszukaj dziennik zmian";
$lang["CLEARLOG"] = "Usuń rezulaty wyszukiwania";
$lang["MORERESULTS"] = "Znajdź więcej dopasowań...";
$lang["NORESULTS"] = "Żaden wpis w dzinniku zmian nie pasuje do zapytania";
$lang["NOMORERESULTS"] = "Nie ma już więcej wpisów pasujących do
zadanych kryterów";
$lang["RSSFEEDTITLE"] = "WebSVN RSS feed";
$lang["FILESMODIFIED"] = "zmienione pliki";
$lang["RSSFEED"] = "RSS feed";
$lang["LINENO"] = "Linia nr";
$lang["BLAMEFOR"] = "Wkład pracy dla wersji";
$lang["YEARS"] = "lat";
$lang["MONTHS"] = "miesięcy";
$lang["WEEKS"] = "tygodni";
$lang["DAYS"] = "dni";
$lang["HOURS"] = "godzin";
$lang["MINUTES"] = "minut";
$lang["GO"] = "Przejdź";
$lang["PATHCOMPARISON"] = "Porównywanie katalogów";
$lang["COMPAREPATHS"] = "Porównaj katalogi";
$lang["COMPAREREVS"] = "Porównaj wersje";
$lang["PROPCHANGES"] = "Zmiany właściwości :";
$lang["CONVFROM"] = "Poniższe zestawienie pokazuje zmiany konieczne by
zaktualizować katalog";
$lang["TO"] = "na";
$lang["REVCOMP"] = "Odwróć porównanie";
$lang["COMPPATH"] = "Porównaj katalog:";
$lang["WITHPATH"] = "Z katalogiem:";
$lang["FILEDELETED"] = "Plik usunięty";
$lang["FILEADDED"] = "Nowy plik";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";
// $lang["NOBR"] = "<nobr>";
// $lang["ENDNOBR"] = "</nobr>";

View File

@ -1,111 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// portuguese-br.php
//
// Brazilian Portuguese language strings
// Translated by Flavio Fonseca
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Brazilian Portuguese";
$lang["LOG"] = "Log";
$lang["DIFF"] = "Diff";
$lang["NOREP"] = "N&atilde;o foi indicado um reposit&oacute;rio";
$lang["NOPATH"] = "Path Inv&aacute;lido";
$lang["NOACCESS"] = "Voc&ecirc; n&atilde;o tem as permiss&otilde;es necess&aacute;rias para ler esse diret&oacute;rio";
$lang["RESTRICTED"] = "Acesso restrito";
$lang["DIFFREVS"] = "Diferen&ccedil;as entre revis&otilde;es";
$lang["AND"] = "e";
$lang["REV"] = "Revis&atilde;o";
$lang["LINE"] = "Linha";
$lang["SHOWENTIREFILE"] = "Mostrar todo o arquivo";
$lang["SHOWCOMPACT"] = "Mostrar apenas &aacute;reas com diferen&ccedil;as";
$lang["DIFFPREV"] = "Diferen&ccedil;as com a anterior";
$lang["BLAME"] = "Blame";
$lang["REVINFO"] = "Notas desta revis&atilde;o";
$lang["GOYOUNGEST"] = "Revis&atilde;o mais recente";
$lang["LASTMOD"] = "&Uacute;ltima altera&ccedil;&atilde;o";
$lang["LOGMSG"] = "Mensagem de Log";
$lang["CHANGES"] = "Altera&ccedil;&otilde;es";
$lang["SHOWCHANGED"] = "Mostrar arquivos alterados";
$lang["HIDECHANGED"] = "Esconder arquivos alterados";
$lang["NEWFILES"] = "Arquivos novos";
$lang["CHANGEDFILES"] = "Arquivos alterados";
$lang["DELETEDFILES"] = "Arquivos apagados";
$lang["VIEWLOG"] = "Ver&nbsp;Log";
$lang["PATH"] = "Path";
$lang["AUTHOR"] = "Autor";
$lang["AGE"] = "Idade";
$lang["LOG"] = "Log";
$lang["CURDIR"] = "Diret&oacute;rio Corrente";
$lang["TARBALL"] = "Tarball";
$lang["PREV"] = "Anterior";
$lang["NEXT"] = "Seguinte";
$lang["SHOWALL"] = "Mostrar todos";
$lang["BADCMD"] = "Erro ao executar este comando";
$lang["UNKNOWNREVISION"] = "Revis&atilde;o n&atilde;o encontrada";
$lang["POWERED"] = "Powered by <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "Projetos&nbsp;Subversion";
$lang["SERVER"] = "Servidor&nbsp;Subversion";
$lang["FILTER"] = "Op&ccedil;&otilde;es de filtro";
$lang["STARTLOG"] = "De rev";
$lang["ENDLOG"] = "At&eacute; rev";
$lang["MAXLOG"] = "Max revs";
$lang["SEARCHLOG"] = "Pesquisar o log por";
$lang["CLEARLOG"] = "Limpar pesquisa";
$lang["MORERESULTS"] = "Encontrar mais...";
$lang["NORESULTS"] = "A pesquisa n&atilde;o devolveu nenhum resultado";
$lang["NOMORERESULTS"] = "N&atilde;o existem mais resultados para a pesquisa";
$lang["RSSFEEDTITLE"] = "WebSVN RSS feed";
$lang["FILESMODIFIED"] = "arquivo(s) modificado(s)";
$lang["RSSFEED"] = "RSS feed";
$lang["LINENO"] = "Linha No.";
$lang["BLAMEFOR"] = "Informa&ccedil;&atilde;o de blame para rev";
$lang["DAYLETTER"] = "d";
$lang["HOURLETTER"] = "h";
$lang["MINUTELETTER"] = "m";
$lang["SECONDLETTER"] = "s";
$lang["GO"] = "Ir";
$lang["PATHCOMPARISON"] = "Compara&ccedil;&atilde;o de caminhos";
$lang["COMPAREPATHS"] = "Comparar caminho";
$lang["COMPAREREVS"] = "Comparar Revis&otilde;es";
$lang["PROPCHANGES"] = "Modifica&ccedil;&otilde;es de propriedades :";
$lang["CONVFROM"] = "Esta compara&ccedil;&atilde;o mostra as modifica&ccedil;&otilde;es necess&aacute;rias para converter o caminho ";
$lang["TO"] = "para";
$lang["REVCOMP"] = "Compara&ccedil;&atilde;o reversa";
$lang["COMPPATH"] = "Comparar caminho:";
$lang["WITHPATH"] = "Com caminho:";
$lang["FILEDELETED"] = "Arquivo apagado";
$lang["FILEADDED"] = "Novo arquivo";

View File

@ -1,86 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// portuguese.php
//
// Portuguese language strings
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Portuguese";
$lang['LANGUAGETAG'] = 'pt';
$lang["LOG"] = "Log";
$lang["DIFF"] = "Diff";
$lang["NOREP"] = "N&atilde;o foi indicado um reposit&oacute;rio";
$lang["NOPATH"] = "Path Inv&aacute;lida";
$lang["DIFFREVS"] = "Diferen&ccedil;as entre revis&otilde;es";
$lang["AND"] = "e";
$lang["REV"] = "Rev";
$lang["LINE"] = "Linha";
$lang["SHOWENTIREFILE"] = "Mostrar todo o ficheiro";
$lang["SHOWCOMPACT"] = "Mostrar apenas &aacute;reas com diferen&ccedil;as";
$lang["DIFFPREV"] = "Diferen&ccedil;as com a anterior";
$lang["REVINFO"] = "Notas desta revis&atilde;o";
$lang["GOYOUNGEST"] = "Revis&atilde;o mais recente";
$lang["LASTMOD"] = "&Uacute;ltima altera&ccedil;&atilde;o";
$lang["LOGMSG"] = "Mensagem de Log";
$lang["CHANGES"] = "Altera&ccedil;&otilde;es";
$lang["SHOWCHANGED"] = "Mostrar ficheiros alterados";
$lang["HIDECHANGED"] = "Esconder ficheiros alterados";
$lang["NEWFILES"] = "Novos ficheiros";
$lang["CHANGEDFILES"] = "Ficheiros alterados";
$lang["DELETEDFILES"] = "Ficheiros apagados";
$lang["VIEWLOG"] = "Ver&nbsp;Log";
$lang["PATH"] = "Path";
$lang["AUTHOR"] = "Autor";
$lang["AGE"] = "Idade";
$lang["LOG"] = "Log";
$lang["CURDIR"] = "Directoria Currente";
$lang['NOPREVREV'] = 'Nenhuma revisão anterior';
$lang["PREV"] = "Anterior";
$lang["NEXT"] = "Seguinte";
$lang["SHOWALL"] = "Mostrar todos";
$lang["BADCMD"] = "Erro ao correr este comando";
$lang["POWERED"] = "Powered by <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "Subversion&nbsp;Projectos";
$lang["SERVER"] = "Subversion&nbsp;Servidor";
$lang["SEARCHLOG"] = "Pesquisar o Search log por";
$lang["CLEARLOG"] = "Limpar pesquisa";
$lang["MORERESULTS"] = "Encontrar mais...";
$lang["NORESULTS"] = "A pesquisa n&atilde;o devolveu nenhum log";
$lang["NOMORERESULTS"] = "N&atilde;o existem mais resultados (logs) para a pesquisa";
$lang["YEARS"] = "anos";
$lang["MONTHS"] = "meses";
$lang["WEEKS"] = "semanas";
$lang["DAYS"] = "dias";
$lang["HOURS"] = "horas";
$lang["MINUTES"] = "minutos";
$lang["GO"] = "Go";

View File

@ -1,123 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// russian.php
//
// Russian language strings
// by Alexey Chumakov <alex@chumakov.ru>
// UTF-8 encoding
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Russian";
$lang['LANGUAGETAG'] = 'ru';
$lang["LOG"] = "Журнал";
$lang["DIFF"] = "Различия";
$lang["NOREP"] = "Не задано хранилище";
$lang["NOPATH"] = "Путь не найден";
$lang["NOACCESS"] = "Для чтения этого каталога у вас нет нужных прав";
$lang["RESTRICTED"] = "Ограниченный доступ";
$lang["SUPPLYREP"] = "Пожалуйста, настройте путь к хранилищу в include/config.php, пользуясь \$config->parentPath или \$config->addRepository<p>Дополнительные сведения приведены в руководстве по установке ";
$lang["DIFFREVS"] = "Различия между редакциями";
$lang["AND"] = "и";
$lang["REV"] = "Редакция";
$lang["LINE"] = "Строка";
$lang["SHOWENTIREFILE"] = "показать весь файл";
$lang["SHOWCOMPACT"] = "показать только места с различиями";
$lang["DIFFPREV"] = "сравнить с предыдущей";
$lang["BLAME"] = "авторство";
$lang["REVINFO"] = "Сведения о редакции";
$lang["GOYOUNGEST"] = "перейти к новейшей редакции";
$lang["LASTMOD"] = "Последнее изменение";
$lang["LOGMSG"] = "Запись в журнале";
$lang["CHANGES"] = "Изменения";
$lang["SHOWCHANGED"] = "показать измененные файлы";
$lang["HIDECHANGED"] = "скрыть измененные файлы";
$lang["NEWFILES"] = "Новые файлы";
$lang["CHANGEDFILES"] = "Измененные файлы";
$lang["DELETEDFILES"] = "Удаленные файлы";
$lang["VIEWLOG"] = "открыть&nbsp;журнал";
$lang["PATH"] = "Путь";
$lang["AUTHOR"] = "Автор";
$lang["AGE"] = "Давность";
$lang["LOG"] = "Журнал";
$lang["CURDIR"] = "Текущий каталог";
$lang["TARBALL"] = "Архив";
$lang["PREV"] = "пред.";
$lang["NEXT"] = "след.";
$lang["SHOWALL"] = "показать все";
$lang["BADCMD"] = "Ошибка при выполнении этой команды";
$lang["UNKNOWNREVISION"] = "Редакция не найдена";
$lang["POWERED"] = "Работает на <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "Хранилища Subversion&nbsp;";
$lang["SERVER"] = "Сервер Subversion&nbsp;";
$lang["FILTER"] = "Параметры фильтрации";
$lang["STARTLOG"] = "От редакции";
$lang["ENDLOG"] = "До редакции";
$lang["MAXLOG"] = "Макс. редакций";
$lang["SEARCHLOG"] = "искать";
$lang["CLEARLOG"] = "очистить текущий фильтр";
$lang["MORERESULTS"] = "найти еще совпадения...";
$lang["NORESULTS"] = "Нет записей, совпадающих с вашим запросом";
$lang["NOMORERESULTS"] = "Больше нет записей, совпадающих с вашим запросом";
$lang["RSSFEEDTITLE"] = "RSS-канал WebSVN";
$lang["FILESMODIFIED"] = "файл(ов) изменено";
$lang["RSSFEED"] = "канал RSS";
$lang["LINENO"] = "№ строки";
$lang["BLAMEFOR"] = "Сведения об авторстве для редакции ";
$lang["DAYLETTER"] = "д";
$lang["HOURLETTER"] = "ч";
$lang["MINUTELETTER"] = "м";
$lang["SECONDLETTER"] = "с";
$lang["GO"] = "Перейти";
$lang["PATHCOMPARISON"] = "Сравнение путей";
$lang["COMPAREPATHS"] = "cравнить пути";
$lang["COMPAREREVS"] = "Сравнить редакции";
$lang["PROPCHANGES"] = "Изменения свойств :";
$lang["CONVFROM"] = "Такое сравнение показывает изменения, нужные для для преобразования пути ";
$lang["TO"] = "В";
$lang["REVCOMP"] = "обратное сравнение";
$lang["COMPPATH"] = "Сравнить путь:";
$lang["WITHPATH"] = "С путем:";
$lang["FILEDELETED"] = "Файл удален";
$lang["FILEADDED"] = "Новый файл";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";
//$lang["NOBR"] = "<nobr>";
//$lang["ENDNOBR"] = "</nobr>";

View File

@ -1,118 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// schinese-utf8.php
//
// Simple Chinese language strings
//
// Author: Liangxu Wang <wlx@mygis.org>
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Simplified Chinese";
$lang['LANGUAGETAG'] = 'zh-CN';
$lang["LOG"] = "记录";
$lang["DIFF"] = "差异";
$lang["NOREP"] = "没有仓库";
$lang["NOPATH"] = "找不到路径";
$lang["SUPPLYREP"] = "请在include/config.php中使用\$config->parentPath或\$config->addRepository设置仓库的路径<p>更详细的内容请参考安装手册";
$lang["DIFFREVS"] = "修订版本之间的差异";
$lang["AND"] = "";
$lang["REV"] = "修订";
$lang["LINE"] = "";
$lang["SHOWENTIREFILE"] = "显示整个文件";
$lang["SHOWCOMPACT"] = "只显示差异处";
$lang["DIFFPREV"] = "与前一次版本进行比较";
$lang["BLAME"] = "Blame";
$lang["REVINFO"] = "修订版信息";
$lang["GOYOUNGEST"] = "到最新的修订版";
$lang["LASTMOD"] = "最后修改";
$lang["LOGMSG"] = "记录消息";
$lang["CHANGES"] = "变化";
$lang["SHOWCHANGED"] = "显示有变化的文件";
$lang["HIDECHANGED"] = "隐藏有变化的文件";
$lang["NEWFILES"] = "新文件";
$lang["CHANGEDFILES"] = "已修改文件";
$lang["DELETEDFILES"] = "已删除文件";
$lang["VIEWLOG"] = "查看记录";
$lang["PATH"] = "路径";
$lang["AUTHOR"] = "作者";
$lang["AGE"] = "年龄";
$lang["LOG"] = "记录";
$lang["CURDIR"] = "当前目录";
$lang["TARBALL"] = "Tarball格式";
$lang["PREV"] = "";
$lang["NEXT"] = "";
$lang["SHOWALL"] = "全部显示";
$lang["BADCMD"] = "命令执行错误";
$lang["POWERED"] = "Powered by <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "Subversion&nbsp;Projects";
$lang["SERVER"] = "Subversion&nbsp;Server";
$lang["SEARCHLOG"] = "搜索记录内容";
$lang["CLEARLOG"] = "清除当前搜索";
$lang["MORERESULTS"] = "找个更多符合的...";
$lang["NORESULTS"] = "没有符合要求的记录";
$lang["NOMORERESULTS"] = "没有更多记录符合要求";
$lang["RSSFEEDTITLE"] = "WebSVN RSS feed";
$lang["FILESMODIFIED"] = "个文件被改动";
$lang["RSSFEED"] = "RSS feed";
$lang["LINENO"] = "行号";
$lang["BLAMEFOR"] = "Blame information for rev";
$lang["YEARS"] = "";
$lang["MONTHS"] = "";
$lang["WEEKS"] = "";
$lang["DAYS"] = "";
$lang["HOURS"] = "小时";
$lang["MINUTES"] = "分钟";
$lang["GO"] = "Go";
$lang["PATHCOMPARISON"] = "路径比较";
$lang["COMPAREPATHS"] = "路径比较";
$lang["COMPAREREVS"] = "比较修订版";
$lang["PROPCHANGES"] = "改变属性 :";
$lang["CONVFROM"] = "这个比较必须转换路径,从";
$lang["TO"] = "";
$lang["REVCOMP"] = "颠倒比较";
$lang["COMPPATH"] = "路径比较:";
$lang["WITHPATH"] = "With Path:";
$lang["FILEDELETED"] = "已删除文件";
$lang["FILEADDED"] = "新文件";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";
// $lang["NOBR"] = "<nobr>";
// $lang["ENDNOBR"] = "</nobr>";

View File

@ -1,125 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// english.php
//
// English language strings
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Slovak";
// This is the RFC 2616 (§3.10) language tag that corresponds to this translation
// see also RFC 4646
$lang['LANGUAGETAG'] = 'sk';
$lang["LOG"] = "Log";
$lang["DIFF"] = "Diff";
$lang["NOREP"] = "Neurčené úložisko";
$lang["NOPATH"] = "Cesta nebola nájdená";
$lang["NOACCESS"] = "Nemáte oprávnenie pre čítanie tohto adresára";
$lang["RESTRICTED"] = "Obmedzený prístup";
$lang["SUPPLYREP"] = "Prosím nastavte cestu k úložisku v include/config.php pomocou \$config->parentPath alebo \$config->addRepository<p>Pre ďalšie detaily konzultujte inštalačnú príručku";
$lang["DIFFREVS"] = "Rozdiel medzi revíziami";
$lang["AND"] = "a";
$lang["REV"] = "Rev";
$lang["LINE"] = "Riadok";
$lang["SHOWENTIREFILE"] = "Ukáž celý súbor";
$lang["SHOWCOMPACT"] = "Ukáž len oblasti s rozdielmi";
$lang["FILEDETAIL"] = "Podrobnosti";
$lang["DIFFPREV"] = "Porovnaj s predchádzajúcou";
$lang["BLAME"] = "Blame";
$lang["REVINFO"] = "Informácie o revízii";
$lang["GOYOUNGEST"] = "Choď na aktuálnu revíziu";
$lang["LASTMOD"] = "Posledná modifikácia";
$lang["LOGMSG"] = "Správa denníka";
$lang["CHANGES"] = "Zmeny";
$lang["SHOWCHANGED"] = "Ukáž zmenené súbory";
$lang["HIDECHANGED"] = "Skry smenené súbory";
$lang["NEWFILES"] = "Nové súbory";
$lang["CHANGEDFILES"] = "Zmenené súbory";
$lang["DELETEDFILES"] = "Odstránené súbory";
$lang["VIEWLOG"] = "Zobraz&nbsp;denník";
$lang["PATH"] = "Cesta";
$lang["AUTHOR"] = "Autor";
$lang["AGE"] = "Vek";
$lang["LOG"] = "Denník";
$lang["CURDIR"] = "Aktuálny priečinok";
$lang["TARBALL"] = "Tarball";
$lang["PREV"] = "Predch";
$lang["NEXT"] = "Ďalší";
$lang["SHOWALL"] = "Ukáž všetko";
$lang["BADCMD"] = "Chyba pri vykonávaní tohto príkazu";
$lang["UNKNOWNREVISION"] = "Revízia nebola nájdená";
$lang["POWERED"] = "Powered by <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "Subversion&nbsp;úložiská";
$lang["SERVER"] = "Subversion&nbsp;Server";
$lang["FILTER"] = "Možnosti filtrovania";
$lang["STARTLOG"] = "Od rev.";
$lang["ENDLOG"] = "Po rev.";
$lang["MAXLOG"] = "Max. rev.";
$lang["SEARCHLOG"] = "Hľadaj";
$lang["CLEARLOG"] = "Zmaž aktuálny filter";
$lang["MORERESULTS"] = "Nájdi viac zhôd...";
$lang["NORESULTS"] = "Vašej otázke nezodpovedajú žiadne záznamy denníka";
$lang["NOMORERESULTS"] = "Vašej otázke zodpovedá viac záznamov denníka";
$lang['NOPREVREV'] = 'Žiadna predchádzajúca revízia';
$lang["RSSFEEDTITLE"] = "WebSVN RSS feed";
$lang["FILESMODIFIED"] = "súbor(y) zmenený(/é)";
$lang["RSSFEED"] = "RSS feed";
$lang["LINENO"] = "Riadok č.";
$lang["BLAMEFOR"] = "Blame informácie pre rev.";
$lang["DAYLETTER"] = "d";
$lang["HOURLETTER"] = "h";
$lang["MINUTELETTER"] = "m";
$lang["SECONDLETTER"] = "s";
$lang["GO"] = "Choď";
$lang["PATHCOMPARISON"] = "Porovnanie ciest";
$lang["COMPAREPATHS"] = "Porovnaj cesty";
$lang["COMPAREREVS"] = "Porovnaj revízie";
$lang["PROPCHANGES"] = "Zmeny vlastností :";
$lang["CONVFROM"] = "Toto porovnanie ukazuje zmeny potrebné na zmenu cesty ";
$lang["TO"] = "NA";
$lang["REVCOMP"] = "Obrátené porovnanie";
$lang["COMPPATH"] = "Porovnaj cestu:";
$lang["WITHPATH"] = "S cestou:";
$lang["FILEDELETED"] = "Súbor odstránený";
$lang["FILEADDED"] = "Nový súbor";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";
// $lang["NOBR"] = "<nobr>";
// $lang["ENDNOBR"] = "</nobr>";

View File

@ -1,127 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Goran Kavrecic
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// slovenian.php
//
// Slovenian language strings
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Slovenian";
$lang['LANGUAGETAG'] = 'sl';
$lang["LOG"] = "Log";
$lang["DIFF"] = "Diff";
$lang["NOREP"] = "Skladišče ni določeno";
$lang["NOPATH"] = "Ne najdem poti";
$lang["NOACCESS"] = "Nimate dovolj pravic za branje tega direktorija";
$lang["RESTRICTED"] = "Dostop zavrnjen";
$lang["SUPPLYREP"] = "Prosim nastavi pot do skladišča v include/config.php z \$config->parentPath ali \$config->addRepository<p>Poglej navodila za detajle";
$lang["DIFFREVS"] = "Razlika med različicama";
$lang["AND"] = "in";
$lang["REV"] = "Različica";
$lang["LINE"] = "Vrstica";
$lang["SHOWENTIREFILE"] = "Prikaži celo datoteko";
$lang["SHOWCOMPACT"] = "Prikaži samo področja z razlikami";
$lang["DIFFPREV"] = "Primerjaj s prejšno";
$lang["BLAME"] = "Blame";
$lang["REVINFO"] = "Informacija o različici";
$lang["GOYOUNGEST"] = "Skoči na zadnjo različico";
$lang["LASTMOD"] = "Zadnje spremembe";
$lang["LOGMSG"] = "Opombe";
$lang["CHANGES"] = "Spremembe";
$lang["SHOWCHANGED"] = "Prikaži spremenjene datoteke";
$lang["HIDECHANGED"] = "Skrij spremenjene datoteke";
$lang["NEWFILES"] = "Nove datoteke";
$lang["CHANGEDFILES"] = "Spremenjene datoteke";
$lang["DELETEDFILES"] = "Pobrisane datoteke";
$lang["VIEWLOG"] = "Poglej&nbsp;Opombe";
$lang["PATH"] = "Pot";
$lang["AUTHOR"] = "Avtor";
$lang["AGE"] = "Starost";
$lang["LOG"] = "Log";
$lang["CURDIR"] = "Trenutni direktorij";
$lang["TARBALL"] = "Tarball";
$lang["PREV"] = "Nazaj";
$lang["NEXT"] = "Naprej";
$lang["SHOWALL"] = "Prikaži vse";
$lang["BADCMD"] = "Napaka pri izvajanju tega ukaza";
$lang["UNKNOWNREVISION"] = "Ne najdem različice";
$lang["POWERED"] = "Powered by <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "Subversion&nbsp;Projekti";
$lang["SERVER"] = "Subversion&nbsp;strežnik";
$lang["FILTER"] = "Možnosti filtriranja";
$lang["STARTLOG"] = "Od različice";
$lang["ENDLOG"] = "Do različice";
$lang["MAXLOG"] = "Max različic";
$lang["SEARCHLOG"] = "Išči po opombah";
$lang["CLEARLOG"] = "Pobriši trenutno iskanje";
$lang["MORERESULTS"] = "Poišči še...";
$lang["NORESULTS"] = "Med zapisi ni opomb z iskalno zahtevo";
$lang["NOMORERESULTS"] = "Med zapisi ni več opomb z iskalno zahtevo";
$lang["RSSFEEDTITLE"] = "WebSVN RSS feed";
$lang["FILESMODIFIED"] = "datotek spremenjenih";
$lang["RSSFEED"] = "RSS feed";
$lang["LINENO"] = "Vrstica št.";
$lang["BLAMEFOR"] = "Blame informacije za različico";
//$lang["YEARS"] = "let";
//$lang["MONTHS"] = "mesecev";
//$lang["WEEKS"] = "tednov";
//$lang["DAYS"] = "dni";
//$lang["HOURS"] = "ur";
//$lang["MINUTES"] = "minute";
$lang["DAYLETTER"] = "d";
$lang["HOURLETTER"] = "h";
$lang["MINUTELETTER"] = "m";
$lang["SECONDLETTER"] = "s";
$lang["GO"] = "Izvedi";
$lang["PATHCOMPARISON"] = "Primerjava poti";
$lang["COMPAREPATHS"] = "Primerjaj poti";
$lang["COMPAREREVS"] = "Primerjaj različici";
$lang["PROPCHANGES"] = "Spremembe lastnosti :";
$lang["CONVFROM"] = "Ta primerjava prikazuje spremembe potrebne za pretvorbo poti ";
$lang["TO"] = "V";
$lang["REVCOMP"] = "Reverzna primerjava";
$lang["COMPPATH"] = "Primerjaj pot:";
$lang["WITHPATH"] = "S potjo:";
$lang["FILEDELETED"] = "Datoteka pobrisana";
$lang["FILEADDED"] = "Nova datoteka";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";
// $lang["NOBR"] = "<nobr>";
// $lang["ENDNOBR"] = "</nobr>";

View File

@ -1,117 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// spanish.php
//
// Spanish language strings
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Spanish";
$lang['LANGUAGETAG'] = 'es';
$lang["LOG"] = "Log";
$lang["DIFF"] = "Diff";
$lang["NOREP"] = "No se especificó un repositorio";
$lang["NOPATH"] = "Ruta no encontrada";
$lang["SUPPLYREP"] = "Por Favor, configure una ruta a un repositorio en include/config.php usando \$config->parentPath o \$config->addRepository<p>Verifique la guía de instalación para mas detalles";
$lang["DIFFREVS"] = "Diff entre versiones";
$lang["AND"] = "y";
$lang["REV"] = "Rev";
$lang["LINE"] = "Línea";
$lang["SHOWENTIREFILE"] = "Mostrar el archivo completo";
$lang["SHOWCOMPACT"] = "Solo mostrar áreas con diferencias";
$lang["DIFFPREV"] = "Comparar con el anterior";
$lang["BLAME"] = "Autoría";
$lang["REVINFO"] = "Información sobre la revisión";
$lang["GOYOUNGEST"] = "Ir a la última revisión";
$lang["LASTMOD"] = "Ultima modificación";
$lang["LOGMSG"] = "Mensaje de Log";
$lang["CHANGES"] = "Cambios";
$lang["SHOWCHANGED"] = "Mostrar archivos modificados";
$lang["HIDECHANGED"] = "Ocultar archivos modificados";
$lang["NEWFILES"] = "Archivos Nuevos";
$lang["CHANGEDFILES"] = "Archivos modificados";
$lang["DELETEDFILES"] = "Archivos borrados";
$lang["VIEWLOG"] = "Ver&nbsp;Log";
$lang["PATH"] = "Ruta";
$lang["AUTHOR"] = "Autor";
$lang["AGE"] = "Antigüedad";
$lang["LOG"] = "Log";
$lang["CURDIR"] = "Directorio Actual";
$lang["TARBALL"] = "Tarball";
$lang["PREV"] = "Ant";
$lang["NEXT"] = "Sig";
$lang["SHOWALL"] = "Mostrar todo";
$lang["BADCMD"] = "Error ejecutando ese comando";
$lang["POWERED"] = "Powered by <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "Proyectos de&nbsp;Subversion";
$lang["SERVER"] = "Servidor de&nbsp;Subversion";
$lang["SEARCHLOG"] = "Buscar en el log";
$lang["CLEARLOG"] = "Limpiar la búsqueda actual";
$lang["MORERESULTS"] = "Buscar mas coincidencias";
$lang["NORESULTS"] = "Ningún log coincide con su búsqueda";
$lang["NOMORERESULTS"] = "No hay mas logs que coincidan con su búsqueda";
$lang['NOPREVREV'] = 'No hay revisión anterior';
$lang["RSSFEEDTITLE"] = "WebSVN RSS feed";
$lang["FILESMODIFIED"] = "Archivo(s) modificados";
$lang["RSSFEED"] = "RSS feed";
$lang["LINENO"] = "Línea Nro.";
$lang["BLAMEFOR"] = "Información de culpa para rev";
$lang["YEARS"] = "Años";
$lang["MONTHS"] = "meses";
$lang["WEEKS"] = "semanas";
$lang["DAYS"] = "días";
$lang["HOURS"] = "horas";
$lang["MINUTES"] = "minutos";
$lang["GO"] = "Ir";
$lang["PATHCOMPARISON"] = "Comparación de rutas";
$lang["COMPAREPATHS"] = "Comparar Rutas";
$lang["COMPAREREVS"] = "Comparar Revisiones";
$lang["PROPCHANGES"] = "Cambios de propiedades :";
$lang["CONVFROM"] = "Esta Comparación muestra los cambios necesarios para convertir la ruta";
$lang["TO"] = "a";
$lang["REVCOMP"] = "Revertir comparación";
$lang["COMPPATH"] = "Comparar Ruta:";
$lang["WITHPATH"] = "Con Ruta:";
$lang["FILEDELETED"] = "Archivo Eliminado";
$lang["FILEADDED"] = "Archivo Nuevo";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";
// $lang["NOBR"] = "<nobr>";
// $lang["ENDNOBR"] = "</nobr>";

View File

@ -1,121 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// swedish.php
//
// Swedish language strings
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Swedish";
$lang['LANGUAGETAG'] = 'sv';
$lang["LOG"] = "Logg";
$lang["DIFF"] = "Skillnad";
$lang["NOREP"] = "Inget arkiv angivet"; //repository
$lang["NOPATH"] = "Sökvägen saknas";
$lang["NOACCESS"] = "Du har inte tillräckliga rättigheter för att läsa i denna arkivsökväg";
$lang["RESTRICTED"] = "Rättighetsbegränsad";
$lang["SUPPLYREP"] = "Vänligen sätt upp en sökväg till arkivet i include/config.php med \$config->parentPath eller \$config->addRepository<p>Se installationsanvisningen för mer detaljer";
$lang["DIFFREVS"] = "Skillnad mellan rev.";
$lang["AND"] = "och";
$lang["REV"] = "Rev";
$lang["LINE"] = "Rad";
$lang["SHOWENTIREFILE"] = "Visa hela filen";
$lang["SHOWCOMPACT"] = "Visa bara områden med skillnader";
$lang["DIFFPREV"] = "Skillnad mot föregående";
$lang["BLAME"] = "Ansvarig";
$lang["REVINFO"] = "Revisionsinformation";
$lang["GOYOUNGEST"] = "Gå till senaste revision";
$lang["LASTMOD"] = "Senast ändrad";
$lang["LOGMSG"] = "Loggmeddelande";
$lang["CHANGES"] = "Ändringar";
$lang["SHOWCHANGED"] = "Visa Ändrade filer";
$lang["HIDECHANGED"] = "Göm ändrade filer";
$lang["NEWFILES"] = "Nya filer";
$lang["CHANGEDFILES"] = "Ändrade filer";
$lang["DELETEDFILES"] = "Raderade filer";
$lang["VIEWLOG"] = "Visa Logg";
$lang["PATH"] = "Sökväg";
$lang["AUTHOR"] = "Författare";
$lang["AGE"] = "Ålder";
$lang["LOG"] = "Logg";
$lang["CURDIR"] = "Nuvarande folder";
$lang["TARBALL"] = "Tarball";
$lang["PREV"] = "Föreg.";
$lang["NEXT"] = "Nästa";
$lang["SHOWALL"] = "Visa alla";
$lang["BADCMD"] = "Fel vid körning av kommando";
$lang["POWERED"] = "Powered by <a href=\"http://www.websvn.info/\">WebSVN</a>";
$lang["PROJECTS"] = "Subversion Projekt";
$lang["SERVER"] = "Subversion Server";
$lang["FILTER"] = "Filteralternativ";
$lang["STARTLOG"] = "Från rev";
$lang["ENDLOG"] = "Till rev";
$lang["MAXLOG"] = "Max revs";
$lang["SEARCHLOG"] = "Sök i logg efter";
$lang["CLEARLOG"] = "Rensa nuvarande sökning";
$lang["MORERESULTS"] = "Hitta fler träffar...";
$lang["NORESULTS"] = "Det finns ingen logg som motsvarar din sökning";
$lang["NOMORERESULTS"] = "Det finns inga fler loggar i din sökning";
$lang['NOPREVREV'] = "Ingen föregående revision";
$lang["RSSFEEDTITLE"] = "WebSVN RSS feed";
$lang["FILESMODIFIED"] = "fil(er) ändrade";
$lang["RSSFEED"] = "RSS";
$lang["LINENO"] = "Radnr.";
$lang["BLAMEFOR"] = "Ansvariginformation för rev";
$lang["DAYLETTER"] = "d";
$lang["HOURLETTER"] = "h";
$lang["MINUTELETTER"] = "m";
$lang["SECONDLETTER"] = "s";
$lang["GO"] = "Utför";
$lang["PATHCOMPARISON"] = "Sökvägsjämförelse";
$lang["COMPAREPATHS"] = "Jämför sökvägar";
$lang["COMPAREREVS"] = "Jämför revisioner";
$lang["PROPCHANGES"] = "Egenskapsändringar :";
$lang["CONVFROM"] = "Denna jämförelse visar ändringarna som behövs för att konvertera sökväg ";
$lang["TO"] = "till";
$lang["REVCOMP"] = "Växla jämförelse";
$lang["COMPPATH"] = "Jämför sökväg:";
$lang["WITHPATH"] = "Med sökväg:";
$lang["FILEDELETED"] = "Filen raderad";
$lang["FILEADDED"] = "Ny fil";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";
// $lang["NOBR"] = "<nobr>";
// $lang["ENDNOBR"] = "</nobr>";

View File

@ -1,111 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// tchinese.php
//
// Traditional Chinese language strings
//
// Author: Yuan-Chung Hsiao <ychsiao@ychsiao.idv.tw>
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Traditional Chinese";
$lang['LANGUAGETAG'] = 'zh-TW';
$lang["LOG"] = "歷史記錄";
$lang["DIFF"] = "比對";
$lang["NOREP"] = "沒有檔案庫";
$lang["NOPATH"] = "找不到路徑";
$lang["SUPPLYREP"] = "請在include/config.php中設定檔案庫位置為 \$config->parentPath 或 \$config->addRepository<p>更詳細的內容請見安裝手冊";
$lang["DIFFREVS"] = "不同版本間的差異";
$lang["AND"] = "";
$lang["REV"] = "修訂版號";
$lang["LINE"] = "";
$lang["SHOWALL"] = "顯示完整的檔案";
$lang["SHOWCOMPACT"] = "只顯示不同處";
$lang["DIFFPREV"] = "與前一版次比較";
$lang["BLAME"] = "譴責";
$lang["REVINFO"] = "修訂版次資訊";
$lang["GOYOUNGEST"] = "到最新的修訂";
$lang["LASTMOD"] = "最後更動";
$lang["LOGMSG"] = "訊息記錄";
$lang["CHANGES"] = "改變";
$lang["SHOWCHANGED"] = "顯示已變動檔案";
$lang["HIDECHANGED"] = "隱藏已變動檔案";
$lang["NEWFILES"] = "新檔案";
$lang["CHANGEDFILES"] = "已變動檔案";
$lang["DELETEDFILES"] = "已刪除檔案";
$lang["VIEWLOG"] = "看歷史記錄";
$lang["PATH"] = "路徑";
$lang["AUTHOR"] = "作者";
$lang["AGE"] = "更動時間";
$lang["LOG"] = "歷史記錄";
$lang["CURDIR"] = "目前目錄";
$lang["TARBALL"] = "Tarball 格式";
$lang["PREV"] = "上一筆";
$lang["NEXT"] = "下一筆";
$lang["SHOWALL"] = "顯示全部";
$lang["BADCMD"] = "執行錯誤";
$lang["POWERED"] = "採用 <a href=\"http://www.websvn.info/\">WebSVN</a>架設";
$lang["PROJECTS"] = "Subversion&nbsp;專案";
$lang["SERVER"] = "Subversion&nbsp;Server";
$lang["SEARCHLOG"] = "搜尋記錄內容";
$lang["CLEARLOG"] = "清除目前搜尋";
$lang["MORERESULTS"] = "找到更多的符合的...";
$lang["NORESULTS"] = "查詢結果並沒有符合的紀錄";
$lang["NOMORERESULTS"] = "沒有更多紀錄符合你的查詢";
$lang["RSSFEEDTITLE"] = "WebSVN RSS feed";
$lang["FILESMODIFIED"] = "個檔案變動";
$lang["RSSFEED"] = "RSS feed";
$lang["LINENO"] = "";
$lang["BLAMEFOR"] = "版本譴責資訊";
$lang["YEARS"] = "年前";
$lang["MONTHS"] = "月前";
$lang["WEEKS"] = "週前";
$lang["DAYS"] = "日前";
$lang["HOURS"] = "小時前";
$lang["MINUTES"] = "分鐘前";
$lang["GO"] = "";
$lang["COMPAREPATHS"] = "比對路徑";
$lang["COMPAREREVS"] = "比對修訂版";
$lang["PROPCHANGES"] = "改變屬性 :";
$lang["CONVFROM"] = "這個比對顯示必需改變轉換路徑";
$lang["TO"] = "";
$lang["REVCOMP"] = "顛倒比對";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";

View File

@ -1,117 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// turkish.php
//
// Turkish language strings
// by Barış Metin <baris@uludag.org.tr>
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Turkish";
$lang['LANGUAGETAG'] = 'tr';
$lang["LOG"] = "Kayıt";
$lang["DIFF"] = "Fark";
$lang["NOREP"] = "Bir depo tanımlanmadı";
$lang["NOPATH"] = "Patika bulunamadı";
$lang["SUPPLYREP"] = "Lütfen, include/config.php dosyasında \$config->parentPath ya da \$config->addRepository değerlerini kullanarak bir depo yolu belirtin<p>Daha fazla bilgi için kurulum kılavuzuna bakın";
$lang["DIFFREVS"] = "Sürümler arası fark";
$lang["AND"] = "ve";
$lang["REV"] = "Sürüm";
$lang["LINE"] = "Satır";
$lang["SHOWENTIREFILE"] = "Tüm dosyayı göster";
$lang["SHOWCOMPACT"] = "Yalnızca değişen bölümleri göster";
$lang["DIFFPREV"] = "Önceki ile karşılaştır";
$lang["BLAME"] = "svn blame";
$lang["REVINFO"] = "Sürüm Bilgisi";
$lang["GOYOUNGEST"] = "En güncel sürüme git";
$lang["LASTMOD"] = "Son değişiklik";
$lang["LOGMSG"] = "Kayıt mesajı";
$lang["CHANGES"] = "Değişiklikler";
$lang["SHOWCHANGED"] = "Değişen dosyaları göster";
$lang["HIDECHANGED"] = "Değişen dosyaları gizle";
$lang["NEWFILES"] = "Yeni Dosyalar";
$lang["CHANGEDFILES"] = "Değişen dosyalar";
$lang["DELETEDFILES"] = "Silinen dosyalar";
$lang["VIEWLOG"] = "Kayıt&nbsp;Mesajını&nbsp;Göster";
$lang["PATH"] = "Patika";
$lang["AUTHOR"] = "Yazar";
$lang["AGE"] = "Yaş";
$lang["LOG"] = "Kayıt";
$lang["CURDIR"] = "Şimdiki Dizin";
$lang["TARBALL"] = "Tar dosyası";
$lang["PREV"] = "Önceki";
$lang["NEXT"] = "Sonraki";
$lang["SHOWALL"] = "Tümünü Göster";
$lang["BADCMD"] = "Bu komut çalıştırılırken hata oluştu";
$lang["POWERED"] = "<a href=\"http://www.websvn.info/\">WebSVN</a> tarafından çalıştırılmaktadır";
$lang["PROJECTS"] = "Subversion&nbsp;Projeleri";
$lang["SERVER"] = "Subversion&nbsp;Sunucusu";
$lang["SEARCHLOG"] = "Kayıtlarda ara";
$lang["CLEARLOG"] = "Mevcut aramayı iptal et";
$lang["MORERESULTS"] = "Daha fazla eşleştirmeyi bul...";
$lang["NORESULTS"] = "Aramaya uyan kayıt mesajı yok";
$lang["NOMORERESULTS"] = "Aramaya uyan başka kayıt mesajı yok";
$lang["RSSFEEDTITLE"] = "WebSVN RSS kaynağı";
$lang["FILESMODIFIED"] = "dosya değişti";
$lang["RSSFEED"] = "RSS kaynağı";
$lang["LINENO"] = "Satır No.";
$lang["BLAMEFOR"] = "svn blame bilgisi alınan sürüm numarası";
$lang["YEARS"] = "yıl";
$lang["MONTHS"] = "ay";
$lang["WEEKS"] = "hafta";
$lang["DAYS"] = "gün";
$lang["HOURS"] = "saat";
$lang["MINUTES"] = "dakika";
$lang["GO"] = "Git";
$lang["PATHCOMPARISON"] = "Patika karşılaştırması";
$lang["COMPAREPATHS"] = "Patikaları karşılaştır";
$lang["COMPAREREVS"] = "Sürümleri karşışaştır";
$lang["PROPCHANGES"] = "Özellik değişiklikleri :";
$lang["CONVFROM"] = "Bu karşılaştırma patikayı dönüştürmek için gerekli olan değişikliği gösterir ";
$lang["TO"] = "TO";
$lang["REVCOMP"] = "Geriye doğru karşılaştır";
$lang["COMPPATH"] = "Patikaları karşılaştır:";
$lang["WITHPATH"] = "Patika ile:";
$lang["FILEDELETED"] = "Dosya silinmiş";
$lang["FILEADDED"] = "Yeni dosya";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";
// $lang["NOBR"] = "<nobr>";
// $lang["ENDNOBR"] = "</nobr>";

View File

@ -1,123 +0,0 @@
<?php
// WebSVN - Subversion repository viewing via the web using PHP
// Copyright (C) 2004 Tim Armes
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// --
//
// uzbek.php
//
// Uzbek language strings
// by Behzod Saidov <behzodsaidov@gmail.com>
// UTF-8 encoding
// The language name is displayed in the drop down box. It MUST be encoded as Unicode (no HTML entities).
$lang["LANGUAGENAME"] = "Uzbek";
$lang['LANGUAGETAG'] = 'uz';
$lang["LOG"] = "Log";
$lang["DIFF"] = "Farq";
$lang["NOREP"] = "Ombor koʻrsatilmagan";
$lang["NOPATH"] = "Yoʻl topilmadi";
$lang["NOACCESS"] = "Bu katalogni oʻqish uchun sizga ruxsat berilmagan";
$lang["RESTRICTED"] = "Cheklangan ruxsat";
$lang["SUPPLYREP"] = "Iltimos, repositoriylargacha boʻlgan yoʻlni include/config.php faylida koʻrsating, bunda \$config->parentPath yoki \$config->addRepository<p> dan foydalanishingiz mumkin. Qoʻshimcha maʼlumotlar oʻrnatish boʻyicha qoʻllanmada keltirilgan";
$lang["DIFFREVS"] = "Tahrirlar orasidagi farq";
$lang["AND"] = "va";
$lang["REV"] = "Tahrir";
$lang["LINE"] = "Satr";
$lang["SHOWENTIREFILE"] = "faylni toʻliq koʻrsatish";
$lang["SHOWCOMPACT"] = "faqat farqli qismlarini koʻrsatish";
$lang["DIFFPREV"] = "oldingisi bilan taqqoslash";
$lang["BLAME"] = "mualliflik";
$lang["REVINFO"] = "Tahrir haqida maʼlimot";
$lang["GOYOUNGEST"] = "eng yangi tahrirga oʻtish";
$lang["LASTMOD"] = "Oxirgi oʻzgarish";
$lang["LOGMSG"] = "Log yozuvi";
$lang["CHANGES"] = "Oʻzgarishlar";
$lang["SHOWCHANGED"] = "oʻzgargan fayllarni koʻrsatish";
$lang["HIDECHANGED"] = "oʻzgargan fayllarni yashirish";
$lang["NEWFILES"] = "Yangi fayllar";
$lang["CHANGEDFILES"] = "Oʻzgargan fayllar";
$lang["DELETEDFILES"] = "Oʻchirilgan fayllar";
$lang["VIEWLOG"] = "loglarni&nbsp;ochish";
$lang["PATH"] = "Yoʻl";
$lang["AUTHOR"] = "Muallif";
$lang["AGE"] = "Yoshi";
$lang["LOG"] = "Log";
$lang["CURDIR"] = "Joriy katalog";
$lang["TARBALL"] = "Arxiv";
$lang["PREV"] = "old.";
$lang["NEXT"] = "key.";
$lang["SHOWALL"] = "hammasini koʻrsatish";
$lang["BADCMD"] = "Buyruqni bajarishda xatolik roʻy berdi";
$lang["UNKNOWNREVISION"] = "Tahrir topilmadi";
$lang["POWERED"] = "<a href=\"http://www.websvn.info/\">WebSVN</a> dasturi ishlatilmoqda";
$lang["PROJECTS"] = "Subversion ombori&nbsp;";
$lang["SERVER"] = "Subversion serveri&nbsp;";
$lang["FILTER"] = "Filtr parametrlari";
$lang["STARTLOG"] = "Tahrirdan";
$lang["ENDLOG"] = "Tahrirgacha";
$lang["MAXLOG"] = "Maksimal tahrirlar";
$lang["SEARCHLOG"] = "qidirish";
$lang["CLEARLOG"] = "joriy filtrni tozalash";
$lang["MORERESULTS"] = "yana qidirish...";
$lang["NORESULTS"] = "Soʻrovingizga toʻgʻri keladigan yozuv topilmadi";
$lang["NOMORERESULTS"] = "Soʻrovingizga toʻgʻri keladigan yozuvlar boshqa topilmadi";
$lang["RSSFEEDTITLE"] = "WebSVN RSS tarmasi";
$lang["FILESMODIFIED"] = "fayl(lar) oʻzgartirilgan";
$lang["RSSFEED"] = "RSS tasma";
$lang["LINENO"] = "Satr raqami";
$lang["BLAMEFOR"] = "Tahrir muallifi haqida maʼlumot";
$lang["DAYLETTER"] = "kun";
$lang["HOURLETTER"] = "soat";
$lang["MINUTELETTER"] = "daq.";
$lang["SECONDLETTER"] = "son.";
$lang["GO"] = "Oʻtish";
$lang["PATHCOMPARISON"] = "Yoʻllarni taqqoslash";
$lang["COMPAREPATHS"] = "yoʻllarni taqqoslash";
$lang["COMPAREREVS"] = "Tahrirlarni taqqoslash";
$lang["PROPCHANGES"] = "Xususiyatlardagi oʻzgarishlar :";
$lang["CONVFROM"] = "Bu taqqoslash yoʻlni aylantirish uchun kerak boʻladigan oʻzgarishlarni koʻrsatadi.";
$lang["TO"] = "TO";
$lang["REVCOMP"] = "teskari taqqoslash";
$lang["COMPPATH"] = "Yoʻlni taqqoslash:";
$lang["WITHPATH"] = "Yoʻl bilan:";
$lang["FILEDELETED"] = "Fayl oʻchirilgan";
$lang["FILEADDED"] = "Yangi fayl";
// The following are defined by some languages to stop unwanted line splitting
// in the template files.
$lang["NOBR"] = "";
$lang["ENDNOBR"] = "";
//$lang["NOBR"] = "<nobr>";
//$lang["ENDNOBR"] = "</nobr>";

View File

@ -1,9 +0,0 @@
SUBDIRS = geshi
wwwdir=$(WWWDIR)/websvn/lib
www_DATA = \
feedcreator.class.php \
geshi.php
EXTRA_DIST = $(www_DATA)

View File

@ -1,580 +0,0 @@
# Makefile.in generated by automake 1.11 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = src/websvn/lib
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/ac/m4/as-ac-expand.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/./config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
html-recursive info-recursive install-data-recursive \
install-dvi-recursive install-exec-recursive \
install-html-recursive install-info-recursive \
install-pdf-recursive install-ps-recursive install-recursive \
installcheck-recursive installdirs-recursive pdf-recursive \
ps-recursive uninstall-recursive
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(wwwdir)"
DATA = $(www_DATA)
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
distdir
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
dir0=`pwd`; \
sed_first='s,^\([^/]*\)/.*$$,\1,'; \
sed_rest='s,^[^/]*/*,,'; \
sed_last='s,^.*/\([^/]*\)$$,\1,'; \
sed_butlast='s,/*[^/]*$$,,'; \
while test -n "$$dir1"; do \
first=`echo "$$dir1" | sed -e "$$sed_first"`; \
if test "$$first" != "."; then \
if test "$$first" = ".."; then \
dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
else \
first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
if test "$$first2" = "$$first"; then \
dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
else \
dir2="../$$dir2"; \
fi; \
dir0="$$dir0"/"$$first"; \
fi; \
fi; \
dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
done; \
reldir="$$dir2"
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BINDIR = @BINDIR@
CACHEDIR = @CACHEDIR@
CFGDIR = @CFGDIR@
CYGPATH_W = @CYGPATH_W@
DATADIR = @DATADIR@
DEFS = @DEFS@
DEPOTDIR = @DEPOTDIR@
DOCDIR = @DOCDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LD = @LD@
LIBDIR = @LIBDIR@
LIBEXECDIR = @LIBEXECDIR@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LOCALSTATEDIR = @LOCALSTATEDIR@
LOGDIR = @LOGDIR@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PREFIX = @PREFIX@
RM = @RM@
RMDIR = @RMDIR@
SBINDIR = @SBINDIR@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
SYSCONFDIR = @SYSCONFDIR@
VERSION = @VERSION@
WWWDIR = @WWWDIR@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
am__leading_dot = @am__leading_dot@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
cachedir = @cachedir@
cfgdir = @cfgdir@
datadir = @datadir@
datarootdir = @datarootdir@
depotdir = @depotdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
logdir = @logdir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
wwwdir = $(WWWDIR)/websvn/lib
SUBDIRS = geshi
www_DATA = \
feedcreator.class.php \
geshi.php
EXTRA_DIST = $(www_DATA)
all: all-recursive
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/websvn/lib/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign src/websvn/lib/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-wwwDATA: $(www_DATA)
@$(NORMAL_INSTALL)
test -z "$(wwwdir)" || $(MKDIR_P) "$(DESTDIR)$(wwwdir)"
@list='$(www_DATA)'; test -n "$(wwwdir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(wwwdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(wwwdir)" || exit $$?; \
done
uninstall-wwwDATA:
@$(NORMAL_UNINSTALL)
@list='$(www_DATA)'; test -n "$(wwwdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(wwwdir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(wwwdir)" && rm -f $$files
# This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile.
# To change the values of `make' variables: instead of editing Makefiles,
# (1) if the variable is set in `config.status', edit `config.status'
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
@failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
dot_seen=yes; \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
$(RECURSIVE_CLEAN_TARGETS):
@failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
*) list='$(SUBDIRS)' ;; \
esac; \
rev=''; for subdir in $$list; do \
if test "$$subdir" = "."; then :; else \
rev="$$subdir $$rev"; \
fi; \
done; \
rev="$$rev ."; \
target=`echo $@ | sed s/-recursive//`; \
for subdir in $$rev; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
done
ctags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
set x; \
here=`pwd`; \
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
include_option=--etags-include; \
empty_fix=.; \
else \
include_option=--include; \
empty_fix=; \
fi; \
list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test ! -f $$subdir/TAGS || \
set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
fi; \
done; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
if test $$# -gt 0; then \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi
ctags: CTAGS
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|| exit 1; \
fi; \
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
$(am__relativize); \
new_distdir=$$reldir; \
dir1=$$subdir; dir2="$(top_distdir)"; \
$(am__relativize); \
new_top_distdir=$$reldir; \
echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
($(am__cd) $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$$new_top_distdir" \
distdir="$$new_distdir" \
am__remove_distdir=: \
am__skip_length_check=: \
am__skip_mode_fix=: \
distdir) \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-recursive
all-am: Makefile $(DATA)
installdirs: installdirs-recursive
installdirs-am:
for dir in "$(DESTDIR)$(wwwdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-recursive
install-exec: install-exec-recursive
install-data: install-data-recursive
uninstall: uninstall-recursive
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-recursive
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-recursive
clean-am: clean-generic mostlyclean-am
distclean: distclean-recursive
-rm -f Makefile
distclean-am: clean-am distclean-generic distclean-tags
dvi: dvi-recursive
dvi-am:
html: html-recursive
html-am:
info: info-recursive
info-am:
install-data-am: install-wwwDATA
install-dvi: install-dvi-recursive
install-dvi-am:
install-exec-am:
install-html: install-html-recursive
install-html-am:
install-info: install-info-recursive
install-info-am:
install-man:
install-pdf: install-pdf-recursive
install-pdf-am:
install-ps: install-ps-recursive
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-recursive
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-recursive
mostlyclean-am: mostlyclean-generic
pdf: pdf-recursive
pdf-am:
ps: ps-recursive
ps-am:
uninstall-am: uninstall-wwwDATA
.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
install-am install-strip tags-recursive
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
all all-am check check-am clean clean-generic ctags \
ctags-recursive distclean distclean-generic distclean-tags \
distdir dvi dvi-am html html-am info info-am install \
install-am install-data install-data-am install-dvi \
install-dvi-am install-exec install-exec-am install-html \
install-html-am install-info install-info-am install-man \
install-pdf install-pdf-am install-ps install-ps-am \
install-strip install-wwwDATA installcheck installcheck-am \
installdirs installdirs-am maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \
uninstall-wwwDATA
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,121 +0,0 @@
wwwdir=$(WWWDIR)/websvn/lib/geshi
www_DATA = \
abap.php \
actionscript.php \
actionscript3.php \
ada.php \
apache.php \
applescript.php \
apt_sources.php \
asm.php \
asp.php \
autoit.php \
avisynth.php \
bash.php \
basic4gl.php \
blitzbasic.php \
bnf.php \
boo.php \
c.php \
c_mac.php \
caddcl.php \
cadlisp.php \
cfdg.php \
cfm.php \
cil.php \
cobol.php \
cpp-qt.php \
cpp.php \
csharp.php \
css.php \
d.php \
delphi.php \
diff.php \
div.php \
dos.php \
dot.php \
eiffel.php \
email.php \
fortran.php \
freebasic.php \
genero.php \
gettext.php \
glsl.php \
gml.php \
gnuplot.php \
groovy.php \
haskell.php \
html4strict.php \
idl.php \
ini.php \
inno.php \
io.php \
java.php \
java5.php \
javascript.php \
kixtart.php \
klonec.php \
klonecpp.php \
latex.php \
lisp.php \
lotusformulas.php \
lotusscript.php \
lua.php \
m68k.php \
make.php \
matlab.php \
mirc.php \
mpasm.php \
mxml.php \
mysql.php \
nsis.php \
objc.php \
ocaml-brief.php \
ocaml.php \
oobas.php \
oracle11.php \
oracle8.php \
pascal.php \
per.php \
perl.php \
php-brief.php \
php.php \
pic16.php \
plsql.php \
povray.php \
powershell.php \
progress.php \
prolog.php \
python.php \
qbasic.php \
rails.php \
reg.php \
robots.php \
ruby.php \
sas.php \
scala.php \
scheme.php \
scilab.php \
sdlbasic.php \
smalltalk.php \
smarty.php \
sql.php \
tcl.php \
teraterm.php \
text.php \
thinbasic.php \
tsql.php \
typoscript.php \
vb.php \
vbnet.php \
verilog.php \
vhdl.php \
visualfoxpro.php \
winbatch.php \
xml.php \
xorg_conf.php \
xpp.php \
z80.php
EXTRA_DIST = $(www_DATA)

View File

@ -1,491 +0,0 @@
# Makefile.in generated by automake 1.11 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = src/websvn/lib/geshi
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/ac/m4/as-ac-expand.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/./config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(wwwdir)"
DATA = $(www_DATA)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BINDIR = @BINDIR@
CACHEDIR = @CACHEDIR@
CFGDIR = @CFGDIR@
CYGPATH_W = @CYGPATH_W@
DATADIR = @DATADIR@
DEFS = @DEFS@
DEPOTDIR = @DEPOTDIR@
DOCDIR = @DOCDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LD = @LD@
LIBDIR = @LIBDIR@
LIBEXECDIR = @LIBEXECDIR@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LOCALSTATEDIR = @LOCALSTATEDIR@
LOGDIR = @LOGDIR@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PREFIX = @PREFIX@
RM = @RM@
RMDIR = @RMDIR@
SBINDIR = @SBINDIR@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
SYSCONFDIR = @SYSCONFDIR@
VERSION = @VERSION@
WWWDIR = @WWWDIR@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
am__leading_dot = @am__leading_dot@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
cachedir = @cachedir@
cfgdir = @cfgdir@
datadir = @datadir@
datarootdir = @datarootdir@
depotdir = @depotdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
logdir = @logdir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
wwwdir = $(WWWDIR)/websvn/lib/geshi
www_DATA = \
abap.php \
actionscript.php \
actionscript3.php \
ada.php \
apache.php \
applescript.php \
apt_sources.php \
asm.php \
asp.php \
autoit.php \
avisynth.php \
bash.php \
basic4gl.php \
blitzbasic.php \
bnf.php \
boo.php \
c.php \
c_mac.php \
caddcl.php \
cadlisp.php \
cfdg.php \
cfm.php \
cil.php \
cobol.php \
cpp-qt.php \
cpp.php \
csharp.php \
css.php \
d.php \
delphi.php \
diff.php \
div.php \
dos.php \
dot.php \
eiffel.php \
email.php \
fortran.php \
freebasic.php \
genero.php \
gettext.php \
glsl.php \
gml.php \
gnuplot.php \
groovy.php \
haskell.php \
html4strict.php \
idl.php \
ini.php \
inno.php \
io.php \
java.php \
java5.php \
javascript.php \
kixtart.php \
klonec.php \
klonecpp.php \
latex.php \
lisp.php \
lotusformulas.php \
lotusscript.php \
lua.php \
m68k.php \
make.php \
matlab.php \
mirc.php \
mpasm.php \
mxml.php \
mysql.php \
nsis.php \
objc.php \
ocaml-brief.php \
ocaml.php \
oobas.php \
oracle11.php \
oracle8.php \
pascal.php \
per.php \
perl.php \
php-brief.php \
php.php \
pic16.php \
plsql.php \
povray.php \
powershell.php \
progress.php \
prolog.php \
python.php \
qbasic.php \
rails.php \
reg.php \
robots.php \
ruby.php \
sas.php \
scala.php \
scheme.php \
scilab.php \
sdlbasic.php \
smalltalk.php \
smarty.php \
sql.php \
tcl.php \
teraterm.php \
text.php \
thinbasic.php \
tsql.php \
typoscript.php \
vb.php \
vbnet.php \
verilog.php \
vhdl.php \
visualfoxpro.php \
winbatch.php \
xml.php \
xorg_conf.php \
xpp.php \
z80.php
EXTRA_DIST = $(www_DATA)
all: all-am
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/websvn/lib/geshi/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign src/websvn/lib/geshi/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-wwwDATA: $(www_DATA)
@$(NORMAL_INSTALL)
test -z "$(wwwdir)" || $(MKDIR_P) "$(DESTDIR)$(wwwdir)"
@list='$(www_DATA)'; test -n "$(wwwdir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(wwwdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(wwwdir)" || exit $$?; \
done
uninstall-wwwDATA:
@$(NORMAL_UNINSTALL)
@list='$(www_DATA)'; test -n "$(wwwdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(wwwdir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(wwwdir)" && rm -f $$files
tags: TAGS
TAGS:
ctags: CTAGS
CTAGS:
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(DATA)
installdirs:
for dir in "$(DESTDIR)$(wwwdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am: install-wwwDATA
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-wwwDATA
.MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic distclean \
distclean-generic distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am install-dvi \
install-dvi-am install-exec install-exec-am install-html \
install-html-am install-info install-info-am install-man \
install-pdf install-pdf-am install-ps install-ps-am \
install-strip install-wwwDATA installcheck installcheck-am \
installdirs maintainer-clean maintainer-clean-generic \
mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
uninstall-am uninstall-wwwDATA
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -1,137 +0,0 @@
<?php
/*************************************************************************************
* abap.php
* --------
* Author: Andres Picazo (andres@andrespicazo.com)
* Copyright: (c) 2007 Andres Picazo
* Release Version: 1.0.8.1
* Date Started: 2004/06/04
*
* ABAP language file for GeSHi.
*
* CHANGES
* -------
* 2007/06/27 (1.0.0)
* - 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' => 'ABAP',
'COMMENT_SINGLE' => array(1 => '"', 2 => '*'),
'COMMENT_MULTI' => array(),
'CASE_KEYWORDS' => 0,
'QUOTEMARKS' => array("'"),
'ESCAPE_CHAR' => '',
'KEYWORDS' => array(
1 => array(
'if', 'return', 'while', 'case', 'default',
'do', 'else', 'for', 'endif', 'elseif', 'eq',
'not', 'and'
),
2 => array(
'data', 'types', 'seletion-screen', 'parameters', 'field-symbols', 'extern', 'inline'
),
3 => array(
'report', 'write', 'append', 'select', 'endselect', 'call method', 'call function',
'loop', 'endloop', 'raise', 'read table', 'concatenate', 'split', 'shift',
'condense', 'describe', 'clear', 'endfunction', 'assign', 'create data', 'translate',
'continue', 'start-of-selection', 'at selection-screen', 'modify', 'call screen',
'create object', 'perform', 'form', 'endform',
'reuse_alv_block_list_init', 'zbcialv', 'include'
),
4 => array(
'type ref to', 'type', 'begin of', 'end of', 'like', 'into',
'from', 'where', 'order by', 'with key', 'string', 'separated by',
'exporting', 'importing', 'to upper case', 'to', 'exceptions', 'tables',
'using', 'changing'
),
),
'SYMBOLS' => array(
'(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':'
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => false,
1 => false,
2 => false,
3 => false,
4 => false,
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #b1b100;',
2 => 'color: #000000; font-weight: bold;',
3 => 'color: #000066;',
4 => 'color: #993333;'
),
'COMMENTS' => array(
1 => 'color: #808080; font-style: italic;',
2 => 'color: #339933;',
'MULTI' => 'color: #808080; font-style: italic;'
),
'ESCAPE_CHAR' => array(
0 => 'color: #000099; font-weight: bold;'
),
'BRACKETS' => array(
0 => 'color: #66cc66;'
),
'STRINGS' => array(
0 => 'color: #ff0000;'
),
'NUMBERS' => array(
0 => 'color: #cc66cc;'
),
'METHODS' => array(
1 => 'color: #202020;',
2 => 'color: #202020;'
),
'SYMBOLS' => array(
0 => 'color: #66cc66;'
),
'REGEXPS' => array(
),
'SCRIPT' => array(
)
),
'URLS' => array(
1 => '',
2 => '',
3 => 'http://sap4.com/wiki/index.php?title={FNAMEL}',
4 => ''
),
'OOLANG' => true,
'OBJECT_SPLITTERS' => array(
1 => '.',
2 => '::'
),
'REGEXPS' => array(
),
'STRICT_MODE_APPLIES' => GESHI_NEVER,
'SCRIPT_DELIMITERS' => array(
),
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
?>

View File

@ -1,197 +0,0 @@
<?php
/*************************************************************************************
* actionscript.php
* ----------------
* Author: Steffen Krause (Steffen.krause@muse.de)
* Copyright: (c) 2004 Steffen Krause, Nigel McNie (http://qbnz.com/highlighter)
* Release Version: 1.0.8.1
* Date Started: 2004/06/20
*
* Actionscript language file for GeSHi.
*
* CHANGES
* -------
* 2004/11/27 (1.0.1)
* - Added support for multiple object splitters
* 2004/10/27 (1.0.0)
* - First Release
*
* TODO (updated 2004/11/27)
* -------------------------
*
*************************************************************************************
*
* This file is part of GeSHi.
*
* GeSHi is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* GeSHi is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GeSHi; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
************************************************************************************/
$language_data = array (
'LANG_NAME' => 'ActionScript',
'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
'COMMENT_MULTI' => array('/*' => '*/'),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array("'", '"'),
'ESCAPE_CHAR' => '\\',
'KEYWORDS' => array(
1 => array(
'#include', 'for', 'foreach', 'if', 'elseif', 'else', 'while', 'do', 'dowhile',
'endwhile', 'endif', 'switch', 'case', 'endswitch', 'return', 'break', 'continue', 'in'
),
2 => array(
'null', 'false', 'true', 'var',
'default', 'function', 'class',
'new', '_global'
),
3 => array(
'#endinitclip', '#initclip', '__proto__', '_accProps', '_alpha', '_currentframe',
'_droptarget', '_focusrect', '_framesloaded', '_height', '_highquality', '_lockroot',
'_name', '_parent', '_quality', '_root', '_rotation', '_soundbuftime', '_target', '_totalframes',
'_url', '_visible', '_width', '_x', '_xmouse', '_xscale', '_y', '_ymouse', '_yscale', 'abs',
'Accessibility', 'acos', 'activityLevel', 'add', 'addListener', 'addPage', 'addProperty',
'addRequestHeader', 'align', 'allowDomain', 'allowInsecureDomain', 'and', 'appendChild',
'apply', 'Arguments', 'Array', 'asfunction', 'asin', 'atan', 'atan2', 'attachAudio', 'attachMovie',
'attachSound', 'attachVideo', 'attributes', 'autosize', 'avHardwareDisable', 'background',
'backgroundColor', 'BACKSPACE', 'bandwidth', 'beginFill', 'beginGradientFill', 'blockIndent',
'bold', 'Boolean', 'border', 'borderColor', 'bottomScroll', 'bufferLength', 'bufferTime',
'builtInItems', 'bullet', 'Button', 'bytesLoaded', 'bytesTotal', 'call', 'callee', 'caller',
'Camera', 'capabilities', 'CAPSLOCK', 'caption', 'catch', 'ceil', 'charAt', 'charCodeAt',
'childNodes', 'chr', 'clear', 'clearInterval', 'cloneNode', 'close', 'Color', 'concat',
'connect', 'condenseWhite', 'constructor', 'contentType', 'ContextMenu', 'ContextMenuItem',
'CONTROL', 'copy', 'cos', 'createElement', 'createEmptyMovieClip', 'createTextField',
'createTextNode', 'currentFps', 'curveTo', 'CustomActions', 'customItems', 'data', 'Date',
'deblocking', 'delete', 'DELETEKEY', 'docTypeDecl', 'domain', 'DOWN',
'duplicateMovieClip', 'duration', 'dynamic', 'E', 'embedFonts', 'enabled',
'END', 'endFill', 'ENTER', 'eq', 'Error', 'ESCAPE(Konstante)', 'escape(Funktion)', 'eval',
'exactSettings', 'exp', 'extends', 'finally', 'findText', 'firstChild', 'floor',
'flush', 'focusEnabled', 'font', 'fps', 'fromCharCode', 'fscommand',
'gain', 'ge', 'get', 'getAscii', 'getBeginIndex', 'getBounds', 'getBytesLoaded', 'getBytesTotal',
'getCaretIndex', 'getCode', 'getCount', 'getDate', 'getDay', 'getDepth', 'getEndIndex', 'getFocus',
'getFontList', 'getFullYear', 'getHours', 'getInstanceAtDepth', 'getLocal', 'getMilliseconds',
'getMinutes', 'getMonth', 'getNewTextFormat', 'getNextHighestDepth', 'getPan', 'getProgress',
'getProperty', 'getRGB', 'getSeconds', 'getSelected', 'getSelectedText', 'getSize', 'getStyle',
'getStyleNames', 'getSWFVersion', 'getText', 'getTextExtent', 'getTextFormat', 'getTextSnapshot',
'getTime', 'getTimer', 'getTimezoneOffset', 'getTransform', 'getURL', 'getUTCDate', 'getUTCDay',
'getUTCFullYear', 'getUTCHours', 'getUTCMilliseconds', 'getUTCMinutes', 'getUTCMonth', 'getUTCSeconds',
'getVersion', 'getVolume', 'getYear', 'globalToLocal', 'goto', 'gotoAndPlay', 'gotoAndStop',
'hasAccessibility', 'hasAudio', 'hasAudioEncoder', 'hasChildNodes', 'hasEmbeddedVideo', 'hasMP3',
'hasPrinting', 'hasScreenBroadcast', 'hasScreenPlayback', 'hasStreamingAudio', 'hasStreamingVideo',
'hasVideoEncoder', 'height', 'hide', 'hideBuiltInItems', 'hitArea', 'hitTest', 'hitTestTextNearPos',
'HOME', 'hscroll', 'html', 'htmlText', 'ID3', 'ifFrameLoaded', 'ignoreWhite', 'implements',
'import', 'indent', 'index', 'indexOf', 'Infinity', '-Infinity', 'INSERT', 'insertBefore', 'install',
'instanceof', 'int', 'interface', 'isActive', 'isDebugger', 'isDown', 'isFinite', 'isNaN', 'isToggled',
'italic', 'join', 'Key', 'language', 'lastChild', 'lastIndexOf', 'le', 'leading', 'LEFT', 'leftMargin',
'length', 'level', 'lineStyle', 'lineTo', 'list', 'LN10', 'LN2', 'load', 'loadClip', 'loaded', 'loadMovie',
'loadMovieNum', 'loadSound', 'loadVariables', 'loadVariablesNum', 'LoadVars', 'LocalConnection',
'localFileReadDisable', 'localToGlobal', 'log', 'LOG10E', 'LOG2E', 'manufacturer', 'Math', 'max',
'MAX_VALUE', 'maxChars', 'maxhscroll', 'maxscroll', 'mbchr', 'mblength', 'mbord', 'mbsubstring', 'menu',
'message', 'Microphone', 'min', 'MIN_VALUE', 'MMExecute', 'motionLevel', 'motionTimeOut', 'Mouse',
'mouseWheelEnabled', 'moveTo', 'Movieclip', 'MovieClipLoader', 'multiline', 'muted', 'name', 'names', 'NaN',
'ne', 'NEGATIVE_INFINITY', 'NetConnection', 'NetStream', 'newline', 'nextFrame',
'nextScene', 'nextSibling', 'nodeName', 'nodeType', 'nodeValue', 'not', 'Number', 'Object',
'on', 'onActivity', 'onChanged', 'onClipEvent', 'onClose', 'onConnect', 'onData', 'onDragOut',
'onDragOver', 'onEnterFrame', 'onID3', 'onKeyDown', 'onKeyUp', 'onKillFocus', 'onLoad', 'onLoadComplete',
'onLoadError', 'onLoadInit', 'onLoadProgress', 'onLoadStart', 'onMouseDown', 'onMouseMove', 'onMouseUp',
'onMouseWheel', 'onPress', 'onRelease', 'onReleaseOutside', 'onResize', 'onRollOut', 'onRollOver',
'onScroller', 'onSelect', 'onSetFocus', 'onSoundComplete', 'onStatus', 'onUnload', 'onUpdate', 'onXML',
'or(logischesOR)', 'ord', 'os', 'parentNode', 'parseCSS', 'parseFloat', 'parseInt', 'parseXML', 'password',
'pause', 'PGDN', 'PGUP', 'PI', 'pixelAspectRatio', 'play', 'playerType', 'pop', 'position',
'POSITIVE_INFINITY', 'pow', 'prevFrame', 'previousSibling', 'prevScene', 'print', 'printAsBitmap',
'printAsBitmapNum', 'PrintJob', 'printNum', 'private', 'prototype', 'public', 'push', 'quality',
'random', 'rate', 'registerClass', 'removeListener', 'removeMovieClip', 'removeNode', 'removeTextField',
'replaceSel', 'replaceText', 'resolutionX', 'resolutionY', 'restrict', 'reverse', 'RIGHT',
'rightMargin', 'round', 'scaleMode', 'screenColor', 'screenDPI', 'screenResolutionX', 'screenResolutionY',
'scroll', 'seek', 'selectable', 'Selection', 'send', 'sendAndLoad', 'separatorBefore', 'serverString',
'set', 'setvariable', 'setBufferTime', 'setClipboard', 'setDate', 'setFocus', 'setFullYear', 'setGain',
'setHours', 'setInterval', 'setMask', 'setMilliseconds', 'setMinutes', 'setMode', 'setMonth',
'setMotionLevel', 'setNewTextFormat', 'setPan', 'setProperty', 'setQuality', 'setRate', 'setRGB',
'setSeconds', 'setSelectColor', 'setSelected', 'setSelection', 'setSilenceLevel', 'setStyle',
'setTextFormat', 'setTime', 'setTransform', 'setUseEchoSuppression', 'setUTCDate', 'setUTCFullYear',
'setUTCHours', 'setUTCMilliseconds', 'setUTCMinutes', 'setUTCMonth', 'setUTCSeconds', 'setVolume',
'setYear', 'SharedObject', 'SHIFT(Konstante)', 'shift(Methode)', 'show', 'showMenu', 'showSettings',
'silenceLevel', 'silenceTimeout', 'sin', 'size', 'slice', 'smoothing', 'sort', 'sortOn', 'Sound', 'SPACE',
'splice', 'split', 'sqrt', 'SQRT1_2', 'SQRT2', 'Stage', 'start', 'startDrag', 'static', 'status', 'stop',
'stopAllSounds', 'stopDrag', 'String', 'StyleSheet(Klasse)', 'styleSheet(Eigenschaft)', 'substr',
'substring', 'super', 'swapDepths', 'System', 'TAB', 'tabChildren', 'tabEnabled', 'tabIndex',
'tabStops', 'tan', 'target', 'targetPath', 'tellTarget', 'text', 'textColor', 'TextField', 'TextFormat',
'textHeight', 'TextSnapshot', 'textWidth', 'this', 'throw', 'time', 'toggleHighQuality', 'toLowerCase',
'toString', 'toUpperCase', 'trace', 'trackAsMenu', 'try', 'type', 'typeof', 'undefined',
'underline', 'unescape', 'uninstall', 'unloadClip', 'unloadMovie', 'unLoadMovieNum', 'unshift', 'unwatch',
'UP', 'updateAfterEvent', 'updateProperties', 'url', 'useCodePage', 'useEchoSuppression', 'useHandCursor',
'UTC', 'valueOf', 'variable', 'version', 'Video', 'visible', 'void', 'watch', 'width',
'with', 'wordwrap', 'XML', 'xmlDecl', 'XMLNode', 'XMLSocket'
)
),
'SYMBOLS' => array(
'(', ')', '[', ']', '{', '}', '!', '@', '%', '&', '*', '|', '/', '<', '>'
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => false,
1 => false,
2 => false,
3 => false,
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #b1b100;',
2 => 'color: #000000; font-weight: bold;',
3 => 'color: #0066CC;'
),
'COMMENTS' => array(
1 => 'color: #808080; font-style: italic;',
2 => 'color: #808080; font-style: italic;',
'MULTI' => 'color: #808080; font-style: italic;'
),
'ESCAPE_CHAR' => array(
0 => 'color: #000099; font-weight: bold;'
),
'BRACKETS' => array(
0 => 'color: #66cc66;'
),
'STRINGS' => array(
0 => 'color: #ff0000;'
),
'NUMBERS' => array(
0 => 'color: #cc66cc;'
),
'METHODS' => array(
1 => 'color: #006600;'
),
'SYMBOLS' => array(
0 => 'color: #66cc66;'
),
'REGEXPS' => array(
),
'SCRIPT' => array(
)
),
'URLS' => array(
1 => '',
2 => '',
3 => ''
),
'OOLANG' => true,
'OBJECT_SPLITTERS' => array(
1 => '.'
),
'REGEXPS' => array(
),
'STRICT_MODE_APPLIES' => GESHI_NEVER,
'SCRIPT_DELIMITERS' => array(),
'HIGHLIGHT_STRICT_BLOCK' => array()
);
?>

View File

@ -1,467 +0,0 @@
<?php
/*************************************************************************************
* actionscript3.php
* ----------------
* 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.1
* Date Started: 2007/11/26
*
* ActionScript3 language file for GeSHi.
*
* All keywords scraped from the Flex 2.0.1 Documentation
*
* The default style is based on FlexBuilder2 coloring, with the addition of class, package, method and
* constant names that are highlighted to help identifying problem when used on public pastebins.
*
* For styling, keywords data from 0 to 1 (accessible through .kw1, etc.) are described here :
*
* 1 : operators
* 2 : 'var' keyword
* 3 : 'function' keyword
* 4 : 'class' and 'package' keywords
* 5 : all flash.* class names plus Top Level classes, mx are excluded
* 6 : all flash.* package names, mx are excluded
* 7 : valid flash method names and properties (there is no type checks sadly, for example String().x will be highlighted as 'x' is valid, but obviously strings don't have a x property)
* 8 : valid flash constant names (again, no type check)
*
*
* CHANGES
* -------
* 2007/12/06 (1.0.7.22)
* - Added the 'this' keyword (oops)
*
* TODO (updated 2007/11/30)
* -------------------------
*
*************************************************************************************
*
* 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' => 'ActionScript 3',
'COMMENT_SINGLE' => array(1 => '//'),
'COMMENT_MULTI' => array('/*' => '*/'),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array("'", '"'),
'ESCAPE_CHAR' => '\\',
'KEYWORDS' => array(
1 => array(
'with', 'while', 'void', 'undefined', 'typeof', 'try', 'true',
'throw', 'this', 'switch', 'super', 'set', 'return', 'public', 'protected',
'private', 'null', 'new', 'is', 'internal', 'instanceof', 'in',
'import', 'if', 'get', 'for', 'false', 'else', 'each', 'do',
'delete', 'default', 'continue', 'catch', 'case', 'break', 'as'
),
2 => array(
'var'
),
3 => array(
'function'
),
4 => array(
'class', 'package'
),
6 => array(
'flash.xml', 'flash.utils', 'flash.ui', 'flash.text',
'flash.system', 'flash.profiler', 'flash.printing', 'flash.net',
'flash.media', 'flash.geom', 'flash.filters', 'flash.external',
'flash.events', 'flash.errors', 'flash.display',
'flash.accessibility'
),
7 => array(
'zoom', 'year', 'y', 'xmlDecl', 'x', 'writeUnsignedInt',
'writeUTFBytes', 'writeUTF', 'writeShort', 'writeObject',
'writeMultiByte', 'writeInt', 'writeFloat', 'writeExternal',
'writeDynamicProperty', 'writeDynamicProperties', 'writeDouble',
'writeBytes', 'writeByte', 'writeBoolean', 'wordWrap',
'willTrigger', 'width', 'volume', 'visible', 'videoWidth',
'videoHeight', 'version', 'valueOf', 'value', 'usingTLS',
'useRichTextClipboard', 'useHandCursor', 'useEchoSuppression',
'useCodePage', 'url', 'uri', 'uploadCompleteData', 'upload',
'updateProperties', 'updateAfterEvent', 'upState', 'unshift',
'unlock', 'unload', 'union', 'unescapeMultiByte', 'unescape',
'underline', 'uncompress', 'type', 'ty', 'tx', 'transparent',
'translate', 'transformPoint', 'transform', 'trackAsMenu', 'track',
'trace', 'totalMemory', 'totalFrames', 'topLeft', 'top',
'togglePause', 'toXMLString', 'toUpperCase', 'toUTCString',
'toTimeString', 'toString', 'toPrecision', 'toLowerCase',
'toLocaleUpperCase', 'toLocaleTimeString', 'toLocaleString',
'toLocaleLowerCase', 'toLocaleDateString', 'toFixed',
'toExponential', 'toDateString', 'timezoneOffset', 'timerComplete',
'timer', 'time', 'threshold', 'thickness', 'textWidth',
'textSnapshot', 'textInput', 'textHeight', 'textColor', 'text',
'test', 'target', 'tan', 'tabStops', 'tabIndexChange', 'tabIndex',
'tabEnabledChange', 'tabEnabled', 'tabChildrenChange',
'tabChildren', 'sync', 'swfVersion', 'swapChildrenAt',
'swapChildren', 'subtract', 'substring', 'substr', 'styleSheet',
'styleNames', 'strength', 'stopPropagation',
'stopImmediatePropagation', 'stopDrag', 'stopAll', 'stop', 'status',
'startDrag', 'start', 'stageY', 'stageX', 'stageWidth',
'stageHeight', 'stageFocusRect', 'stage', 'sqrt', 'split', 'splice',
'source', 'soundTransform', 'soundComplete', 'sortOn', 'sort',
'songName', 'some', 'socketData', 'smoothing', 'slice', 'size',
'sin', 'silent', 'silenceTimeout', 'silenceLevel', 'showSettings',
'showRedrawRegions', 'showDefaultContextMenu', 'show', 'shortcut',
'shiftKey', 'shift', 'sharpness', 'sharedEvents', 'shadowColor',
'shadowAlpha', 'settings', 'setUseEchoSuppression', 'setUTCSeconds',
'setUTCMonth', 'setUTCMinutes', 'setUTCMilliseconds', 'setUTCHours',
'setUTCFullYear', 'setUTCDate', 'setTimeout', 'setTime',
'setTextFormat', 'setStyle', 'setSilenceLevel', 'setSettings',
'setSelection', 'setSelected', 'setSelectColor', 'setSeconds',
'setQuality', 'setPropertyIsEnumerable', 'setProperty', 'setPixels',
'setPixel32', 'setPixel', 'setNamespace', 'setName',
'setMotionLevel', 'setMonth', 'setMode', 'setMinutes',
'setMilliseconds', 'setLoopback', 'setLoopBack', 'setLocalName',
'setKeyFrameInterval', 'setInterval', 'setHours', 'setFullYear',
'setEmpty', 'setDirty', 'setDate', 'setCompositionString',
'setClipboard', 'setChildren', 'setChildIndex',
'setAdvancedAntiAliasingTable', 'serverString', 'separatorBefore',
'sendToURL', 'send', 'selectionEndIndex', 'selectionBeginIndex',
'selectable', 'select', 'seek', 'securityError', 'securityDomain',
'secondsUTC', 'seconds', 'search', 'scrollV', 'scrollRect',
'scrollH', 'scroll', 'screenResolutionY', 'screenResolutionX',
'screenDPI', 'screenColor', 'scenes', 'scaleY', 'scaleX',
'scaleMode', 'scale9Grid', 'scale', 'save', 'sandboxType',
'sameDomain', 'running', 'round', 'rotation', 'rotate', 'root',
'rollOver', 'rollOut', 'rightToRight', 'rightToLeft', 'rightPeak',
'rightMargin', 'right', 'rewind', 'reverse', 'resume', 'restrict',
'resize', 'reset', 'requestHeaders', 'replaceText',
'replaceSelectedText', 'replace', 'repeatCount', 'render',
'removedFromStage', 'removed', 'removeNode', 'removeNamespace',
'removeEventListener', 'removeChildAt', 'removeChild',
'relatedObject', 'registerFont', 'registerClassAlias', 'redOffset',
'redMultiplier', 'rect', 'receiveVideo', 'receiveAudio',
'readUnsignedShort', 'readUnsignedInt', 'readUnsignedByte',
'readUTFBytes', 'readUTF', 'readShort', 'readObject',
'readMultiByte', 'readInt', 'readFloat', 'readExternal',
'readDouble', 'readBytes', 'readByte', 'readBoolean', 'ratios',
'rate', 'random', 'quality', 'push', 'publish', 'proxyType',
'prototype', 'propertyIsEnumerable', 'progress',
'processingInstructions', 'printAsBitmap', 'print',
'previousSibling', 'preventDefault', 'prevScene', 'prevFrame',
'prettyPrinting', 'prettyIndent', 'preserveAlpha', 'prependChild',
'prefix', 'pow', 'position', 'pop', 'polar', 'playerType', 'play',
'pixelSnapping', 'pixelDissolve', 'pixelBounds', 'pixelAspectRatio',
'perlinNoise', 'pause', 'parseXML', 'parseInt', 'parseFloat',
'parseCSS', 'parse', 'parentNode', 'parentDomain',
'parentAllowsChild', 'parent', 'parameters', 'paperWidth',
'paperHeight', 'pan', 'paletteMap', 'pageWidth', 'pageHeight',
'overState', 'outsideCutoff', 'os', 'orientation', 'open',
'opaqueBackground', 'onPlayStatus', 'onMetaData', 'onCuePoint',
'offsetPoint', 'offset', 'objectID', 'objectEncoding', 'numLock',
'numLines', 'numFrames', 'numChildren', 'normalize', 'noise',
'nodeValue', 'nodeType', 'nodeName', 'nodeKind', 'noAutoLabeling',
'nextValue', 'nextSibling', 'nextScene', 'nextNameIndex',
'nextName', 'nextFrame', 'netStatus', 'navigateToURL',
'namespaceURI', 'namespaceDeclarations', 'namespace', 'names',
'name', 'muted', 'multiline', 'moveTo', 'mouseY', 'mouseX',
'mouseWheelEnabled', 'mouseWheel', 'mouseUp', 'mouseTarget',
'mouseOver', 'mouseOut', 'mouseMove', 'mouseLeave',
'mouseFocusChange', 'mouseEnabled', 'mouseDown', 'mouseChildren',
'motionTimeout', 'motionLevel', 'monthUTC', 'month',
'modificationDate', 'mode', 'minutesUTC', 'minutes', 'min',
'millisecondsUTC', 'milliseconds', 'method', 'message', 'merge',
'menuSelect', 'menuItemSelect', 'maxScrollV', 'maxScrollH',
'maxLevel', 'maxChars', 'max', 'matrixY', 'matrixX', 'matrix',
'match', 'mask', 'mapPoint', 'mapBitmap', 'map', 'manufacturer',
'macType', 'loopback', 'loop', 'log', 'lock', 'localeCompare',
'localY', 'localX', 'localToGlobal', 'localName',
'localFileReadDisable', 'loaderURL', 'loaderInfo', 'loader',
'loadPolicyFile', 'loadBytes', 'load', 'liveDelay', 'link',
'lineTo', 'lineStyle', 'lineGradientStyle', 'level',
'letterSpacing', 'length', 'leftToRight', 'leftToLeft', 'leftPeak',
'leftMargin', 'left', 'leading', 'lastIndexOf', 'lastIndex',
'lastChild', 'language', 'labels', 'knockout', 'keyUp',
'keyLocation', 'keyFrameInterval', 'keyFocusChange', 'keyDown',
'keyCode', 'kerning', 'join', 'italic', 'isXMLName',
'isPrototypeOf', 'isNaN', 'isFocusInaccessible', 'isFinite',
'isEmpty', 'isDefaultPrevented', 'isDebugger', 'isBuffering',
'isAttribute', 'isAccessible', 'ioError', 'invert', 'invalidate',
'intersects', 'intersection', 'interpolate', 'insideCutoff',
'insertChildBefore', 'insertChildAfter', 'insertBefore', 'inner',
'init', 'info', 'inflatePoint', 'inflate', 'indexOf', 'index',
'indent', 'inScopeNamespaces', 'imeComposition', 'ime',
'ignoreWhitespace', 'ignoreWhite', 'ignoreProcessingInstructions',
'ignoreComments', 'ignoreCase', 'identity', 'idMap', 'id3',
'httpStatus', 'htmlText', 'hoursUTC', 'hours', 'hitTestTextNearPos',
'hitTestState', 'hitTestPoint', 'hitTestObject', 'hitTest',
'hitArea', 'highlightColor', 'highlightAlpha', 'hideObject',
'hideBuiltInItems', 'hide', 'height', 'hasVideoEncoder', 'hasTLS',
'hasStreamingVideo', 'hasStreamingAudio', 'hasSimpleContent',
'hasScreenPlayback', 'hasScreenBroadcast', 'hasProperty',
'hasPrinting', 'hasOwnProperty', 'hasMP3', 'hasIME', 'hasGlyphs',
'hasEventListener', 'hasEmbeddedVideo', 'hasDefinition',
'hasComplexContent', 'hasChildNodes', 'hasAudioEncoder', 'hasAudio',
'hasAccessibility', 'gridFitType', 'greenOffset', 'greenMultiplier',
'graphics', 'gotoAndStop', 'gotoAndPlay', 'globalToLocal', 'global',
'getUTCSeconds', 'getUTCMonth', 'getUTCMinutes',
'getUTCMilliseconds', 'getUTCHours', 'getUTCFullYear', 'getUTCDay',
'getUTCDate', 'getTimezoneOffset', 'getTimer', 'getTime',
'getTextRunInfo', 'getTextFormat', 'getText', 'getStyle',
'getStackTrace', 'getSelectedText', 'getSelected', 'getSeconds',
'getRemote', 'getRect', 'getQualifiedSuperclassName',
'getQualifiedClassName', 'getProperty', 'getPrefixForNamespace',
'getPixels', 'getPixel32', 'getPixel', 'getParagraphLength',
'getObjectsUnderPoint', 'getNamespaceForPrefix', 'getMonth',
'getMinutes', 'getMilliseconds', 'getMicrophone', 'getLocal',
'getLineText', 'getLineOffset', 'getLineMetrics', 'getLineLength',
'getLineIndexOfChar', 'getLineIndexAtPoint', 'getImageReference',
'getHours', 'getFullYear', 'getFirstCharInParagraph',
'getDescendants', 'getDefinitionByName', 'getDefinition', 'getDay',
'getDate', 'getColorBoundsRect', 'getClassByAlias', 'getChildIndex',
'getChildByName', 'getChildAt', 'getCharIndexAtPoint',
'getCharBoundaries', 'getCamera', 'getBounds', 'genre',
'generateFilterRect', 'gain', 'fullYearUTC', 'fullYear',
'fullScreen', 'fscommand', 'fromCharCode', 'framesLoaded',
'frameRate', 'frame', 'fps', 'forwardAndBack', 'formatToString',
'forceSimple', 'forEach', 'fontType', 'fontStyle', 'fontSize',
'fontName', 'font', 'focusRect', 'focusOut', 'focusIn', 'focus',
'flush', 'floor', 'floodFill', 'firstChild', 'findText', 'filters',
'filter', 'fillRect', 'fileList', 'extension', 'extended', 'exp',
'exec', 'exactSettings', 'every', 'eventPhase', 'escapeMultiByte',
'escape', 'errorID', 'error', 'equals', 'enumerateFonts',
'enterFrame', 'endian', 'endFill', 'encodeURIComponent',
'encodeURI', 'enabled', 'embedFonts', 'elements',
'dynamicPropertyWriter', 'dropTarget', 'drawRoundRect', 'drawRect',
'drawEllipse', 'drawCircle', 'draw', 'download', 'downState',
'doubleClickEnabled', 'doubleClick', 'dotall', 'domain',
'docTypeDecl', 'doConversion', 'divisor', 'distance', 'dispose',
'displayState', 'displayMode', 'displayAsPassword', 'dispatchEvent',
'description', 'describeType', 'descent', 'descendants',
'deltaTransformPoint', 'delta', 'deleteProperty', 'delay',
'defaultTextFormat', 'defaultSettings', 'defaultObjectEncoding',
'decodeURIComponent', 'decodeURI', 'decode', 'deblocking',
'deactivate', 'dayUTC', 'day', 'dateUTC', 'date', 'dataFormat',
'data', 'd', 'customItems', 'curveTo', 'currentTarget',
'currentScene', 'currentLabels', 'currentLabel', 'currentFrame',
'currentFPS', 'currentDomain', 'currentCount', 'ctrlKey', 'creator',
'creationDate', 'createTextNode', 'createGradientBox',
'createElement', 'createBox', 'cos', 'copyPixels', 'copyChannel',
'copy', 'conversionMode', 'contextMenuOwner', 'contextMenu',
'contentType', 'contentLoaderInfo', 'content', 'containsRect',
'containsPoint', 'contains', 'constructor', 'connectedProxyType',
'connected', 'connect', 'condenseWhite', 'concatenatedMatrix',
'concatenatedColorTransform', 'concat', 'computeSpectrum',
'compress', 'componentY', 'componentX', 'complete', 'compare',
'comments', 'comment', 'colors', 'colorTransform', 'color', 'code',
'close', 'cloneNode', 'clone', 'client', 'click', 'clearTimeout',
'clearInterval', 'clear', 'clamp', 'children', 'childNodes',
'childIndex', 'childAllowsParent', 'child', 'checkPolicyFile',
'charCount', 'charCodeAt', 'charCode', 'charAt', 'changeList',
'change', 'ceil', 'caretIndex', 'caption', 'capsLock', 'cancelable',
'cancel', 'callee', 'callProperty', 'call', 'cacheAsBitmap', 'c',
'bytesTotal', 'bytesLoaded', 'bytesAvailable', 'buttonMode',
'buttonDown', 'bullet', 'builtInItems', 'bufferTime',
'bufferLength', 'bubbles', 'browse', 'bottomScrollV', 'bottomRight',
'bottom', 'borderColor', 'border', 'bold', 'blurY', 'blurX',
'blueOffset', 'blueMultiplier', 'blockIndent', 'blendMode',
'bitmapData', 'bias', 'beginGradientFill', 'beginFill',
'beginBitmapFill', 'bandwidth', 'backgroundColor', 'background',
'b', 'available', 'avHardwareDisable', 'autoSize', 'attributes',
'attribute', 'attachNetStream', 'attachCamera', 'attachAudio',
'atan2', 'atan', 'asyncError', 'asin', 'ascent', 'artist',
'areSoundsInaccessible', 'areInaccessibleObjectsUnderPoint',
'applyFilter', 'apply', 'applicationDomain', 'appendText',
'appendChild', 'antiAliasType', 'angle', 'alwaysShowSelection',
'altKey', 'alphas', 'alphaOffset', 'alphaMultiplier', 'alpha',
'allowInsecureDomain', 'allowDomain', 'align', 'album',
'addedToStage', 'added', 'addPage', 'addNamespace', 'addHeader',
'addEventListener', 'addChildAt', 'addChild', 'addCallback', 'add',
'activityLevel', 'activity', 'active', 'activating', 'activate',
'actionScriptVersion', 'acos', 'accessibilityProperties', 'abs'
),
8 => array(
'WRAP', 'VERTICAL', 'VARIABLES',
'UTC', 'UPLOAD_COMPLETE_DATA', 'UP', 'UNLOAD', 'UNKNOWN',
'UNIQUESORT', 'TOP_RIGHT', 'TOP_LEFT', 'TOP', 'TIMER_COMPLETE',
'TIMER', 'TEXT_NODE', 'TEXT_INPUT', 'TEXT', 'TAB_INDEX_CHANGE',
'TAB_ENABLED_CHANGE', 'TAB_CHILDREN_CHANGE', 'TAB', 'SYNC',
'SUBTRACT', 'SUBPIXEL', 'STATUS', 'STANDARD', 'SQUARE', 'SQRT2',
'SQRT1_2', 'SPACE', 'SOUND_COMPLETE', 'SOCKET_DATA', 'SHOW_ALL',
'SHIFT', 'SETTINGS_MANAGER', 'SELECT', 'SECURITY_ERROR', 'SCROLL',
'SCREEN', 'ROUND', 'ROLL_OVER', 'ROLL_OUT', 'RIGHT', 'RGB',
'RETURNINDEXEDARRAY', 'RESIZE', 'REPEAT', 'RENDER',
'REMOVED_FROM_STAGE', 'REMOVED', 'REMOTE', 'REGULAR', 'REFLECT',
'RED', 'RADIAL', 'PROGRESS', 'PRIVACY', 'POST', 'POSITIVE_INFINITY',
'PORTRAIT', 'PIXEL', 'PI', 'PENDING', 'PAGE_UP', 'PAGE_DOWN', 'PAD',
'OVERLAY', 'OUTER', 'OPEN', 'NaN', 'NUM_PAD', 'NUMPAD_SUBTRACT',
'NUMPAD_MULTIPLY', 'NUMPAD_ENTER', 'NUMPAD_DIVIDE',
'NUMPAD_DECIMAL', 'NUMPAD_ADD', 'NUMPAD_9', 'NUMPAD_8', 'NUMPAD_7',
'NUMPAD_6', 'NUMPAD_5', 'NUMPAD_4', 'NUMPAD_3', 'NUMPAD_2',
'NUMPAD_1', 'NUMPAD_0', 'NUMERIC', 'NO_SCALE', 'NO_BORDER',
'NORMAL', 'NONE', 'NEVER', 'NET_STATUS', 'NEGATIVE_INFINITY',
'MULTIPLY', 'MOUSE_WHEEL', 'MOUSE_UP', 'MOUSE_OVER', 'MOUSE_OUT',
'MOUSE_MOVE', 'MOUSE_LEAVE', 'MOUSE_FOCUS_CHANGE', 'MOUSE_DOWN',
'MITER', 'MIN_VALUE', 'MICROPHONE', 'MENU_SELECT',
'MENU_ITEM_SELECT', 'MEDIUM', 'MAX_VALUE', 'LOW', 'LOG2E', 'LOG10E',
'LOCAL_WITH_NETWORK', 'LOCAL_WITH_FILE', 'LOCAL_TRUSTED',
'LOCAL_STORAGE', 'LN2', 'LN10', 'LITTLE_ENDIAN', 'LINK',
'LINEAR_RGB', 'LINEAR', 'LIGHT_COLOR', 'LIGHTEN', 'LEFT', 'LCD',
'LAYER', 'LANDSCAPE', 'KOREAN', 'KEY_UP', 'KEY_FOCUS_CHANGE',
'KEY_DOWN', 'JUSTIFY', 'JAPANESE_KATAKANA_HALF',
'JAPANESE_KATAKANA_FULL', 'JAPANESE_HIRAGANA', 'Infinity', 'ITALIC',
'IO_ERROR', 'INVERT', 'INSERT', 'INPUT', 'INNER', 'INIT',
'IME_COMPOSITION', 'IGNORE', 'ID3', 'HTTP_STATUS', 'HORIZONTAL',
'HOME', 'HIGH', 'HARDLIGHT', 'GREEN', 'GET', 'FULLSCREEN', 'FULL',
'FOCUS_OUT', 'FOCUS_IN', 'FLUSHED', 'FLASH9', 'FLASH8', 'FLASH7',
'FLASH6', 'FLASH5', 'FLASH4', 'FLASH3', 'FLASH2', 'FLASH1', 'F9',
'F8', 'F7', 'F6', 'F5', 'F4', 'F3', 'F2', 'F15', 'F14', 'F13',
'F12', 'F11', 'F10', 'F1', 'EXACT_FIT', 'ESCAPE', 'ERROR', 'ERASE',
'ENTER_FRAME', 'ENTER', 'END', 'EMBEDDED', 'ELEMENT_NODE', 'E',
'DYNAMIC', 'DOWN', 'DOUBLE_CLICK', 'DIFFERENCE', 'DEVICE',
'DESCENDING', 'DELETE', 'DEFAULT', 'DEACTIVATE', 'DATA',
'DARK_COLOR', 'DARKEN', 'CRT', 'CONTROL', 'CONNECT', 'COMPLETE',
'COLOR', 'CLOSE', 'CLICK', 'CLAMP', 'CHINESE', 'CHANGE', 'CENTER',
'CASEINSENSITIVE', 'CAPTURING_PHASE', 'CAPS_LOCK', 'CANCEL',
'CAMERA', 'BUBBLING_PHASE', 'BOTTOM_RIGHT', 'BOTTOM_LEFT', 'BOTTOM',
'BOLD_ITALIC', 'BOLD', 'BLUE', 'BINARY', 'BIG_ENDIAN', 'BEVEL',
'BEST', 'BACKSPACE', 'AUTO', 'AT_TARGET', 'ASYNC_ERROR', 'AMF3',
'AMF0', 'ALWAYS', 'ALPHANUMERIC_HALF', 'ALPHANUMERIC_FULL', 'ALPHA',
'ADVANCED', 'ADDED_TO_STAGE', 'ADDED', 'ADD', 'ACTIVITY',
'ACTIONSCRIPT3', 'ACTIONSCRIPT2'
),
//FIX: Must be last in order to avoid conflicts with keywords present
//in other keyword groups, that might get highlighted as part of the URL.
//I know this is not a proper work-around, but should do just fine.
5 => array(
'uint', 'int', 'arguments', 'XMLSocket', 'XMLNodeType', 'XMLNode',
'XMLList', 'XMLDocument', 'XML', 'Video', 'VerifyError',
'URLVariables', 'URLStream', 'URLRequestMethod', 'URLRequestHeader',
'URLRequest', 'URLLoaderDataFormat', 'URLLoader', 'URIError',
'TypeError', 'Transform', 'TimerEvent', 'Timer', 'TextSnapshot',
'TextRenderer', 'TextLineMetrics', 'TextFormatAlign', 'TextFormat',
'TextFieldType', 'TextFieldAutoSize', 'TextField', 'TextEvent',
'TextDisplayMode', 'TextColorType', 'System', 'SyntaxError',
'SyncEvent', 'StyleSheet', 'String', 'StatusEvent', 'StaticText',
'StageScaleMode', 'StageQuality', 'StageAlign', 'Stage',
'StackOverflowError', 'Sprite', 'SpreadMethod', 'SoundTransform',
'SoundMixer', 'SoundLoaderContext', 'SoundChannel', 'Sound',
'Socket', 'SimpleButton', 'SharedObjectFlushStatus', 'SharedObject',
'Shape', 'SecurityPanel', 'SecurityErrorEvent', 'SecurityError',
'SecurityDomain', 'Security', 'ScriptTimeoutError', 'Scene',
'SWFVersion', 'Responder', 'RegExp', 'ReferenceError', 'Rectangle',
'RangeError', 'QName', 'Proxy', 'ProgressEvent',
'PrintJobOrientation', 'PrintJobOptions', 'PrintJob', 'Point',
'PixelSnapping', 'ObjectEncoding', 'Object', 'Number', 'NetStream',
'NetStatusEvent', 'NetConnection', 'Namespace', 'MovieClip',
'MouseEvent', 'Mouse', 'MorphShape', 'Microphone', 'MemoryError',
'Matrix', 'Math', 'LocalConnection', 'LoaderInfo', 'LoaderContext',
'Loader', 'LineScaleMode', 'KeyboardEvent', 'Keyboard',
'KeyLocation', 'JointStyle', 'InvalidSWFError',
'InterpolationMethod', 'InteractiveObject', 'IllegalOperationError',
'IOErrorEvent', 'IOError', 'IMEEvent', 'IMEConversionMode', 'IME',
'IExternalizable', 'IEventDispatcher', 'IDynamicPropertyWriter',
'IDynamicPropertyOutput', 'IDataOutput', 'IDataInput', 'ID3Info',
'IBitmapDrawable', 'HTTPStatusEvent', 'GridFitType', 'Graphics',
'GradientType', 'GradientGlowFilter', 'GradientBevelFilter',
'GlowFilter', 'Function', 'FrameLabel', 'FontType', 'FontStyle',
'Font', 'FocusEvent', 'FileReferenceList', 'FileReference',
'FileFilter', 'ExternalInterface', 'EventPhase', 'EventDispatcher',
'Event', 'EvalError', 'ErrorEvent', 'Error', 'Endian', 'EOFError',
'DropShadowFilter', 'DisplayObjectContainer', 'DisplayObject',
'DisplacementMapFilterMode', 'DisplacementMapFilter', 'Dictionary',
'DefinitionError', 'Date', 'DataEvent', 'ConvolutionFilter',
'ContextMenuItem', 'ContextMenuEvent', 'ContextMenuBuiltInItems',
'ContextMenu', 'ColorTransform', 'ColorMatrixFilter', 'Class',
'CapsStyle', 'Capabilities', 'Camera', 'CSMSettings', 'ByteArray',
'Boolean', 'BlurFilter', 'BlendMode', 'BitmapFilterType',
'BitmapFilterQuality', 'BitmapFilter', 'BitmapDataChannel',
'BitmapData', 'Bitmap', 'BevelFilter', 'AsyncErrorEvent', 'Array',
'ArgumentError', 'ApplicationDomain', 'AntiAliasType',
'ActivityEvent', 'ActionScriptVersion', 'AccessibilityProperties',
'Accessibility', 'AVM1Movie'
)
),
'SYMBOLS' => array(
'(', ')', '[', ']', '{', '}', '!', '%', '&', '*', '|', '/', '<', '>', '^', '-', '+', '~', '?', ':'
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => false,
1 => true,
2 => true,
3 => true,
4 => true,
5 => true,
6 => true,
7 => true,
8 => true
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #0033ff; font-weight: bold;',
2 => 'color: #6699cc; font-weight: bold;',
3 => 'color: #339966; font-weight: bold;',
4 => 'color: #9900cc; font-weight: bold;',
5 => 'color: #004993;',
6 => 'color: #004993;',
7 => 'color: #004993;',
8 => 'color: #004993;'
),
'COMMENTS' => array(
1 => 'color: #009900;',
'MULTI' => 'color: #3f5fbf;'
),
'ESCAPE_CHAR' => array(
0 => ''
),
'BRACKETS' => array(
0 => 'color: #000000;'
),
'STRINGS' => array(
0 => 'color: #990000;'
),
'NUMBERS' => array(
0 => 'color: #000000; font-weight:bold;'
),
'METHODS' => array(
0 => 'color: #000000;',
),
'SYMBOLS' => array(
0 => 'color: #000000; font-weight: bold;'
),
'REGEXPS' => array(
),
'SCRIPT' => array(
)
),
'URLS' => array(
1 => '',
2 => '',
3 => '',
4 => '',
5 => 'http://www.google.com/search?q={FNAMEL}%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:{FNAMEL}.html&amp;filter=0&amp;num=100&amp;btnI=lucky',
6 => '',
7 => '',
8 => ''
),
'OOLANG' => false,//Save some time as OO identifiers aren't used
'OBJECT_SPLITTERS' => array(
// commented out because it's not very relevant for AS, as all properties, methods and constants are dot-accessed.
// I believe it's preferable to have package highlighting for example, which is not possible with this enabled.
// 0 => '.'
),
'REGEXPS' => array(
),
'STRICT_MODE_APPLIES' => GESHI_NEVER,
'SCRIPT_DELIMITERS' => array(),
'HIGHLIGHT_STRICT_BLOCK' => array()
);
?>

View File

@ -1,133 +0,0 @@
<?php
/*************************************************************************************
* ada.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.1
* Date Started: 2004/07/29
*
* Ada language file for GeSHi.
* Words are from SciTe configuration file
*
* CHANGES
* -------
* 2004/11/27 (1.0.2)
* - Added support for multiple object splitters
* 2004/10/27 (1.0.1)
* - Removed apostrophe as string delimiter
* - Added URL support
* 2004/08/05 (1.0.0)
* - First Release
*
* TODO (updated 2004/11/27)
* -------------------------
*
*************************************************************************************
*
* This file is part of GeSHi.
*
* GeSHi is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* GeSHi is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GeSHi; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
************************************************************************************/
$language_data = array (
'LANG_NAME' => 'Ada',
'COMMENT_SINGLE' => array(1 => '--'),
'COMMENT_MULTI' => array('/*' => '*/'),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array('"'),
'ESCAPE_CHAR' => '\\',
'KEYWORDS' => array(
1 => array(
'begin', 'declare', 'do', 'else', 'elsif', 'exception', 'for', 'if',
'is', 'loop', 'while', 'then', 'end', 'select', 'case', 'until',
'goto', 'return'
),
2 => array(
'abs', 'and', 'mod', 'not', 'or', 'rem', 'xor'
),
3 => array(
'abort', 'abstract', 'accept', 'access', 'aliased', 'all', 'array', 'at', 'body',
'constant', 'delay', 'delta', 'digits', 'entry', 'exit',
'function', 'generic', 'in', 'limited', 'new', 'null', 'of', 'others', 'out', 'package', 'pragma',
'private', 'procedure', 'protected', 'raise', 'range', 'record', 'renames', 'requeue', 'reverse',
'separate', 'subtype', 'tagged', 'task', 'terminate', 'type', 'use', 'when', 'with'
)
),
'SYMBOLS' => array(
'(', ')'
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => false,
1 => false,
2 => false,
3 => false,
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #00007f;',
2 => 'color: #0000ff;',
3 => 'color: #46aa03; font-weight:bold;',
),
'BRACKETS' => array(
0 => 'color: #66cc66;'
),
'COMMENTS' => array(
1 => 'color: #adadad; font-style: italic;',
'MULTI' => 'color: #808080; font-style: italic;'
),
'ESCAPE_CHAR' => array(
0 => 'color: #000099; font-weight: bold;'
),
'BRACKETS' => array(
0 => 'color: #66cc66;'
),
'STRINGS' => array(
0 => 'color: #7f007f;'
),
'NUMBERS' => array(
0 => 'color: #ff0000;'
),
'METHODS' => array(
1 => 'color: #202020;'
),
'SYMBOLS' => array(
0 => 'color: #66cc66;'
),
'REGEXPS' => array(
),
'SCRIPT' => array(
)
),
'URLS' => array(
1 => '',
2 => '',
3 => ''
),
'OOLANG' => true,
'OBJECT_SPLITTERS' => array(
1 => '.'
),
'REGEXPS' => array(
),
'STRICT_MODE_APPLIES' => GESHI_NEVER,
'SCRIPT_DELIMITERS' => array(
),
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
?>

View File

@ -1,206 +0,0 @@
<?php
/*************************************************************************************
* apache.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.1
* Date Started: 2004/29/07
*
* Apache language file for GeSHi.
* Words are from SciTe configuration file
*
* CHANGES
* -------
* 2008/17/06 (1.0.8)
* - Added support for apache configuration sections (milian)
* - Added missing php keywords (milian)
* - Added some more keywords
* - Disabled highlighting of brackets by default
* 2004/11/27 (1.0.2)
* - Added support for multiple object splitters
* 2004/10/27 (1.0.1)
* - Added support for URLs
* 2004/08/05 (1.0.0)
* - First Release
*
* TODO (updated 2004/07/29)
* -------------------------
*
*************************************************************************************
*
* 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' => 'Apache configuration',
'COMMENT_SINGLE' => array(1 => '#'),
'COMMENT_MULTI' => array(),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array("'", '"'),
'ESCAPE_CHAR' => '\\',
'KEYWORDS' => array(
/*keywords*/
1 => array(
'accessconfig','accessfilename','action','addalt',
'addaltbyencoding','addaltbytype','addcharset',
'adddefaultcharset','adddescription',
'addencoding','addhandler','addicon','addiconbyencoding',
'addiconbytype','addlanguage','addmodule','addmoduleinfo',
'addtype','agentlog','alias','aliasmatch',
'allow','allowconnect','allowoverride','anonymous',
'anonymous_authoritative','anonymous_logemail','anonymous_mustgiveemail',
'anonymous_nouserid','anonymous_verifyemail','authauthoritative',
'authdbauthoritative','authdbgroupfile','authdbmauthoritative',
'authdbmgroupfile','authdbuserfile','authdbmuserfile',
'authdigestfile','authgroupfile','authname','authtype',
'authuserfile','bindaddress','browsermatch','browsermatchnocase',
'bs2000account','cachedefaultexpire','cachedirlength','cachedirlevels',
'cacheforcecompletion','cachegcinterval','cachelastmodifiedfactor','cachemaxexpire',
'cachenegotiateddocs','cacheroot','cachesize','checkspelling',
'clearmodulelist','contentdigest','cookieexpires','cookielog',
'cookietracking','coredumpdirectory','customlog',
'defaulticon','defaultlanguage','defaulttype','define',
'deny','directory','directorymatch','directoryindex',
'documentroot','errordocument','errorlog','example',
'expiresactive','expiresbytype','expiresdefault','extendedstatus',
'fancyindexing','files','filesmatch','forcetype',
'group','header','headername','hostnamelookups',
'identitycheck','ifdefine','ifmodule','imapbase',
'imapdefault','imapmenu','include','indexignore','indexorderdefault',
'indexoptions','keepalive','keepalivetimeout','languagepriority',
'limit','limitexcept','limitrequestbody','limitrequestfields',
'limitrequestfieldsize','limitrequestline','listen','listenbacklog',
'loadfile','loadmodule','location','locationmatch',
'lockfile','logformat','loglevel','maxclients',
'maxkeepaliverequests','maxrequestsperchild','maxspareservers','maxsparethreads','metadir',
'metafiles','metasuffix','mimemagicfile','minspareservers','minsparethreads',
'mmapfile','namevirtualhost','nocache','options','order',
'passenv','php_admin_value','php_admin_flag','php_value','pidfile','port','proxyblock','proxydomain',
'proxypass','proxypassreverse','proxyreceivebuffersize','proxyremote',
'proxyrequests','proxyvia','qsc','readmename',
'redirect','redirectmatch','redirectpermanent','redirecttemp',
'refererignore','refererlog','removehandler','require',
'resourceconfig','rewritebase','rewritecond','rewriteengine',
'rewritelock','rewritelog','rewriteloglevel','rewritemap',
'rewriteoptions','rewriterule','rlimitcpu','rlimitmem',
'rlimitnproc','satisfy','scoreboardfile','script',
'scriptalias','scriptaliasmatch','scriptinterpretersource','scriptlog',
'scriptlogbuffer','scriptloglength','sendbuffersize',
'serveradmin','serveralias','servername','serverpath',
'serverroot','serversignature','servertokens','servertype',
'setenv','setenvif','setenvifnocase','sethandler',
'singlelisten','startservers','threadsperchild','timeout',
'transferlog','typesconfig','unsetenv','usecanonicalname',
'user','userdir','virtualhost','virtualdocumentroot',
'virtualdocumentrootip','virtualscriptalias','virtualscriptaliasip',
'xbithack','from','all'
),
/*keywords 2*/
2 => array(
'on','off','standalone','inetd','indexes',
'force-response-1.0','downgrade-1.0','nokeepalive',
'ndexes','includes','followsymlinks','none',
'x-compress','x-gzip'
),
/*keywords 3*/
3 => array(
'Directory',
'DirectoryMatch',
'Files',
'FilesMatch',
'IfDefine',
'IfModule',
'IfVersion',
'Location',
'LocationMatch',
'Proxy',
'ProxyMatch',
'VirtualHost'
)
),
'SYMBOLS' => array(
'+', '-'
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => false,
1 => false,
2 => false,
3 => false,
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #00007f;',
2 => 'color: #0000ff;',
3 => 'color: #000000; font-weight:bold;',
),
'COMMENTS' => array(
1 => 'color: #adadad; font-style: italic;',
),
'ESCAPE_CHAR' => array(
0 => 'color: #000099; font-weight: bold;'
),
'BRACKETS' => array(
0 => 'color: #339933;'
),
'STRINGS' => array(
0 => 'color: #7f007f;'
),
'NUMBERS' => array(
0 => 'color: #ff0000;'
),
'METHODS' => array(
),
'SYMBOLS' => array(
0 => 'color: #008000;'
),
'REGEXPS' => array(
),
'SCRIPT' => array(
)
),
'URLS' => array(
1 => '',
2 => '',
3 => ''
),
'OOLANG' => false,
'OBJECT_SPLITTERS' => array(
),
'REGEXPS' => array(
),
'STRICT_MODE_APPLIES' => GESHI_NEVER,
'SCRIPT_DELIMITERS' => array(
),
'HIGHLIGHT_STRICT_BLOCK' => array(
),
'PARSER_CONTROL' => array(
'ENABLE_FLAGS' => array(
'BRACKETS' => GESHI_NEVER,
'SYMBOLS' => GESHI_NEVER
),
'KEYWORDS' => array(
3 => array(
'DISALLOWED_BEFORE' => '(?<=&lt;|&lt;\/)',
'DISALLOWED_AFTER' => '(?=\s|\/|&gt;)',
)
)
)
);
?>

View File

@ -1,146 +0,0 @@
<?php
/*************************************************************************************
* applescript.php
* --------
* Author: Stephan Klimek (http://www.initware.org)
* Copyright: Stephan Klimek (http://www.initware.org)
* Release Version: 1.0.8.1
* Date Started: 2005/07/20
*
* AppleScript language file for GeSHi.
*
* CHANGES
* -------
* 2008/05/23 (1.0.7.22)
* - Added description of extra language features (SF#1970248)
*
* TODO
* -------------------------
* URL settings to references
*
**************************************************************************************
*
* 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' => 'AppleScript',
'COMMENT_SINGLE' => array(1 => '--'),
'COMMENT_MULTI' => array( '(*' => '*)'),
'COMMENT_REGEXP' => array(
2 => '/(?<=[a-z])\'/i',
3 => '/(?<![a-z])\'.*?\'/i',
),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array('"'),
'ESCAPE_CHAR' => '\\',
'KEYWORDS' => array(
1 => array(
'script','property','prop','end','to','set','global','local','on','of',
'in','given','with','without','return','continue','tell','if','then','else','repeat',
'times','while','until','from','exit','try','error','considering','ignoring','timeout',
'transaction','my','get','put','into','is'
),
2 => array(
'each','some','every','whose','where','id','index','first','second','third','fourth',
'fifth','sixth','seventh','eighth','ninth','tenth','last','front','back','st','nd',
'rd','th','middle','named','through','thru','before','after','beginning','the'
),
3 => array(
'close','copy','count','delete','duplicate','exists','launch','make','move','open',
'print','quit','reopen','run','save','saving',
'it','me','version','pi','result','space','tab','anything','case','diacriticals','expansion',
'hyphens','punctuation','bold','condensed','expanded','hidden','italic','outline','plain',
'shadow','strikethrough','subscript','superscript','underline','ask','no','yes','false',
'true','weekday','monday','mon','tuesday','tue','wednesday','wed','thursday','thu','friday',
'fri','saturday','sat','sunday','sun','month','january','jan','february','feb','march',
'mar','april','apr','may','june','jun','july','jul','august','aug','september',
'sep','october','oct','november','nov','december','dec','minutes','hours',
'days','weeks','div','mod','and','not','or','as','contains','equal','equals','isnt'
)
),
'SYMBOLS' => array(
')','+','-','^','*','/','&','<','>=','<','<=','=','<27>'
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => false,
1 => false,
2 => false,
3 => false,
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #b1b100;',
2 => 'color: #000000; font-weight: bold;',
3 => 'color: #000066;'
),
'COMMENTS' => array(
1 => 'color: #808080; font-style: italic;',
2 => '',
3 => 'color: #ff0000;',
'MULTI' => 'color: #808080; font-style: italic;'
),
'ESCAPE_CHAR' => array(
0 => 'color: #000099; font-weight: bold;'
),
'BRACKETS' => array(
0 => 'color: #66cc66;'
),
'STRINGS' => array(
0 => 'color: #ff0000;'
),
'NUMBERS' => array(
0 => 'color: #cc66cc;'
),
'METHODS' => array(
1 => 'color: #006600;',
2 => 'color: #006600;'
),
'SYMBOLS' => array(
0 => 'color: #66cc66;'
),
'REGEXPS' => array(
0 => 'color: #0000ff;',
4 => 'color: #009999;',
),
'SCRIPT' => array(
)
),
'URLS' => array(
1 => '',
2 => '',
3 => ''
),
'OOLANG' => true,
'OBJECT_SPLITTERS' => array(
1 => ',+-=&lt;&gt;/?^&amp;*'
),
'REGEXPS' => array(
//Variables
0 => '[\\$%@]+[a-zA-Z_][a-zA-Z0-9_]*',
//File descriptors
4 => '&lt;[a-zA-Z_][a-zA-Z0-9_]*&gt;',
),
'STRICT_MODE_APPLIES' => GESHI_NEVER,
'SCRIPT_DELIMITERS' => array(
),
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
?>

View File

@ -1,144 +0,0 @@
<?php
/*************************************************************************************
* apt_sources.php
* ----------
* Author: Milian Wolff (mail@milianw.de)
* Copyright: (c) 2008 Milian Wolff (http://milianw.de)
* Release Version: 1.0.8.1
* Date Started: 2008/06/17
*
* Apt sources.list language file for GeSHi.
*
* CHANGES
* -------
* 2008/06/17 (1.0.8)
* - Initial import
*
*************************************************************************************
*
* 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' => 'Apt sources',
'COMMENT_SINGLE' => array(1 => '#'),
'COMMENT_MULTI' => array(),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array(),
'ESCAPE_CHAR' => '\\',
'KEYWORDS' => array(
/*keywords*/
1 => array(
'deb-src', 'deb'
),
2 => array(
//Generic
'stable', 'old-stable', 'testing', 'testing-proposed-updates',
'unstable', 'unstable-proposed-updates', 'experimental',
'non-US', 'security', 'volatile', 'volatile-sloppy',
'apt-build',
'stable/updates',
//Debian
'buzz', 'rex', 'bo', 'hamm', 'slink', 'potato', 'woody', 'sarge',
'etch', 'lenny', 'sid',
//Ubuntu
'warty', 'warty-updates', 'warty-security', 'warty-proposed', 'warty-backports',
'hoary', 'hoary-updates', 'hoary-security', 'hoary-proposed', 'hoary-backports',
'breezy', 'breezy-updates', 'breezy-security', 'breezy-proposed', 'breezy-backports',
'dapper', 'dapper-updates', 'dapper-security', 'dapper-proposed', 'dapper-backports',
'edgy', 'edgy-updates', 'edgy-security', 'edgy-proposed', 'edgy-backports',
'feisty', 'feisty-updates', 'feisty-security', 'feisty-proposed', 'feisty-backports',
'gutsy', 'gutsy-updates', 'gutsy-security', 'gutsy-proposed', 'gutsy-backports',
'hardy', 'hardy-updates', 'hardy-security', 'hardy-proposed', 'hardy-backports',
'intrepid', 'intrepid-updates', 'intrepid-security', 'intrepid-proposed', 'intrepid-backports'
),
3 => array(
'main', 'restricted', 'preview', 'contrib', 'non-free',
'commercial', 'universe', 'multiverse'
)
),
'REGEXPS' => array(
0 => "(((http|ftp):\/\/|file:\/)[^\s]+)|(cdrom:\[[^\]]*\][^\s]*)",
),
'SYMBOLS' => array(
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => false,
1 => false,
2 => true,
3 => true
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #00007f;',
2 => 'color: #b1b100;',
3 => 'color: #b16000;'
),
'COMMENTS' => array(
1 => 'color: #adadad; font-style: italic;',
),
'ESCAPE_CHAR' => array(
),
'BRACKETS' => array(
),
'STRINGS' => array(
),
'NUMBERS' => array(
),
'METHODS' => array(
),
'SYMBOLS' => array(
),
'REGEXPS' => array(
0 => 'color: #009900;',
),
'SCRIPT' => array(
)
),
'URLS' => array(
1 => '',
2 => '',
3 => ''
),
'OOLANG' => false,
'OBJECT_SPLITTERS' => array(
),
'STRICT_MODE_APPLIES' => GESHI_NEVER,
'SCRIPT_DELIMITERS' => array(
),
'HIGHLIGHT_STRICT_BLOCK' => array(
),
'PARSER_CONTROL' => array(
'ENABLE_FLAGS' => array(
'NUMBERS' => GESHI_NEVER,
'METHODS' => GESHI_NEVER,
'SCRIPT' => GESHI_NEVER,
'SYMBOLS' => GESHI_NEVER,
'ESCAPE_CHAR' => GESHI_NEVER,
'BRACKETS' => GESHI_NEVER,
'STRINGS' => GESHI_NEVER,
),
'KEYWORDS' => array(
'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#;>|^\/])',
'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-&\.])'
)
),
'TAB_WIDTH' => 4
);
?>

View File

@ -1,225 +0,0 @@
<?php
/*************************************************************************************
* 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.1
* Date Started: 2004/07/27
*
* x86 Assembler language file for GeSHi.
* Words are from SciTe configuration file (based on NASM syntax)
*
* CHANGES
* -------
* 2008/05/23 (1.0.7.22)
* - Added description of extra language features (SF#1970248)
* 2004/11/27 (1.0.2)
* - Added support for multiple object splitters
* 2004/10/27 (1.0.1)
* - Added support for URLs
* - Added binary and hexadecimal regexps
* 2004/08/05 (1.0.0)
* - First Release
*
* TODO (updated 2004/11/27)
* -------------------------
*
*************************************************************************************
*
* This file is part of GeSHi.
*
* GeSHi is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* GeSHi is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GeSHi; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
************************************************************************************/
$language_data = array (
'LANG_NAME' => 'ASM',
'COMMENT_SINGLE' => array(1 => ';'),
'COMMENT_MULTI' => array(),
//Line address prefix suppression
'COMMENT_REGEXP' => array(2 => "/^(?:[0-9a-f]{0,4}:)?[0-9a-f]{4}(?:[0-9a-f]{4})?/mi"),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array("'", '"'),
'ESCAPE_CHAR' => '',
'KEYWORDS' => array(
/*CPU*/
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'
),
/*FPU*/
2 => array(
'f2xm1','fabs','fadd','faddp','fbld','fbstp','fchs','fclex','fcom','fcomp','fcompp','fdecstp',
'fdisi','fdiv','fdivp','fdivr','fdivrp','feni','ffree','fiadd','ficom','ficomp','fidiv',
'fidivr','fild','fimul','fincstp','finit','fist','fistp','fisub','fisubr','fld','fld1',
'fldcw','fldenv','fldenvw','fldl2e','fldl2t','fldlg2','fldln2','fldpi','fldz','fmul',
'fmulp','fnclex','fndisi','fneni','fninit','fnop','fnsave','fnsavew','fnstcw','fnstenv',
'fnstenvw','fnstsw','fpatan','fprem','fptan','frndint','frstor','frstorw','fsave',
'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'
),
/*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'
),
/*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','err','err1','err2','errb',
'errdef','errdif','errdifi','erre','erridn','erridni','errnb','errndef',
'errnz','exit','fardata','fardata?','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',
'rept','seg','segment','short','size','sizeof','sizestr','struc','struct',
'substr','subtitle','subttl','textequ','this','title','typedef','union','width',
'.model', '.stack', '.code', '.data'
),
/*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'
)
),
'SYMBOLS' => array(
'[', ']', '(', ')',
'+', '-', '*', '/', '%',
'.', ',', ';', ':'
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => 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;'
),
'COMMENTS' => array(
1 => 'color: #666666; font-style: italic;',
2 => 'color: #adadad; font-style: italic;',
),
'ESCAPE_CHAR' => array(
0 => 'color: #000099; font-weight: bold;'
),
'BRACKETS' => array(
0 => 'color: #009900; font-weight: bold;'
),
'STRINGS' => array(
0 => 'color: #7f007f;'
),
'NUMBERS' => array(
0 => 'color: #0000ff;'
),
'METHODS' => array(
),
'SYMBOLS' => array(
0 => 'color: #339933;'
),
'REGEXPS' => array(
// 0 => 'color: #0000ff;',
// 1 => 'color: #0000ff;'
),
'SCRIPT' => array(
)
),
'URLS' => array(
1 => '',
2 => '',
3 => '',
4 => '',
5 => ''
),
'NUMBERS' =>
GESHI_NUMBER_BIN_PREFIX_PERCENT |
GESHI_NUMBER_BIN_SUFFIX |
GESHI_NUMBER_HEX_PREFIX |
GESHI_NUMBER_HEX_SUFFIX |
GESHI_NUMBER_OCT_SUFFIX |
GESHI_NUMBER_INT_BASIC |
GESHI_NUMBER_FLT_NONSCI |
GESHI_NUMBER_FLT_NONSCI_F |
GESHI_NUMBER_FLT_SCI_ZERO,
'OOLANG' => false,
'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(
),
'HIGHLIGHT_STRICT_BLOCK' => array(
),
'TAB_WIDTH' => 8,
'PARSER_CONTROL' => array(
'KEYWORDS' => array(
'DISALLOWED_BEFORE' => "(?<![a-zA-Z0-9\$_\|\#>|^])",
'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%])"
)
)
);
?>

View File

@ -1,160 +0,0 @@
<?php
/*************************************************************************************
* asp.php
* --------
* 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.1
* Date Started: 2004/08/13
*
* ASP language file for GeSHi.
*
* CHANGES
* -------
* 2005/12/30 (1.0.3)
* - Strings only delimited by ", comments by '
* 2004/11/27 (1.0.2)
* - Added support for multiple object splitters
* 2004/10/27 (1.0.1)
* - Added support for URLs
* 2004/08/13 (1.0.0)
* - First Release
*
* TODO (updated 2004/11/27)
* -------------------------
* * Include all the functions, keywords etc that I have missed
*
*************************************************************************************
*
* 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' => 'ASP',
'COMMENT_SINGLE' => array(1 => "'", 2 => '//'),
'COMMENT_MULTI' => array('/*' => '*/'),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array('"'),
'ESCAPE_CHAR' => '',
'KEYWORDS' => array(
1 => array(
'include', 'file', 'Const', 'Dim', 'Option', 'Explicit', 'Implicit', 'Set', 'Select', 'ReDim', 'Preserve',
'ByVal', 'ByRef', 'End', 'Private', 'Public', 'If', 'Then', 'Else', 'ElseIf', 'Case', 'With', 'NOT',
'While', 'Wend', 'For', 'Loop', 'Do', 'Request', 'Response', 'Server', 'ADODB', 'Session', 'Application',
'Each', 'In', 'Get', 'Next', 'INT', 'CINT', 'CBOOL', 'CDATE', 'CBYTE', 'CCUR', 'CDBL', 'CLNG', 'CSNG',
'CSTR', 'Fix', 'Is', 'Sgn', 'String', 'Boolean', 'Currency', 'Me', 'Single', 'Long', 'Integer', 'Byte',
'Variant', 'Double', 'To', 'Let', 'Xor', 'Resume', 'On', 'Error', 'Imp', 'GoTo', 'Call', 'Global'
),
2 => array(
'Null', 'Nothing', 'And',
'False', '&lt;%', '%&gt;',
'&lt;script language=', '&lt;/script&gt;',
'True', 'var', 'Or', 'BOF', 'EOF',
'Function', 'Class', 'New', 'Sub'
),
3 => array(
'CreateObject', 'Write', 'Redirect', 'Cookies', 'BinaryRead', 'ClientCertificate', 'Form', 'QueryString',
'ServerVariables', 'TotalBytes', 'AddHeader', 'AppendToLog', 'BinaryWrite', 'Buffer', 'CacheControl',
'Charset', 'Clear', 'ContentType', 'End()', 'Expires', 'ExpiresAbsolute', 'Flush()', 'IsClientConnected',
'PICS', 'Status', 'Connection', 'Recordset', 'Execute', 'Abandon', 'Lock', 'UnLock', 'Command', 'Fields',
'Properties', 'Property', 'Send', 'Replace', 'InStr', 'TRIM', 'NOW', 'Day', 'Month', 'Hour', 'Minute', 'Second',
'Year', 'MonthName', 'LCase', 'UCase', 'Abs', 'Array', 'As', 'LEN', 'MoveFirst', 'MoveLast', 'MovePrevious',
'MoveNext', 'LBound', 'UBound', 'Transfer', 'Open', 'Close', 'MapPath', 'FileExists', 'OpenTextFile', 'ReadAll'
)
),
'SYMBOLS' => array(
'(', ')', '[', ']', '!', '@', '%', '&', '*', '|', '/', '<', '>',
';', ':', '?', '='
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => false,
1 => false,
2 => false,
3 => false,
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #990099; font-weight: bold;',
2 => 'color: #0000ff; font-weight: bold;',
3 => 'color: #330066;'
),
'COMMENTS' => array(
1 => 'color: #008000;',
2 => 'color: #ff6600;',
'MULTI' => 'color: #008000;'
),
'ESCAPE_CHAR' => array(
0 => 'color: #000099; font-weight: bold;'
),
'BRACKETS' => array(
0 => 'color: #006600; font-weight:bold'
),
'STRINGS' => array(
0 => 'color: #cc0000;'
),
'NUMBERS' => array(
0 => 'color: #800000;'
),
'METHODS' => array(
1 => 'color: #9900cc;'
),
'SYMBOLS' => array(
0 => 'color: #006600; font-weight: bold'
),
'REGEXPS' => array(
),
'SCRIPT' => array(
0 => '',
1 => '',
2 => '',
3 => ''
)
),
'URLS' => array(
1 => '',
2 => '',
3 => ''
),
'OOLANG' => true,
'OBJECT_SPLITTERS' => array(
1 => '.'
),
'REGEXPS' => array(
),
'STRICT_MODE_APPLIES' => GESHI_MAYBE,
'SCRIPT_DELIMITERS' => array(
0 => array(
'<%' => '%>'
),
1 => array(
'<script language="vbscript" runat="server">' => '</script>'
),
2 => array(
'<script language="javascript" runat="server">' => '</script>'
),
3 => "/(<%=?)(?:\"[^\"]*?\"|\/\*(?!\*\/).*?\*\/|.)*?(%>|\Z)/sm"
),
'HIGHLIGHT_STRICT_BLOCK' => array(
0 => true,
1 => true,
2 => true,
3 => true
)
);
?>

View File

@ -1,932 +0,0 @@
<?php
/*************************************************************************************
* autoit.php
* --------
* Author: big_daddy (robert.i.anthony@gmail.com)
* Copyright: (c) 2006 and to GESHi ;)
* Release Version: 1.0.8.1
* Date Started: 2006/01/26
*
* AutoIT language file for GeSHi.
*
* CHANGES
* -------
* Release 1.0.8.1 (2008/09/15)
* - Updated on 22.03.2008 By Tlem (tlem@tuxolem.fr)
* - The link on functions will now correctly re-direct to
* - http://www.autoitscript.com/autoit3/docs/functions/{FNAME}.htm
* - Updated whith au3.api (09.02.2008).
* - Updated - 16 Mai 2008 - v3.2.12.0
* - Updated - 12 June 2008 - v3.2.12.1
* Release 1.0.7.20 (2006/01/26)
* - First Release
*
* Current bugs & todo:
* ----------
* - doesn't highlight symbols (Please note that in 1.0.X these are not used. Hopefully they will be used in 1.2.X.)
* - not sure how to get sendkeys to work " {!}, {SPACE} etc... "
* - just copyied the regexp for variable from php so this HAVE to be checked and fixed to a better one ;)
*
* Reference: http://www.autoitscript.com/autoit3/docs/
*************************************************************************************
*
* 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' => 'AutoIt',
'COMMENT_SINGLE' => array(';'),
'COMMENT_MULTI' => array(
'#comments-start' => '#comments-end',
'#cs' => '#ce'),
'COMMENT_REGEXP' => array(0 => '/(?<!#)#(\s.*)?$/m'),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array("'", '"'),
'ESCAPE_CHAR' => '',
'KEYWORDS' => array(
1 => array(
'And', 'ByRef', 'Case',
'Const', 'ContinueCase', 'ContinueLoop',
'Default', 'Dim', 'Do',
'Else', 'ElseIf', 'EndFunc',
'EndIf', 'EndSelect', 'EndSwitch',
'EndWith', 'Enum', 'Exit',
'ExitLoop', 'False', 'For',
'Func', 'Global', 'If',
'In', 'Local', 'Next',
'Not', 'Or', 'ReDim',
'Return', 'Select', 'Step',
'Switch', 'Then', 'To',
'True', 'Until', 'WEnd',
'While', 'With'
),
2 => array(
'@AppDataCommonDir', '@AppDataDir', '@AutoItExe',
'@AutoItPID', '@AutoItUnicode', '@AutoItVersion',
'@AutoItX64', '@COM_EventObj', '@CommonFilesDir',
'@Compiled', '@ComputerName', '@ComSpec',
'@CR', '@CRLF', '@DesktopCommonDir',
'@DesktopDepth', '@DesktopDir', '@DesktopHeight',
'@DesktopRefresh', '@DesktopWidth', '@DocumentsCommonDir',
'@error', '@exitCode', '@exitMethod',
'@extended', '@FavoritesCommonDir', '@FavoritesDir',
'@GUI_CtrlHandle', '@GUI_CtrlId', '@GUI_DragFile',
'@GUI_DragId', '@GUI_DropId', '@GUI_WinHandle',
'@HomeDrive', '@HomePath', '@HomeShare',
'@HotKeyPressed', '@HOUR', '@InetGetActive',
'@InetGetBytesRead', '@IPAddress1', '@IPAddress2',
'@IPAddress3', '@IPAddress4', '@KBLayout',
'@LF', '@LogonDNSDomain', '@LogonDomain',
'@LogonServer', '@MDAY', '@MIN',
'@MON', '@MyDocumentsDir', '@NumParams',
'@OSBuild', '@OSLang', '@OSServicePack',
'@OSTYPE', '@OSVersion', '@ProcessorArch',
'@ProgramFilesDir', '@ProgramsCommonDir', '@ProgramsDir',
'@ScriptDir', '@ScriptFullPath', '@ScriptLineNumber',
'@ScriptName', '@SEC', '@StartMenuCommonDir',
'@StartMenuDir', '@StartupCommonDir', '@StartupDir',
'@SW_DISABLE', '@SW_ENABLE', '@SW_HIDE',
'@SW_LOCK', '@SW_MAXIMIZE', '@SW_MINIMIZE',
'@SW_RESTORE', '@SW_SHOW', '@SW_SHOWDEFAULT',
'@SW_SHOWMAXIMIZED', '@SW_SHOWMINIMIZED', '@SW_SHOWMINNOACTIVE',
'@SW_SHOWNA', '@SW_SHOWNOACTIVATE', '@SW_SHOWNORMAL',
'@SW_UNLOCK', '@SystemDir', '@TAB',
'@TempDir', '@TRAY_ID', '@TrayIconFlashing',
'@TrayIconVisible', '@UserName', '@UserProfileDir',
'@WDAY', '@WindowsDir', '@WorkingDir',
'@YDAY', '@YEAR'
),
3 => array(
'Abs', 'ACos', 'AdlibDisable',
'AdlibEnable', 'Asc', 'AscW',
'ASin', 'Assign', 'ATan',
'AutoItSetOption', 'AutoItWinGetTitle', 'AutoItWinSetTitle',
'Beep', 'Binary', 'BinaryLen',
'BinaryMid', 'BinaryToString', 'BitAND',
'BitNOT', 'BitOR', 'BitRotate',
'BitShift', 'BitXOR', 'BlockInput',
'Break', 'Call', 'CDTray',
'Ceiling', 'Chr', 'ChrW',
'ClipGet', 'ClipPut', 'ConsoleRead',
'ConsoleWrite', 'ConsoleWriteError', 'ControlClick',
'ControlCommand', 'ControlDisable', 'ControlEnable',
'ControlFocus', 'ControlGetFocus', 'ControlGetHandle',
'ControlGetPos', 'ControlGetText', 'ControlHide',
'ControlListView', 'ControlMove', 'ControlSend',
'ControlSetText', 'ControlShow', 'ControlTreeView',
'Cos', 'Dec', 'DirCopy',
'DirCreate', 'DirGetSize', 'DirMove',
'DirRemove', 'DllCall', 'DllCallbackFree',
'DllCallbackGetPtr', 'DllCallbackRegister', 'DllClose',
'DllOpen', 'DllStructCreate', 'DllStructGetData',
'DllStructGetPtr', 'DllStructGetSize', 'DllStructSetData',
'DriveGetDrive', 'DriveGetFileSystem', 'DriveGetLabel',
'DriveGetSerial', 'DriveGetType', 'DriveMapAdd',
'DriveMapDel', 'DriveMapGet', 'DriveSetLabel',
'DriveSpaceFree', 'DriveSpaceTotal', 'DriveStatus',
'EnvGet', 'EnvSet', 'EnvUpdate',
'Eval', 'Execute', 'Exp',
'FileChangeDir', 'FileClose', 'FileCopy',
'FileCreateNTFSLink', 'FileCreateShortcut', 'FileDelete',
'FileExists', 'FileFindFirstFile', 'FileFindNextFile',
'FileGetAttrib', 'FileGetLongName', 'FileGetShortcut',
'FileGetShortName', 'FileGetSize', 'FileGetTime',
'FileGetVersion', 'FileInstall', 'FileMove',
'FileOpen', 'FileOpenDialog', 'FileRead',
'FileReadLine', 'FileRecycle', 'FileRecycleEmpty',
'FileSaveDialog', 'FileSelectFolder', 'FileSetAttrib',
'FileSetTime', 'FileWrite', 'FileWriteLine',
'Floor', 'FtpSetProxy', 'GUICreate',
'GUICtrlCreateAvi', 'GUICtrlCreateButton', 'GUICtrlCreateCheckbox',
'GUICtrlCreateCombo', 'GUICtrlCreateContextMenu', 'GUICtrlCreateDate',
'GUICtrlCreateDummy', 'GUICtrlCreateEdit', 'GUICtrlCreateGraphic',
'GUICtrlCreateGroup', 'GUICtrlCreateIcon', 'GUICtrlCreateInput',
'GUICtrlCreateLabel', 'GUICtrlCreateList', 'GUICtrlCreateListView',
'GUICtrlCreateListViewItem', 'GUICtrlCreateMenu', 'GUICtrlCreateMenuItem',
'GUICtrlCreateMonthCal', 'GUICtrlCreateObj', 'GUICtrlCreatePic',
'GUICtrlCreateProgress', 'GUICtrlCreateRadio', 'GUICtrlCreateSlider',
'GUICtrlCreateTab', 'GUICtrlCreateTabItem', 'GUICtrlCreateTreeView',
'GUICtrlCreateTreeViewItem', 'GUICtrlCreateUpdown', 'GUICtrlDelete',
'GUICtrlGetHandle', 'GUICtrlGetState', 'GUICtrlRead',
'GUICtrlRecvMsg', 'GUICtrlRegisterListViewSort', 'GUICtrlSendMsg',
'GUICtrlSendToDummy', 'GUICtrlSetBkColor', 'GUICtrlSetColor',
'GUICtrlSetCursor', 'GUICtrlSetData', 'GUICtrlSetFont',
'GUICtrlSetDefColor', 'GUICtrlSetDefBkColor',
'GUICtrlSetGraphic', 'GUICtrlSetImage', 'GUICtrlSetLimit',
'GUICtrlSetOnEvent', 'GUICtrlSetPos', 'GUICtrlSetResizing',
'GUICtrlSetState', 'GUICtrlSetStyle', 'GUICtrlSetTip',
'GUIDelete', 'GUIGetCursorInfo', 'GUIGetMsg',
'GUIGetStyle', 'GUIRegisterMsg', 'GUISetAccelerators()', 'GUISetBkColor',
'GUISetCoord', 'GUISetCursor', 'GUISetFont',
'GUISetHelp', 'GUISetIcon', 'GUISetOnEvent',
'GUISetState', 'GUISetStyle', 'GUIStartGroup',
'GUISwitch', 'Hex', 'HotKeySet',
'HttpSetProxy', 'HWnd', 'InetGet',
'InetGetSize', 'IniDelete', 'IniRead',
'IniReadSection', 'IniReadSectionNames', 'IniRenameSection',
'IniWrite', 'IniWriteSection', 'InputBox',
'Int', 'IsAdmin', 'IsArray',
'IsBinary', 'IsBool', 'IsDeclared',
'IsDllStruct', 'IsFloat', 'IsHWnd',
'IsInt', 'IsKeyword', 'IsNumber',
'IsObj', 'IsPtr', 'IsString',
'Log', 'MemGetStats', 'Mod',
'MouseClick', 'MouseClickDrag', 'MouseDown',
'MouseGetCursor', 'MouseGetPos', 'MouseMove',
'MouseUp', 'MouseWheel', 'MsgBox',
'Number', 'ObjCreate', 'ObjEvent',
'ObjGet', 'ObjName', 'Opt',
'Ping', 'PixelChecksum', 'PixelGetColor',
'PixelSearch', 'PluginClose', 'PluginOpen',
'ProcessClose', 'ProcessExists', 'ProcessGetStats',
'ProcessList', 'ProcessSetPriority', 'ProcessWait',
'ProcessWaitClose', 'ProgressOff', 'ProgressOn',
'ProgressSet', 'Ptr', 'Random',
'RegDelete', 'RegEnumKey', 'RegEnumVal',
'RegRead', 'RegWrite', 'Round',
'Run', 'RunAs', 'RunAsWait',
'RunWait', 'Send', 'SendKeepActive',
'SetError', 'SetExtended', 'ShellExecute',
'ShellExecuteWait', 'Shutdown', 'Sin',
'Sleep', 'SoundPlay', 'SoundSetWaveVolume',
'SplashImageOn', 'SplashOff', 'SplashTextOn',
'Sqrt', 'SRandom', 'StatusbarGetText',
'StderrRead', 'StdinWrite', 'StdioClose',
'StdoutRead', 'String', 'StringAddCR',
'StringCompare', 'StringFormat', 'StringInStr',
'StringIsAlNum', 'StringIsAlpha', 'StringIsASCII',
'StringIsDigit', 'StringIsFloat', 'StringIsInt',
'StringIsLower', 'StringIsSpace', 'StringIsUpper',
'StringIsXDigit', 'StringLeft', 'StringLen',
'StringLower', 'StringMid', 'StringRegExp',
'StringRegExpReplace', 'StringReplace', 'StringRight',
'StringSplit', 'StringStripCR', 'StringStripWS',
'StringToBinary', 'StringTrimLeft', 'StringTrimRight',
'StringUpper', 'Tan', 'TCPAccept',
'TCPCloseSocket', 'TCPConnect', 'TCPListen',
'TCPNameToIP', 'TCPRecv', 'TCPSend',
'TCPShutdown', 'TCPStartup', 'TimerDiff',
'TimerInit', 'ToolTip', 'TrayCreateItem',
'TrayCreateMenu', 'TrayGetMsg', 'TrayItemDelete',
'TrayItemGetHandle', 'TrayItemGetState', 'TrayItemGetText',
'TrayItemSetOnEvent', 'TrayItemSetState', 'TrayItemSetText',
'TraySetClick', 'TraySetIcon', 'TraySetOnEvent',
'TraySetPauseIcon', 'TraySetState', 'TraySetToolTip',
'TrayTip', 'UBound', 'UDPBind',
'UDPCloseSocket', 'UDPOpen', 'UDPRecv',
'UDPSend', 'UDPShutdown', 'UDPStartup',
'VarGetType', 'WinActivate', 'WinActive',
'WinClose', 'WinExists', 'WinFlash',
'WinGetCaretPos', 'WinGetClassList', 'WinGetClientSize',
'WinGetHandle', 'WinGetPos', 'WinGetProcess',
'WinGetState', 'WinGetText', 'WinGetTitle',
'WinKill', 'WinList', 'WinMenuSelectItem',
'WinMinimizeAll', 'WinMinimizeAllUndo', 'WinMove',
'WinSetOnTop', 'WinSetState', 'WinSetTitle',
'WinSetTrans', 'WinWait', 'WinWaitActive',
'WinWaitClose', 'WinWaitNotActive'
),
4 => array(
'_ArrayAdd', '_ArrayBinarySearch', '_ArrayConcatenate',
'_ArrayDelete', '_ArrayDisplay', '_ArrayFindAll',
'_ArrayInsert', '_ArrayMax', '_ArrayMaxIndex',
'_ArrayMin', '_ArrayMinIndex', '_ArrayPop',
'_ArrayPush', '_ArrayReverse', '_ArraySearch',
'_ArraySort', '_ArraySwap', '_ArrayToClip',
'_ArrayToString', '_ArrayTrim', '_ChooseColor',
'_ChooseFont', '_ClipBoard_ChangeChain', '_ClipBoard_Close',
'_ClipBoard_CountFormats', '_ClipBoard_Empty', '_ClipBoard_EnumFormats',
'_ClipBoard_FormatStr', '_ClipBoard_GetData', '_ClipBoard_GetDataEx',
'_ClipBoard_GetFormatName', '_ClipBoard_GetOpenWindow', '_ClipBoard_GetOwner',
'_ClipBoard_GetPriorityFormat', '_ClipBoard_GetSequenceNumber', '_ClipBoard_GetViewer',
'_ClipBoard_IsFormatAvailable', '_ClipBoard_Open', '_ClipBoard_RegisterFormat',
'_ClipBoard_SetData', '_ClipBoard_SetDataEx', '_ClipBoard_SetViewer',
'_ClipPutFile', '_ColorConvertHSLtoRGB', '_ColorConvertRGBtoHSL',
'_ColorGetBlue', '_ColorGetGreen', '_ColorGetRed',
'_Date_Time_CompareFileTime', '_Date_Time_DOSDateTimeToArray', '_Date_Time_DOSDateTimeToFileTime',
'_Date_Time_DOSDateTimeToStr', '_Date_Time_DOSDateToArray', '_Date_Time_DOSDateToStr',
'_Date_Time_DOSTimeToArray', '_Date_Time_DOSTimeToStr', '_Date_Time_EncodeFileTime',
'_Date_Time_EncodeSystemTime', '_Date_Time_FileTimeToArray', '_Date_Time_FileTimeToDOSDateTime',
'_Date_Time_FileTimeToLocalFileTime', '_Date_Time_FileTimeToStr', '_Date_Time_FileTimeToSystemTime',
'_Date_Time_GetFileTime', '_Date_Time_GetLocalTime', '_Date_Time_GetSystemTime',
'_Date_Time_GetSystemTimeAdjustment', '_Date_Time_GetSystemTimeAsFileTime', '_Date_Time_GetSystemTimes',
'_Date_Time_GetTickCount', '_Date_Time_GetTimeZoneInformation', '_Date_Time_LocalFileTimeToFileTime',
'_Date_Time_SetFileTime', '_Date_Time_SetLocalTime', '_Date_Time_SetSystemTime',
'_Date_Time_SetSystemTimeAdjustment', '_Date_Time_SetTimeZoneInformation', '_Date_Time_SystemTimeToArray',
'_Date_Time_SystemTimeToDateStr', '_Date_Time_SystemTimeToDateTimeStr', '_Date_Time_SystemTimeToFileTime',
'_Date_Time_SystemTimeToTimeStr', '_Date_Time_SystemTimeToTzSpecificLocalTime', '_Date_Time_TzSpecificLocalTimeToSystemTime',
'_DateAdd', '_DateDayOfWeek', '_DateDaysInMonth',
'_DateDiff', '_DateIsLeapYear', '_DateIsValid',
'_DateTimeFormat', '_DateTimeSplit', '_DateToDayOfWeek',
'_DateToDayOfWeekISO', '_DateToDayValue', '_DateToMonth',
'_DayValueToDate', '_DebugBugReportEnv', '_DebugOut',
'_DebugSetup', '_Degree', '_EventLog__Backup',
'_EventLog__Clear', '_EventLog__Close', '_EventLog__Count',
'_EventLog__DeregisterSource', '_EventLog__Full', '_EventLog__Notify',
'_EventLog__Oldest', '_EventLog__Open', '_EventLog__OpenBackup',
'_EventLog__Read', '_EventLog__RegisterSource', '_EventLog__Report',
'_FileCountLines', '_FileCreate', '_FileListToArray',
'_FilePrint', '_FileReadToArray', '_FileWriteFromArray',
'_FileWriteLog', '_FileWriteToLine', '_GDIPlus_ArrowCapCreate',
'_GDIPlus_ArrowCapDispose', '_GDIPlus_ArrowCapGetFillState', '_GDIPlus_ArrowCapGetHeight',
'_GDIPlus_ArrowCapGetMiddleInset', '_GDIPlus_ArrowCapGetWidth', '_GDIPlus_ArrowCapSetFillState',
'_GDIPlus_ArrowCapSetHeight', '_GDIPlus_ArrowCapSetMiddleInset', '_GDIPlus_ArrowCapSetWidth',
'_GDIPlus_BitmapCloneArea', '_GDIPlus_BitmapCreateFromFile', '_GDIPlus_BitmapCreateFromGraphics',
'_GDIPlus_BitmapCreateFromHBITMAP', '_GDIPlus_BitmapCreateHBITMAPFromBitmap', '_GDIPlus_BitmapDispose',
'_GDIPlus_BitmapLockBits', '_GDIPlus_BitmapUnlockBits', '_GDIPlus_BrushClone',
'_GDIPlus_BrushCreateSolid', '_GDIPlus_BrushDispose', '_GDIPlus_BrushGetType',
'_GDIPlus_CustomLineCapDispose', '_GDIPlus_Decoders', '_GDIPlus_DecodersGetCount',
'_GDIPlus_DecodersGetSize', '_GDIPlus_Encoders', '_GDIPlus_EncodersGetCLSID',
'_GDIPlus_EncodersGetCount', '_GDIPlus_EncodersGetParamList', '_GDIPlus_EncodersGetParamListSize',
'_GDIPlus_EncodersGetSize', '_GDIPlus_FontCreate', '_GDIPlus_FontDispose',
'_GDIPlus_FontFamilyCreate', '_GDIPlus_FontFamilyDispose', '_GDIPlus_GraphicsClear',
'_GDIPlus_GraphicsCreateFromHDC', '_GDIPlus_GraphicsCreateFromHWND', '_GDIPlus_GraphicsDispose',
'_GDIPlus_GraphicsDrawArc', '_GDIPlus_GraphicsDrawBezier', '_GDIPlus_GraphicsDrawClosedCurve',
'_GDIPlus_GraphicsDrawCurve', '_GDIPlus_GraphicsDrawEllipse', '_GDIPlus_GraphicsDrawImage',
'_GDIPlus_GraphicsDrawImageRect', '_GDIPlus_GraphicsDrawImageRectRect', '_GDIPlus_GraphicsDrawLine',
'_GDIPlus_GraphicsDrawPie', '_GDIPlus_GraphicsDrawPolygon', '_GDIPlus_GraphicsDrawRect',
'_GDIPlus_GraphicsDrawString', '_GDIPlus_GraphicsDrawStringEx', '_GDIPlus_GraphicsFillClosedCurve',
'_GDIPlus_GraphicsFillEllipse', '_GDIPlus_GraphicsFillPie', '_GDIPlus_GraphicsFillRect',
'_GDIPlus_GraphicsGetDC', '_GDIPlus_GraphicsGetSmoothingMode', '_GDIPlus_GraphicsMeasureString',
'_GDIPlus_GraphicsReleaseDC', '_GDIPlus_GraphicsSetSmoothingMode', '_GDIPlus_GraphicsSetTransform',
'_GDIPlus_ImageDispose', '_GDIPlus_ImageGetGraphicsContext', '_GDIPlus_ImageGetHeight',
'_GDIPlus_ImageGetWidth', '_GDIPlus_ImageLoadFromFile', '_GDIPlus_ImageSaveToFile',
'_GDIPlus_ImageSaveToFileEx', '_GDIPlus_MatrixCreate', '_GDIPlus_MatrixDispose',
'_GDIPlus_MatrixRotate', '_GDIPlus_ParamAdd', '_GDIPlus_ParamInit',
'_GDIPlus_PenCreate', '_GDIPlus_PenDispose', '_GDIPlus_PenGetAlignment',
'_GDIPlus_PenGetColor', '_GDIPlus_PenGetCustomEndCap', '_GDIPlus_PenGetDashCap',
'_GDIPlus_PenGetDashStyle', '_GDIPlus_PenGetEndCap', '_GDIPlus_PenGetWidth',
'_GDIPlus_PenSetAlignment', '_GDIPlus_PenSetColor', '_GDIPlus_PenSetCustomEndCap',
'_GDIPlus_PenSetDashCap', '_GDIPlus_PenSetDashStyle', '_GDIPlus_PenSetEndCap',
'_GDIPlus_PenSetWidth', '_GDIPlus_RectFCreate', '_GDIPlus_Shutdown',
'_GDIPlus_Startup', '_GDIPlus_StringFormatCreate', '_GDIPlus_StringFormatDispose',
'_GetIP', '_GUICtrlAVI_Close', '_GUICtrlAVI_Create',
'_GUICtrlAVI_Destroy', '_GUICtrlAVI_Open', '_GUICtrlAVI_OpenEx',
'_GUICtrlAVI_Play', '_GUICtrlAVI_Seek', '_GUICtrlAVI_Show',
'_GUICtrlAVI_Stop', '_GUICtrlButton_Click', '_GUICtrlButton_Create',
'_GUICtrlButton_Destroy', '_GUICtrlButton_Enable', '_GUICtrlButton_GetCheck',
'_GUICtrlButton_GetFocus', '_GUICtrlButton_GetIdealSize', '_GUICtrlButton_GetImage',
'_GUICtrlButton_GetImageList', '_GUICtrlButton_GetState', '_GUICtrlButton_GetText',
'_GUICtrlButton_GetTextMargin', '_GUICtrlButton_SetCheck', '_GUICtrlButton_SetFocus',
'_GUICtrlButton_SetImage', '_GUICtrlButton_SetImageList', '_GUICtrlButton_SetSize',
'_GUICtrlButton_SetState', '_GUICtrlButton_SetStyle', '_GUICtrlButton_SetText',
'_GUICtrlButton_SetTextMargin', '_GUICtrlButton_Show', '_GUICtrlComboBox_AddDir',
'_GUICtrlComboBox_AddString', '_GUICtrlComboBox_AutoComplete', '_GUICtrlComboBox_BeginUpdate',
'_GUICtrlComboBox_Create', '_GUICtrlComboBox_DeleteString', '_GUICtrlComboBox_Destroy',
'_GUICtrlComboBox_EndUpdate', '_GUICtrlComboBox_FindString', '_GUICtrlComboBox_FindStringExact',
'_GUICtrlComboBox_GetComboBoxInfo', '_GUICtrlComboBox_GetCount', '_GUICtrlComboBox_GetCurSel',
'_GUICtrlComboBox_GetDroppedControlRect', '_GUICtrlComboBox_GetDroppedControlRectEx', '_GUICtrlComboBox_GetDroppedState',
'_GUICtrlComboBox_GetDroppedWidth', '_GUICtrlComboBox_GetEditSel', '_GUICtrlComboBox_GetEditText',
'_GUICtrlComboBox_GetExtendedUI', '_GUICtrlComboBox_GetHorizontalExtent', '_GUICtrlComboBox_GetItemHeight',
'_GUICtrlComboBox_GetLBText', '_GUICtrlComboBox_GetLBTextLen', '_GUICtrlComboBox_GetList',
'_GUICtrlComboBox_GetListArray', '_GUICtrlComboBox_GetLocale', '_GUICtrlComboBox_GetLocaleCountry',
'_GUICtrlComboBox_GetLocaleLang', '_GUICtrlComboBox_GetLocalePrimLang', '_GUICtrlComboBox_GetLocaleSubLang',
'_GUICtrlComboBox_GetMinVisible', '_GUICtrlComboBox_GetTopIndex', '_GUICtrlComboBox_InitStorage',
'_GUICtrlComboBox_InsertString', '_GUICtrlComboBox_LimitText', '_GUICtrlComboBox_ReplaceEditSel',
'_GUICtrlComboBox_ResetContent', '_GUICtrlComboBox_SelectString', '_GUICtrlComboBox_SetCurSel',
'_GUICtrlComboBox_SetDroppedWidth', '_GUICtrlComboBox_SetEditSel', '_GUICtrlComboBox_SetEditText',
'_GUICtrlComboBox_SetExtendedUI', '_GUICtrlComboBox_SetHorizontalExtent', '_GUICtrlComboBox_SetItemHeight',
'_GUICtrlComboBox_SetMinVisible', '_GUICtrlComboBox_SetTopIndex', '_GUICtrlComboBox_ShowDropDown',
'_GUICtrlComboBoxEx_AddDir', '_GUICtrlComboBoxEx_AddString', '_GUICtrlComboBoxEx_BeginUpdate',
'_GUICtrlComboBoxEx_Create', '_GUICtrlComboBoxEx_CreateSolidBitMap', '_GUICtrlComboBoxEx_DeleteString',
'_GUICtrlComboBoxEx_Destroy', '_GUICtrlComboBoxEx_EndUpdate', '_GUICtrlComboBoxEx_FindStringExact',
'_GUICtrlComboBoxEx_GetComboBoxInfo', '_GUICtrlComboBoxEx_GetComboControl', '_GUICtrlComboBoxEx_GetCount',
'_GUICtrlComboBoxEx_GetCurSel', '_GUICtrlComboBoxEx_GetDroppedControlRect', '_GUICtrlComboBoxEx_GetDroppedControlRectEx',
'_GUICtrlComboBoxEx_GetDroppedState', '_GUICtrlComboBoxEx_GetDroppedWidth', '_GUICtrlComboBoxEx_GetEditControl',
'_GUICtrlComboBoxEx_GetEditSel', '_GUICtrlComboBoxEx_GetEditText', '_GUICtrlComboBoxEx_GetExtendedStyle',
'_GUICtrlComboBoxEx_GetExtendedUI', '_GUICtrlComboBoxEx_GetImageList', '_GUICtrlComboBoxEx_GetItem',
'_GUICtrlComboBoxEx_GetItemEx', '_GUICtrlComboBoxEx_GetItemHeight', '_GUICtrlComboBoxEx_GetItemImage',
'_GUICtrlComboBoxEx_GetItemIndent', '_GUICtrlComboBoxEx_GetItemOverlayImage', '_GUICtrlComboBoxEx_GetItemParam',
'_GUICtrlComboBoxEx_GetItemSelectedImage', '_GUICtrlComboBoxEx_GetItemText', '_GUICtrlComboBoxEx_GetItemTextLen',
'_GUICtrlComboBoxEx_GetList', '_GUICtrlComboBoxEx_GetListArray', '_GUICtrlComboBoxEx_GetLocale',
'_GUICtrlComboBoxEx_GetLocaleCountry', '_GUICtrlComboBoxEx_GetLocaleLang', '_GUICtrlComboBoxEx_GetLocalePrimLang',
'_GUICtrlComboBoxEx_GetLocaleSubLang', '_GUICtrlComboBoxEx_GetMinVisible', '_GUICtrlComboBoxEx_GetTopIndex',
'_GUICtrlComboBoxEx_InitStorage', '_GUICtrlComboBoxEx_InsertString', '_GUICtrlComboBoxEx_LimitText',
'_GUICtrlComboBoxEx_ReplaceEditSel', '_GUICtrlComboBoxEx_ResetContent', '_GUICtrlComboBoxEx_SetCurSel',
'_GUICtrlComboBoxEx_SetDroppedWidth', '_GUICtrlComboBoxEx_SetEditSel', '_GUICtrlComboBoxEx_SetEditText',
'_GUICtrlComboBoxEx_SetExtendedStyle', '_GUICtrlComboBoxEx_SetExtendedUI', '_GUICtrlComboBoxEx_SetImageList',
'_GUICtrlComboBoxEx_SetItem', '_GUICtrlComboBoxEx_SetItemEx', '_GUICtrlComboBoxEx_SetItemHeight',
'_GUICtrlComboBoxEx_SetItemImage', '_GUICtrlComboBoxEx_SetItemIndent', '_GUICtrlComboBoxEx_SetItemOverlayImage',
'_GUICtrlComboBoxEx_SetItemParam', '_GUICtrlComboBoxEx_SetItemSelectedImage', '_GUICtrlComboBoxEx_SetMinVisible',
'_GUICtrlComboBoxEx_SetTopIndex', '_GUICtrlComboBoxEx_ShowDropDown', '_GUICtrlDTP_Create',
'_GUICtrlDTP_Destroy', '_GUICtrlDTP_GetMCColor', '_GUICtrlDTP_GetMCFont',
'_GUICtrlDTP_GetMonthCal', '_GUICtrlDTP_GetRange', '_GUICtrlDTP_GetRangeEx',
'_GUICtrlDTP_GetSystemTime', '_GUICtrlDTP_GetSystemTimeEx', '_GUICtrlDTP_SetFormat',
'_GUICtrlDTP_SetMCColor', '_GUICtrlDTP_SetMCFont', '_GUICtrlDTP_SetRange',
'_GUICtrlDTP_SetRangeEx', '_GUICtrlDTP_SetSystemTime', '_GUICtrlDTP_SetSystemTimeEx',
'_GUICtrlEdit_AppendText', '_GUICtrlEdit_BeginUpdate', '_GUICtrlEdit_CanUndo',
'_GUICtrlEdit_CharFromPos', '_GUICtrlEdit_Create', '_GUICtrlEdit_Destroy',
'_GUICtrlEdit_EmptyUndoBuffer', '_GUICtrlEdit_EndUpdate', '_GUICtrlEdit_Find',
'_GUICtrlEdit_FmtLines', '_GUICtrlEdit_GetFirstVisibleLine', '_GUICtrlEdit_GetLimitText',
'_GUICtrlEdit_GetLine', '_GUICtrlEdit_GetLineCount', '_GUICtrlEdit_GetMargins',
'_GUICtrlEdit_GetModify', '_GUICtrlEdit_GetPasswordChar', '_GUICtrlEdit_GetRECT',
'_GUICtrlEdit_GetRECTEx', '_GUICtrlEdit_GetSel', '_GUICtrlEdit_GetText',
'_GUICtrlEdit_GetTextLen', '_GUICtrlEdit_HideBalloonTip', '_GUICtrlEdit_InsertText',
'_GUICtrlEdit_LineFromChar', '_GUICtrlEdit_LineIndex', '_GUICtrlEdit_LineLength',
'_GUICtrlEdit_LineScroll', '_GUICtrlEdit_PosFromChar', '_GUICtrlEdit_ReplaceSel',
'_GUICtrlEdit_Scroll', '_GUICtrlEdit_SetLimitText', '_GUICtrlEdit_SetMargins',
'_GUICtrlEdit_SetModify', '_GUICtrlEdit_SetPasswordChar', '_GUICtrlEdit_SetReadOnly',
'_GUICtrlEdit_SetRECT', '_GUICtrlEdit_SetRECTEx', '_GUICtrlEdit_SetRECTNP',
'_GUICtrlEdit_SetRectNPEx', '_GUICtrlEdit_SetSel', '_GUICtrlEdit_SetTabStops',
'_GUICtrlEdit_SetText', '_GUICtrlEdit_ShowBalloonTip', '_GUICtrlEdit_Undo',
'_GUICtrlHeader_AddItem', '_GUICtrlHeader_ClearFilter', '_GUICtrlHeader_ClearFilterAll',
'_GUICtrlHeader_Create', '_GUICtrlHeader_CreateDragImage', '_GUICtrlHeader_DeleteItem',
'_GUICtrlHeader_Destroy', '_GUICtrlHeader_EditFilter', '_GUICtrlHeader_GetBitmapMargin',
'_GUICtrlHeader_GetImageList', '_GUICtrlHeader_GetItem', '_GUICtrlHeader_GetItemAlign',
'_GUICtrlHeader_GetItemBitmap', '_GUICtrlHeader_GetItemCount', '_GUICtrlHeader_GetItemDisplay',
'_GUICtrlHeader_GetItemFlags', '_GUICtrlHeader_GetItemFormat', '_GUICtrlHeader_GetItemImage',
'_GUICtrlHeader_GetItemOrder', '_GUICtrlHeader_GetItemParam', '_GUICtrlHeader_GetItemRect',
'_GUICtrlHeader_GetItemRectEx', '_GUICtrlHeader_GetItemText', '_GUICtrlHeader_GetItemWidth',
'_GUICtrlHeader_GetOrderArray', '_GUICtrlHeader_GetUnicodeFormat', '_GUICtrlHeader_HitTest',
'_GUICtrlHeader_InsertItem', '_GUICtrlHeader_Layout', '_GUICtrlHeader_OrderToIndex',
'_GUICtrlHeader_SetBitmapMargin', '_GUICtrlHeader_SetFilterChangeTimeout', '_GUICtrlHeader_SetHotDivider',
'_GUICtrlHeader_SetImageList', '_GUICtrlHeader_SetItem', '_GUICtrlHeader_SetItemAlign',
'_GUICtrlHeader_SetItemBitmap', '_GUICtrlHeader_SetItemDisplay', '_GUICtrlHeader_SetItemFlags',
'_GUICtrlHeader_SetItemFormat', '_GUICtrlHeader_SetItemImage', '_GUICtrlHeader_SetItemOrder',
'_GUICtrlHeader_SetItemParam', '_GUICtrlHeader_SetItemText', '_GUICtrlHeader_SetItemWidth',
'_GUICtrlHeader_SetOrderArray', '_GUICtrlHeader_SetUnicodeFormat', '_GUICtrlIpAddress_ClearAddress',
'_GUICtrlIpAddress_Create', '_GUICtrlIpAddress_Destroy', '_GUICtrlIpAddress_Get',
'_GUICtrlIpAddress_GetArray', '_GUICtrlIpAddress_GetEx', '_GUICtrlIpAddress_IsBlank',
'_GUICtrlIpAddress_Set', '_GUICtrlIpAddress_SetArray', '_GUICtrlIpAddress_SetEx',
'_GUICtrlIpAddress_SetFocus', '_GUICtrlIpAddress_SetFont', '_GUICtrlIpAddress_SetRange',
'_GUICtrlIpAddress_ShowHide', '_GUICtrlListBox_AddFile', '_GUICtrlListBox_AddString',
'_GUICtrlListBox_BeginUpdate', '_GUICtrlListBox_Create', '_GUICtrlListBox_DeleteString',
'_GUICtrlListBox_Destroy', '_GUICtrlListBox_Dir', '_GUICtrlListBox_EndUpdate',
'_GUICtrlListBox_FindInText', '_GUICtrlListBox_FindString', '_GUICtrlListBox_GetAnchorIndex',
'_GUICtrlListBox_GetCaretIndex', '_GUICtrlListBox_GetCount', '_GUICtrlListBox_GetCurSel',
'_GUICtrlListBox_GetHorizontalExtent', '_GUICtrlListBox_GetItemData', '_GUICtrlListBox_GetItemHeight',
'_GUICtrlListBox_GetItemRect', '_GUICtrlListBox_GetItemRectEx', '_GUICtrlListBox_GetListBoxInfo',
'_GUICtrlListBox_GetLocale', '_GUICtrlListBox_GetLocaleCountry', '_GUICtrlListBox_GetLocaleLang',
'_GUICtrlListBox_GetLocalePrimLang', '_GUICtrlListBox_GetLocaleSubLang', '_GUICtrlListBox_GetSel',
'_GUICtrlListBox_GetSelCount', '_GUICtrlListBox_GetSelItems', '_GUICtrlListBox_GetSelItemsText',
'_GUICtrlListBox_GetText', '_GUICtrlListBox_GetTextLen', '_GUICtrlListBox_GetTopIndex',
'_GUICtrlListBox_InitStorage', '_GUICtrlListBox_InsertString', '_GUICtrlListBox_ItemFromPoint',
'_GUICtrlListBox_ReplaceString', '_GUICtrlListBox_ResetContent', '_GUICtrlListBox_SelectString',
'_GUICtrlListBox_SelItemRange', '_GUICtrlListBox_SelItemRangeEx', '_GUICtrlListBox_SetAnchorIndex',
'_GUICtrlListBox_SetCaretIndex', '_GUICtrlListBox_SetColumnWidth', '_GUICtrlListBox_SetCurSel',
'_GUICtrlListBox_SetHorizontalExtent', '_GUICtrlListBox_SetItemData', '_GUICtrlListBox_SetItemHeight',
'_GUICtrlListBox_SetLocale', '_GUICtrlListBox_SetSel', '_GUICtrlListBox_SetTabStops',
'_GUICtrlListBox_SetTopIndex', '_GUICtrlListBox_Sort', '_GUICtrlListBox_SwapString',
'_GUICtrlListBox_UpdateHScroll', '_GUICtrlListView_AddArray', '_GUICtrlListView_AddColumn',
'_GUICtrlListView_AddItem', '_GUICtrlListView_AddSubItem', '_GUICtrlListView_ApproximateViewHeight',
'_GUICtrlListView_ApproximateViewRect', '_GUICtrlListView_ApproximateViewWidth', '_GUICtrlListView_Arrange',
'_GUICtrlListView_BeginUpdate', '_GUICtrlListView_CancelEditLabel', '_GUICtrlListView_ClickItem',
'_GUICtrlListView_CopyItems', '_GUICtrlListView_Create', '_GUICtrlListView_CreateDragImage',
'_GUICtrlListView_CreateSolidBitMap', '_GUICtrlListView_DeleteAllItems', '_GUICtrlListView_DeleteColumn',
'_GUICtrlListView_DeleteItem', '_GUICtrlListView_DeleteItemsSelected', '_GUICtrlListView_Destroy',
'_GUICtrlListView_DrawDragImage', '_GUICtrlListView_EditLabel', '_GUICtrlListView_EnableGroupView',
'_GUICtrlListView_EndUpdate', '_GUICtrlListView_EnsureVisible', '_GUICtrlListView_FindInText',
'_GUICtrlListView_FindItem', '_GUICtrlListView_FindNearest', '_GUICtrlListView_FindParam',
'_GUICtrlListView_FindText', '_GUICtrlListView_GetBkColor', '_GUICtrlListView_GetBkImage',
'_GUICtrlListView_GetCallbackMask', '_GUICtrlListView_GetColumn', '_GUICtrlListView_GetColumnCount',
'_GUICtrlListView_GetColumnOrder', '_GUICtrlListView_GetColumnOrderArray', '_GUICtrlListView_GetColumnWidth',
'_GUICtrlListView_GetCounterPage', '_GUICtrlListView_GetEditControl', '_GUICtrlListView_GetExtendedListViewStyle',
'_GUICtrlListView_GetGroupInfo', '_GUICtrlListView_GetGroupViewEnabled', '_GUICtrlListView_GetHeader',
'_GUICtrlListView_GetHotCursor', '_GUICtrlListView_GetHotItem', '_GUICtrlListView_GetHoverTime',
'_GUICtrlListView_GetImageList', '_GUICtrlListView_GetISearchString', '_GUICtrlListView_GetItem',
'_GUICtrlListView_GetItemChecked', '_GUICtrlListView_GetItemCount', '_GUICtrlListView_GetItemCut',
'_GUICtrlListView_GetItemDropHilited', '_GUICtrlListView_GetItemEx', '_GUICtrlListView_GetItemFocused',
'_GUICtrlListView_GetItemGroupID', '_GUICtrlListView_GetItemImage', '_GUICtrlListView_GetItemIndent',
'_GUICtrlListView_GetItemParam', '_GUICtrlListView_GetItemPosition', '_GUICtrlListView_GetItemPositionX',
'_GUICtrlListView_GetItemPositionY', '_GUICtrlListView_GetItemRect', '_GUICtrlListView_GetItemRectEx',
'_GUICtrlListView_GetItemSelected', '_GUICtrlListView_GetItemSpacing', '_GUICtrlListView_GetItemSpacingX',
'_GUICtrlListView_GetItemSpacingY', '_GUICtrlListView_GetItemState', '_GUICtrlListView_GetItemStateImage',
'_GUICtrlListView_GetItemText', '_GUICtrlListView_GetItemTextArray', '_GUICtrlListView_GetItemTextString',
'_GUICtrlListView_GetNextItem', '_GUICtrlListView_GetNumberOfWorkAreas', '_GUICtrlListView_GetOrigin',
'_GUICtrlListView_GetOriginX', '_GUICtrlListView_GetOriginY', '_GUICtrlListView_GetOutlineColor',
'_GUICtrlListView_GetSelectedColumn', '_GUICtrlListView_GetSelectedCount', '_GUICtrlListView_GetSelectedIndices',
'_GUICtrlListView_GetSelectionMark', '_GUICtrlListView_GetStringWidth', '_GUICtrlListView_GetSubItemRect',
'_GUICtrlListView_GetTextBkColor', '_GUICtrlListView_GetTextColor', '_GUICtrlListView_GetToolTips',
'_GUICtrlListView_GetTopIndex', '_GUICtrlListView_GetUnicodeFormat', '_GUICtrlListView_GetView',
'_GUICtrlListView_GetViewDetails', '_GUICtrlListView_GetViewLarge', '_GUICtrlListView_GetViewList',
'_GUICtrlListView_GetViewRect', '_GUICtrlListView_GetViewSmall', '_GUICtrlListView_GetViewTile',
'_GUICtrlListView_HideColumn', '_GUICtrlListView_HitTest', '_GUICtrlListView_InsertColumn',
'_GUICtrlListView_InsertGroup', '_GUICtrlListView_InsertItem', '_GUICtrlListView_JustifyColumn',
'_GUICtrlListView_MapIDToIndex', '_GUICtrlListView_MapIndexToID', '_GUICtrlListView_RedrawItems',
'_GUICtrlListView_RegisterSortCallBack', '_GUICtrlListView_RemoveAllGroups', '_GUICtrlListView_RemoveGroup',
'_GUICtrlListView_Scroll', '_GUICtrlListView_SetBkColor', '_GUICtrlListView_SetBkImage',
'_GUICtrlListView_SetCallBackMask', '_GUICtrlListView_SetColumn', '_GUICtrlListView_SetColumnOrder',
'_GUICtrlListView_SetColumnOrderArray', '_GUICtrlListView_SetColumnWidth', '_GUICtrlListView_SetExtendedListViewStyle',
'_GUICtrlListView_SetGroupInfo', '_GUICtrlListView_SetHotItem', '_GUICtrlListView_SetHoverTime',
'_GUICtrlListView_SetIconSpacing', '_GUICtrlListView_SetImageList', '_GUICtrlListView_SetItem',
'_GUICtrlListView_SetItemChecked', '_GUICtrlListView_SetItemCount', '_GUICtrlListView_SetItemCut',
'_GUICtrlListView_SetItemDropHilited', '_GUICtrlListView_SetItemEx', '_GUICtrlListView_SetItemFocused',
'_GUICtrlListView_SetItemGroupID', '_GUICtrlListView_SetItemImage', '_GUICtrlListView_SetItemIndent',
'_GUICtrlListView_SetItemParam', '_GUICtrlListView_SetItemPosition', '_GUICtrlListView_SetItemPosition32',
'_GUICtrlListView_SetItemSelected', '_GUICtrlListView_SetItemState', '_GUICtrlListView_SetItemStateImage',
'_GUICtrlListView_SetItemText', '_GUICtrlListView_SetOutlineColor', '_GUICtrlListView_SetSelectedColumn',
'_GUICtrlListView_SetSelectionMark', '_GUICtrlListView_SetTextBkColor', '_GUICtrlListView_SetTextColor',
'_GUICtrlListView_SetToolTips', '_GUICtrlListView_SetUnicodeFormat', '_GUICtrlListView_SetView',
'_GUICtrlListView_SetWorkAreas', '_GUICtrlListView_SimpleSort', '_GUICtrlListView_SortItems',
'_GUICtrlListView_SubItemHitTest', '_GUICtrlListView_UnRegisterSortCallBack', '_GUICtrlMenu_AddMenuItem',
'_GUICtrlMenu_AppendMenu', '_GUICtrlMenu_CheckMenuItem', '_GUICtrlMenu_CheckRadioItem',
'_GUICtrlMenu_CreateMenu', '_GUICtrlMenu_CreatePopup', '_GUICtrlMenu_DeleteMenu',
'_GUICtrlMenu_DestroyMenu', '_GUICtrlMenu_DrawMenuBar', '_GUICtrlMenu_EnableMenuItem',
'_GUICtrlMenu_FindItem', '_GUICtrlMenu_FindParent', '_GUICtrlMenu_GetItemBmp',
'_GUICtrlMenu_GetItemBmpChecked', '_GUICtrlMenu_GetItemBmpUnchecked', '_GUICtrlMenu_GetItemChecked',
'_GUICtrlMenu_GetItemCount', '_GUICtrlMenu_GetItemData', '_GUICtrlMenu_GetItemDefault',
'_GUICtrlMenu_GetItemDisabled', '_GUICtrlMenu_GetItemEnabled', '_GUICtrlMenu_GetItemGrayed',
'_GUICtrlMenu_GetItemHighlighted', '_GUICtrlMenu_GetItemID', '_GUICtrlMenu_GetItemInfo',
'_GUICtrlMenu_GetItemRect', '_GUICtrlMenu_GetItemRectEx', '_GUICtrlMenu_GetItemState',
'_GUICtrlMenu_GetItemStateEx', '_GUICtrlMenu_GetItemSubMenu', '_GUICtrlMenu_GetItemText',
'_GUICtrlMenu_GetItemType', '_GUICtrlMenu_GetMenu', '_GUICtrlMenu_GetMenuBackground',
'_GUICtrlMenu_GetMenuBarInfo', '_GUICtrlMenu_GetMenuContextHelpID', '_GUICtrlMenu_GetMenuData',
'_GUICtrlMenu_GetMenuDefaultItem', '_GUICtrlMenu_GetMenuHeight', '_GUICtrlMenu_GetMenuInfo',
'_GUICtrlMenu_GetMenuStyle', '_GUICtrlMenu_GetSystemMenu', '_GUICtrlMenu_InsertMenuItem',
'_GUICtrlMenu_InsertMenuItemEx', '_GUICtrlMenu_IsMenu', '_GUICtrlMenu_LoadMenu',
'_GUICtrlMenu_MapAccelerator', '_GUICtrlMenu_MenuItemFromPoint', '_GUICtrlMenu_RemoveMenu',
'_GUICtrlMenu_SetItemBitmaps', '_GUICtrlMenu_SetItemBmp', '_GUICtrlMenu_SetItemBmpChecked',
'_GUICtrlMenu_SetItemBmpUnchecked', '_GUICtrlMenu_SetItemChecked', '_GUICtrlMenu_SetItemData',
'_GUICtrlMenu_SetItemDefault', '_GUICtrlMenu_SetItemDisabled', '_GUICtrlMenu_SetItemEnabled',
'_GUICtrlMenu_SetItemGrayed', '_GUICtrlMenu_SetItemHighlighted', '_GUICtrlMenu_SetItemID',
'_GUICtrlMenu_SetItemInfo', '_GUICtrlMenu_SetItemState', '_GUICtrlMenu_SetItemSubMenu',
'_GUICtrlMenu_SetItemText', '_GUICtrlMenu_SetItemType', '_GUICtrlMenu_SetMenu',
'_GUICtrlMenu_SetMenuBackground', '_GUICtrlMenu_SetMenuContextHelpID', '_GUICtrlMenu_SetMenuData',
'_GUICtrlMenu_SetMenuDefaultItem', '_GUICtrlMenu_SetMenuHeight', '_GUICtrlMenu_SetMenuInfo',
'_GUICtrlMenu_SetMenuStyle', '_GUICtrlMenu_TrackPopupMenu', '_GUICtrlMonthCal_Create',
'_GUICtrlMonthCal_Destroy', '_GUICtrlMonthCal_GetColor', '_GUICtrlMonthCal_GetColorArray',
'_GUICtrlMonthCal_GetCurSel', '_GUICtrlMonthCal_GetCurSelStr', '_GUICtrlMonthCal_GetFirstDOW',
'_GUICtrlMonthCal_GetFirstDOWStr', '_GUICtrlMonthCal_GetMaxSelCount', '_GUICtrlMonthCal_GetMaxTodayWidth',
'_GUICtrlMonthCal_GetMinReqHeight', '_GUICtrlMonthCal_GetMinReqRect', '_GUICtrlMonthCal_GetMinReqRectArray',
'_GUICtrlMonthCal_GetMinReqWidth', '_GUICtrlMonthCal_GetMonthDelta', '_GUICtrlMonthCal_GetMonthRange',
'_GUICtrlMonthCal_GetMonthRangeMax', '_GUICtrlMonthCal_GetMonthRangeMaxStr', '_GUICtrlMonthCal_GetMonthRangeMin',
'_GUICtrlMonthCal_GetMonthRangeMinStr', '_GUICtrlMonthCal_GetMonthRangeSpan', '_GUICtrlMonthCal_GetRange',
'_GUICtrlMonthCal_GetRangeMax', '_GUICtrlMonthCal_GetRangeMaxStr', '_GUICtrlMonthCal_GetRangeMin',
'_GUICtrlMonthCal_GetRangeMinStr', '_GUICtrlMonthCal_GetSelRange', '_GUICtrlMonthCal_GetSelRangeMax',
'_GUICtrlMonthCal_GetSelRangeMaxStr', '_GUICtrlMonthCal_GetSelRangeMin', '_GUICtrlMonthCal_GetSelRangeMinStr',
'_GUICtrlMonthCal_GetToday', '_GUICtrlMonthCal_GetTodayStr', '_GUICtrlMonthCal_GetUnicodeFormat',
'_GUICtrlMonthCal_HitTest', '_GUICtrlMonthCal_SetColor', '_GUICtrlMonthCal_SetCurSel',
'_GUICtrlMonthCal_SetDayState', '_GUICtrlMonthCal_SetFirstDOW', '_GUICtrlMonthCal_SetMaxSelCount',
'_GUICtrlMonthCal_SetMonthDelta', '_GUICtrlMonthCal_SetRange', '_GUICtrlMonthCal_SetSelRange',
'_GUICtrlMonthCal_SetToday', '_GUICtrlMonthCal_SetUnicodeFormat', '_GUICtrlRebar_AddBand',
'_GUICtrlRebar_AddToolBarBand', '_GUICtrlRebar_BeginDrag', '_GUICtrlRebar_Create',
'_GUICtrlRebar_DeleteBand', '_GUICtrlRebar_Destroy', '_GUICtrlRebar_DragMove',
'_GUICtrlRebar_EndDrag', '_GUICtrlRebar_GetBandBackColor', '_GUICtrlRebar_GetBandBorders',
'_GUICtrlRebar_GetBandBordersEx', '_GUICtrlRebar_GetBandChildHandle', '_GUICtrlRebar_GetBandChildSize',
'_GUICtrlRebar_GetBandCount', '_GUICtrlRebar_GetBandForeColor', '_GUICtrlRebar_GetBandHeaderSize',
'_GUICtrlRebar_GetBandID', '_GUICtrlRebar_GetBandIdealSize', '_GUICtrlRebar_GetBandLength',
'_GUICtrlRebar_GetBandLParam', '_GUICtrlRebar_GetBandMargins', '_GUICtrlRebar_GetBandMarginsEx',
'_GUICtrlRebar_GetBandRect', '_GUICtrlRebar_GetBandRectEx', '_GUICtrlRebar_GetBandStyle',
'_GUICtrlRebar_GetBandStyleBreak', '_GUICtrlRebar_GetBandStyleChildEdge', '_GUICtrlRebar_GetBandStyleFixedBMP',
'_GUICtrlRebar_GetBandStyleFixedSize', '_GUICtrlRebar_GetBandStyleGripperAlways', '_GUICtrlRebar_GetBandStyleHidden',
'_GUICtrlRebar_GetBandStyleHideTitle', '_GUICtrlRebar_GetBandStyleNoGripper', '_GUICtrlRebar_GetBandStyleTopAlign',
'_GUICtrlRebar_GetBandStyleUseChevron', '_GUICtrlRebar_GetBandStyleVariableHeight', '_GUICtrlRebar_GetBandText',
'_GUICtrlRebar_GetBarHeight', '_GUICtrlRebar_GetBKColor', '_GUICtrlRebar_GetColorScheme',
'_GUICtrlRebar_GetRowCount', '_GUICtrlRebar_GetRowHeight', '_GUICtrlRebar_GetTextColor',
'_GUICtrlRebar_GetToolTips', '_GUICtrlRebar_GetUnicodeFormat', '_GUICtrlRebar_HitTest',
'_GUICtrlRebar_IDToIndex', '_GUICtrlRebar_MaximizeBand', '_GUICtrlRebar_MinimizeBand',
'_GUICtrlRebar_MoveBand', '_GUICtrlRebar_SetBandBackColor', '_GUICtrlRebar_SetBandForeColor',
'_GUICtrlRebar_SetBandHeaderSize', '_GUICtrlRebar_SetBandID', '_GUICtrlRebar_SetBandIdealSize',
'_GUICtrlRebar_SetBandLength', '_GUICtrlRebar_SetBandLParam', '_GUICtrlRebar_SetBandStyle',
'_GUICtrlRebar_SetBandStyleBreak', '_GUICtrlRebar_SetBandStyleChildEdge', '_GUICtrlRebar_SetBandStyleFixedBMP',
'_GUICtrlRebar_SetBandStyleFixedSize', '_GUICtrlRebar_SetBandStyleGripperAlways', '_GUICtrlRebar_SetBandStyleHidden',
'_GUICtrlRebar_SetBandStyleHideTitle', '_GUICtrlRebar_SetBandStyleNoGripper', '_GUICtrlRebar_SetBandStyleTopAlign',
'_GUICtrlRebar_SetBandStyleUseChevron', '_GUICtrlRebar_SetBandStyleVariableHeight', '_GUICtrlRebar_SetBandText',
'_GUICtrlRebar_SetBKColor', '_GUICtrlRebar_SetColorScheme', '_GUICtrlRebar_SetTextColor',
'_GUICtrlRebar_SetToolTips', '_GUICtrlRebar_SetUnicodeFormat', '_GUICtrlRebar_ShowBand',
'_GUICtrlSlider_ClearSel', '_GUICtrlSlider_ClearTics', '_GUICtrlSlider_Create',
'_GUICtrlSlider_Destroy', '_GUICtrlSlider_GetBuddy', '_GUICtrlSlider_GetChannelRect',
'_GUICtrlSlider_GetLineSize', '_GUICtrlSlider_GetNumTics', '_GUICtrlSlider_GetPageSize',
'_GUICtrlSlider_GetPos', '_GUICtrlSlider_GetPTics', '_GUICtrlSlider_GetRange',
'_GUICtrlSlider_GetRangeMax', '_GUICtrlSlider_GetRangeMin', '_GUICtrlSlider_GetSel',
'_GUICtrlSlider_GetSelEnd', '_GUICtrlSlider_GetSelStart', '_GUICtrlSlider_GetThumbLength',
'_GUICtrlSlider_GetThumbRect', '_GUICtrlSlider_GetThumbRectEx', '_GUICtrlSlider_GetTic',
'_GUICtrlSlider_GetTicPos', '_GUICtrlSlider_GetToolTips', '_GUICtrlSlider_GetUnicodeFormat',
'_GUICtrlSlider_SetBuddy', '_GUICtrlSlider_SetLineSize', '_GUICtrlSlider_SetPageSize',
'_GUICtrlSlider_SetPos', '_GUICtrlSlider_SetRange', '_GUICtrlSlider_SetRangeMax',
'_GUICtrlSlider_SetRangeMin', '_GUICtrlSlider_SetSel', '_GUICtrlSlider_SetSelEnd',
'_GUICtrlSlider_SetSelStart', '_GUICtrlSlider_SetThumbLength', '_GUICtrlSlider_SetTic',
'_GUICtrlSlider_SetTicFreq', '_GUICtrlSlider_SetTipSide', '_GUICtrlSlider_SetToolTips',
'_GUICtrlSlider_SetUnicodeFormat', '_GUICtrlStatusBar_Create', '_GUICtrlStatusBar_Destroy',
'_GUICtrlStatusBar_EmbedControl', '_GUICtrlStatusBar_GetBorders', '_GUICtrlStatusBar_GetBordersHorz',
'_GUICtrlStatusBar_GetBordersRect', '_GUICtrlStatusBar_GetBordersVert', '_GUICtrlStatusBar_GetCount',
'_GUICtrlStatusBar_GetHeight', '_GUICtrlStatusBar_GetIcon', '_GUICtrlStatusBar_GetParts',
'_GUICtrlStatusBar_GetRect', '_GUICtrlStatusBar_GetRectEx', '_GUICtrlStatusBar_GetText',
'_GUICtrlStatusBar_GetTextFlags', '_GUICtrlStatusBar_GetTextLength', '_GUICtrlStatusBar_GetTextLengthEx',
'_GUICtrlStatusBar_GetTipText', '_GUICtrlStatusBar_GetUnicodeFormat', '_GUICtrlStatusBar_GetWidth',
'_GUICtrlStatusBar_IsSimple', '_GUICtrlStatusBar_Resize', '_GUICtrlStatusBar_SetBkColor',
'_GUICtrlStatusBar_SetIcon', '_GUICtrlStatusBar_SetMinHeight', '_GUICtrlStatusBar_SetParts',
'_GUICtrlStatusBar_SetSimple', '_GUICtrlStatusBar_SetText', '_GUICtrlStatusBar_SetTipText',
'_GUICtrlStatusBar_SetUnicodeFormat', '_GUICtrlStatusBar_ShowHide', '_GUICtrlTab_Create',
'_GUICtrlTab_DeleteAllItems', '_GUICtrlTab_DeleteItem', '_GUICtrlTab_DeselectAll',
'_GUICtrlTab_Destroy', '_GUICtrlTab_FindTab', '_GUICtrlTab_GetCurFocus',
'_GUICtrlTab_GetCurSel', '_GUICtrlTab_GetDisplayRect', '_GUICtrlTab_GetDisplayRectEx',
'_GUICtrlTab_GetExtendedStyle', '_GUICtrlTab_GetImageList', '_GUICtrlTab_GetItem',
'_GUICtrlTab_GetItemCount', '_GUICtrlTab_GetItemImage', '_GUICtrlTab_GetItemParam',
'_GUICtrlTab_GetItemRect', '_GUICtrlTab_GetItemRectEx', '_GUICtrlTab_GetItemState',
'_GUICtrlTab_GetItemText', '_GUICtrlTab_GetRowCount', '_GUICtrlTab_GetToolTips',
'_GUICtrlTab_GetUnicodeFormat', '_GUICtrlTab_HighlightItem', '_GUICtrlTab_HitTest',
'_GUICtrlTab_InsertItem', '_GUICtrlTab_RemoveImage', '_GUICtrlTab_SetCurFocus',
'_GUICtrlTab_SetCurSel', '_GUICtrlTab_SetExtendedStyle', '_GUICtrlTab_SetImageList',
'_GUICtrlTab_SetItem', '_GUICtrlTab_SetItemImage', '_GUICtrlTab_SetItemParam',
'_GUICtrlTab_SetItemSize', '_GUICtrlTab_SetItemState', '_GUICtrlTab_SetItemText',
'_GUICtrlTab_SetMinTabWidth', '_GUICtrlTab_SetPadding', '_GUICtrlTab_SetToolTips',
'_GUICtrlTab_SetUnicodeFormat', '_GUICtrlToolbar_AddBitmap', '_GUICtrlToolbar_AddButton',
'_GUICtrlToolbar_AddButtonSep', '_GUICtrlToolbar_AddString', '_GUICtrlToolbar_ButtonCount',
'_GUICtrlToolbar_CheckButton', '_GUICtrlToolbar_ClickAccel', '_GUICtrlToolbar_ClickButton',
'_GUICtrlToolbar_ClickIndex', '_GUICtrlToolbar_CommandToIndex', '_GUICtrlToolbar_Create',
'_GUICtrlToolbar_Customize', '_GUICtrlToolbar_DeleteButton', '_GUICtrlToolbar_Destroy',
'_GUICtrlToolbar_EnableButton', '_GUICtrlToolbar_FindToolbar', '_GUICtrlToolbar_GetAnchorHighlight',
'_GUICtrlToolbar_GetBitmapFlags', '_GUICtrlToolbar_GetButtonBitmap', '_GUICtrlToolbar_GetButtonInfo',
'_GUICtrlToolbar_GetButtonInfoEx', '_GUICtrlToolbar_GetButtonParam', '_GUICtrlToolbar_GetButtonRect',
'_GUICtrlToolbar_GetButtonRectEx', '_GUICtrlToolbar_GetButtonSize', '_GUICtrlToolbar_GetButtonState',
'_GUICtrlToolbar_GetButtonStyle', '_GUICtrlToolbar_GetButtonText', '_GUICtrlToolbar_GetColorScheme',
'_GUICtrlToolbar_GetDisabledImageList', '_GUICtrlToolbar_GetExtendedStyle', '_GUICtrlToolbar_GetHotImageList',
'_GUICtrlToolbar_GetHotItem', '_GUICtrlToolbar_GetImageList', '_GUICtrlToolbar_GetInsertMark',
'_GUICtrlToolbar_GetInsertMarkColor', '_GUICtrlToolbar_GetMaxSize', '_GUICtrlToolbar_GetMetrics',
'_GUICtrlToolbar_GetPadding', '_GUICtrlToolbar_GetRows', '_GUICtrlToolbar_GetString',
'_GUICtrlToolbar_GetStyle', '_GUICtrlToolbar_GetStyleAltDrag', '_GUICtrlToolbar_GetStyleCustomErase',
'_GUICtrlToolbar_GetStyleFlat', '_GUICtrlToolbar_GetStyleList', '_GUICtrlToolbar_GetStyleRegisterDrop',
'_GUICtrlToolbar_GetStyleToolTips', '_GUICtrlToolbar_GetStyleTransparent', '_GUICtrlToolbar_GetStyleWrapable',
'_GUICtrlToolbar_GetTextRows', '_GUICtrlToolbar_GetToolTips', '_GUICtrlToolbar_GetUnicodeFormat',
'_GUICtrlToolbar_HideButton', '_GUICtrlToolbar_HighlightButton', '_GUICtrlToolbar_HitTest',
'_GUICtrlToolbar_IndexToCommand', '_GUICtrlToolbar_InsertButton', '_GUICtrlToolbar_InsertMarkHitTest',
'_GUICtrlToolbar_IsButtonChecked', '_GUICtrlToolbar_IsButtonEnabled', '_GUICtrlToolbar_IsButtonHidden',
'_GUICtrlToolbar_IsButtonHighlighted', '_GUICtrlToolbar_IsButtonIndeterminate', '_GUICtrlToolbar_IsButtonPressed',
'_GUICtrlToolbar_LoadBitmap', '_GUICtrlToolbar_LoadImages', '_GUICtrlToolbar_MapAccelerator',
'_GUICtrlToolbar_MoveButton', '_GUICtrlToolbar_PressButton', '_GUICtrlToolbar_SetAnchorHighlight',
'_GUICtrlToolbar_SetBitmapSize', '_GUICtrlToolbar_SetButtonBitMap', '_GUICtrlToolbar_SetButtonInfo',
'_GUICtrlToolbar_SetButtonInfoEx', '_GUICtrlToolbar_SetButtonParam', '_GUICtrlToolbar_SetButtonSize',
'_GUICtrlToolbar_SetButtonState', '_GUICtrlToolbar_SetButtonStyle', '_GUICtrlToolbar_SetButtonText',
'_GUICtrlToolbar_SetButtonWidth', '_GUICtrlToolbar_SetCmdID', '_GUICtrlToolbar_SetColorScheme',
'_GUICtrlToolbar_SetDisabledImageList', '_GUICtrlToolbar_SetDrawTextFlags', '_GUICtrlToolbar_SetExtendedStyle',
'_GUICtrlToolbar_SetHotImageList', '_GUICtrlToolbar_SetHotItem', '_GUICtrlToolbar_SetImageList',
'_GUICtrlToolbar_SetIndent', '_GUICtrlToolbar_SetIndeterminate', '_GUICtrlToolbar_SetInsertMark',
'_GUICtrlToolbar_SetInsertMarkColor', '_GUICtrlToolbar_SetMaxTextRows', '_GUICtrlToolbar_SetMetrics',
'_GUICtrlToolbar_SetPadding', '_GUICtrlToolbar_SetParent', '_GUICtrlToolbar_SetRows',
'_GUICtrlToolbar_SetStyle', '_GUICtrlToolbar_SetStyleAltDrag', '_GUICtrlToolbar_SetStyleCustomErase',
'_GUICtrlToolbar_SetStyleFlat', '_GUICtrlToolbar_SetStyleList', '_GUICtrlToolbar_SetStyleRegisterDrop',
'_GUICtrlToolbar_SetStyleToolTips', '_GUICtrlToolbar_SetStyleTransparent', '_GUICtrlToolbar_SetStyleWrapable',
'_GUICtrlToolbar_SetToolTips', '_GUICtrlToolbar_SetUnicodeFormat', '_GUICtrlToolbar_SetWindowTheme',
'_GUICtrlTreeView_Add', '_GUICtrlTreeView_AddChild', '_GUICtrlTreeView_AddChildFirst',
'_GUICtrlTreeView_AddFirst', '_GUICtrlTreeView_BeginUpdate', '_GUICtrlTreeView_ClickItem',
'_GUICtrlTreeView_Create', '_GUICtrlTreeView_CreateDragImage', '_GUICtrlTreeView_CreateSolidBitMap',
'_GUICtrlTreeView_Delete', '_GUICtrlTreeView_DeleteAll', '_GUICtrlTreeView_DeleteChildren',
'_GUICtrlTreeView_Destroy', '_GUICtrlTreeView_DisplayRect', '_GUICtrlTreeView_DisplayRectEx',
'_GUICtrlTreeView_EditText', '_GUICtrlTreeView_EndEdit', '_GUICtrlTreeView_EndUpdate',
'_GUICtrlTreeView_EnsureVisible', '_GUICtrlTreeView_Expand', '_GUICtrlTreeView_ExpandedOnce',
'_GUICtrlTreeView_FindItem', '_GUICtrlTreeView_FindItemEx', '_GUICtrlTreeView_GetBkColor',
'_GUICtrlTreeView_GetBold', '_GUICtrlTreeView_GetChecked', '_GUICtrlTreeView_GetChildCount',
'_GUICtrlTreeView_GetChildren', '_GUICtrlTreeView_GetCount', '_GUICtrlTreeView_GetCut',
'_GUICtrlTreeView_GetDropTarget', '_GUICtrlTreeView_GetEditControl', '_GUICtrlTreeView_GetExpanded',
'_GUICtrlTreeView_GetFirstChild', '_GUICtrlTreeView_GetFirstItem', '_GUICtrlTreeView_GetFirstVisible',
'_GUICtrlTreeView_GetFocused', '_GUICtrlTreeView_GetHeight', '_GUICtrlTreeView_GetImageIndex',
'_GUICtrlTreeView_GetImageListIconHandle', '_GUICtrlTreeView_GetIndent', '_GUICtrlTreeView_GetInsertMarkColor',
'_GUICtrlTreeView_GetISearchString', '_GUICtrlTreeView_GetItemByIndex', '_GUICtrlTreeView_GetItemHandle',
'_GUICtrlTreeView_GetItemParam', '_GUICtrlTreeView_GetLastChild', '_GUICtrlTreeView_GetLineColor',
'_GUICtrlTreeView_GetNext', '_GUICtrlTreeView_GetNextChild', '_GUICtrlTreeView_GetNextSibling',
'_GUICtrlTreeView_GetNextVisible', '_GUICtrlTreeView_GetNormalImageList', '_GUICtrlTreeView_GetParentHandle',
'_GUICtrlTreeView_GetParentParam', '_GUICtrlTreeView_GetPrev', '_GUICtrlTreeView_GetPrevChild',
'_GUICtrlTreeView_GetPrevSibling', '_GUICtrlTreeView_GetPrevVisible', '_GUICtrlTreeView_GetScrollTime',
'_GUICtrlTreeView_GetSelected', '_GUICtrlTreeView_GetSelectedImageIndex', '_GUICtrlTreeView_GetSelection',
'_GUICtrlTreeView_GetSiblingCount', '_GUICtrlTreeView_GetState', '_GUICtrlTreeView_GetStateImageIndex',
'_GUICtrlTreeView_GetStateImageList', '_GUICtrlTreeView_GetText', '_GUICtrlTreeView_GetTextColor',
'_GUICtrlTreeView_GetToolTips', '_GUICtrlTreeView_GetTree', '_GUICtrlTreeView_GetUnicodeFormat',
'_GUICtrlTreeView_GetVisible', '_GUICtrlTreeView_GetVisibleCount', '_GUICtrlTreeView_HitTest',
'_GUICtrlTreeView_HitTestEx', '_GUICtrlTreeView_HitTestItem', '_GUICtrlTreeView_Index',
'_GUICtrlTreeView_InsertItem', '_GUICtrlTreeView_IsFirstItem', '_GUICtrlTreeView_IsParent',
'_GUICtrlTreeView_Level', '_GUICtrlTreeView_SelectItem', '_GUICtrlTreeView_SelectItemByIndex',
'_GUICtrlTreeView_SetBkColor', '_GUICtrlTreeView_SetBold', '_GUICtrlTreeView_SetChecked',
'_GUICtrlTreeView_SetCheckedByIndex', '_GUICtrlTreeView_SetChildren', '_GUICtrlTreeView_SetCut',
'_GUICtrlTreeView_SetDropTarget', '_GUICtrlTreeView_SetFocused', '_GUICtrlTreeView_SetHeight',
'_GUICtrlTreeView_SetIcon', '_GUICtrlTreeView_SetImageIndex', '_GUICtrlTreeView_SetIndent',
'_GUICtrlTreeView_SetInsertMark', '_GUICtrlTreeView_SetInsertMarkColor', '_GUICtrlTreeView_SetItemHeight',
'_GUICtrlTreeView_SetItemParam', '_GUICtrlTreeView_SetLineColor', '_GUICtrlTreeView_SetNormalImageList',
'_GUICtrlTreeView_SetScrollTime', '_GUICtrlTreeView_SetSelected', '_GUICtrlTreeView_SetSelectedImageIndex',
'_GUICtrlTreeView_SetState', '_GUICtrlTreeView_SetStateImageIndex', '_GUICtrlTreeView_SetStateImageList',
'_GUICtrlTreeView_SetText', '_GUICtrlTreeView_SetTextColor', '_GUICtrlTreeView_SetToolTips',
'_GUICtrlTreeView_SetUnicodeFormat', '_GUICtrlTreeView_Sort', '_GUIImageList_Add',
'_GUIImageList_AddBitmap', '_GUIImageList_AddIcon', '_GUIImageList_AddMasked',
'_GUIImageList_BeginDrag', '_GUIImageList_Copy', '_GUIImageList_Create',
'_GUIImageList_Destroy', '_GUIImageList_DestroyIcon', '_GUIImageList_DragEnter',
'_GUIImageList_DragLeave', '_GUIImageList_DragMove', '_GUIImageList_Draw',
'_GUIImageList_DrawEx', '_GUIImageList_Duplicate', '_GUIImageList_EndDrag',
'_GUIImageList_GetBkColor', '_GUIImageList_GetIcon', '_GUIImageList_GetIconHeight',
'_GUIImageList_GetIconSize', '_GUIImageList_GetIconSizeEx', '_GUIImageList_GetIconWidth',
'_GUIImageList_GetImageCount', '_GUIImageList_GetImageInfoEx', '_GUIImageList_Remove',
'_GUIImageList_ReplaceIcon', '_GUIImageList_SetBkColor', '_GUIImageList_SetIconSize',
'_GUIImageList_SetImageCount', '_GUIImageList_Swap', '_GUIScrollBars_EnableScrollBar',
'_GUIScrollBars_GetScrollBarInfoEx', '_GUIScrollBars_GetScrollBarRect', '_GUIScrollBars_GetScrollBarRGState',
'_GUIScrollBars_GetScrollBarXYLineButton', '_GUIScrollBars_GetScrollBarXYThumbBottom', '_GUIScrollBars_GetScrollBarXYThumbTop',
'_GUIScrollBars_GetScrollInfo', '_GUIScrollBars_GetScrollInfoEx', '_GUIScrollBars_GetScrollInfoMax',
'_GUIScrollBars_GetScrollInfoMin', '_GUIScrollBars_GetScrollInfoPage', '_GUIScrollBars_GetScrollInfoPos',
'_GUIScrollBars_GetScrollInfoTrackPos', '_GUIScrollBars_GetScrollPos', '_GUIScrollBars_GetScrollRange',
'_GUIScrollBars_Init', '_GUIScrollBars_ScrollWindow', '_GUIScrollBars_SetScrollInfo',
'_GUIScrollBars_SetScrollInfoMax', '_GUIScrollBars_SetScrollInfoMin', '_GUIScrollBars_SetScrollInfoPage',
'_GUIScrollBars_SetScrollInfoPos', '_GUIScrollBars_SetScrollRange', '_GUIScrollBars_ShowScrollBar',
'_GUIToolTip_Activate', '_GUIToolTip_AddTool', '_GUIToolTip_AdjustRect',
'_GUIToolTip_BitsToTTF', '_GUIToolTip_Create', '_GUIToolTip_DelTool',
'_GUIToolTip_Destroy', '_GUIToolTip_EnumTools', '_GUIToolTip_GetBubbleHeight',
'_GUIToolTip_GetBubbleSize', '_GUIToolTip_GetBubbleWidth', '_GUIToolTip_GetCurrentTool',
'_GUIToolTip_GetDelayTime', '_GUIToolTip_GetMargin', '_GUIToolTip_GetMarginEx',
'_GUIToolTip_GetMaxTipWidth', '_GUIToolTip_GetText', '_GUIToolTip_GetTipBkColor',
'_GUIToolTip_GetTipTextColor', '_GUIToolTip_GetTitleBitMap', '_GUIToolTip_GetTitleText',
'_GUIToolTip_GetToolCount', '_GUIToolTip_GetToolInfo', '_GUIToolTip_HitTest',
'_GUIToolTip_NewToolRect', '_GUIToolTip_Pop', '_GUIToolTip_PopUp',
'_GUIToolTip_SetDelayTime', '_GUIToolTip_SetMargin', '_GUIToolTip_SetMaxTipWidth',
'_GUIToolTip_SetTipBkColor', '_GUIToolTip_SetTipTextColor', '_GUIToolTip_SetTitle',
'_GUIToolTip_SetToolInfo', '_GUIToolTip_SetWindowTheme', '_GUIToolTip_ToolExists',
'_GUIToolTip_ToolToArray', '_GUIToolTip_TrackActivate', '_GUIToolTip_TrackPosition',
'_GUIToolTip_TTFToBits', '_GUIToolTip_Update', '_GUIToolTip_UpdateTipText',
'_HexToString', '_IE_Example', '_IE_Introduction',
'_IE_VersionInfo', '_IEAction', '_IEAttach',
'_IEBodyReadHTML', '_IEBodyReadText', '_IEBodyWriteHTML',
'_IECreate', '_IECreateEmbedded', '_IEDocGetObj',
'_IEDocInsertHTML', '_IEDocInsertText', '_IEDocReadHTML',
'_IEDocWriteHTML', '_IEErrorHandlerDeRegister', '_IEErrorHandlerRegister',
'_IEErrorNotify', '_IEFormElementCheckBoxSelect', '_IEFormElementGetCollection',
'_IEFormElementGetObjByName', '_IEFormElementGetValue', '_IEFormElementOptionSelect',
'_IEFormElementRadioSelect', '_IEFormElementSetValue', '_IEFormGetCollection',
'_IEFormGetObjByName', '_IEFormImageClick', '_IEFormReset',
'_IEFormSubmit', '_IEFrameGetCollection', '_IEFrameGetObjByName',
'_IEGetObjById', '_IEGetObjByName', '_IEHeadInsertEventScript',
'_IEImgClick', '_IEImgGetCollection', '_IEIsFrameSet',
'_IELinkClickByIndex', '_IELinkClickByText', '_IELinkGetCollection',
'_IELoadWait', '_IELoadWaitTimeout', '_IENavigate',
'_IEPropertyGet', '_IEPropertySet', '_IEQuit',
'_IETableGetCollection', '_IETableWriteToArray', '_IETagNameAllGetCollection',
'_IETagNameGetCollection', '_Iif', '_INetExplorerCapable',
'_INetGetSource', '_INetMail', '_INetSmtpMail',
'_IsPressed', '_MathCheckDiv', '_Max',
'_MemGlobalAlloc', '_MemGlobalFree', '_MemGlobalLock',
'_MemGlobalSize', '_MemGlobalUnlock', '_MemMoveMemory',
'_MemMsgBox', '_MemShowError', '_MemVirtualAlloc',
'_MemVirtualAllocEx', '_MemVirtualFree', '_MemVirtualFreeEx',
'_Min', '_MouseTrap', '_NamedPipes_CallNamedPipe',
'_NamedPipes_ConnectNamedPipe', '_NamedPipes_CreateNamedPipe', '_NamedPipes_CreatePipe',
'_NamedPipes_DisconnectNamedPipe', '_NamedPipes_GetNamedPipeHandleState', '_NamedPipes_GetNamedPipeInfo',
'_NamedPipes_PeekNamedPipe', '_NamedPipes_SetNamedPipeHandleState', '_NamedPipes_TransactNamedPipe',
'_NamedPipes_WaitNamedPipe', '_Net_Share_ConnectionEnum', '_Net_Share_FileClose',
'_Net_Share_FileEnum', '_Net_Share_FileGetInfo', '_Net_Share_PermStr',
'_Net_Share_ResourceStr', '_Net_Share_SessionDel', '_Net_Share_SessionEnum',
'_Net_Share_SessionGetInfo', '_Net_Share_ShareAdd', '_Net_Share_ShareCheck',
'_Net_Share_ShareDel', '_Net_Share_ShareEnum', '_Net_Share_ShareGetInfo',
'_Net_Share_ShareSetInfo', '_Net_Share_StatisticsGetSvr', '_Net_Share_StatisticsGetWrk',
'_Now', '_NowCalc', '_NowCalcDate',
'_NowDate', '_NowTime', '_PathFull',
'_PathMake', '_PathSplit', '_ProcessGetName',
'_ProcessGetPriority', '_Radian', '_ReplaceStringInFile',
'_RunDOS', '_ScreenCapture_Capture', '_ScreenCapture_CaptureWnd',
'_ScreenCapture_SaveImage', '_ScreenCapture_SetBMPFormat', '_ScreenCapture_SetJPGQuality',
'_ScreenCapture_SetTIFColorDepth', '_ScreenCapture_SetTIFCompression', '_Security__AdjustTokenPrivileges',
'_Security__GetAccountSid', '_Security__GetLengthSid', '_Security__GetTokenInformation',
'_Security__ImpersonateSelf', '_Security__IsValidSid', '_Security__LookupAccountName',
'_Security__LookupAccountSid', '_Security__LookupPrivilegeValue', '_Security__OpenProcessToken',
'_Security__OpenThreadToken', '_Security__OpenThreadTokenEx', '_Security__SetPrivilege',
'_Security__SidToStringSid', '_Security__SidTypeStr', '_Security__StringSidToSid',
'_SendMessage', '_SendMessageA', '_SetDate',
'_SetTime', '_Singleton', '_SoundClose',
'_SoundLength', '_SoundOpen', '_SoundPause',
'_SoundPlay', '_SoundPos', '_SoundResume',
'_SoundSeek', '_SoundStatus', '_SoundStop',
'_SQLite_Changes', '_SQLite_Close', '_SQLite_Display2DResult',
'_SQLite_Encode', '_SQLite_ErrCode', '_SQLite_ErrMsg',
'_SQLite_Escape', '_SQLite_Exec', '_SQLite_FetchData',
'_SQLite_FetchNames', '_SQLite_GetTable', '_SQLite_GetTable2d',
'_SQLite_LastInsertRowID', '_SQLite_LibVersion', '_SQLite_Open',
'_SQLite_Query', '_SQLite_QueryFinalize', '_SQLite_QueryReset',
'_SQLite_QuerySingleRow', '_SQLite_SaveMode', '_SQLite_SetTimeout',
'_SQLite_Shutdown', '_SQLite_SQLiteExe', '_SQLite_Startup',
'_SQLite_TotalChanges', '_StringAddComma', '_StringBetween',
'_StringEncrypt', '_StringInsert', '_StringProper',
'_StringRepeat', '_StringReverse', '_StringSplit',
'_StringToHex', '_TCPIpToName', '_TempFile',
'_TicksToTime', '_Timer_Diff', '_Timer_GetTimerID',
'_Timer_Init', '_Timer_KillAllTimers', '_Timer_KillTimer',
'_Timer_SetTimer', '_TimeToTicks', '_VersionCompare',
'_viClose', '_viExecCommand', '_viFindGpib',
'_viGpibBusReset', '_viGTL', '_viOpen',
'_viSetAttribute', '_viSetTimeout', '_WeekNumberISO',
'_WinAPI_AttachConsole', '_WinAPI_AttachThreadInput', '_WinAPI_Beep',
'_WinAPI_BitBlt', '_WinAPI_CallNextHookEx', '_WinAPI_Check',
'_WinAPI_ClientToScreen', '_WinAPI_CloseHandle', '_WinAPI_CommDlgExtendedError',
'_WinAPI_CopyIcon', '_WinAPI_CreateBitmap', '_WinAPI_CreateCompatibleBitmap',
'_WinAPI_CreateCompatibleDC', '_WinAPI_CreateEvent', '_WinAPI_CreateFile',
'_WinAPI_CreateFont', '_WinAPI_CreateFontIndirect', '_WinAPI_CreateProcess',
'_WinAPI_CreateSolidBitmap', '_WinAPI_CreateSolidBrush', '_WinAPI_CreateWindowEx',
'_WinAPI_DefWindowProc', '_WinAPI_DeleteDC', '_WinAPI_DeleteObject',
'_WinAPI_DestroyIcon', '_WinAPI_DestroyWindow', '_WinAPI_DrawEdge',
'_WinAPI_DrawFrameControl', '_WinAPI_DrawIcon', '_WinAPI_DrawIconEx',
'_WinAPI_DrawText', '_WinAPI_EnableWindow', '_WinAPI_EnumDisplayDevices',
'_WinAPI_EnumWindows', '_WinAPI_EnumWindowsPopup', '_WinAPI_EnumWindowsTop',
'_WinAPI_ExpandEnvironmentStrings', '_WinAPI_ExtractIconEx', '_WinAPI_FatalAppExit',
'_WinAPI_FillRect', '_WinAPI_FindExecutable', '_WinAPI_FindWindow',
'_WinAPI_FlashWindow', '_WinAPI_FlashWindowEx', '_WinAPI_FloatToInt',
'_WinAPI_FlushFileBuffers', '_WinAPI_FormatMessage', '_WinAPI_FrameRect',
'_WinAPI_FreeLibrary', '_WinAPI_GetAncestor', '_WinAPI_GetAsyncKeyState',
'_WinAPI_GetClassName', '_WinAPI_GetClientHeight', '_WinAPI_GetClientRect',
'_WinAPI_GetClientWidth', '_WinAPI_GetCurrentProcess', '_WinAPI_GetCurrentProcessID',
'_WinAPI_GetCurrentThread', '_WinAPI_GetCurrentThreadId', '_WinAPI_GetCursorInfo',
'_WinAPI_GetDC', '_WinAPI_GetDesktopWindow', '_WinAPI_GetDeviceCaps',
'_WinAPI_GetDIBits', '_WinAPI_GetDlgCtrlID', '_WinAPI_GetDlgItem',
'_WinAPI_GetFileSizeEx', '_WinAPI_GetFocus', '_WinAPI_GetForegroundWindow',
'_WinAPI_GetIconInfo', '_WinAPI_GetLastError', '_WinAPI_GetLastErrorMessage',
'_WinAPI_GetModuleHandle', '_WinAPI_GetMousePos', '_WinAPI_GetMousePosX',
'_WinAPI_GetMousePosY', '_WinAPI_GetObject', '_WinAPI_GetOpenFileName',
'_WinAPI_GetOverlappedResult', '_WinAPI_GetParent', '_WinAPI_GetProcessAffinityMask',
'_WinAPI_GetSaveFileName', '_WinAPI_GetStdHandle', '_WinAPI_GetStockObject',
'_WinAPI_GetSysColor', '_WinAPI_GetSysColorBrush', '_WinAPI_GetSystemMetrics',
'_WinAPI_GetTextExtentPoint32', '_WinAPI_GetWindow', '_WinAPI_GetWindowDC',
'_WinAPI_GetWindowHeight', '_WinAPI_GetWindowLong', '_WinAPI_GetWindowRect',
'_WinAPI_GetWindowText', '_WinAPI_GetWindowThreadProcessId', '_WinAPI_GetWindowWidth',
'_WinAPI_GetXYFromPoint', '_WinAPI_GlobalMemStatus', '_WinAPI_GUIDFromString',
'_WinAPI_GUIDFromStringEx', '_WinAPI_HiWord', '_WinAPI_InProcess',
'_WinAPI_IntToFloat', '_WinAPI_InvalidateRect', '_WinAPI_IsClassName',
'_WinAPI_IsWindow', '_WinAPI_IsWindowVisible', '_WinAPI_LoadBitmap',
'_WinAPI_LoadImage', '_WinAPI_LoadLibrary', '_WinAPI_LoadLibraryEx',
'_WinAPI_LoadShell32Icon', '_WinAPI_LoadString', '_WinAPI_LocalFree',
'_WinAPI_LoWord', '_WinAPI_MakeDWord', '_WinAPI_MAKELANGID',
'_WinAPI_MAKELCID', '_WinAPI_MakeLong', '_WinAPI_MessageBeep',
'_WinAPI_Mouse_Event', '_WinAPI_MoveWindow', '_WinAPI_MsgBox',
'_WinAPI_MulDiv', '_WinAPI_MultiByteToWideChar', '_WinAPI_MultiByteToWideCharEx',
'_WinAPI_OpenProcess', '_WinAPI_PointFromRect', '_WinAPI_PostMessage',
'_WinAPI_PrimaryLangId', '_WinAPI_PtInRect', '_WinAPI_ReadFile',
'_WinAPI_ReadProcessMemory', '_WinAPI_RectIsEmpty', '_WinAPI_RedrawWindow',
'_WinAPI_RegisterWindowMessage', '_WinAPI_ReleaseCapture', '_WinAPI_ReleaseDC',
'_WinAPI_ScreenToClient', '_WinAPI_SelectObject', '_WinAPI_SetBkColor',
'_WinAPI_SetCapture', '_WinAPI_SetCursor', '_WinAPI_SetDefaultPrinter',
'_WinAPI_SetDIBits', '_WinAPI_SetEvent', '_WinAPI_SetFocus',
'_WinAPI_SetFont', '_WinAPI_SetHandleInformation', '_WinAPI_SetLastError',
'_WinAPI_SetParent', '_WinAPI_SetProcessAffinityMask', '_WinAPI_SetSysColors',
'_WinAPI_SetTextColor', '_WinAPI_SetWindowLong', '_WinAPI_SetWindowPos',
'_WinAPI_SetWindowsHookEx', '_WinAPI_SetWindowText', '_WinAPI_ShowCursor',
'_WinAPI_ShowError', '_WinAPI_ShowMsg', '_WinAPI_ShowWindow',
'_WinAPI_StringFromGUID', '_WinAPI_SubLangId', '_WinAPI_SystemParametersInfo',
'_WinAPI_TwipsPerPixelX', '_WinAPI_TwipsPerPixelY', '_WinAPI_UnhookWindowsHookEx',
'_WinAPI_UpdateLayeredWindow', '_WinAPI_UpdateWindow', '_WinAPI_ValidateClassName',
'_WinAPI_WaitForInputIdle', '_WinAPI_WaitForMultipleObjects', '_WinAPI_WaitForSingleObject',
'_WinAPI_WideCharToMultiByte', '_WinAPI_WindowFromPoint', '_WinAPI_WriteConsole',
'_WinAPI_WriteFile', '_WinAPI_WriteProcessMemory', '_WinNet_AddConnection',
'_WinNet_AddConnection2', '_WinNet_AddConnection3', '_WinNet_CancelConnection',
'_WinNet_CancelConnection2', '_WinNet_CloseEnum', '_WinNet_ConnectionDialog',
'_WinNet_ConnectionDialog1', '_WinNet_DisconnectDialog', '_WinNet_DisconnectDialog1',
'_WinNet_EnumResource', '_WinNet_GetConnection', '_WinNet_GetConnectionPerformance',
'_WinNet_GetLastError', '_WinNet_GetNetworkInformation', '_WinNet_GetProviderName',
'_WinNet_GetResourceInformation', '_WinNet_GetResourceParent', '_WinNet_GetUniversalName',
'_WinNet_GetUser', '_WinNet_OpenEnum', '_WinNet_RestoreConnection',
'_WinNet_UseConnection', '_Word_VersionInfo', '_WordAttach',
'_WordCreate', '_WordDocAdd', '_WordDocAddLink',
'_WordDocAddPicture', '_WordDocClose', '_WordDocFindReplace',
'_WordDocGetCollection', '_WordDocLinkGetCollection', '_WordDocOpen',
'_WordDocPrint', '_WordDocPropertyGet', '_WordDocPropertySet',
'_WordDocSave', '_WordDocSaveAs', '_WordErrorHandlerDeRegister',
'_WordErrorHandlerRegister', '_WordErrorNotify', '_WordMacroRun',
'_WordPropertyGet', '_WordPropertySet', '_WordQuit'
),
5 => array(
'#ce', '#comments-end', '#comments-start',
'#cs', '#include', '#include-once',
'#NoTrayIcon', '#RequireAdmin'
),
6 => array(
'#AutoIt3Wrapper_Au3Check_Parameters', '#AutoIt3Wrapper_Au3Check_Stop_OnWarning', '#AutoIt3Wrapper_Change2CUI',
'#AutoIt3Wrapper_Compression', '#AutoIt3Wrapper_cvsWrapper_Parameters', '#AutoIt3Wrapper_Icon',
'#AutoIt3Wrapper_Outfile', '#AutoIt3Wrapper_Outfile_Type', '#AutoIt3Wrapper_Plugin_Funcs',
'#AutoIt3Wrapper_Res_Comment', '#AutoIt3Wrapper_Res_Description', '#AutoIt3Wrapper_Res_Field',
'#AutoIt3Wrapper_Res_File_Add', '#AutoIt3Wrapper_Res_Fileversion', '#AutoIt3Wrapper_Res_FileVersion_AutoIncrement',
'#AutoIt3Wrapper_Res_Icon_Add', '#AutoIt3Wrapper_Res_Language', '#AutoIt3Wrapper_Res_LegalCopyright',
'#AutoIt3Wrapper_res_requestedExecutionLevel', '#AutoIt3Wrapper_Res_SaveSource', '#AutoIt3Wrapper_Run_After',
'#AutoIt3Wrapper_Run_Au3check', '#AutoIt3Wrapper_Run_Before', '#AutoIt3Wrapper_Run_cvsWrapper',
'#AutoIt3Wrapper_Run_Debug_Mode', '#AutoIt3Wrapper_Run_Obfuscator', '#AutoIt3Wrapper_Run_Tidy',
'#AutoIt3Wrapper_Tidy_Stop_OnError', '#AutoIt3Wrapper_UseAnsi', '#AutoIt3Wrapper_UseUpx',
'#AutoIt3Wrapper_UseX64', '#AutoIt3Wrapper_Version', '#EndRegion',
'#forceref', '#Obfuscator_Ignore_Funcs', '#Obfuscator_Ignore_Variables',
'#Obfuscator_Parameters', '#Region', '#Tidy_Parameters'
)
),
'SYMBOLS' => array(
'(', ')', '[', ']',
'+', '-', '*', '/', '&', '^',
'=', '+=', '-=', '*=', '/=', '&=',
'==', '<', '<=', '>', '>=',
',', '.'
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #0000FF; font-weight: bold;',
2 => 'color: #800000; font-weight: bold;',
3 => 'color: #000080; font-style: italic; font-weight: bold;',
4 => 'color: #0080FF; font-style: italic; font-weight: bold;',
5 => 'color: #F000FF; font-style: italic;',
6 => 'color: #A00FF0; font-style: italic;'
),
'COMMENTS' => array(
0 => 'font-style: italic; color: #009933;',
'MULTI' => 'font-style: italic; color: #669900;'
),
'ESCAPE_CHAR' => array(
0 => ''
),
'BRACKETS' => array(
0 => 'color: #FF0000; font-weight: bold;'
),
'STRINGS' => array(
0 => 'font-weight: bold; color: #008080;'
),
'NUMBERS' => array(
0 => 'color: #AC00A9; font-style: italic; font-weight: bold;'
),
'METHODS' => array(
1 => 'color: #0000FF; font-style: italic; font-weight: bold;'
),
'SYMBOLS' => array(
0 => 'color: #FF0000; font-weight: bold;'
),
'REGEXPS' => array(
0 => 'font-weight: bold; color: #AA0000;'
),
'SCRIPT' => array(
)
),
'URLS' => array(
1 => 'http://www.autoitscript.com/autoit3/docs/keywords.htm',
2 => 'http://www.autoitscript.com/autoit3/docs/macros.htm',
3 => 'http://www.autoitscript.com/autoit3/docs/functions/{FNAME}.htm',
4 => '',
5 => '',
6 => ''
),
'OOLANG' => true,
'OBJECT_SPLITTERS' => array(
1 => '.'
),
'REGEXPS' => array(
//Variables
0 => '[\\$%@]+[a-zA-Z_][a-zA-Z0-9_]*'
),
'STRICT_MODE_APPLIES' => GESHI_MAYBE,
'SCRIPT_DELIMITERS' => array(
),
'HIGHLIGHT_STRICT_BLOCK' => array(
0 => true,
1 => true,
2 => true,
3 => true
)
);
?>

View File

@ -1,194 +0,0 @@
<?php
/*************************************************************************************
* avisynth.php
* --------
* Author: Ryan Jones (sciguyryan@gmail.com)
* Copyright: (c) 2008 Ryan Jones
* Release Version: 1.0.8.1
* Date Started: 2008/10/08
*
* AviSynth language file for GeSHi.
*
* CHANGES
* -------
* 2008/10/08 (1.0.8.1)
* - First Release
*
* TODO (updated 2008/10/08)
* -------------------------
* * There are also some special words that can't currently be specified directly in GeSHi as they may
* also be used as variables which would really mess things up.
* * Also there is an issue with the escape character as this language uses a muti-character escape system. Escape char should be """ but has been left
* as empty due to this restiction.
*
*************************************************************************************
*
* 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' => 'AviSynth',
'COMMENT_SINGLE' => array(1 => '#'),
'COMMENT_MULTI' => array('/*' => '*/', '[*' => '*]'),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array('"'),
'ESCAPE_CHAR' => '',
'KEYWORDS' => array(
// Reserved words.
1 => array(
'try', 'cache', 'function', 'global', 'return'
),
// Constants / special variables.
2 => array(
'true', 'yes', 'false', 'no', '__END__'
),
// Internal Filters.
3 => array(
'AviSource', 'AviFileSource', 'AddBorders', 'AlignedSplice', 'AssumeFPS', 'AssumeScaledFPS',
'AssumeFrameBased', 'AssumeFieldBased', 'AssumeBFF', 'AssumeTFF', 'Amplify', 'AmplifydB',
'AssumeSampleRate', 'AudioDub', 'AudioDubEx', 'Animate', 'ApplyRange',
'BicubicResize', 'BilinearResize', 'BlackmanResize', 'Blur', 'Bob', 'BlankClip', 'Blackness',
'ColorYUV', 'ConvertBackToYUY2', 'ConvertToRGB', 'ConvertToRGB24', 'ConvertToRGB32',
'ConvertToYUY2', 'ConvertToY8', 'ConvertToYV411', 'ConvertToYV12', 'ConvertToYV16', 'ConvertToYV24',
'ColorKeyMask', 'Crop', 'CropBottom', 'ChangeFPS', 'ConvertFPS', 'ComplementParity', 'ConvertAudioTo8bit',
'ConvertAudioTo16bit', 'ConvertAudioTo24bit', 'ConvertAudioTo32bit', 'ConvertAudioToFloat', 'ConvertToMono',
'ConditionalFilter', 'ConditionalReader', 'ColorBars', 'Compare',
'DirectShowSource', 'DeleteFrame', 'Dissolve', 'DuplicateFrame', 'DoubleWeave', 'DelayAudio',
'EnsureVBRMP3Sync',
'FixLuminance', 'FlipHorizontal', 'FlipVertical', 'FixBrokenChromaUpsampling', 'FadeIn0', 'FadeIn',
'FadeIn2', 'FadeOut0', 'FadeOut', 'FadeOut2', 'FadeIO0', 'FadeIO', 'FadeIO2', 'FreezeFrame', 'FrameEvaluate',
'GreyScale', 'GaussResize', 'GeneralConvolution', 'GetChannel', 'GetLeftChannel', 'GetRightChannel',
'HorizontalReduceBy2', 'Histogram',
'ImageReader', 'ImageSource', 'ImageWriter', 'Invert', 'Interleave', 'Info',
'KillAudio', 'KillVideo',
'Levels', 'Limiter', 'Layer', 'Letterbox', 'LanczosResize', 'Lanczos4Resize', 'Loop',
'MergeARGB', 'MergeRGB', 'MergeChroma', 'MergeLuma', 'Merge', 'Mask', 'MaskHS', 'MergeChannels', 'MixAudio',
'MonoToStereo', 'MessageClip',
'Normalize',
'OpenDMLSource', 'Overlay',
'PointResize', 'PeculiarBlend', 'Pulldown',
'RGBAdjust', 'ResetMask', 'Reverse', 'ResampleAudio', 'ReduceBy2',
'SegmentedAviSource', 'SegmentedDirectShowSource', 'SoundOut', 'ShowAlpha', 'ShowRed', 'ShowGreen',
'ShowBlue', 'SwapUV', 'Subtract', 'SincResize', 'Spline16Resize', 'Spline36Resize', 'Spline64Resize',
'SelectEven', 'SelectOdd', 'SelectEvery', 'SelectRangeEvery', 'Sharpen', 'SpatialSoften', 'SeparateFields',
'ShowFiveVersions', 'ShowFrameNumber', 'ShowSMPTE', 'ShowTime', 'StackHorizontal', 'StackVertical', 'Subtitle',
'SwapFields', 'SuperEQ', 'SSRC', 'ScriptClip',
'Tweak', 'TurnLeft', 'TurnRight', 'Turn180', 'TemporalSoften', 'TimeStretch', 'TCPServer', 'TCPSource', 'Trim',
'Tone',
'UToY', 'UToY8', 'UnalignedSplice',
'VToY', 'VToY8', 'VerticalReduceBy2', 'Version',
'WavSource', 'Weave', 'WriteFile', 'WriteFileIf', 'WriteFileStart', 'WriteFileEnd',
'YToUV'
),
// Internal functions.
4 => array(
'Abs', 'Apply', 'Assert', 'AverageLuma', 'AverageChromaU', 'AverageChromaV',
'Ceil', 'Cos', 'Chr', 'ChromaUDifference', 'ChromaVDifference',
'Defined', 'Default',
'Exp', 'Exist', 'Eval',
'Floor', 'Frac', 'Float', 'Findstr', 'GetMTMode',
'HexValue',
'Int', 'IsBool', 'IsClip', 'IsFloat', 'IsInt', 'IsString', 'Import',
'LoadPlugin', 'Log', 'LCase', 'LeftStr', 'LumaDifference', 'LoadVirtualDubPlugin', 'LoadVFAPIPlugin',
'LoadCPlugin', 'Load_Stdcall_Plugin',
'Max', 'MulDiv', 'MidStr',
'NOP',
'OPT_AllowFloatAudio', 'OPT_UseWaveExtensible',
'Pi', 'Pow',
'Round', 'Rand', 'RevStr', 'RightStr', 'RGBDifference', 'RGBDifferenceFromPrevious', 'RGBDifferenceToNext',
'Sin', 'Sqrt', 'Sign', 'Spline', 'StrLen', 'String', 'Select', 'SetMemoryMax', 'SetWorkingDir', 'SetMTMode',
'SetPlanarLegacyAlignment',
'Time',
'UCase', 'UDifferenceFromPrevious', 'UDifferenceToNext', 'UPlaneMax', 'UPlaneMin', 'UPlaneMedian',
'UPlaneMinMaxDifference',
'Value', 'VersionNumber', 'VersionString', 'VDifferenceFromPrevious', 'VDifferenceToNext', 'VPlaneMax',
'VPlaneMin', 'VPlaneMedian', 'VPlaneMinMaxDifference',
'YDifferenceFromPrevious', 'YDifferenceToNext', 'YPlaneMax', 'YPlaneMin', 'YPlaneMedian',
'YPlaneMinMaxDifference'
)
),
'SYMBOLS' => array(
'+', '++', '-', '--', '/', '*', '%',
'=', '==', '<', '<=', '>', '>=', '<>', '!=',
'!', '?', ':',
'|', '||', '&&',
'\\',
'(', ')', '{', '}',
'.', ','
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => false,
1 => false,
2 => false,
3 => false,
4 => true,
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color:#9966CC; font-weight:bold;',
2 => 'color:#0000FF; font-weight:bold;',
3 => 'color:#CC3300; font-weight:bold;',
4 => 'color:#660000; font-weight:bold;'
),
'COMMENTS' => array(
1 => 'color:#008000; font-style:italic;',
'MULTI' => 'color:#000080; font-style:italic;'
),
'ESCAPE_CHAR' => array(
0 => 'color:#000099;'
),
'BRACKETS' => array(
0 => 'color:#006600; font-weight:bold;'
),
'STRINGS' => array(
0 => 'color:#996600;'
),
'NUMBERS' => array(
0 => 'color:#006666;'
),
'METHODS' => array(
1 => 'color:#9900CC;'
),
'SYMBOLS' => array(
0 => 'color:#006600; font-weight:bold;'
),
'REGEXPS' => array(
),
'SCRIPT' => array(
)
),
'URLS' => array(
1 => '',
2 => '',
3 => 'http://avisynth.org/mediawiki/{FNAME}',
4 => ''
),
'REGEXPS' => array(
),
'OOLANG' => true,
'OBJECT_SPLITTERS' => array(
1 => '.'
),
'STRICT_MODE_APPLIES' => GESHI_MAYBE,
'SCRIPT_DELIMITERS' => array(
),
'HIGHLIGHT_STRICT_BLOCK' => array(
),
'TAB_WIDTH' => 4
);
?>

View File

@ -1,282 +0,0 @@
<?php
/*************************************************************************************
* bash.php
* --------
* Author: Andreas Gohr (andi@splitbrain.org)
* Copyright: (c) 2004 Andreas Gohr, Nigel McNie (http://qbnz.com/highlighter)
* Release Version: 1.0.8.1
* Date Started: 2004/08/20
*
* BASH language file for GeSHi.
*
* CHANGES
* -------
* 2008/06/21 (1.0.8)
* - Added loads of keywords and commands of GNU/Linux
* - Added support for parameters starting with a dash
* 2008/05/23 (1.0.7.22)
* - Added description of extra language features (SF#1970248)
* 2007/09/05 (1.0.7.21)
* - PARSER_CONTROL patch using SF #1788408 (BenBE)
* 2007/06/11 (1.0.7.20)
* - Added a lot of keywords (BenBE / Jan G)
* 2004/11/27 (1.0.2)
* - Added support for multiple object splitters
* 2004/10/27 (1.0.1)
* - Added support for URLs
* 2004/08/20 (1.0.0)
* - First Release
*
* TODO (updated 2004/11/27)
* -------------------------
* * Get symbols working
* * Highlight builtin vars
*
*************************************************************************************
*
* 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' => 'Bash',
// Bash DOES have single line comments with # markers. But bash also has
// the $# variable, so comments need special handling (see sf.net
// 1564839)
'COMMENT_SINGLE' => array('#'),
'COMMENT_MULTI' => array(),
'COMMENT_REGEXP' => array(
//Variables
1 => "/\\$\\{[^\\n\\}]*?\\}/i",
//BASH-style Heredoc
2 => '/<<-?\s*?([\'"]?)([a-zA-Z0-9]+)\1;[^\n]*?\\n.*\\n\\2(?![a-zA-Z0-9])/siU',
//Escaped String Starters
3 => "/\\\\['\"]/siU"
),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array('"'),
'HARDQUOTE' => array("'", "'"),
'HARDESCAPE' => array("\'"),
'ESCAPE_CHAR' => '',
'ESCAPE_REGEXP' => array(
//Simple Single Char Escapes
1 => "#\\\\[nfrtv\\$\\\"\n]#i",
// $var
2 => "#\\$[a-z_][a-z0-9_]*#i",
// ${...}
3 => "/\\$\\{[^\\n\\}]*?\\}/i",
// $(...)
4 => "/\\$\\([^\\n\\)]*?\\)/i",
// `...`
5 => "/`[^`]*`/"
),
'KEYWORDS' => array(
1 => array(
'case', 'do', 'done', 'elif', 'else', 'esac', 'fi', 'for', 'function',
'if', 'in', 'select', 'set', 'then', 'until', 'while', 'time'
),
2 => array(
'aclocal', 'aconnect', 'aplay', 'apm', 'apmsleep', 'apropos',
'apt-cache', 'apt-get', 'apt-key', 'aptitude',
'ar', 'arch', 'arecord', 'as', 'as86', 'ash', 'autoconf',
'autoheader', 'automake', 'awk',
'basename', 'bash', 'bc', 'bison', 'bunzip2', 'bzcat',
'bzcmp', 'bzdiff', 'bzegrep', 'bzfgrep', 'bzgrep',
'bzip2', 'bzip2recover', 'bzless', 'bzmore',
'c++', 'cal', 'cat', 'chattr', 'cc', 'cdda2wav', 'cdparanoia',
'cdrdao', 'cd-read', 'cdrecord', 'chfn', 'chgrp', 'chmod',
'chown', 'chroot', 'chsh', 'chvt', 'clear', 'cmp', 'comm', 'co',
'col', 'cp', 'cpio', 'cpp', 'csh', 'cut', 'cvs', 'cvs-pserver',
'dash', 'date', 'dd', 'dc', 'dcop', 'deallocvt', 'df', 'dialog',
'diff', 'diff3', 'dir', 'dircolors', 'directomatic', 'dirname',
'dmesg', 'dnsdomainname', 'domainname', 'dpkg', 'dselect', 'du',
'dumpkeys',
'ed', 'egrep', 'env', 'expr',
'false', 'fbset', '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',
'gimptool', 'gmake', 'gocr', 'grep', 'groups', 'gs', 'gunzip',
'gzexe', 'gzip',
'head', 'hexdump', 'hostname',
'id', 'ifconfig', 'igawk', 'install',
'join',
'kbd_mode','kbdrate', 'kdialog', 'kfile', 'kill', 'killall',
'lame', 'last', 'lastb', 'ld', 'ld86', 'ldd', 'less', 'lex', 'link',
'ln', 'loadkeys', 'loadunimap', 'locate', 'lockfile', 'login',
'logname', 'lp', 'lpr', 'ls', 'lsattr', 'lsmod', 'lsmod.old',
'lspci', 'ltrace', 'lynx',
'm4', 'make', 'man', 'mapscrn', 'mesg', 'mkdir', 'mkfifo',
'mknod', 'mktemp', 'more', 'mount', 'mplayer', 'msgfmt', 'mv',
'namei', 'nano', 'nasm', 'nawk', 'netstat', 'nice',
'nisdomainname', 'nl', 'nm', 'nm86', 'nmap', 'nohup', 'nop',
'od', 'openvt',
'passwd', 'patch', 'pcregrep', 'pcretest', 'perl', 'perror',
'pgawk', 'pidof', 'ping', 'pr', 'procmail', 'prune', 'ps', 'pstree',
'ps2ascii', 'ps2epsi', 'ps2frag', 'ps2pdf', 'ps2ps', 'psbook',
'psmerge', 'psnup', 'psresize', 'psselect', 'pstops',
'rbash', 'rcs', 'rcs2log', 'read', 'readlink', 'red', 'resizecons',
'rev', 'rm', 'rmdir', 'rsh', 'run-parts',
'sash', 'scp', 'screen', 'sed', 'seq', 'sendmail', 'setfont',
'setkeycodes', 'setleds', 'setmetamode', 'setserial', 'setterm',
'sh', 'showkey', 'shred', 'size', 'size86', 'skill', 'sleep',
'slogin', 'snice', 'sort', 'sox', 'split', 'ssed', 'ssh', 'ssh-add',
'ssh-agent', 'ssh-keygen', 'ssh-keyscan', 'stat', 'strace',
'strings', 'strip', 'stty', 'su', 'sudo', 'suidperl', 'sum', 'svn',
'svnadmin', 'svndumpfilter', 'svnlook', 'svnmerge', 'svnmucc',
'svnserve', 'svnshell', 'svnsync', 'svnversion', 'svnwrap', 'sync',
'tac', 'tail', 'tar', 'tee', 'tempfile', 'touch', 'tr', 'tree',
'true',
'umount', 'uname', 'unicode_start', 'unicode_stop', 'uniq',
'unlink', 'unzip', 'updatedb', 'updmap', 'uptime', 'users',
'utmpdump', 'uuidgen',
'valgrind', 'vdir', 'vi', 'vim', 'vmstat',
'w', 'wall', 'wc', 'wget', 'whatis', 'whereis', 'which', 'whiptail',
'who', 'whoami', 'write',
'xargs', 'xhost', 'xmodmap', 'xset',
'yacc', 'yes', 'ypdomainname',
'zcat', 'zcmp', 'zdiff', 'zdump', 'zegrep', 'zfgrep', 'zforce',
'zgrep', 'zip', 'zipgrep', 'zipinfo', 'zless', 'zmore', 'znew',
'zsh', 'zsoelim'
),
3 => array(
'alias', 'bg', 'bind', 'break', 'builtin', 'cd', 'command',
'compgen', 'complete', 'continue', 'declare', 'dirs', 'disown',
'echo', 'enable', 'eval', 'exec', 'exit', 'export', 'fc',
'fg', 'getopts', 'hash', 'help', 'history', 'jobs', 'let',
'local', 'logout', 'popd', 'printf', 'pushd', 'pwd', 'readonly',
'return', 'shift', 'shopt', 'source', 'suspend', 'test', 'times',
'trap', 'type', 'typeset', 'ulimit', 'umask', 'unalias', 'unset',
'wait'
)
),
'SYMBOLS' => array(
'(', ')', '[', ']', '!', '@', '%', '&', '*', '|', '/', '<', '>', ';;', '`'
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => false,
1 => true,
2 => true,
3 => true
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #000000; font-weight: bold;',
2 => 'color: #c20cb9; font-weight: bold;',
3 => 'color: #7a0874; font-weight: bold;'
),
'COMMENTS' => array(
0 => 'color: #666666; font-style: italic;',
1 => 'color: #800000;',
2 => 'color: #cc0000; font-style: italic;',
3 => 'color: #000000; font-weight: bold;'
),
'ESCAPE_CHAR' => array(
1 => 'color: #000099; font-weight: bold;',
2 => 'color: #007800;',
3 => 'color: #007800;',
4 => 'color: #007800;',
5 => 'color: #780078;',
'HARD' => 'color: #000099; font-weight: bold;'
),
'BRACKETS' => array(
0 => 'color: #7a0874; font-weight: bold;'
),
'STRINGS' => array(
0 => 'color: #ff0000;',
'HARD' => 'color: #ff0000;'
),
'NUMBERS' => array(
0 => 'color: #000000;'
),
'METHODS' => array(
),
'SYMBOLS' => array(
0 => 'color: #000000; font-weight: bold;'
),
'REGEXPS' => array(
0 => 'color: #007800;',
1 => 'color: #007800;',
2 => 'color: #007800;',
4 => 'color: #007800;',
5 => 'color: #660033;'
),
'SCRIPT' => array(
)
),
'URLS' => array(
1 => '',
2 => '',
3 => ''
),
'OOLANG' => false,
'OBJECT_SPLITTERS' => array(
),
'REGEXPS' => array(
//Variables (will be handled by comment_regexps)
0 => "\\$\\{[a-zA-Z_][a-zA-Z0-9_]*?\\}",
//Variables without braces
1 => "\\$[a-zA-Z_][a-zA-Z0-9_]*",
//Variable assignment
2 => "(?<![\.a-zA-Z_\-])([a-zA-Z_][a-zA-Z0-9_]*?)(?==)",
//Shorthand shell variables
4 => "\\$[*#\$\\-\\?!]",
//Parameters of commands
5 => "(?<=\s)--?[0-9a-zA-Z\-]+(?=[\s=]|$)"
),
'STRICT_MODE_APPLIES' => GESHI_NEVER,
'SCRIPT_DELIMITERS' => array(
),
'HIGHLIGHT_STRICT_BLOCK' => array(
),
'TAB_WIDTH' => 4,
'PARSER_CONTROL' => array(
'COMMENTS' => array(
'DISALLOWED_BEFORE' => '$'
),
'KEYWORDS' => array(
'DISALLOWED_BEFORE' => "(?<![\.\-a-zA-Z0-9_\$\#])",
'DISALLOWED_AFTER' => "(?![\.\-a-zA-Z0-9_%])"
)
)
);
?>

View File

@ -1,341 +0,0 @@
<?php
/*************************************************************************************
* basic4gl.php
* ---------------------------------
* Author: Matthew Webb (bmatthew1@blueyonder.co.uk)
* Copyright: (c) 2004 Matthew Webb (http://matthew-4gl.wikispaces.com)
* Release Version: 1.0.8.1
* Date Started: 2007/09/15
*
* Basic4GL language file for GeSHi.
*
* You can find the Basic4GL Website at (http://www.basic4gl.net/)
*
* CHANGES
* -------
* 2007/09/17 (1.0.0)
* - First Release
*
* TODO (updated 2007/09/17)
* -------------------------
* Make sure all the OpenGL and Basic4GL commands have been added and are complete.
*
*************************************************************************************
*
* 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' => 'Basic4GL',
'COMMENT_SINGLE' => array(1 => "'"),
'COMMENT_MULTI' => array(),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array('"'),
'ESCAPE_CHAR' => '',
'KEYWORDS' => array(
1 => array(
// Navy Blue Bold Keywords
'true','rnd_max','m_pi','m_e','false','VK_ZOOM','VK_UP','VK_TAB','VK_SUBTRACT','VK_SPACE','VK_SNAPSHOT',
'VK_SHIFT','VK_SEPARATOR','VK_SELECT','VK_SCROLL','VK_RWIN','VK_RSHIFT','VK_RMENU','VK_RIGHT','VK_RETURN',
'VK_RCONTROL','VK_RBUTTON','VK_PROCESSKEY','VK_PRIOR','VK_PRINT','VK_PLAY','VK_PAUSE','VK_NUMPAD9','VK_NUMPAD8',
'VK_NUMPAD7','VK_NUMPAD6','VK_NUMPAD5','VK_NUMPAD4','VK_NUMPAD3','VK_NUMPAD2','VK_NUMPAD1','VK_NUMPAD0',
'VK_NUMLOCK','VK_NONCONVERT','VK_NEXT','VK_MULTIPLY','VK_MODECHANGE','VK_MENU','VK_MBUTTON','VK_LWIN',
'VK_LSHIFT','VK_LMENU','VK_LEFT','VK_LCONTROL','VK_LBUTTON','VK_KANJI','VK_KANA','VK_JUNJA','VK_INSERT',
'VK_HOME','VK_HELP','VK_HANJA','VK_HANGUL','VK_HANGEUL','VK_FINAL','VK_F9','VK_F8','VK_F7','VK_F6','VK_F5',
'VK_F4','VK_F3','VK_F24','VK_F23','VK_F22','VK_F21','VK_F20','VK_F2','VK_F19','VK_F18','VK_F17','VK_F16',
'VK_F15','VK_F14','VK_F13','VK_F12','VK_F11','VK_F10','VK_F1','VK_EXSEL','VK_EXECUTE','VK_ESCAPE','VK_EREOF',
'VK_END','VK_DOWN','VK_DIVIDE','VK_DELETE','VK_DECIMAL','VK_CRSEL','VK_CONVERT','VK_CONTROL','VK_CLEAR',
'VK_CAPITAL','VK_CANCEL','VK_BACK','VK_ATTN','VK_APPS','VK_ADD','VK_ACCEPT','TEXT_SIMPLE','TEXT_OVERLAID',
'TEXT_BUFFERED','SPR_TILEMAP','SPR_SPRITE','SPR_INVALID','MOUSE_RBUTTON','MOUSE_MBUTTON','MOUSE_LBUTTON',
'GL_ZOOM_Y','GL_ZOOM_X','GL_ZERO','GL_XOR','GL_WIN_swap_hint','GL_WIN_draw_range_elements','GL_VIEWPORT_BIT',
'GL_VIEWPORT','GL_VERTEX_ARRAY_TYPE_EXT','GL_VERTEX_ARRAY_TYPE','GL_VERTEX_ARRAY_STRIDE_EXT','GL_VERTEX_ARRAY_STRIDE',
'GL_VERTEX_ARRAY_SIZE_EXT','GL_VERTEX_ARRAY_SIZE','GL_VERTEX_ARRAY_POINTER_EXT','GL_VERTEX_ARRAY_POINTER',
'GL_VERTEX_ARRAY_EXT','GL_VERTEX_ARRAY_COUNT_EXT','GL_VERTEX_ARRAY','GL_VERSION_1_1','GL_VERSION','GL_VENDOR',
'GL_V3F','GL_V2F','GL_UNSIGNED_SHORT','GL_UNSIGNED_INT','GL_UNSIGNED_BYTE','GL_UNPACK_SWAP_BYTES','GL_UNPACK_SKIP_ROWS',
'GL_UNPACK_SKIP_PIXELS','GL_UNPACK_ROW_LENGTH','GL_UNPACK_LSB_FIRST','GL_UNPACK_ALIGNMENT','GL_TRUE','GL_TRIANGLE_STRIP',
'GL_TRIANGLE_FAN','GL_TRIANGLES','GL_TRANSFORM_BIT','GL_TEXTURE_WRAP_T','GL_TEXTURE_WRAP_S','GL_TEXTURE_WIDTH',
'GL_TEXTURE_STACK_DEPTH','GL_TEXTURE_RESIDENT','GL_TEXTURE_RED_SIZE','GL_TEXTURE_PRIORITY','GL_TEXTURE_MIN_FILTER',
'GL_TEXTURE_MATRIX','GL_TEXTURE_MAG_FILTER','GL_TEXTURE_LUMINANCE_SIZE','GL_TEXTURE_INTERNAL_FORMAT','GL_TEXTURE_INTENSITY_SIZE',
'GL_TEXTURE_HEIGHT','GL_TEXTURE_GREEN_SIZE','GL_TEXTURE_GEN_T','GL_TEXTURE_GEN_S','GL_TEXTURE_GEN_R','GL_TEXTURE_GEN_Q',
'GL_TEXTURE_GEN_MODE','GL_TEXTURE_ENV_MODE','GL_TEXTURE_ENV_COLOR','GL_TEXTURE_ENV','GL_TEXTURE_COORD_ARRAY_TYPE_EXT',
'GL_TEXTURE_COORD_ARRAY_TYPE','GL_TEXTURE_COORD_ARRAY_STRIDE_EXT','GL_TEXTURE_COORD_ARRAY_STRIDE','GL_TEXTURE_COORD_ARRAY_SIZE_EXT',
'GL_TEXTURE_COORD_ARRAY_SIZE','GL_TEXTURE_COORD_ARRAY_POINTER_EXT','GL_TEXTURE_COORD_ARRAY_POINTER','GL_TEXTURE_COORD_ARRAY_EXT',
'GL_TEXTURE_COORD_ARRAY_COUNT_EXT','GL_TEXTURE_COORD_ARRAY','GL_TEXTURE_COMPONENTS','GL_TEXTURE_BORDER_COLOR','GL_TEXTURE_BORDER',
'GL_TEXTURE_BLUE_SIZE','GL_TEXTURE_BIT','GL_TEXTURE_BINDING_2D','GL_TEXTURE_BINDING_1D','GL_TEXTURE_ALPHA_SIZE',
'GL_TEXTURE_2D','GL_TEXTURE_1D','GL_TEXTURE9_ARB','GL_TEXTURE9','GL_TEXTURE8_ARB','GL_TEXTURE8','GL_TEXTURE7_ARB',
'GL_TEXTURE7','GL_TEXTURE6_ARB','GL_TEXTURE6','GL_TEXTURE5_ARB','GL_TEXTURE5','GL_TEXTURE4_ARB','GL_TEXTURE4',
'GL_TEXTURE3_ARB','GL_TEXTURE31_ARB','GL_TEXTURE31','GL_TEXTURE30_ARB','GL_TEXTURE30','GL_TEXTURE3','GL_TEXTURE2_ARB',
'GL_TEXTURE29_ARB','GL_TEXTURE29','GL_TEXTURE28_ARB','GL_TEXTURE28','GL_TEXTURE27_ARB','GL_TEXTURE27','GL_TEXTURE26_ARB',
'GL_TEXTURE26','GL_TEXTURE25_ARB','GL_TEXTURE25','GL_TEXTURE24_ARB','GL_TEXTURE24','GL_TEXTURE23_ARB','GL_TEXTURE23',
'GL_TEXTURE22_ARB','GL_TEXTURE22','GL_TEXTURE21_ARB','GL_TEXTURE21','GL_TEXTURE20_ARB','GL_TEXTURE20','GL_TEXTURE2',
'GL_TEXTURE1_ARB','GL_TEXTURE19_ARB','GL_TEXTURE19','GL_TEXTURE18_ARB','GL_TEXTURE18','GL_TEXTURE17_ARB',
'GL_TEXTURE17','GL_TEXTURE16_ARB','GL_TEXTURE16','GL_TEXTURE15_ARB','GL_TEXTURE15','GL_TEXTURE14_ARB','GL_TEXTURE14',
'GL_TEXTURE13_ARB','GL_TEXTURE13','GL_TEXTURE12_ARB','GL_TEXTURE12','GL_TEXTURE11_ARB','GL_TEXTURE11','GL_TEXTURE10_ARB',
'GL_TEXTURE10','GL_TEXTURE1','GL_TEXTURE0_ARB','GL_TEXTURE0','GL_TEXTURE','GL_T4F_V4F','GL_T4F_C4F_N3F_V4F','GL_T2F_V3F',
'GL_T2F_N3F_V3F','GL_T2F_C4UB_V3F','GL_T2F_C4F_N3F_V3F','GL_T2F_C3F_V3F','GL_T','GL_SUBPIXEL_BITS','GL_STEREO',
'GL_STENCIL_WRITEMASK','GL_STENCIL_VALUE_MASK','GL_STENCIL_TEST','GL_STENCIL_REF','GL_STENCIL_PASS_DEPTH_PASS',
'GL_STENCIL_PASS_DEPTH_FAIL','GL_STENCIL_INDEX','GL_STENCIL_FUNC','GL_STENCIL_FAIL','GL_STENCIL_CLEAR_VALUE',
'GL_STENCIL_BUFFER_BIT','GL_STENCIL_BITS','GL_STENCIL','GL_STACK_UNDERFLOW','GL_STACK_OVERFLOW','GL_SRC_COLOR',
'GL_SRC_ALPHA_SATURATE','GL_SRC_ALPHA','GL_SPOT_EXPONENT','GL_SPOT_DIRECTION','GL_SPOT_CUTOFF','GL_SPHERE_MAP',
'GL_SPECULAR','GL_SOURCE2_RGB_EXT','GL_SOURCE2_RGB','GL_SOURCE2_ALPHA_EXT','GL_SOURCE2_ALPHA','GL_SOURCE1_RGB_EXT',
'GL_SOURCE1_RGB','GL_SOURCE1_ALPHA_EXT','GL_SOURCE1_ALPHA','GL_SOURCE0_RGB_EXT','GL_SOURCE0_RGB','GL_SOURCE0_ALPHA_EXT',
'GL_SOURCE0_ALPHA','GL_SMOOTH','GL_SHORT','GL_SHININESS','GL_SHADE_MODEL','GL_SET','GL_SELECTION_BUFFER_SIZE',
'GL_SELECTION_BUFFER_POINTER','GL_SELECT','GL_SCISSOR_TEST','GL_SCISSOR_BOX','GL_SCISSOR_BIT','GL_S','GL_RIGHT',
'GL_RGB_SCALE_EXT','GL_RGB_SCALE','GL_RGBA_MODE','GL_RGBA8','GL_RGBA4','GL_RGBA2','GL_RGBA16','GL_RGBA12','GL_RGBA',
'GL_RGB8','GL_RGB5_A1','GL_RGB5','GL_RGB4','GL_RGB16','GL_RGB12','GL_RGB10_A2','GL_RGB10','GL_RGB','GL_RETURN',
'GL_REPLACE','GL_REPEAT','GL_RENDER_MODE','GL_RENDERER','GL_RENDER','GL_RED_SCALE','GL_RED_BITS','GL_RED_BIAS',
'GL_RED','GL_READ_BUFFER','GL_R3_G3_B2','GL_R','GL_QUAD_STRIP','GL_QUADS','GL_QUADRATIC_ATTENUATION','GL_Q',
'GL_PROXY_TEXTURE_2D','GL_PROXY_TEXTURE_1D','GL_PROJECTION_STACK_DEPTH','GL_PROJECTION_MATRIX','GL_PROJECTION',
'GL_PRIMARY_COLOR_EXT','GL_PRIMARY_COLOR','GL_PREVIOUS_EXT','GL_PREVIOUS','GL_POSITION','GL_POLYGON_TOKEN',
'GL_POLYGON_STIPPLE_BIT','GL_POLYGON_STIPPLE','GL_POLYGON_SMOOTH_HINT','GL_POLYGON_SMOOTH','GL_POLYGON_OFFSET_UNITS',
'GL_POLYGON_OFFSET_POINT','GL_POLYGON_OFFSET_LINE','GL_POLYGON_OFFSET_FILL','GL_POLYGON_OFFSET_FACTOR','GL_POLYGON_MODE',
'GL_POLYGON_BIT','GL_POLYGON','GL_POINT_TOKEN','GL_POINT_SMOOTH_HINT','GL_POINT_SMOOTH','GL_POINT_SIZE_RANGE',
'GL_POINT_SIZE_GRANULARITY','GL_POINT_SIZE','GL_POINT_BIT','GL_POINTS','GL_POINT','GL_PIXEL_MODE_BIT',
'GL_PIXEL_MAP_S_TO_S_SIZE','GL_PIXEL_MAP_S_TO_S','GL_PIXEL_MAP_R_TO_R_SIZE','GL_PIXEL_MAP_R_TO_R','GL_PIXEL_MAP_I_TO_R_SIZE',
'GL_PIXEL_MAP_I_TO_R','GL_PIXEL_MAP_I_TO_I_SIZE','GL_PIXEL_MAP_I_TO_I','GL_PIXEL_MAP_I_TO_G_SIZE','GL_PIXEL_MAP_I_TO_G',
'GL_PIXEL_MAP_I_TO_B_SIZE','GL_PIXEL_MAP_I_TO_B','GL_PIXEL_MAP_I_TO_A_SIZE','GL_PIXEL_MAP_I_TO_A','GL_PIXEL_MAP_G_TO_G_SIZE',
'GL_PIXEL_MAP_G_TO_G','GL_PIXEL_MAP_B_TO_B_SIZE','GL_PIXEL_MAP_B_TO_B','GL_PIXEL_MAP_A_TO_A_SIZE','GL_PIXEL_MAP_A_TO_A',
'GL_PHONG_WIN','GL_PHONG_HINT_WIN','GL_PERSPECTIVE_CORRECTION_HINT','GL_PASS_THROUGH_TOKEN','GL_PACK_SWAP_BYTES',
'GL_PACK_SKIP_ROWS','GL_PACK_SKIP_PIXELS','GL_PACK_ROW_LENGTH','GL_PACK_LSB_FIRST','GL_PACK_ALIGNMENT','GL_OUT_OF_MEMORY',
'GL_OR_REVERSE','GL_OR_INVERTED','GL_ORDER','GL_OR','GL_OPERAND2_RGB_EXT','GL_OPERAND2_RGB','GL_OPERAND2_ALPHA_EXT',
'GL_OPERAND2_ALPHA','GL_OPERAND1_RGB_EXT','GL_OPERAND1_RGB','GL_OPERAND1_ALPHA_EXT','GL_OPERAND1_ALPHA','GL_OPERAND0_RGB_EXT',
'GL_OPERAND0_RGB','GL_OPERAND0_ALPHA_EXT','GL_OPERAND0_ALPHA','GL_ONE_MINUS_SRC_COLOR','GL_ONE_MINUS_SRC_ALPHA',
'GL_ONE_MINUS_DST_COLOR','GL_ONE_MINUS_DST_ALPHA','GL_ONE','GL_OBJECT_PLANE','GL_OBJECT_LINEAR','GL_NO_ERROR',
'GL_NOTEQUAL','GL_NORMAL_ARRAY_TYPE_EXT','GL_NORMAL_ARRAY_TYPE','GL_NORMAL_ARRAY_STRIDE_EXT','GL_NORMAL_ARRAY_STRIDE',
'GL_NORMAL_ARRAY_POINTER_EXT','GL_NORMAL_ARRAY_POINTER','GL_NORMAL_ARRAY_EXT','GL_NORMAL_ARRAY_COUNT_EXT',
'GL_NORMAL_ARRAY','GL_NORMALIZE','GL_NOR','GL_NOOP','GL_NONE','GL_NICEST','GL_NEVER','GL_NEAREST_MIPMAP_NEAREST','GL_NEAREST_MIPMAP_LINEAR',
'GL_NEAREST','GL_NAND','GL_NAME_STACK_DEPTH','GL_N3F_V3F','GL_MULT','GL_MODULATE','GL_MODELVIEW_STACK_DEPTH','GL_MODELVIEW_MATRIX',
'GL_MODELVIEW','GL_MAX_VIEWPORT_DIMS','GL_MAX_TEXTURE_UNITS_ARB','GL_MAX_TEXTURE_UNITS','GL_MAX_TEXTURE_STACK_DEPTH',
'GL_MAX_TEXTURE_SIZE','GL_MAX_PROJECTION_STACK_DEPTH','GL_MAX_PIXEL_MAP_TABLE','GL_MAX_NAME_STACK_DEPTH','GL_MAX_MODELVIEW_STACK_DEPTH',
'GL_MAX_LIST_NESTING','GL_MAX_LIGHTS','GL_MAX_EVAL_ORDER','GL_MAX_ELEMENTS_VERTICES_WIN','GL_MAX_ELEMENTS_INDICES_WIN',
'GL_MAX_CLIP_PLANES','GL_MAX_CLIENT_ATTRIB_STACK_DEPTH','GL_MAX_ATTRIB_STACK_DEPTH','GL_MATRIX_MODE','GL_MAP_STENCIL',
'GL_MAP_COLOR','GL_MAP2_VERTEX_4','GL_MAP2_VERTEX_3','GL_MAP2_TEXTURE_COORD_4','GL_MAP2_TEXTURE_COORD_3','GL_MAP2_TEXTURE_COORD_2',
'GL_MAP2_TEXTURE_COORD_1','GL_MAP2_NORMAL','GL_MAP2_INDEX','GL_MAP2_GRID_SEGMENTS','GL_MAP2_GRID_DOMAIN','GL_MAP2_COLOR_4',
'GL_MAP1_VERTEX_4','GL_MAP1_VERTEX_3','GL_MAP1_TEXTURE_COORD_4','GL_MAP1_TEXTURE_COORD_3','GL_MAP1_TEXTURE_COORD_2',
'GL_MAP1_TEXTURE_COORD_1','GL_MAP1_NORMAL','GL_MAP1_INDEX','GL_MAP1_GRID_SEGMENTS','GL_MAP1_GRID_DOMAIN',
'GL_MAP1_COLOR_4','GL_LUMINANCE_ALPHA','GL_LUMINANCE8_ALPHA8','GL_LUMINANCE8','GL_LUMINANCE6_ALPHA2','GL_LUMINANCE4_ALPHA4',
'GL_LUMINANCE4','GL_LUMINANCE16_ALPHA16','GL_LUMINANCE16','GL_LUMINANCE12_ALPHA4','GL_LUMINANCE12_ALPHA12','GL_LUMINANCE12',
'GL_LUMINANCE','GL_LOGIC_OP_MODE','GL_LOGIC_OP','GL_LOAD','GL_LIST_MODE','GL_LIST_INDEX','GL_LIST_BIT',
'GL_LIST_BASE','GL_LINE_WIDTH_RANGE','GL_LINE_WIDTH_GRANULARITY','GL_LINE_WIDTH','GL_LINE_TOKEN','GL_LINE_STRIP','GL_LINE_STIPPLE_REPEAT',
'GL_LINE_STIPPLE_PATTERN','GL_LINE_STIPPLE','GL_LINE_SMOOTH_HINT','GL_LINE_SMOOTH','GL_LINE_RESET_TOKEN','GL_LINE_LOOP',
'GL_LINE_BIT','GL_LINES','GL_LINEAR_MIPMAP_NEAREST','GL_LINEAR_MIPMAP_LINEAR','GL_LINEAR_ATTENUATION','GL_LINEAR',
'GL_LINE','GL_LIGHT_MODEL_TWO_SIDE','GL_LIGHT_MODEL_LOCAL_VIEWER','GL_LIGHT_MODEL_AMBIENT','GL_LIGHTING_BIT',
'GL_LIGHTING','GL_LIGHT7','GL_LIGHT6','GL_LIGHT5','GL_LIGHT4','GL_LIGHT3','GL_LIGHT2','GL_LIGHT1','GL_LIGHT0',
'GL_LESS','GL_LEQUAL','GL_LEFT','GL_KEEP','GL_INVERT','GL_INVALID_VALUE','GL_INVALID_OPERATION','GL_INVALID_ENUM','GL_INTERPOLATE_EXT',
'GL_INTERPOLATE','GL_INTENSITY8','GL_INTENSITY4','GL_INTENSITY16','GL_INTENSITY12','GL_INTENSITY','GL_INT',
'GL_INDEX_WRITEMASK','GL_INDEX_SHIFT','GL_INDEX_OFFSET','GL_INDEX_MODE','GL_INDEX_LOGIC_OP','GL_INDEX_CLEAR_VALUE','GL_INDEX_BITS',
'GL_INDEX_ARRAY_TYPE_EXT','GL_INDEX_ARRAY_TYPE','GL_INDEX_ARRAY_STRIDE_EXT','GL_INDEX_ARRAY_STRIDE','GL_INDEX_ARRAY_POINTER_EXT',
'GL_INDEX_ARRAY_POINTER','GL_INDEX_ARRAY_EXT','GL_INDEX_ARRAY_COUNT_EXT','GL_INDEX_ARRAY','GL_INCR','GL_HINT_BIT',
'GL_GREEN_SCALE','GL_GREEN_BITS','GL_GREEN_BIAS','GL_GREEN','GL_GREATER','GL_GEQUAL','GL_FRONT_RIGHT','GL_FRONT_LEFT',
'GL_FRONT_FACE','GL_FRONT_AND_BACK','GL_FRONT','GL_FOG_START','GL_FOG_SPECULAR_TEXTURE_WIN','GL_FOG_MODE','GL_FOG_INDEX',
'GL_FOG_HINT','GL_FOG_END','GL_FOG_DENSITY','GL_FOG_COLOR','GL_FOG_BIT','GL_FOG','GL_FLOAT','GL_FLAT','GL_FILL',
'GL_FEEDBACK_BUFFER_TYPE','GL_FEEDBACK_BUFFER_SIZE','GL_FEEDBACK_BUFFER_POINTER','GL_FEEDBACK','GL_FASTEST','GL_FALSE',
'GL_EYE_PLANE','GL_EYE_LINEAR','GL_EXT_vertex_array','GL_EXT_paletted_texture','GL_EXT_bgra','GL_EXTENSIONS','GL_EXP2',
'GL_EXP','GL_EVAL_BIT','GL_EQUIV','GL_EQUAL','GL_ENABLE_BIT','GL_EMISSION','GL_EDGE_FLAG_ARRAY_STRIDE_EXT','GL_EDGE_FLAG_ARRAY_STRIDE',
'GL_EDGE_FLAG_ARRAY_POINTER_EXT','GL_EDGE_FLAG_ARRAY_POINTER','GL_EDGE_FLAG_ARRAY_EXT','GL_EDGE_FLAG_ARRAY_COUNT_EXT','GL_EDGE_FLAG_ARRAY',
'GL_EDGE_FLAG','GL_DST_COLOR','GL_DST_ALPHA','GL_DRAW_PIXEL_TOKEN','GL_DRAW_BUFFER','GL_DOUBLE_EXT','GL_DOUBLEBUFFER',
'GL_DOUBLE','GL_DONT_CARE','GL_DOMAIN','GL_DITHER','GL_DIFFUSE','GL_DEPTH_WRITEMASK','GL_DEPTH_TEST','GL_DEPTH_SCALE',
'GL_DEPTH_RANGE','GL_DEPTH_FUNC','GL_DEPTH_COMPONENT','GL_DEPTH_CLEAR_VALUE','GL_DEPTH_BUFFER_BIT','GL_DEPTH_BITS',
'GL_DEPTH_BIAS','GL_DEPTH','GL_DECR','GL_DECAL','GL_CW','GL_CURRENT_TEXTURE_COORDS','GL_CURRENT_RASTER_TEXTURE_COORDS','GL_CURRENT_RASTER_POSITION_VALID',
'GL_CURRENT_RASTER_POSITION','GL_CURRENT_RASTER_INDEX','GL_CURRENT_RASTER_DISTANCE','GL_CURRENT_RASTER_COLOR','GL_CURRENT_NORMAL',
'GL_CURRENT_INDEX','GL_CURRENT_COLOR','GL_CURRENT_BIT','GL_CULL_FACE_MODE','GL_CULL_FACE','GL_COPY_PIXEL_TOKEN',
'GL_COPY_INVERTED','GL_COPY','GL_CONSTANT_EXT','GL_CONSTANT_ATTENUATION','GL_CONSTANT','GL_COMPILE_AND_EXECUTE','GL_COMPILE','GL_COMBINE_RGB_EXT',
'GL_COMBINE_RGB','GL_COMBINE_EXT','GL_COMBINE_ALPHA_EXT','GL_COMBINE_ALPHA','GL_COMBINE','GL_COLOR_WRITEMASK',
'GL_COLOR_TABLE_WIDTH_EXT','GL_COLOR_TABLE_RED_SIZE_EXT','GL_COLOR_TABLE_LUMINANCE_SIZE_EXT','GL_COLOR_TABLE_INTENSITY_SIZE_EXT',
'GL_COLOR_TABLE_GREEN_SIZE_EXT','GL_COLOR_TABLE_FORMAT_EXT','GL_COLOR_TABLE_BLUE_SIZE_EXT','GL_COLOR_TABLE_ALPHA_SIZE_EXT',
'GL_COLOR_MATERIAL_PARAMETER','GL_COLOR_MATERIAL_FACE','GL_COLOR_MATERIAL','GL_COLOR_LOGIC_OP','GL_COLOR_INDEXES',
'GL_COLOR_INDEX8_EXT','GL_COLOR_INDEX4_EXT','GL_COLOR_INDEX2_EXT','GL_COLOR_INDEX1_EXT','GL_COLOR_INDEX16_EXT',
'GL_COLOR_INDEX12_EXT','GL_COLOR_INDEX','GL_COLOR_CLEAR_VALUE','GL_COLOR_BUFFER_BIT','GL_COLOR_ARRAY_TYPE_EXT',
'GL_COLOR_ARRAY_TYPE','GL_COLOR_ARRAY_STRIDE_EXT','GL_COLOR_ARRAY_STRIDE','GL_COLOR_ARRAY_SIZE_EXT','GL_COLOR_ARRAY_SIZE',
'GL_COLOR_ARRAY_POINTER_EXT','GL_COLOR_ARRAY_POINTER','GL_COLOR_ARRAY_EXT','GL_COLOR_ARRAY_COUNT_EXT','GL_COLOR_ARRAY',
'GL_COLOR','GL_COEFF','GL_CLIP_PLANE5','GL_CLIP_PLANE4','GL_CLIP_PLANE3','GL_CLIP_PLANE2','GL_CLIP_PLANE1','GL_CLIP_PLANE0',
'GL_CLIENT_VERTEX_ARRAY_BIT','GL_CLIENT_PIXEL_STORE_BIT','GL_CLIENT_ATTRIB_STACK_DEPTH','GL_CLIENT_ALL_ATTRIB_BITS',
'GL_CLIENT_ACTIVE_TEXTURE_ARB','GL_CLIENT_ACTIVE_TEXTURE','GL_CLEAR','GL_CLAMP','GL_CCW','GL_C4UB_V3F','GL_C4UB_V2F',
'GL_C4F_N3F_V3F','GL_C3F_V3F','GL_BYTE','GL_BLUE_SCALE','GL_BLUE_BITS','GL_BLUE_BIAS','GL_BLUE','GL_BLEND_SRC','GL_BLEND_DST',
'GL_BLEND','GL_BITMAP_TOKEN','GL_BITMAP','GL_BGR_EXT','GL_BGRA_EXT','GL_BACK_RIGHT','GL_BACK_LEFT','GL_BACK',
'GL_AUX_BUFFERS','GL_AUX3','GL_AUX2','GL_AUX1','GL_AUX0','GL_AUTO_NORMAL','GL_ATTRIB_STACK_DEPTH','GL_AND_REVERSE',
'GL_AND_INVERTED','GL_AND','GL_AMBIENT_AND_DIFFUSE','GL_AMBIENT','GL_ALWAYS','GL_ALPHA_TEST_REF','GL_ALPHA_TEST_FUNC',
'GL_ALPHA_TEST','GL_ALPHA_SCALE','GL_ALPHA_BITS','GL_ALPHA_BIAS','GL_ALPHA8','GL_ALPHA4','GL_ALPHA16','GL_ALPHA12',
'GL_ALPHA','GL_ALL_ATTRIB_BITS','GL_ADD_SIGNED_EXT','GL_ADD_SIGNED','GL_ADD','GL_ACTIVE_TEXTURE_ARB','GL_ACTIVE_TEXTURE',
'GL_ACCUM_RED_BITS','GL_ACCUM_GREEN_BITS','GL_ACCUM_CLEAR_VALUE','GL_ACCUM_BUFFER_BIT','GL_ACCUM_BLUE_BITS','GL_ACCUM_ALPHA_BITS',
'GL_ACCUM','GL_4_BYTES','GL_4D_COLOR_TEXTURE','GL_3_BYTES','GL_3D_COLOR_TEXTURE','GL_3D_COLOR','GL_3D','GL_2_BYTES',
'GL_2D','GLU_V_STEP','GLU_VERTEX','GLU_VERSION_1_2','GLU_VERSION_1_1','GLU_VERSION','GLU_U_STEP','GLU_UNKNOWN','GLU_TRUE',
'GLU_TESS_WINDING_RULE','GLU_TESS_WINDING_POSITIVE','GLU_TESS_WINDING_ODD','GLU_TESS_WINDING_NONZERO','GLU_TESS_WINDING_NEGATIVE',
'GLU_TESS_WINDING_ABS_GEQ_TWO','GLU_TESS_VERTEX_DATA','GLU_TESS_VERTEX','GLU_TESS_TOLERANCE','GLU_TESS_NEED_COMBINE_CALLBACK','GLU_TESS_MISSING_END_POLYGON',
'GLU_TESS_MISSING_END_CONTOUR','GLU_TESS_MISSING_BEGIN_POLYGON','GLU_TESS_MISSING_BEGIN_CONTOUR','GLU_TESS_ERROR_DATA',
'GLU_TESS_ERROR8','GLU_TESS_ERROR7','GLU_TESS_ERROR6','GLU_TESS_ERROR5','GLU_TESS_ERROR4','GLU_TESS_ERROR3','GLU_TESS_ERROR2',
'GLU_TESS_ERROR1','GLU_TESS_ERROR','GLU_TESS_END_DATA','GLU_TESS_END','GLU_TESS_EDGE_FLAG_DATA','GLU_TESS_EDGE_FLAG',
'GLU_TESS_COORD_TOO_LARGE','GLU_TESS_COMBINE_DATA','GLU_TESS_COMBINE','GLU_TESS_BOUNDARY_ONLY','GLU_TESS_BEGIN_DATA',
'GLU_TESS_BEGIN','GLU_SMOOTH','GLU_SILHOUETTE','GLU_SAMPLING_TOLERANCE','GLU_SAMPLING_METHOD','GLU_POINT','GLU_PATH_LENGTH',
'GLU_PARAMETRIC_TOLERANCE','GLU_PARAMETRIC_ERROR','GLU_OUT_OF_MEMORY','GLU_OUTSIDE','GLU_OUTLINE_POLYGON','GLU_OUTLINE_PATCH',
'GLU_NURBS_ERROR9','GLU_NURBS_ERROR8','GLU_NURBS_ERROR7','GLU_NURBS_ERROR6','GLU_NURBS_ERROR5','GLU_NURBS_ERROR4',
'GLU_NURBS_ERROR37','GLU_NURBS_ERROR36','GLU_NURBS_ERROR35','GLU_NURBS_ERROR34','GLU_NURBS_ERROR33','GLU_NURBS_ERROR32',
'GLU_NURBS_ERROR31','GLU_NURBS_ERROR30','GLU_NURBS_ERROR3','GLU_NURBS_ERROR29','GLU_NURBS_ERROR28','GLU_NURBS_ERROR27','GLU_NURBS_ERROR26',
'GLU_NURBS_ERROR25','GLU_NURBS_ERROR24','GLU_NURBS_ERROR23','GLU_NURBS_ERROR22','GLU_NURBS_ERROR21','GLU_NURBS_ERROR20',
'GLU_NURBS_ERROR2','GLU_NURBS_ERROR19','GLU_NURBS_ERROR18','GLU_NURBS_ERROR17','GLU_NURBS_ERROR16','GLU_NURBS_ERROR15','GLU_NURBS_ERROR14',
'GLU_NURBS_ERROR13','GLU_NURBS_ERROR12','GLU_NURBS_ERROR11','GLU_NURBS_ERROR10','GLU_NURBS_ERROR1','GLU_NONE',
'GLU_MAP1_TRIM_3','GLU_MAP1_TRIM_2','GLU_LINE','GLU_INVALID_VALUE','GLU_INVALID_ENUM','GLU_INTERIOR','GLU_INSIDE','GLU_INCOMPATIBLE_GL_VERSION',
'GLU_FLAT','GLU_FILL','GLU_FALSE','GLU_EXTERIOR','GLU_EXTENSIONS','GLU_ERROR','GLU_END','GLU_EDGE_FLAG','GLU_DOMAIN_DISTANCE',
'GLU_DISPLAY_MODE','GLU_CW','GLU_CULLING','GLU_CCW','GLU_BEGIN','GLU_AUTO_LOAD_MATRIX','CHANNEL_UNORDERED','CHANNEL_ORDERED',
'CHANNEL_MAX'
),
2 => array(
// Red Lowercase Keywords
'WriteWord','WriteString','WriteReal','WriteLine','WriteInt','WriteFloat','WriteDouble','WriteChar','WriteByte',
'windowwidth','windowheight','waittimer','Vec4','Vec3','Vec2','val','UpdateJoystick','ucase$','Transpose','tickcount',
'textscroll','textrows','textmode','textcols','tanh','tand','tan','synctimercatchup','synctimer','swapbuffers',
'str$','stopsoundvoice','stopsounds','stopmusic','sqrt','sqr','sprzorder','spryvel','sprytiles','sprysize','spryrepeat',
'spryflip','sprycentre','spry','sprxvel','sprxtiles','sprxsize','sprxrepeat','sprxflip','sprxcentre','sprx',
'sprvisible','sprvel','sprtype','sprtop','sprspin','sprsolid','sprsetzorder','sprsetyvel','sprsetysize','sprsetyrepeat',
'sprsetyflip','sprsetycentre','sprsety','sprsetxvel','sprsetxsize','sprsetxrepeat','sprsetxflip','sprsetxcentre',
'sprsetx','sprsetvisible','sprsetvel','sprsettiles','sprsettextures','sprsettexture','sprsetspin','sprsetsolid',
'sprsetsize','sprsetscale','sprsetpos','sprsetparallax','sprsetframe','sprsetcolor','sprsetanimspeed','sprsetanimloop',
'sprsetangle','sprsetalpha','sprscale','sprright','sprpos','sprparallax','sprleft','spriteareawidth','spriteareaheight',
'sprframe','sprcolor','sprcameraz','sprcameray','sprcamerax','sprcamerasetz','sprcamerasety','sprcamerasetx',
'sprcamerasetpos','sprcamerasetfov','sprcamerasetangle','sprcamerapos','sprcamerafov','sprcameraangle',
'sprbottom','spranimspeed','spranimloop','spranimdone','sprangle','spralpha','spraddtextures','spraddtexture',
'sounderror','sleep','sind','sin','showcursor','sgn','settextscroll','setmusicvolume','SendMessage','Seek',
'scankeydown','RTInvert','rnd','right$','resizetext','resizespritearea','RejectConnection','ReceiveMessage','ReadWord',
'ReadText','ReadReal','ReadLine','ReadInt','ReadFloat','ReadDouble','ReadChar','ReadByte','randomize','printr',
'print','pow','playsound','playmusic','performancecounter','Orthonormalize','OpenFileWrite','OpenFileRead','Normalize',
'newtilemap','newsprite','NewServer','NewConnection','musicplaying','mouse_yd','mouse_y','mouse_xd','mouse_x',
'mouse_wheel','mouse_button','mid$','MessageSmoothed','MessageReliable','MessagePending','MessageChannel','maxtextureunits',
'MatrixZero','MatrixTranslate','MatrixScale','MatrixRotateZ','MatrixRotateY','MatrixRotateX','MatrixRotate','MatrixIdentity',
'MatrixCrossProduct','MatrixBasis','log','locate','loadtexture','loadsound','loadmipmaptexture','loadmipmapimagestrip',
'loadimagestrip','loadimage','Length','len','left$','lcase$','keydown','Joy_Y','Joy_X','Joy_Up','Joy_Right','Joy_Left',
'Joy_Keys','Joy_Down','Joy_Button','Joy_3','Joy_2','Joy_1','Joy_0','int','inscankey','input$','inkey$','inittimer',
'imagewidth','imagestripframes','imageheight','imageformat','imagedatatype','hidecursor','glViewport','glVertex4sv',
'glVertex4s','glVertex4iv','glVertex4i','glVertex4fv','glVertex4f','glVertex4dv','glVertex4d','glVertex3sv','glVertex3s',
'glVertex3iv','glVertex3i','glVertex3fv','glVertex3f','glVertex3dv','glVertex3d','glVertex2sv','glVertex2s','glVertex2iv',
'glVertex2i','glVertex2fv','glVertex2f','glVertex2dv','glVertex2d','gluPerspective','gluOrtho2D','gluLookAt',
'glubuild2dmipmaps','glTranslatef','glTranslated','gltexsubimage2d','glTexParameteriv','glTexParameteri',
'glTexParameterfv','glTexParameterf','glteximage2d','glTexGeniv','glTexGeni','glTexGenfv','glTexGenf','glTexGendv',
'glTexGend','glTexEnviv','glTexEnvi','glTexEnvfv','glTexEnvf','glTexCoord4sv','glTexCoord4s','glTexCoord4iv','glTexCoord4i',
'glTexCoord4fv','glTexCoord4f','glTexCoord4dv','glTexCoord4d','glTexCoord3sv','glTexCoord3s','glTexCoord3iv','glTexCoord3i',
'glTexCoord3fv','glTexCoord3f','glTexCoord3dv','glTexCoord3d','glTexCoord2sv','glTexCoord2s','glTexCoord2iv','glTexCoord2i',
'glTexCoord2fv','glTexCoord2f','glTexCoord2dv','glTexCoord2d','glTexCoord1sv','glTexCoord1s','glTexCoord1iv','glTexCoord1i','glTexCoord1fv',
'glTexCoord1f','glTexCoord1dv','glTexCoord1d','glStencilOp','glStencilMask','glStencilFunc','glShadeModel','glSelectBuffer',
'glScissor','glScalef','glScaled','glRotatef','glRotated','glRenderMode','glRectsv','glRects','glRectiv','glRecti',
'glRectfv','glRectf','glRectdv','glRectd','glReadBuffer','glRasterPos4sv','glRasterPos4s','glRasterPos4iv',
'glRasterPos4i','glRasterPos4fv','glRasterPos4f','glRasterPos4dv','glRasterPos4d','glRasterPos3sv','glRasterPos3s',
'glRasterPos3iv','glRasterPos3i','glRasterPos3fv','glRasterPos3f','glRasterPos3dv','glRasterPos3d','glRasterPos2sv',
'glRasterPos2s','glRasterPos2iv','glRasterPos2i','glRasterPos2fv','glRasterPos2f','glRasterPos2dv','glRasterPos2d',
'glPushName','glPushMatrix','glPushClientAttrib','glPushAttrib','glPrioritizeTextures','glPopName','glPopMatrix',
'glPopClientAttrib','glPopAttrib','glpolygonstipple','glPolygonOffset','glPolygonMode','glPointSize','glPixelZoom',
'glPixelTransferi','glPixelTransferf','glPixelStorei','glPixelStoref','glPassThrough','glOrtho','glNormal3sv','glNormal3s',
'glNormal3iv','glNormal3i','glNormal3fv','glNormal3f','glNormal3dv','glNormal3d','glNormal3bv','glNormal3b','glNewList',
'glMultMatrixf','glMultMatrixd','glmultitexcoord2f','glmultitexcoord2d','glMatrixMode','glMaterialiv','glMateriali',
'glMaterialfv','glMaterialf','glMapGrid2f','glMapGrid2d','glMapGrid1f','glMapGrid1d','glLogicOp','glLoadName','glLoadMatrixf',
'glLoadMatrixd','glLoadIdentity','glListBase','glLineWidth','glLineStipple','glLightModeliv','glLightModeli','glLightModelfv',
'glLightModelf','glLightiv','glLighti','glLightfv','glLightf','glIsTexture','glIsList','glIsEnabled','glInitNames',
'glIndexubv','glIndexub','glIndexsv','glIndexs','glIndexMask','glIndexiv','glIndexi','glIndexfv','glIndexf','glIndexdv',
'glIndexd','glHint','glGetTexParameteriv','glGetTexParameterfv','glGetTexLevelParameteriv','glGetTexLevelParameterfv',
'glGetTexGeniv','glGetTexGenfv','glGetTexGendv','glGetTexEnviv','glGetTexEnvfv','glgetstring','glgetpolygonstipple','glGetPixelMapuiv',
'glGetMaterialiv','glGetMaterialfv','glGetLightiv','glGetLightfv','glGetIntegerv','glGetFloatv',
'glGetError','glGetDoublev','glGetClipPlane','glGetBooleanv','glgentextures','glgentexture',
'glgenlists','glFrustum','glFrontFace','glFogiv','glFogi','glFogfv','glFogf','glFlush','glFinish','glFeedbackBuffer',
'glEvalPoint2','glEvalPoint1','glEvalMesh2','glEvalMesh1','glEvalCoord2fv','glEvalCoord2f','glEvalCoord2dv','glEvalCoord2d',
'glEvalCoord1fv','glEvalCoord1f','glEvalCoord1dv','glEvalCoord1d','glEndList','glEnd','glEnableClientState','glEnable',
'glEdgeFlagv','glEdgeFlag','glDrawBuffer','glDrawArrays','glDisableClientState','glDisable','glDepthRange','glDepthMask',
'glDepthFunc','gldeletetextures','gldeletetexture','gldeletelists','glCullFace','glCopyTexSubImage2D','glCopyTexSubImage1D',
'glCopyTexImage2D','glCopyTexImage1D','glColorMaterial','glColorMask','glColor4usv','glColor4us','glColor4uiv','glColor4ui',
'glColor4ubv','glColor4ub','glColor4sv','glColor4s','glColor4iv','glColor4i','glColor4fv','glColor4f','glColor4dv',
'glColor4d','glColor4bv','glColor4b','glColor3usv','glColor3us','glColor3uiv','glColor3ui','glColor3ubv','glColor3ub',
'glColor3sv','glColor3s','glColor3iv','glColor3i','glColor3fv','glColor3f','glColor3dv','glColor3d','glColor3bv',
'glColor3b','glClipPlane','glClearStencil','glClearIndex','glClearDepth','glClearColor','glClearAccum','glClear',
'glcalllists','glCallList','glBlendFunc','glBindTexture','glBegin','glArrayElement','glAreTexturesResident',
'glAlphaFunc','glactivetexture','glAccum','font','FindNextFile','FindFirstFile','FindClose','FileError',
'extensionsupported','exp','execute','EndOfFile','drawtext','divbyzero','Determinant','deletesprite','deletesound',
'DeleteServer','deleteimage','DeleteConnection','defaultfont','CrossProduct','cosd','cos','copysprite','ConnectionPending',
'ConnectionHandShaking','ConnectionConnected','ConnectionAddress','compilererrorline','compilererrorcol','compilererror',
'compilefile','compile','color','cls','CloseFile','clearregion','clearline','clearkeys','chr$','charat$','bindsprite',
'beep','atnd','atn2d','atn2','atn','atand','asc','argcount','arg','animatesprites','AcceptConnection','abs'
),
3 => array(
// Blue Lowercase Keywords
'xor','while','wend','until','type','traditional_print','traditional','to','then','struc','string','step','single',
'run','return','reset','read','or','null','not','next','lor','loop','language','land','integer','input','if',
'goto','gosub','for','endstruc','endif','end','elseif','else','double','do','dim','data','const','basic4gl','as',
'and','alloc'
)
),
'SYMBOLS' => array(
'=', '<', '>', '>=', '<=', '+', '-', '*', '/', '%', '(', ')', '{', '}', '[', ']', '&', ';', ':', '$'
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => false,
1 => false,
2 => false,
3 => false,
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #000080; font-weight: bold;',
2 => 'color: #FF0000;',
3 => 'color: #0000FF;'
),
'COMMENTS' => array(
1 => 'color: #657CC4; font-style: italic;'
),
'BRACKETS' => array(
0 => 'color: #000080;'
),
'STRINGS' => array(
0 => 'color: #008000;'
),
'NUMBERS' => array(
0 => 'color: #000080; font-weight: bold;'
),
'METHODS' => array(
),
'SYMBOLS' => array(
0 => 'color: #0000FF;'
),
'ESCAPE_CHAR' => array(
),
'SCRIPT' => array(
),
'REGEXPS' => array(
)
),
'URLS' => array(
1 => '',
2 => '',
3 => ''
),
'OOLANG' => false,
'OBJECT_SPLITTERS' => array(
),
'REGEXPS' => array(
),
'STRICT_MODE_APPLIES' => GESHI_NEVER,
'SCRIPT_DELIMITERS' => array(
),
'HIGHLIGHT_STRICT_BLOCK' => array(
),
'TAB_WIDTH' => 4
);
?>

Some files were not shown because too many files have changed in this diff Show More