From c608195c04904e823d542ec1d6983baf18d83070 Mon Sep 17 00:00:00 2001 From: Rotem Liss Date: Fri, 4 Aug 2006 20:18:57 +0000 Subject: [PATCH] (bug 6827) some i18n specific maintenance scripts fails after merge of localisation-work branch Because of some changes, it's difficult to know which messages are duplicate and which are not specified, therefore some scripts do not work properly; also, I didn't understand diffLanguage.php, therefore I still didn't fix. --- RELEASE-NOTES | 1 + maintenance/alltrans.php | 4 ++-- maintenance/checktrans.php | 12 ++++++++---- maintenance/dumpMessages.php | 3 ++- maintenance/duplicatetrans.php | 14 +++++++++----- maintenance/unusedMessages.php | 10 ++++++---- 6 files changed, 28 insertions(+), 16 deletions(-) diff --git a/RELEASE-NOTES b/RELEASE-NOTES index 86024a9fa3..beb1e9962f 100644 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -115,6 +115,7 @@ it from source control: http://www.mediawiki.org/wiki/Download_from_SVN * (bug 6919) Add English alias magic words for Tatar (tt) language file. * (bug 6753) Fixed broken Kazakh linktrail (kk) * (bug 6700) Added Kazakh language variants to Names.php +* (bug 6827) some i18n specific maintenance scripts fails after merge of localisation-work branch == Languages updated == diff --git a/maintenance/alltrans.php b/maintenance/alltrans.php index 15af0e4d05..ad41f03208 100644 --- a/maintenance/alltrans.php +++ b/maintenance/alltrans.php @@ -8,8 +8,8 @@ require_once( 'commandLine.inc' ); -$wgLang = Language::factory( 'en' ); -foreach( array_keys( $wgLang->getAllMessages() ) as $key ) { +$wgEnglishLang = Language::factory( 'en' ); +foreach( array_keys( $wgEnglishLang->getAllMessages() ) as $key ) { echo "$key\n"; } diff --git a/maintenance/checktrans.php b/maintenance/checktrans.php index ebab4c7d40..917abf69c7 100644 --- a/maintenance/checktrans.php +++ b/maintenance/checktrans.php @@ -10,17 +10,21 @@ /** */ require_once('commandLine.inc'); -if ( 'en' == $wgLanguageCode ) { +die( "This script currently *does not work*, please wait for fix." ); + +if ( $wgLang->getCode() == 'en' ) { print "Current selected language is English. Cannot check translations.\n"; exit(); } $count = $total = 0; -$msgarray = 'wgAllMessages' . ucfirst( $wgLanguageCode ); +$wgEnglishLang = Language::factory( 'en' ); +$wgEnglishMessages = $wgEnglishLang->getAllMessages(); +$wgLocalMessages = $wgLang->getAllMessages(); -foreach ( $wgAllMessagesEn as $code => $msg ) { +foreach ( $wgEnglishMessages as $code => $msg ) { ++$total; - if ( ! array_key_exists( $code, $$msgarray ) ) { + if ( !isset( $wgLocalMessages[$code] ) ) { print "'{$code}' => \"$msg\",\n"; ++$count; } diff --git a/maintenance/dumpMessages.php b/maintenance/dumpMessages.php index 84ecc4c6d4..b31b092a3b 100644 --- a/maintenance/dumpMessages.php +++ b/maintenance/dumpMessages.php @@ -9,7 +9,8 @@ require_once( "commandLine.inc" ); $wgMessageCache->disableTransform(); $messages = array(); -foreach ( $wgAllMessagesEn as $key => $englishValue ) +$wgEnglishLang = Language::factory( 'en' ); +foreach ( $wgEnglishLang->getAllMessages() as $key => $englishValue ) { $messages[$key] = wfMsg( $key ); } diff --git a/maintenance/duplicatetrans.php b/maintenance/duplicatetrans.php index 89d9cff1c7..89779e8586 100644 --- a/maintenance/duplicatetrans.php +++ b/maintenance/duplicatetrans.php @@ -1,7 +1,7 @@ getCode() == 'en' ) { print "Current selected language is English. Cannot check translations.\n"; exit(); } $count = $total = 0; -$msgarray = 'wgAllMessages' . ucfirst( $wgLanguageCode ); +$wgEnglishLang = Language::factory( 'en' ); +$wgEnglishMessages = $wgEnglishLang->getAllMessages(); +$wgLocalMessages = $wgLang->getAllMessages(); -foreach ( $$msgarray as $code => $msg ) { +foreach ( $wgEnglishMessages as $code => $msg ) { ++$total; - if ( @$wgAllMessagesEn[$code] == $msg ) { + if ( $wgLocalMessages[$code] == $wgEnglishMessages[$code] ) { echo "* $code\n"; ++$count; } diff --git a/maintenance/unusedMessages.php b/maintenance/unusedMessages.php index 1cdfcbad29..351f854165 100644 --- a/maintenance/unusedMessages.php +++ b/maintenance/unusedMessages.php @@ -8,17 +8,19 @@ require_once('commandLine.inc'); -if ( 'en' == $wgLanguageCode ) { +if ( $wgLang->getCode() == 'en' ) { print "Current selected language is English. Cannot check translations.\n"; exit(); } $count = $total = 0; -$msgarray = 'wgAllMessages' . ucfirst( $wgLanguageCode ); +$wgEnglishLang = Language::factory( 'en' ); +$wgEnglishMessages = $wgEnglishLang->getAllMessages(); +$wgLocalMessages = $wgLang->getAllMessages(); -foreach ( $$msgarray as $code => $msg ) { +foreach ( $wgLocalMessages as $code => $msg ) { ++$total; - if ( ! array_key_exists( $code, $wgAllMessagesEn ) ) { + if ( !isset( $wgEnglishMessages[$code] ) ) { print "* $code\n"; ++$count; } -- 2.20.1