Translation tools, and first set of translations (all function names)
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@670 416bcca6-2ee7-4201-b75f-2eb2f807beb1
This commit is contained in:
parent
b347f5e04b
commit
f30316612e
13
translat/Readme_translate.txt
Normal file
13
translat/Readme_translate.txt
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
List functions and global variables
|
||||||
|
nm -Cg --defined-only obj/win32/*.o | grep "^0" | cut -c 12- | sort -u
|
||||||
|
|
||||||
|
List variables, parameters, struct members. Requires french.txt to remove duplicates.
|
||||||
|
perl -ne 'while ($_ =~ /\b(int|char|word|byte|float|double|short|long|Fenetre_Bouton_dropdown|Composantes|S_Mode_video|Fenetre_Bouton_normal|Fenetre_Bouton_palette|Fenetre_Bouton_scroller|Fenetre_Bouton_special|T_Shade|T_Degrade_Tableau|Element_de_liste_de_fileselect|S_ConfigTouche|T_Format|Table_conversion|Table_occurence|cluster|ClusterSet|Degrade|DegradeSet|T_Palette|Bouton_dropdown_choix|T_TABLEAIDE|Section_d_aide|T_Degrade_Tableau|T_Shade|Config_Mode_video|Config_Header|Config_Chunk|Config_Infos_touche|S_Page|S_Liste_de_pages|T_FONTE|statfs|S_Libelle_touche|POLYGON_EDGE)\s+(\*)?(\s)*(\w+)/g) { print "$4\n";}' *.c *.h | sort -u | comm -2 -3 - french.txt
|
||||||
|
|
||||||
|
List macros (not starting with _)
|
||||||
|
perl -ne 'if ($_ =~ /^\s*#define ([^_]\w+)/) { print "$1\n"; }' *.h *.c | sort -u
|
||||||
|
|
||||||
|
Translate some source files
|
||||||
|
./translate.pl *.c *.h
|
||||||
|
|
||||||
|
|
||||||
1337
translat/english.txt
Normal file
1337
translat/english.txt
Normal file
File diff suppressed because it is too large
Load Diff
1337
translat/french.txt
Normal file
1337
translat/french.txt
Normal file
File diff suppressed because it is too large
Load Diff
52
translat/translate.pl
Normal file
52
translat/translate.pl
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
#!/usr/bin/perl
|
||||||
|
# Translate words in file(s) given on command-line. Saves older as .bak
|
||||||
|
# The dictionary is read as 2 files, french.txt and english.txt
|
||||||
|
# Method: regexp search, ^word then ^non-word then ^word then ...
|
||||||
|
# Each word is translated according to a hash dictionary
|
||||||
|
|
||||||
|
# Released to public domain.
|
||||||
|
|
||||||
|
unless ( open (FRENCH, "french.txt")) {
|
||||||
|
die "Impossible to open 'french.txt' file.\n";
|
||||||
|
}
|
||||||
|
unless ( open (ENGLISH, "english.txt")) {
|
||||||
|
die "Impossible to open 'english.txt' file.\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
# Build french->english dictionary (a hash)
|
||||||
|
while(($french = <FRENCH>) & ($english=<ENGLISH>)){
|
||||||
|
chop($french);
|
||||||
|
chop($english);
|
||||||
|
if ("$french" ne "$english")
|
||||||
|
{
|
||||||
|
$dictionary{$french} = $english;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#foreach $name (@ARGV) {
|
||||||
|
#print "$name";
|
||||||
|
|
||||||
|
$^I = ".bak";
|
||||||
|
# Read input
|
||||||
|
while ($line = <>){
|
||||||
|
chop $line;
|
||||||
|
while ($line ne "") {
|
||||||
|
# word
|
||||||
|
if ($line =~ m/^(\w+)(.*)$/) {
|
||||||
|
if (defined $dictionary{$1}) {
|
||||||
|
print $dictionary{$1};
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
print "$1";
|
||||||
|
}
|
||||||
|
$line=$2;
|
||||||
|
}
|
||||||
|
# non-word
|
||||||
|
if ($line =~ m/^([^\w]+)(.*)$/) {
|
||||||
|
print "$1";
|
||||||
|
$line=$2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
print "\n";
|
||||||
|
}
|
||||||
|
#}
|
||||||
BIN
translat/translations.xls
Normal file
BIN
translat/translations.xls
Normal file
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user