[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gforge-commits] tools language_file_merger.php,NONE,1.1
From: |
tom |
Subject: |
[Gforge-commits] tools language_file_merger.php,NONE,1.1 |
Date: |
Tue, 03 Feb 2004 15:18:14 -0600 |
Update of /cvsroot/gforge/tools
In directory db.perdue.net:/tmp/cvs-serv5361
Added Files:
language_file_merger.php
Log Message:
Added language file merger from Hunte Swee; see patch 664 for details
--- NEW FILE: language_file_merger.php ---
#!/usr/bin/php -q
<?
#$argc=$ARGC;
#$argv=$ARGV;
if ($argc!=3 || ("-h"==$argv[1] || "--help"==$argv[1])) {
showHelp();
exit;
}
$langdir = "/www/include/languages/";
$basefile = $argv[1] . $langdir . "Base.tab";
if (!eregi("\.tab$", $argv[2])) {
$targfile = $argv[1] . $langdir . $argv[2] . ".tab";
} else {
$targfile = $argv[1] . $langdir . $argv[2];
}
if (!file_exists($basefile) || !file_exists($targfile)) {
echo "FATAL: Base.tab or $argv[2] may not exist.\n";
exit;
}
$basectnt = getLangAsArray($basefile);
$targctnt = getLangAsArray($targfile);
reset($basectnt);
while (list($k1, $v1) = each($basectnt)) {
while (list($k2, $v2) = each($v1)) {
if (!isset($targctnt[$k1][$k2])) {
$targctnt[$k1][$k2] = $v2 ;
}
}
}
ksort($targctnt);
reset($targctnt);
while (list($k1, $v1) = each($targctnt)) {
while (list($k2, $v2) = each($v1)) {
echo "$k1\t$k2\t$v2";
}
}
function showHelp() {
global $argc, $argv;
$self = basename($argv[0]);
?>
>> GForge language file merge utility, by Hunte Swee<address@hidden> <<
Usage:
<?=$self?> <GForge root directory> <Target language>
Example:
<?=$self?> /usr/share/gforge SimplifiedChinese
<?
}
function getLangAsArray($langfile) {
$ctnt = file($langfile);
reset($ctnt);
while (list(, $line)=each($ctnt)) {
if (eregi("^#", trim($line))) {
continue;
}
list($pn, $key, $val) = explode("\t", $line, 3);
$result[$pn][$key] = $val;
}
return $result;
}
?>
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gforge-commits] tools language_file_merger.php,NONE,1.1,
tom <=
- Prev by Date:
[Gforge-commits] gforge/www/pm gantt.php, 1.10, 1.11 ganttpage.php, 1.5, 1.6
- Next by Date:
[Gforge-commits] gforge/www/forum forum.php,1.20,1.21
- Previous by thread:
[Gforge-commits] gforge/www/pm gantt.php, 1.10, 1.11 ganttpage.php, 1.5, 1.6
- Next by thread:
[Gforge-commits] gforge/www/forum forum.php,1.20,1.21
- Index(es):