summaryrefslogtreecommitdiff
path: root/buildtools/po2i18n.pl
diff options
context:
space:
mode:
Diffstat (limited to 'buildtools/po2i18n.pl')
-rwxr-xr-xbuildtools/po2i18n.pl158
1 files changed, 0 insertions, 158 deletions
diff --git a/buildtools/po2i18n.pl b/buildtools/po2i18n.pl
deleted file mode 100755
index b210fe5..0000000
--- a/buildtools/po2i18n.pl
+++ /dev/null
@@ -1,158 +0,0 @@
-#!/usr/bin/perl
-#
-# po2i18n - Convert plugin po files in into i18n.c-format
-#
-# Written by: Udo Richter <udo_richter@gmx.de>
-# Project's homepage: http://www.udo-richter.de/vdr/scripts.html#po2i18n
-# http://www.udo-richter.de/vdr/scripts.en.html#po2i18n
-#
-
-use strict;
-use warnings;
-
-my @LANGS = (
- "en_US",
- "de_DE",
- "sl_SI",
- "it_IT",
- "nl_NL",
- "pt_PT",
- "fr_FR",
- "nn_NO",
- "fi_FI",
- "pl_PL",
- "es_ES",
- "el_GR",
- "sv_SE",
- "ro_RO",
- "hu_HU",
- "ca_ES",
- "ru_RU",
- "hr_HR",
- "et_EE",
- "da_DK",
- "cs_CZ",
- "tr_TR"
- );
-
-my %VERS = (
- "en_US" => 10200,
- "de_DE" => 10200,
- "sl_SI" => 10200,
- "it_IT" => 10200,
- "nl_NL" => 10200,
- "pt_PT" => 10200,
- "fr_FR" => 10200,
- "nn_NO" => 10200,
- "fi_FI" => 10200,
- "pl_PL" => 10200,
- "es_ES" => 10200,
- "el_GR" => 10200,
- "sv_SE" => 10200,
- "ro_RO" => 10200,
- "hu_HU" => 10200,
- "ca_ES" => 10200,
- "ru_RU" => 10302,
- "hr_HR" => 10307,
- "et_EE" => 10313,
- "da_DK" => 10316,
- "cs_CZ" => 10342,
- "tr_TR" => 10502
- );
-
-
-my %strings;
-
-foreach my $lang (@LANGS) { $strings{$lang} = { }; }
-
-
-sub LoadLanguage(*) {
- my ($lang) = @_;
-
- if (!open FILE, "<", "po/$lang.po") {
- return 0;
- }
-
- my $msgid = "";
- my $msgstr = "";
- my $last = 0; # 0=init, 1=msgid was last, 2=msgstr was last
-
- while (<FILE>) {
- chomp;
- my $line = $_;
-
- if ($line =~ /^msgid "(.*)"$/) {
- if ($last eq 2) {
- $strings{$lang}->{$msgid} = $msgstr;
- $strings{"en_US"}->{$msgid} = $msgid;
- }
- $msgid = $1;
- $last = 1;
- } elsif ($line =~ /^msgstr "(.*)"/) {
- $msgstr = $1;
- $last = 2;
- } elsif ($line =~ /^"(.*)"/) {
- if ($last eq 1) {
- $msgid = $msgid . $1;
- } elsif ($last eq 2) {
- $msgstr = $msgstr . $1;
- }
- }
- }
- if ($last eq 2) {
- $strings{$lang}->{$msgid} = $msgstr;
- $strings{"en_US"}->{$msgid} = $msgid;
- }
-
- close FILE;
-}
-
-
-
-foreach my $lang (@LANGS) {
- LoadLanguage($lang);
-}
-
-my @msgids = sort keys %{$strings{"en_US"}};
-
-
-my $silent = 0;
-
-while (<>) {
- my $line = $_;
-
- if ($line =~ /^\/\/ START I18N/) {
- print "// START I18N - automatically generated by po2i18n.pl\n";
- for my $msgid (@msgids) {
- next if $msgid eq "";
-
- my $head = " { ";
- my $endif = "";
- my $versnum = 10200;
-
- for my $lang (@LANGS) {
- if ($VERS{$lang} ne $versnum) {
- $versnum = $VERS{$lang};
- print $endif;
- print "#if VDRVERSNUM >= $versnum\n";
- $endif = "#endif\n";
- }
- my $msgstr = $strings{$lang}->{$msgid};
- $msgstr = "" if !defined $msgstr;
-
- print "$head\"$msgstr\",\n";
- $head = " ";
- }
- print $endif;
- print " },\n";
- }
- $silent = 1;
- }
-
- if (!$silent) { print $line; }
-
- if ($line =~ /^\/\/ END I18N/) {
- print "// END I18N - automatically generated by po2i18n.pl\n";
- $silent = 0;
- }
-}