initial take at upgrade script from v1 to v2 file format
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9162 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
0077b0678f
commit
464c757f0d
1 changed files with 54 additions and 0 deletions
54
tools/langv1tov2
Executable file
54
tools/langv1tov2
Executable file
|
@ -0,0 +1,54 @@
|
|||
#!/usr/bin/perl -s
|
||||
|
||||
while(<STDIN>) {
|
||||
$line++;
|
||||
if($_ =~ / *\#/) {
|
||||
# comment
|
||||
next;
|
||||
}
|
||||
# get rid of DOS newlines
|
||||
$_ =~ s/\r//g;
|
||||
if($_ =~ / *([a-z]+): *(.*)/) {
|
||||
($var, $value) = ($1, $2);
|
||||
# print "$var => $value\n";
|
||||
|
||||
$set{$var} = $value;
|
||||
|
||||
if( (($var eq "new") && $value && ($value !~ /^\"(.*)\"\W*$/)) ||
|
||||
(($var eq "voice") && $value && ($value !~ /^\"(.*)\"\W*$/)) ||
|
||||
(($var eq "eng") && ($value !~ /^\"(.*)\"\W*$/)) ) {
|
||||
print "$input:$line:missing quotes for ".$set{'id'}."\n";
|
||||
$errors++;
|
||||
next;
|
||||
}
|
||||
|
||||
if($var eq "new") {
|
||||
# the last one for a single phrase
|
||||
|
||||
if(!$value || ($value eq "\"\"") ) {
|
||||
# if not set, get the english version
|
||||
$value = $set{'eng'};
|
||||
}
|
||||
print <<MOO
|
||||
<phrase>
|
||||
id: $set{'id'}
|
||||
desc: $set{'desc'}
|
||||
user:
|
||||
<source>
|
||||
*: $set{'eng'}
|
||||
</source>
|
||||
<dest>
|
||||
*: $value
|
||||
</dest>
|
||||
<voice>
|
||||
*: $set{'voice'}
|
||||
</voice>
|
||||
</phrase>
|
||||
MOO
|
||||
;
|
||||
undef %set;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in a new issue