small i18n enhancements : more reliable traduction section detection
authorcasta <casta@78f58264-58f8-0310-be4b-c7ad7e3b7018>
Thu, 25 Aug 2005 15:18:13 +0000 (15:18 +0000)
committercasta <casta@78f58264-58f8-0310-be4b-c7ad7e3b7018>
Thu, 25 Aug 2005 15:18:13 +0000 (15:18 +0000)
git-svn-id: svn+ssh://svn.xwing.info/home/svn/gtk-fuser/trunk@486 78f58264-58f8-0310-be4b-c7ad7e3b7018

gtk-fuser
list-strings

index 2af6a95abb54801a18fd1c27fad96dbc14e14663..cdb52c8db13d9bd25b1d1246f398b928dbcc23b3 100755 (executable)
--- a/gtk-fuser
+++ b/gtk-fuser
@@ -437,6 +437,7 @@ sub getStrings
 {
     my $lang = shift;
     my %strings = (
+    # STRINGS_BEGIN => start traduction section marker
         fr => {
             "Gtk-Fuser : a Gtk2 fuser Front-End" => "Gtk-Fuser : frontal pour fuser en Gtk2",
             "Kill processes" => "Tuer les processus",
@@ -458,6 +459,7 @@ sub getStrings
             "Choose a file" => "Choisir un fichier",
             "Choose a folder" => "Choisir un rĂ©pertoire",
         },
+    # STRINGS_END => end traduction section marker
     );
     return if $lang eq 'default' or not defined $strings{$lang};
     return $strings{$lang};
index 36362f9db2c832d03a2d202dda9e1ce2d95e6b95..928122f484b633f80678e1c76e61d618e2678ab0 100755 (executable)
@@ -29,6 +29,7 @@ use Data::Dumper;
 my $file = $ARGV[0];
 my @currentStrings;
 
+# Scan source file for translated strings : _("")
 open FILE, $file or die "Error opening $file\n";
 print "====================================\nlanguage template\n====================================\n";
 print "        lang_code => {\n";
@@ -48,21 +49,22 @@ close FILE;
 
 my %strings;
 
+# Extract strings traduction declaration
 open FILE, $file or die "Error opening $file\n";
 my $content = "";
 my $start = 0;
 while (my $ligne = <FILE>)
 {
     chomp $ligne;
-    $start = 1 if $ligne =~ m/^\s+my \%strings = \(/;
+    $start = 0 if $ligne =~ m/STRINGS_END/;
     $content .= $ligne if $start == 1;
-    $start = 0 if $ligne =~ m/^\s+\);/;
+    $start = 1 if $ligne =~ m/STRINGS_BEGIN/;
 }
 close FILE;
 
-$content =~ s/my \%strings =//;
 %strings = eval $content;
 
+# Regenerate updated traduction section
 print "====================================\nUpdated \%strings version :\n====================================\n";
 print "    my %strings = (\n";
 for my $lang (keys %strings)