From 23f9ef54e326176ff2420306acebeed7ce50aafc Mon Sep 17 00:00:00 2001 From: Morris Jobke Date: Fri, 25 Aug 2017 17:48:04 +0200 Subject: Remove old perl script to update l10n files Signed-off-by: Morris Jobke --- l10n/.gitignore | 2 - l10n/.tx/config | 129 -------------------------------- l10n/l10n.pl | 227 -------------------------------------------------------- l10n/rm-old.sh | 24 ------ 4 files changed, 382 deletions(-) delete mode 100644 l10n/.gitignore delete mode 100644 l10n/.tx/config delete mode 100644 l10n/l10n.pl delete mode 100644 l10n/rm-old.sh (limited to 'l10n') diff --git a/l10n/.gitignore b/l10n/.gitignore deleted file mode 100644 index 72ab4b0e236..00000000000 --- a/l10n/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -*.po -*.pot diff --git a/l10n/.tx/config b/l10n/.tx/config deleted file mode 100644 index 5e32709c702..00000000000 --- a/l10n/.tx/config +++ /dev/null @@ -1,129 +0,0 @@ -[main] -host = https://www.transifex.com -lang_map = bg_BG: bg, cs_CZ: cs, fi_FI: fi, hu_HU: hu, nb_NO: nb, sk_SK: sk, th_TH: th, ja_JP: ja - -[nextcloud.core] -file_filter = /core.po -source_file = templates/core.pot -source_lang = en -type = PO - -[nextcloud.files] -file_filter = /files.po -source_file = templates/files.pot -source_lang = en -type = PO - -[nextcloud.settings-1] -file_filter = /settings.po -source_file = templates/settings.pot -source_lang = en -type = PO - -[nextcloud.lib] -file_filter = /lib.po -source_file = templates/lib.pot -source_lang = en -type = PO - -[nextcloud.dav] -file_filter = /dav.po -source_file = templates/dav.pot -source_lang = en -type = PO - -[nextcloud.files_encryption] -file_filter = /encryption.po -source_file = templates/encryption.pot -source_lang = en -type = PO - -[nextcloud.files_external] -file_filter = /files_external.po -source_file = templates/files_external.pot -source_lang = en -type = PO - -[nextcloud.files_sharing] -file_filter = /files_sharing.po -source_file = templates/files_sharing.pot -source_lang = en -type = PO - -[nextcloud.files_trashbin] -file_filter = /files_trashbin.po -source_file = templates/files_trashbin.pot -source_lang = en -type = PO - -[nextcloud.files_versions] -file_filter = /files_versions.po -source_file = templates/files_versions.pot -source_lang = en -type = PO - -[nextcloud.user_ldap] -file_filter = /user_ldap.po -source_file = templates/user_ldap.pot -source_lang = en -type = PO - -[nextcloud.comments] -file_filter = /comments.po -source_file = templates/comments.pot -source_lang = en -type = PO - -[nextcloud.federatedfilesharing] -file_filter = /federatedfilesharing.po -source_file = templates/federatedfilesharing.pot -source_lang = en -type = PO - -[nextcloud.federation] -file_filter = /federation.po -source_file = templates/federation.pot -source_lang = en -type = PO - -[nextcloud.oauth2] -file_filter = /oauth2.po -source_file = templates/oauth2.pot -source_lang = en -type = PO - -[nextcloud.sharebymail] -file_filter = /sharebymail.po -source_file = templates/sharebymail.pot -source_lang = en -type = PO - -[nextcloud.systemtags] -file_filter = /systemtags.po -source_file = templates/systemtags.pot -source_lang = en -type = PO - -[nextcloud.updatenotification] -file_filter = /updatenotification.po -source_file = templates/updatenotification.pot -source_lang = en -type = PO - -[nextcloud.theming] -file_filter = /theming.po -source_file = templates/theming.pot -source_lang = en -type = PO - -[nextcloud.twofactor_backupcodes] -file_filter = /twofactor_backupcodes.po -source_file = templates/twofactor_backupcodes.pot -source_lang = en -type = PO - -[nextcloud.workflowengine] -file_filter = /workflowengine.po -source_file = templates/workflowengine.pot -source_lang = en -type = PO diff --git a/l10n/l10n.pl b/l10n/l10n.pl deleted file mode 100644 index c8312982fdc..00000000000 --- a/l10n/l10n.pl +++ /dev/null @@ -1,227 +0,0 @@ -#!/usr/bin/perl -use strict; -use Locale::PO; -use Cwd; -use Data::Dumper; -use File::Path; - -sub crawlPrograms{ - my( $dir, $ignore ) = @_; - my @found = (); - - opendir( DIR, $dir ); - my @files = readdir( DIR ); - closedir( DIR ); - @files = sort( @files ); - - foreach my $i ( @files ){ - next if substr( $i, 0, 1 ) eq '.'; - if( $i eq 'l10n' && !$ignore ){ - push( @found, $dir ); - } - elsif( -d $dir.'/'.$i ){ - push( @found, crawlPrograms( $dir.'/'.$i )); - } - } - - return @found; -} - -sub crawlFiles{ - my( $dir ) = @_; - my @found = (); - - opendir( DIR, $dir ); - my @files = readdir( DIR ); - closedir( DIR ); - @files = sort( @files ); - - foreach my $i ( @files ){ - next if substr( $i, 0, 1 ) eq '.'; - next if $i eq 'l10n'; - - if( -d $dir.'/'.$i ){ - push( @found, crawlFiles( $dir.'/'.$i )); - } - else{ - push(@found,$dir.'/'.$i) if $i =~ /.*(?){ - my $line = $_; - chomp($line); - $ignore{"./$line"}++; - } - close(IN); - return %ignore; -} - -sub getPluralInfo { - my( $info ) = @_; - - # get string - $info =~ s/.*Plural-Forms: (.+)\\n.*/$1/; - $info =~ s/^(.*)\\n.*/$1/g; - - return $info; -} - -sub init() { - # let's get the version from stdout of xgettext - my $out = `xgettext --version`; - # we assume the first line looks like this 'xgettext (GNU gettext-tools) 0.19.3' - $out = substr $out, 29, index($out, "\n")-29; - $out =~ s/^\s+|\s+$//g; - $out = "v" . $out; - my $actual = version->parse($out); - # 0.18.3 introduced JavaScript as a language option - my $expected = version->parse('v0.18.3'); - if ($actual < $expected) { - die( "Minimum expected version of xgettext is " . $expected . ". Detected: " . $actual ); - } -} - -init(); - -my $task = shift( @ARGV ); -my $place = '..'; - -die( "Usage: l10n.pl task\ntask: read, write\n" ) unless $task && $place; - -# Our current position -my $whereami = cwd(); -die( "Program must be executed in a l10n-folder called 'l10n'" ) unless $whereami =~ m/\/l10n$/; - -# Where are i18n-files? -my @dirs = crawlPrograms( $place, 1 ); - -# Languages -my @languages = (); -opendir( DIR, '.' ); -my @files = readdir( DIR ); -closedir( DIR ); -foreach my $i ( @files ){ - push( @languages, $i ) if -d $i && substr( $i, 0, 1 ) ne '.'; -} - -if( $task eq 'read' ){ - rmtree( 'templates' ); - mkdir( 'templates' ) unless -d 'templates'; - print "Mode: reading\n"; - foreach my $dir ( @dirs ){ - my @temp = split( /\//, $dir ); - my $app = pop( @temp ); - chdir( $dir ); - # parses the app info and creates an dummy file specialAppInfoFakeDummyForL10nScript.php - `php $whereami/../build/l10nParseAppInfo.php`; - my @totranslate = crawlFiles('.'); - my %ignore = readIgnorelist(); - my $output = "${whereami}/templates/$app.pot"; - print " Processing $app\n"; - - foreach my $file ( @totranslate ){ - next if $ignore{$file}; - my $keywords = ''; - if( $file =~ /\.js$/ ){ - $keywords = '--keyword=t:2 --keyword=n:2,3'; - } - else{ - $keywords = '--keyword=t --keyword=n:1,2'; - } - my $language = ( $file =~ /\.js$/ ? 'Javascript' : 'PHP'); - my $joinexisting = ( -e $output ? '--join-existing' : ''); - print " Reading $file\n"; - `xgettext --output="$output" $joinexisting $keywords --language=$language "$file" --add-comments=TRANSLATORS --from-code=UTF-8 --package-version="8.0.0" --package-name="ownCloud Core" --msgid-bugs-address="translations\@owncloud.org"`; - } - rmtree( "specialAppInfoFakeDummyForL10nScript.php" ); - chdir( $whereami ); - } -} -elsif( $task eq 'write' ){ - print "Mode: write\n"; - foreach my $dir ( @dirs ){ - my @temp = split( /\//, $dir ); - my $app = pop( @temp ); - chdir( $dir.'/l10n' ); - print " Processing $app\n"; - foreach my $language ( @languages ){ - next if $language eq 'templates'; - - my $input = "${whereami}/$language/$app.po"; - next unless -e $input; - - print " Language $language\n"; - my $array = Locale::PO->load_file_asarray( $input ); - # Create array - my @strings = (); - my @js_strings = (); - my $plurals; - - TRANSLATIONS: foreach my $string ( @{$array} ){ - if( $string->msgid() eq '""' ){ - # Translator information - $plurals = getPluralInfo( $string->msgstr()); - } - elsif( defined( $string->msgstr_n() )){ - # plural translations - my @variants = (); - my $msgid = $string->msgid(); - $msgid =~ s/^"(.*)"$/$1/; - my $msgid_plural = $string->msgid_plural(); - $msgid_plural =~ s/^"(.*)"$/$1/; - my $identifier = "_" . $msgid."_::_".$msgid_plural . "_"; - - foreach my $variant ( sort { $a <=> $b} keys( %{$string->msgstr_n()} )){ - next TRANSLATIONS if $string->msgstr_n()->{$variant} eq '""'; - push( @variants, $string->msgstr_n()->{$variant} ); - } - - push( @strings, "\"$identifier\" => array(".join(",", @variants).")"); - push( @js_strings, "\"$identifier\" : [".join(",", @variants)."]"); - } - else{ - # singular translations - next TRANSLATIONS if $string->msgstr() eq '""'; - push( @strings, $string->msgid()." => ".$string->msgstr()); - push( @js_strings, $string->msgid()." : ".$string->msgstr()); - } - } - next if $#strings == -1; # Skip empty files - - for (@strings) { - s/\$/\\\$/g; - } - - # delete old php file - unlink "$language.php"; - - # Write js file - open( OUT, ">$language.js" ); - print OUT "OC.L10N.register(\n \"$app\",\n {\n "; - print OUT join( ",\n ", @js_strings ); - print OUT "\n},\n\"$plurals\");\n"; - close( OUT ); - - # Write json file - open( OUT, ">$language.json" ); - print OUT "{ \"translations\": "; - print OUT "{\n "; - print OUT join( ",\n ", @js_strings ); - print OUT "\n},\"pluralForm\" :\"$plurals\"\n}"; - close( OUT ); - - } - chdir( $whereami ); - } -} -else{ - print "unknown task!\n"; -} diff --git a/l10n/rm-old.sh b/l10n/rm-old.sh deleted file mode 100644 index e5e1348014b..00000000000 --- a/l10n/rm-old.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/usr/bin/env bash - -lang=(ach ady af_ZA ak am_ET ar ast az bal be bg_BG bn_BD bn_IN bs ca cs_CZ cy_GB da de de_AT de_DE el en_GB en@pirate eo es es_AR es_CL es_MX et_EE eu fa fi_FI fil fr fy_NL gl gu he hi hr hu_HU hy ia id io is it ja jv ka_GE km kn ko ku_IQ la lb lo lt_LT lv mg mk ml ml_IN mn mr ms_MY mt_MT my_MM nb_NO nds ne nl nn_NO nqo oc or_IN pa pl pt_BR pt_PT ro ru si_LK sk_SK sl sq sr sr@latin su sv sw_KE ta_IN ta_LK te tg_TJ th_TH tl_PH tr tzl tzm ug uk ur_PK uz vi yo zh_CN zh_HK zh_TW) - -ignore="" - -for fignore in "${lang[@]}"; do - ignore=${ignore}"-not -name ${fignore}.js -not -name ${fignore}.json " -done - - -find ../lib/l10n -type f $ignore -delete -find ../settings/l10n -type f $ignore -delete -find ../core/l10n -type f $ignore -delete -find ../apps/files/l10n -type f $ignore -delete -find ../apps/encryption/l10n -type f $ignore -delete -find ../apps/files_external/l10n -type f $ignore -delete -find ../apps/files_sharing/l10n -type f $ignore -delete -find ../apps/files_trashbin/l10n -type f $ignore -delete -find ../apps/files_versions/l10n -type f $ignore -delete -find ../apps/user_ldap/l10n -type f $ignore -delete -find ../apps/user_webdavauth/l10n -type f $ignore -delete - - -- cgit v1.2.3