diff options
Diffstat (limited to 'po')
-rw-r--r-- | po/ChangeLog | 9 | ||||
-rw-r--r-- | po/POTFILES.ignore | 0 | ||||
-rw-r--r-- | po/POTFILES.in | 15 | ||||
-rw-r--r-- | po/POTFILES.skip | 29 | ||||
-rw-r--r-- | po/README.tools | 58 | ||||
-rw-r--r-- | po/da.po | 24 | ||||
-rwxr-xr-x | po/desk.pl | 118 | ||||
-rw-r--r-- | po/es.po | 28 | ||||
-rw-r--r-- | po/fr.po | 28 | ||||
-rw-r--r-- | po/it.po | 3 | ||||
-rw-r--r-- | po/no.po | 36 | ||||
-rw-r--r-- | po/pt_BR.po | 4 | ||||
-rw-r--r-- | po/sk.po | 28 | ||||
-rw-r--r-- | po/sl.po | 20 | ||||
-rw-r--r-- | po/sv.po | 30 | ||||
-rw-r--r-- | po/tr.po | 28 | ||||
-rwxr-xr-x | po/ui-extract.pl | 304 | ||||
-rwxr-xr-x | po/update.pl | 367 | ||||
-rwxr-xr-x | po/update.sh | 45 |
19 files changed, 307 insertions, 867 deletions
diff --git a/po/ChangeLog b/po/ChangeLog index 709bde4404..75221fb0f0 100644 --- a/po/ChangeLog +++ b/po/ChangeLog @@ -1,3 +1,12 @@ +2001-02-11 Gediminas Paulauskas <menesis@delfi.lt> + + * *.po: added strings from .desktop files, they are translated here + because we use xml-i18n-tools. + * POTFILES.in: added these *.desktop files, missing *.glade files, + removed *.glade.h and similar files. + * POTFILES.skip: removed all *.glade.h entries - they do not exist + anymore. + 2001-02-10 Fatih Demir <kabalak@gtranslator.org> * tr.po: Took over the stable tr.po also to HEAD. diff --git a/po/POTFILES.ignore b/po/POTFILES.ignore deleted file mode 100644 index e69de29bb2..0000000000 --- a/po/POTFILES.ignore +++ /dev/null diff --git a/po/POTFILES.in b/po/POTFILES.in index c2ded23ca8..fdb76ac951 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -6,11 +6,13 @@ addressbook/backend/ebook/test-client-list.c addressbook/backend/ebook/test-client.c addressbook/conduit/address-conduit-control-applet.c addressbook/conduit/address-conduit.c +addressbook/conduit/e-address-conduit-control-applet.desktop.in +addressbook/contact-editor/contact-editor.glade addressbook/contact-editor/e-contact-editor-confirm-delete.glade addressbook/contact-editor/e-contact-editor-strings.h addressbook/contact-editor/e-contact-editor.c addressbook/contact-editor/fulladdr.glade -addressbook/contact-editor/fullname-strings.h +addressbook/contact-editor/fullname.glade addressbook/gui/component/addressbook-factory.c addressbook/gui/component/addressbook.c addressbook/gui/component/addressbook-storage.c @@ -27,6 +29,8 @@ addressbook/printing/e-contact-print.glade calendar/cal-util/timeutil.c calendar/conduits/calendar/calendar-conduit-control-applet.c calendar/conduits/calendar/calendar-conduit.c +calendar/conduits/calendar/e-calendar-conduit-control-applet.desktop.in +calendar/conduits/todo/e-todo-conduit-control-applet.desktop.in calendar/conduits/todo/todo-conduit-control-applet.c calendar/conduits/todo/todo-conduit.c calendar/gui/calendar-commands.c @@ -45,6 +49,8 @@ calendar/gui/e-day-view-time-item.c calendar/gui/e-day-view-top-item.c calendar/gui/e-day-view.c calendar/gui/e-itip-control.c +calendar/gui/e-itip-control.glade +calendar/gui/e-meeting-dialog.glade calendar/gui/e-tasks.c calendar/gui/e-week-view-main-item.c calendar/gui/e-week-view.c @@ -103,10 +109,12 @@ composer/e-msg-composer-attachment.glade composer/e-msg-composer-hdrs.c composer/e-msg-composer.c composer/evolution-composer.c +data/evolution.keys.in executive-summary/component/component-factory.c executive-summary/component/e-summary-callbacks.c executive-summary/component/e-summary-url.c executive-summary/component/e-summary.c +executive-summary/component/executive-summary-config.glade executive-summary/component/main.c executive-summary/test-service/rdf-summary.c filter/filter-datespec.c @@ -151,6 +159,10 @@ mail/mail-view.c mail/message-list.c mail/openpgp-utils.c mail/subscribe-dialog.c +mail/subscribe-dialog.glade +shell/glade/e-shell-folder-creation-dialog.glade +shell/importer/importer.c +shell/importer/import.glade shell/e-setup.c shell/e-shell-folder-creation-dialog.c shell/e-shell-folder-selection-dialog.c @@ -163,7 +175,6 @@ shell/e-shortcuts.c shell/e-storage-set-view.c shell/e-storage.c shell/main.c -shell/importer/importer.c ui/evolution-addressbook.xml ui/evolution-calendar.xml ui/evolution-contact-editor.xml diff --git a/po/POTFILES.skip b/po/POTFILES.skip index afdc5c68eb..cedd793894 100644 --- a/po/POTFILES.skip +++ b/po/POTFILES.skip @@ -1,17 +1,12 @@ -addressbook/contact-editor/e-contact-editor-confirm-delete.glade.h -addressbook/contact-editor/fulladdr.glade.h -addressbook/gui/component/select-names/select-names.glade.h -addressbook/gui/widgets/alphabet.glade.h -addressbook/printing/e-contact-print.glade.h -calendar/gui/dialogs/alarm-notify.glade.h -calendar/gui/dialogs/cal-prefs-dialog.glade.h -calendar/gui/dialogs/task-editor-dialog.glade.h -calendar/gui/e-itip-control.glade.h -calendar/gui/e-meeting-dialog.glade.h -calendar/gui/event-editor-dialog.glade.h -calendar/gui/goto-dialog.glade.h -composer/e-msg-composer-attachment.glade.h -filter/filter.glade.h -mail/mail-config.glade.h -mail/subscribe-dialog.glade.h - +tests/ui-tests/store_listing.glade +addressbook/gui/component/select-names/recipient.glade +addressbook/gui/widgets/test-minicard-view.c +calendar/gui/alarm-notify.c +calendar/gui/getdate.c +calendar/gui/alarm-notify/alarm-queue.c +calendar/gui/alarm-notify/notify-main.c +camel/providers/local/camel-mbox-provider.c +cmdline/compose.c +notes/component-factory.c +notes/main.c +tests/ui-tests/message-browser.c diff --git a/po/README.tools b/po/README.tools deleted file mode 100644 index 4ec99c1640..0000000000 --- a/po/README.tools +++ /dev/null @@ -1,58 +0,0 @@ -The po/ directory includes two perlscripts, which is done to help -making the translations fully uptodate. - -The first script is called update.pl and is supposed to be run like this: - - ./update.pl [OPTIONS] ...LANGCODE - -This will updates the pot file (the po template, generated from the source code) -and merge them with the translations po files. - -For instance to do this for Danish, type the following - - ./update.pl da - - -The update.pl script also supports other options, they are: - - -V, --version shows the version - -H, --help shows this help page - -P, --pot only generates the potfile - -M, --maintain search for missing files in POTFILES.in - -Especially the --maintain option is very handy for package maintainer, to check -if you included all the files that have marked strings in the POTFILES.in, so -they will be in the generated po template, the socalled pot file. - -There is though one thing to take notice of with this option, please check the -configure.in file to make sure that the files you add to POTFILES.in are being -build, otherwise this can leed to "make dist" throuble. - - -The other utility is the desk.pl script, which will check the cvs module for -missing translation in files like *.desktop, *.directory, *.soundlist and so on. - -Run the script like this: - - ./desk.pl [OPTIONS] ...LANGCODE ENTRY - -An example use could be. - - ./desk.pl da - -which will check all the files for missing Name[da] entries, or - - ./desk.pl no Comment - -which will check all the files for missing Comment[no] entries. "Comment" can -here be replaced with whatever you like - -All scripts support the --help option for further help, though it's not very -extensive for the moment. - -Kenneth Christiansen - -kenneth@gnu.org -kenneth@gnome.org - -Both scripts are copyright 2000 The Free Software Foundation and me. @@ -8401,3 +8401,27 @@ msgstr "_Søg" #~ msgid "_Create New Folder..." #~ msgstr "_Opret ny mappe..." + +#: addressbook/conduit/e-address-conduit-control-applet.desktop.in:3 +msgid "Evolution Address conduit " +msgstr "Udstående" + +#: addressbook/conduit/e-address-conduit-control-applet.desktop.in:4 +msgid "Configure the address conduit" +msgstr "Konfigurér Udstående" + +#: calendar/conduits/calendar/e-calendar-conduit-control-applet.desktop.in:3 +msgid "Evolution Calendar conduit" +msgstr "Gnome kalender" + +#: calendar/conduits/calendar/e-calendar-conduit-control-applet.desktop.in:4 +msgid "Configure the GnomeCal conduit" +msgstr "Konfigurér GnomeCal-komponent" + +#: calendar/conduits/todo/e-todo-conduit-control-applet.desktop.in:3 +msgid "Evolution ToDo conduit " +msgstr "Udstående" + +#: calendar/conduits/todo/e-todo-conduit-control-applet.desktop.in:4 +msgid "Configure the todo conduit" +msgstr "Konfigurér Udstående" diff --git a/po/desk.pl b/po/desk.pl deleted file mode 100755 index 08a2a18a56..0000000000 --- a/po/desk.pl +++ /dev/null @@ -1,118 +0,0 @@ -#!/usr/bin/perl -w - -# GNOME entry finder utility. -# (C) 2000 The Free Software Foundation -# -# Author(s): Kenneth Christiansen - - -$VERSION = "1.0.0 beta 5"; -$LANG = $ARGV[0]; -$OPTION2 = $ARGV[1]; -$SEARCH = "Name"; - -if (! $LANG){ - print "desk.pl: missing file arguments\n"; - print "Try `desk.pl --help' for more information.\n"; - exit; -} - -if ($OPTION2){ - $SEARCH=$OPTION2; -} - -if ($LANG){ - -if ($LANG=~/^-(.)*/){ - - if ("$LANG" eq "--version" || "$LANG" eq "-V"){ - print "GNOME Entry finder $VERSION\n"; - print "Written by Kenneth Christiansen <kenneth\@gnome.org>, 2000.\n\n"; - print "Copyright (C) 2000 Free Software Foundation, Inc.\n"; - print "This is free software; see the source for copying conditions. There is NO\n"; - print "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"; - exit; - } - - elsif ($LANG eq "--help" || "$LANG" eq "-H"){ - print "Usage: ./desk.pl [OPTIONS] ...LANGCODE ENTRY\n"; - print "Checks .desktop and alike files for missing translations.\n\n"; - print " -V, --version shows the version\n"; - print " -H, --help shows this help page\n"; - print "\nReport bugs to <kenneth\@gnome.org>.\n"; - exit; - } - - else{ - print "desk.pl: invalid option -- $LANG\n"; - print "Try `desk.pl --help' for more information.\n"; - exit; - } -} - -else{ - - $a="find ../ -print | egrep '.*\\.(desktop|soundlist" - ."|directory)' "; - - $b="find ../ -print | egrep '.*\\.(desktop|soundlist" - ."|directory)' "; - - print "Searching for missing $SEARCH\[$LANG\] entries...\n"; - - open(BUF1, "$a|"); - open(BUF2, "$b|"); - - @buf1 = <BUF1>; - foreach my $file (@buf1){ - open FILE, "<$file"; - while (<FILE>) { - if ($_=~/$SEARCH\[$LANG\]\=/o){ - $file = unpack("x2 A*",$file) . "\n"; - push @buff1, $file; - last; - } - } - } - - @buf2 = <BUF2>; - foreach my $file (@buf2){ - open FILE, "<$file"; - while (<FILE>) { - if ($_=~/$SEARCH\=/o){ - $file = unpack("x2 A*",$file) . "\n"; - push @buff2, $file; - last; - } - } - } - - @bufff1 = sort (@buff1); - @bufff2 = sort (@buff2); - - my %in2; - foreach (@bufff1) { - $in2{$_} = 1; - } - - foreach (@bufff2){ - if (!exists($in2{$_})){ - push @result, $_ } - } - } - - open(OUT1, ">MISSING.$LANG.$SEARCH"); - print OUT1 @result ; - close OUT1; - - - stat("MISSING.$LANG.$SEARCH"); - print "\nWell, you need to fix these:\n\n" if -s _; - print @result if -s _; - print "\nThe list is saved in MISSING.$LANG.$SEARCH\n" if -s _; - print "\nWell, it's all perfect! Congratulation!\n" if -z _; - unlink "MISSING.$LANG.$SEARCH" if -z _; - exit; -} - - @@ -7552,3 +7552,31 @@ msgstr "No mostrar otra vez este mensaje." #: widgets/misc/e-search-bar.c:135 msgid "Sear_ch" msgstr "Bus_car" + +#: evolution.desktop.in:4 +msgid "The Evolution groupware suite" +msgstr "El programa de trabajo en grupo Evolution" + +#: addressbook/conduit/e-address-conduit-control-applet.desktop.in:3 +msgid "Evolution Address conduit " +msgstr "Enlace del libro de direcciones de Evolution" + +#: addressbook/conduit/e-address-conduit-control-applet.desktop.in:4 +msgid "Configure the address conduit" +msgstr "Configura el enlace del libro de direcciones" + +#: calendar/conduits/calendar/e-calendar-conduit-control-applet.desktop.in:3 +msgid "Evolution Calendar conduit" +msgstr "Enlace con el calendario de Evolution" + +#: calendar/conduits/calendar/e-calendar-conduit-control-applet.desktop.in:4 +msgid "Configure the GnomeCal conduit" +msgstr "Configurar el enlace con GnomeCal" + +#: calendar/conduits/todo/e-todo-conduit-control-applet.desktop.in:3 +msgid "Evolution ToDo conduit " +msgstr "Enlace con el componente `Por Hacer' de Evolution" + +#: calendar/conduits/todo/e-todo-conduit-control-applet.desktop.in:4 +msgid "Configure the todo conduit" +msgstr "Configurar el enlace con el componente `Por Hacer'" @@ -8665,3 +8665,31 @@ msgstr "Recher_cher" #~ msgid "_Unselect All" #~ msgstr "_Déselectionner tout" + +#: evolution.desktop.in:4 +msgid "The Evolution groupware suite" +msgstr "La suite de travail collaboratif Evolution" + +#: addressbook/conduit/e-address-conduit-control-applet.desktop.in:3 +msgid "Evolution Address conduit " +msgstr "Conduit Adresses" + +#: addressbook/conduit/e-address-conduit-control-applet.desktop.in:4 +msgid "Configure the address conduit" +msgstr "Configuration du conduit Adresses" + +#: calendar/conduits/calendar/e-calendar-conduit-control-applet.desktop.in:3 +msgid "Evolution Calendar conduit" +msgstr "Conduit Calendrier" + +#: calendar/conduits/calendar/e-calendar-conduit-control-applet.desktop.in:4 +msgid "Configure the GnomeCal conduit" +msgstr "Configuration du conduit calendrier" + +#: calendar/conduits/todo/e-todo-conduit-control-applet.desktop.in:3 +msgid "Evolution ToDo conduit " +msgstr "Conduit Evolution `A Faire'" + +#: calendar/conduits/todo/e-todo-conduit-control-applet.desktop.in:4 +msgid "Configure the todo conduit" +msgstr "Configuration du conduit `A Faire'" @@ -7700,3 +7700,6 @@ msgstr "Invia questo messaggio adesso" msgid "Sear_ch" msgstr "_Cerca" +#: evolution.desktop.in:4 +msgid "The Evolution groupware suite" +msgstr "La suite di produttivita' personale Evolution" @@ -8769,3 +8769,39 @@ msgstr "Sø_k" #~ msgid "Run filter \"%s\"" #~ msgstr "Kjør filter \"%s\"" + +#: evolution.desktop.in:4 +msgid "The Evolution groupware suite" +msgstr "Gruppevaresuiten Evolution" + +#: addressbook/conduit/e-address-conduit-control-applet.desktop.in:3 +msgid "Evolution Address conduit " +msgstr "Oppgaver" + +#: addressbook/conduit/e-address-conduit-control-applet.desktop.in:4 +msgid "Configure the address conduit" +msgstr "Konfigurér oppgavelisten" + +#: calendar/conduits/calendar/e-calendar-conduit-control-applet.desktop.in:3 +msgid "Evolution Calendar conduit" +msgstr "GNOME kalender" + +#: calendar/conduits/calendar/e-calendar-conduit-control-applet.desktop.in:4 +msgid "Configure the GnomeCal conduit" +msgstr "Konfigurér GnomeCal-komponent" + +#: calendar/conduits/todo/e-todo-conduit-control-applet.desktop.in:3 +msgid "Evolution ToDo conduit " +msgstr "Oppgaver" + +#: calendar/conduits/todo/e-todo-conduit-control-applet.desktop.in:4 +msgid "Configure the todo conduit" +msgstr "Konfigurér oppgavelisten" + +#: data/evolution.keys.in:3 +msgid "address card" +msgstr "adressekort" + +#: data/evolution.keys.in:11 +msgid "calendar information" +msgstr "kalenderinformasjon" diff --git a/po/pt_BR.po b/po/pt_BR.po index ed8058b97f..b27e463cb5 100644 --- a/po/pt_BR.po +++ b/po/pt_BR.po @@ -7322,3 +7322,7 @@ msgstr "_Buscar" #, c-format msgid "Group %i" msgstr "Grupo %i" + +#: evolution.desktop.in:4 +msgid "The Evolution groupware suite" +msgstr "Suíte do grupo Evolution" @@ -7530,3 +7530,31 @@ msgstr "Túto správu u¾ nezobrazova»." msgid "Sear_ch" msgstr "_Nájs»" + +#: evolution.desktop.in:4 +msgid "The Evolution groupware suite" +msgstr "Sada groupwarovıch nástrojov Evolution" + +#: addressbook/conduit/e-address-conduit-control-applet.desktop.in:3 +msgid "Evolution Address conduit " +msgstr "Spojka adresára Evolution" + +#: addressbook/conduit/e-address-conduit-control-applet.desktop.in:4 +msgid "Configure the address conduit" +msgstr "Nastavenie spojky adresára" + +#: calendar/conduits/calendar/e-calendar-conduit-control-applet.desktop.in:3 +msgid "Evolution Calendar conduit" +msgstr "Spojka kalendára Evolution" + +#: calendar/conduits/calendar/e-calendar-conduit-control-applet.desktop.in:4 +msgid "Configure the GnomeCal conduit" +msgstr "Nastavenie spojky GnomeCal" + +#: calendar/conduits/todo/e-todo-conduit-control-applet.desktop.in:3 +msgid "Evolution ToDo conduit " +msgstr "Spojka ToDo Evolution" + +#: calendar/conduits/todo/e-todo-conduit-control-applet.desktop.in:4 +msgid "Configure the todo conduit" +msgstr "Nastavenie spojky todo" @@ -8903,3 +8903,23 @@ msgstr "_Iskanje" #~ msgid "Cannot initialize the configuration system." #~ msgstr "Ne morem inicializirati nastavitvenega sistema." + +#: evolution.desktop.in:4 +msgid "The Evolution groupware suite" +msgstr "Programje za delo v skupini Evolucija" + +#: addressbook/conduit/e-address-conduit-control-applet.desktop.in:3 +msgid "Evolution Address conduit " +msgstr "Evolucijin veznik naslovov" + +#: addressbook/conduit/e-address-conduit-control-applet.desktop.in:4 +msgid "Configure the address conduit" +msgstr "Nastavi veznik naslovov" + +#: calendar/conduits/calendar/e-calendar-conduit-control-applet.desktop.in:3 +msgid "Evolution Calendar conduit" +msgstr "Evolucijin veznik koledarja" + +#: calendar/conduits/calendar/e-calendar-conduit-control-applet.desktop.in:4 +msgid "Configure the GnomeCal conduit" +msgstr "Nastavi veznik GnomeKoledarja" @@ -5,7 +5,7 @@ # Christian Rose <menthos@menthos.com>, 2000. # Martin Norbäck <d95mback@dtek.chalmers.se>, 2001. # -# $Id: sv.po,v 1.61 2001/02/08 00:41:17 menthos Exp $ +# $Id: sv.po,v 1.62 2001/02/11 02:56:15 menesis Exp $ # #: camel/providers/smtp/camel-smtp-transport.c:343 msgid "" @@ -8644,3 +8644,31 @@ msgstr "S_ök" #~ msgid "init_bonobo(): could not initialize Bonobo" #~ msgstr "init_bonobo(): kunde inte initiera Bonobo" + +#: evolution.desktop.in:4 +msgid "The Evolution groupware suite" +msgstr "Grupprogramvaran Evolution" + +#: addressbook/conduit/e-address-conduit-control-applet.desktop.in:3 +msgid "Evolution Address conduit " +msgstr "Adresser" + +#: addressbook/conduit/e-address-conduit-control-applet.desktop.in:4 +msgid "Configure the address conduit" +msgstr "Konfigurera adresskanalen" + +#: calendar/conduits/calendar/e-calendar-conduit-control-applet.desktop.in:3 +msgid "Evolution Calendar conduit" +msgstr "Kalenderkanal" + +#: calendar/conduits/calendar/e-calendar-conduit-control-applet.desktop.in:4 +msgid "Configure the GnomeCal conduit" +msgstr "Konfigurera GnomeCal-kanalen" + +#: calendar/conduits/todo/e-todo-conduit-control-applet.desktop.in:3 +msgid "Evolution ToDo conduit " +msgstr "Att göra-lista" + +#: calendar/conduits/todo/e-todo-conduit-control-applet.desktop.in:4 +msgid "Configure the todo conduit" +msgstr "Konfigurerar att göra-listan" @@ -7690,3 +7690,31 @@ msgstr "init_corba(): GNOME başlatılamadı" msgid "init_bonobo(): could not initialize Bonobo" msgstr "init_bonobo(): Bonobo başlatılamadı" + +#: evolution.desktop.in:4 +msgid "The Evolution groupware suite" +msgstr "Evolution kitlesel işlemler uygulaması" + +#: addressbook/conduit/e-address-conduit-control-applet.desktop.in:3 +msgid "Evolution Address conduit " +msgstr "Adres parçası" + +#: addressbook/conduit/e-address-conduit-control-applet.desktop.in:4 +msgid "Configure the address conduit" +msgstr "Adres parçasının ayarları" + +#: calendar/conduits/calendar/e-calendar-conduit-control-applet.desktop.in:3 +msgid "Evolution Calendar conduit" +msgstr "Takvim parçası" + +#: calendar/conduits/calendar/e-calendar-conduit-control-applet.desktop.in:4 +msgid "Configure the GnomeCal conduit" +msgstr "GnomeCal takvim parçası ayarları" + +#: calendar/conduits/todo/e-todo-conduit-control-applet.desktop.in:3 +msgid "Evolution ToDo conduit " +msgstr "Yapılacaklar parçası" + +#: calendar/conduits/todo/e-todo-conduit-control-applet.desktop.in:4 +msgid "Configure the todo conduit" +msgstr "Yapılacaklar parçası ayarları" diff --git a/po/ui-extract.pl b/po/ui-extract.pl deleted file mode 100755 index 9eb96497b6..0000000000 --- a/po/ui-extract.pl +++ /dev/null @@ -1,304 +0,0 @@ -#!/usr/bin/perl -w - -# -# The XML UI Translation Extractor -# -# Copyright (C) 2000 Free Software Foundation. -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License as -# published by the Free Software Foundation; either version 2 of the -# License, or (at your option) any later version. -# -# This script is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this library; if not, write to the Free Software -# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -# -# Authors: Kenneth Christiansen <kenneth@gnu.org> -# - - -## Release information -my $VERSION = "0.9.5"; - -## Script options - Enable by setting value to 1 -my $ENABLE_GLADE = "1"; -my $ENABLE_XML = "1"; -my $ENABLE_XP = "0"; - -## Loaded modules -use strict; -use File::Basename; -use Getopt::Long; - -## Scalars used by the option stuff -my $LOCAL_ARG = "0"; -my $HELP_ARG = "0"; -my $VERSION_ARG = "0"; -my $UPDATE_ARG = "0"; - - -my $FILE; -my $OUTFILE; - -my %string = (); -my @elements; -my @items; -my $n; - -## Always print first -$| = 1; - -## Handle options -GetOptions ( - "local|l" => \$LOCAL_ARG, - "help|h|?" => \$HELP_ARG, - "version|v" => \$VERSION_ARG, - "update" => \$UPDATE_ARG, - ) or &Error; - -&SplitOnArgument; - - -## Check for options. -## This section will check for the different options. - -sub SplitOnArgument { - - if ($VERSION_ARG) { - &Version; - - } elsif ($HELP_ARG) { - &Help; - - } elsif ($LOCAL_ARG) { - &PlaceLocal; - &Preparation; - &WriteFile; - - } elsif ($UPDATE_ARG) { - &PlaceNormal; - &Preparation; - &WriteFile; - - } elsif (@ARGV > 0) { - &PlaceNormal; - &Message; - &Preparation; - &WriteFile; - - } else { - &Help; - - } -} - -sub PlaceNormal { - $FILE = $ARGV[0]; - $OUTFILE = "$FILE.h"; -} - -sub PlaceLocal { - $FILE = $ARGV[0]; - $OUTFILE = fileparse($FILE, ()); - if (!-e "tmp/") { - system("mkdir tmp/"); - } - $OUTFILE = "./tmp/$OUTFILE.h" -} - - -sub PreCheck { - if (! $ENABLE_XML) { if ($FILE =~ /xml$/sg) { &WriteError; }} - if (! $ENABLE_GLADE) { if ($FILE =~ /glade$/sg) { &WriteError; }} - if (! $ENABLE_XP) { if ($FILE =~ /\/xp\/(.*)\.h$/sg) { &WriteError; }} -} - -## Sub for printing release information -sub Version{ - print "The XML UI Translations Extractor $VERSION\n"; - print "Written by Kenneth Christiansen, 2000.\n\n"; - print "Copyright (C) 2000 Free Software Foundation, Inc.\n"; - print "This is free software; see the source for copying conditions. There is NO\n"; - print "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"; - exit; -} - -## Sub for printing usage information -sub Help{ - print "Usage: ui-extract.pl [FILENAME] [OPTIONS] ...\n"; - print "Generates a headerfile from an xml source.\n\nGraps all strings "; - print "between <_translatable_node> and it's end tag,\nwhere tag are all allowed "; - print "xml tags. Read the docs for more info.\n\n"; - print " -V, --version shows the version\n"; - print " -H, --help shows this help page\n"; - print "\nReport bugs to <kenneth\@gnu.org>.\n"; - exit; -} - -## Sub for printing error messages -sub Error{ -# print "ui-extract: invalid option @ARGV\n"; - print "Try `ui-extract.pl --help' for more information.\n"; - exit; -} - -sub Message { - print "Generating headerfile for translation.\n"; -} - -sub Preparation { - - &PreCheck; - if (-s "$OUTFILE"){ - unlink "$OUTFILE"; - } - - &Convert ($FILE); -} - -sub WriteError { - # print "Could not generate $FILE.h\n"; - exit; -} - -sub WriteFile { - - open OUT, ">>$OUTFILE"; - if (! %string) { &WriteError; } - &addMessages; - close OUT; - - print "Wrote $OUTFILE\n"; -} - -sub Convert($) { - - ## Reading the file - my $input; { - local (*IN); - local $/; #slurp mode - open (IN, "<$FILE") || die "can't open $FILE: $!"; - $input = <IN>; - } - - if (!-s "$OUTFILE"){ - open OUT, ">$OUTFILE"; - - print OUT "/*\n"; - print OUT " * Translatable strings file generated by extract-ui.\n"; - print OUT " * DO NOT compile this file as part of your application.\n"; - print OUT " */\n\n"; - - } - close OUT; - -################## -if ($ENABLE_XML) { -################## - - ### For generic translatable XML files ### - - if ($FILE =~ /xml$/sg){ - while ($input =~ /[\t\n\s]_[a-zA-Z0-9_]+=\"([^\"]+)\"/sg) { - $string{$1} = []; - } - - while ($input =~ /<_[a-zA-Z0-9_]+>([^_]+)<\/_[a-zA-Z0-9_]+>/sg) { - $string{$1} = []; - }} -} - -#################### -if ($ENABLE_GLADE) { -#################### - - ### For translatable Glade XML files ### - - if ($FILE =~ /glade$/sg){ - my $translate = "label|title|text|format|copyright|comments| - preview_text|tooltip"; - - while ($input =~ /<($translate)>([^<]+)<\/($translate)>/sg) { - - # Glade has some bugs, especially it uses translations tags to contain little - # non-translatable content. We work around this, by not including these - # strings that only includes something like: label4, and window1 - if ($2 =~ /^(window|label)[0-9]$/g) { - } else { - $string{$2} = []; - } - } - - while ($input =~ /<items>(..[^<]*)<\/items>/sg) { - @items = split (/\n/, $1); - for ($n = 0; $n < @items; $n++) { - $string{$items[$n]} = []; - } - }} -} - -################# -if ($ENABLE_XP) { -################# - - ### For generic translatable XP header files ### - - if ($FILE =~ /\/xp\/(.*)\.h$/sg){ - while ($input =~ /\((.*),(.+)\"(.*)\"/g) { - my $tag = $1; - $string{$3} = [$tag]; - }} - - } -} - -sub addMessages{ - - foreach my $theMessage (sort keys %string) { - - my ($tag) = @{ $string{$theMessage} }; - - # Replace XML codes for special chars to - # geniune gettext syntax - #--------------------------------------- - $theMessage =~ s/"/\\"/mg; - $theMessage =~ s/</</mg; - $theMessage =~ s/>/>/mg; - - if ($theMessage =~ /\n/) { - - @elements = split (/\n/, $theMessage); - for ($n = 0; $n < @elements; $n++) { - - if ($n == 0) { - print OUT "gchar *s = N_"; - print OUT "(\"$elements[$n]\\n\"\n"; - } - - elsif ($n == @elements - 1) { - print OUT " "; - print OUT "\"$elements[$n]\");\n"; - } - - elsif ($n > 0) { - print OUT " "; - print OUT "(\"$elements[$n]\\n\");\n"; - } - } - - } else { - - if ($tag) { print OUT "/* $tag */\n"; } - print OUT "gchar *s = N_(\"$theMessage\");\n"; - - } - - } -} - diff --git a/po/update.pl b/po/update.pl deleted file mode 100755 index 2b6accb302..0000000000 --- a/po/update.pl +++ /dev/null @@ -1,367 +0,0 @@ -#!/usr/bin/perl -w - -# -# GNOME PO Update Utility -# -# Copyright (C) 2000 Free Software Foundation. -# -# This script is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License as -# published by the Free Software Foundation; either version 2 of the -# License, or (at your option) any later version. -# -# This script is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this library; if not, write to the Free Software -# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -# -# Authors: Kenneth Christiansen <kenneth@gnu.org> -# - -# NOTICE: Please remember to change the variable $PACKAGE to reflect -# the package this script is used within. - -$PACKAGE="evolution"; - -use File::Basename; - -# Declare global variables -#------------------------- -my $VERSION = "1.5beta5"; -my $LANG = $ARGV[0]; - -# Always print as the first thing -#-------------------------------- -$| = 1; - -# Figure out what package that is in use -#--------------------------------------- -#open FILE, "../configure.in"; -# while (<FILE>) { -# next if /^dnl/; #ignore comments -# if ($_=~/AM_INIT_AUTOMAKE\((.*),(.*)\)/o){ -# $PACKAGE=$1; -# last; #stop when found -# } -# if ($_=~/PACKAGE\((.*)\)/o){ -# $PACKAGE=$1; -# last; #stop when found -# } -# } -#close FILE; - - -# Give error if script is run without an argument -#------------------------------------------------ -if (! $LANG){ - print "update.pl: missing file arguments\n"; - print "Try `update.pl --help' for more information.\n"; - exit; -} - -# Use the supplied arguments -#--------------------------- -if ($LANG=~/^-(.)*/){ - - if ("$LANG" eq "--version" || "$LANG" eq "-V"){ - &Version; - } - elsif ($LANG eq "--help" || "$LANG" eq "-H"){ - &Help; - } - elsif ($LANG eq "--dist" || "$LANG" eq "-D"){ - &Merging; - } - elsif ($LANG eq "--pot" || "$LANG" eq "-P"){ - - # Check for .headerlock file, so the Makefile - # will not generate the header files twise - #-------------------------------------------- - if (-e ".headerlock"){ - &GeneratePot; - }else{ - &GenHeaders; - &GeneratePot;} - exit; - } - elsif ($LANG eq "--headers" || "$LANG" eq "-S"){ - &GenHeaders; - exit; - } - elsif ($LANG eq "--maintain" || "$LANG" eq "-M"){ - &Maintain; - } - else { - &InvalidOption; - } - -} else { - - # Run standard procedure - #----------------------- - if(-s "$LANG.po"){ - &GenHeaders; - &GeneratePot; - &Merging; - &Status; - } - - # Report error if the language file supplied - # to the command line is non-existent - #------------------------------------------- - else { - &NotExisting; - } -} - -sub Version{ - - # Print version information - #-------------------------- - print "GNOME PO Updater $VERSION\n"; - print "Written by Kenneth Christiansen <kenneth\@gnome.org>, 2000.\n\n"; - print "Copyright (C) 2000 Free Software Foundation, Inc.\n"; - print "This is free software; see the source for copying conditions. There is NO\n"; - print "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"; - exit; -} - -sub Help{ - - # Print usage information - #------------------------ - print "Usage: ./update.pl [OPTIONS] ...LANGCODE\n"; - print "Updates pot files and merge them with the translations.\n\n"; - print " -H, --help shows this help page\n"; - print " -P, --pot generate the pot file only\n"; - print " -S, --headers generate the XML headerfiles in POTFILES.in\n"; - print " -M, --maintain search for missing files in POTFILES.in\n"; - print " -V, --version shows the version\n"; - print "\nExamples of use:\n"; - print "update.sh --pot just creates a new pot file from the source\n"; - print "update.sh da created new pot file and updated the da.po file\n\n"; - print "Report bugs to <kenneth\@gnome.org>.\n"; - exit; -} - -sub Maintain{ - - # Search and fine, all translatable files - # --------------------------------------- - $i18nfiles="find ../ -print | egrep '.*\\.(c|y|cc|c++|h|gob)' "; - - open(BUF2, "POTFILES.in") || die "update.pl: there's no POTFILES.in!!!\n"; - - print "Searching for missing _(\" \") entries...\n"; - - open(BUF1, "$i18nfiles|"); - - @buf1_1 = <BUF1>; - @buf1_2 = <BUF2>; - - # Check if we should ignore some found files, when - # comparing with POTFILES.in - #------------------------------------------------- - if (-s ".potignore"){ - open FILE, ".potignore"; - while (<FILE>) { - if ($_=~/^[^#]/o){ - push @bup, $_; - } - } - print "Found .potignore: Ignoring files...\n"; - @buf1_2 = (@bup, @buf1_2); - } - - foreach my $file (@buf1_1){ - open FILE, "<$file"; - while (<FILE>) { - if ($_=~/_\(\"/o){ - $file = unpack("x3 A*",$file) . "\n"; - push @buf2_1, $file; - last; - } - } - } - - @buf3_1 = sort (@buf2_1); - @buf3_2 = sort (@buf1_2); - - my %in2; - foreach (@buf3_2) { - $in2{$_} = 1; - } - - foreach (@buf3_1){ - if (!exists($in2{$_})){ - push @result, $_ - } - } - - # Save file with information about the files missing - # if any, and give information about this proceedier - #--------------------------------------------------- - if(@result){ - open OUT, ">missing"; - print OUT @result; - print "\nHere is the result:\n\n", @result, "\n"; - print "The file \"missing\" has been placed in the current directory.\n"; - print "Files supposed to be ignored should be placed in \".potignore\"\n"; - } - - # If there is nothing to complain about, notice the user - #------------------------------------------------------- - else{ - print "\nWell, it's all perfect! Congratulation!\n"; - } -} - -sub InvalidOption{ - - # Handle invalid arguments - #------------------------- - print "update.pl: invalid option -- $LANG\n"; - print "Try `update.pl --help' for more information.\n"; -} - -sub GenHeaders{ - - # Generate the .h header files, so we can allow glade and - # xml translation support - #-------------------------------------------------------- - if(-s "ui-extract.pl"){ - - print "Found ui-extract.pl script\nRunning ui-extract...\n"; - - open FILE, "<POTFILES.in"; - while (<FILE>) { - - # Find .xml files in POTFILES.in and generate the - # files with help from the ui-extract.pl script - #-------------------------------------------------- - if ($_=~ /(.*)(\.xml)/o){ - $filename = "../$1.xml"; - $xmlfiles="perl \.\/ui-extract.pl --local $filename"; - system($xmlfiles); - } - - # Find .glade files in POTFILES.in and generate - # the files with help from the ui-extract.pl script - #-------------------------------------------------- - elsif ($_=~ /(.*)(\.glade)/o){ - $filename = "../$1.glade"; - $xmlfiles="perl \.\/ui-extract.pl --local $filename"; - system($xmlfiles); - } - } - close FILE; - - # Create .headerlock file, so the script will know - # that we already passed this section. This is required - # since the individual sections can be reaced at different - # times by the Makefile - #--------------------------------------------------------- - system("touch .headerlock"); - } -} - -sub GeneratePot{ - - # Generate the potfiles from the POTFILES.in file - #------------------------------------------------ - - print "Building the $PACKAGE.pot...\n"; - - system ("mv POTFILES.in POTFILES.in.old"); - - open INFILE, "<POTFILES.in.old"; - open OUTFILE, ">POTFILES.in"; - while (<INFILE>) { - if ($_ =~ /\.(glade|xml)$/) { - s/\.glade$/\.glade\.h/; - s/\.xml$/\.xml\.h/; - $_ = basename($_); - $_ = "po/tmp/$_\n"; - } - print OUTFILE $_; - } - close OUTFILE; - close INFILE; - - $GETTEXT ="xgettext --default-domain\=$PACKAGE --directory\=\.\." - ." --add-comments --keyword\=\_ --keyword\=N\_" - ." --files-from\=\.\/POTFILES\.in "; - $GTEST ="test \! -f $PACKAGE\.po \|\| \( rm -f \.\/$PACKAGE\.pot " - ."&& mv $PACKAGE\.po \.\/$PACKAGE\.pot \)"; - - system($GETTEXT); - system($GTEST); - print "Wrote $PACKAGE.pot\n"; - system("mv POTFILES.in.old POTFILES.in"); - - # If .headerlock file is found, it means that the potfiles - # already has been generated. If so delete the generated - # .h header files. The reason for this approach with a - # file as a marker is due to that the Makefile runs the - # scripts in turns - #--------------------------------------------------------- - - if(-e ".headerlock"){ - unlink(".headerlock"); - - print "Removing generated header (.h) files..."; - system("rm ./tmp/ -rf"); - } - print "done\n"; -} - -sub Merging{ - - if ($ARGV[1]){ - $LANG = $ARGV[1]; - } else { - $LANG = $ARGV[0]; - } - - if ($ARGV[0] ne "--dist" && $ARGV[0] ne "-D") { - print "Merging $LANG.po with $PACKAGE.pot..."; - } - - $MERGE="cp $LANG.po $LANG.po.old && msgmerge $LANG.po.old $PACKAGE.pot -o $LANG.po"; - - system($MERGE); - - if ($ARGV[0] ne "--dist" && $ARGV[0] ne "-D") { - print "\n\n"; - } - - # Remove the "messages" trash file generated - # by gettext, aswell as the backup file - #------------------------------------------- - unlink "messages"; - unlink "$LANG.po.old"; -} - -sub NotExisting{ - - # Report error if supplied language - # file is non-existant - #---------------------------------- - print "update.pl: sorry, $LANG.po does not exist!\n"; - print "Try `update.pl --help' for more information.\n"; - exit; -} - -sub Status{ - - # Print status information about the po file - #------------------------------------------- - $STATUS="msgfmt --statistics $LANG.po"; - - system($STATUS); - print "\n"; -} diff --git a/po/update.sh b/po/update.sh new file mode 100755 index 0000000000..f16601f81b --- /dev/null +++ b/po/update.sh @@ -0,0 +1,45 @@ +#!/bin/bash +# +# Script for translators not being able to run autogen.sh +# +# Copyright (C) 2000 Free Software Foundation. +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 2 of the +# License, or (at your option) any later version. +# +# This script is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this library; if not, write to the Free Software +# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# +# Authors: Kenneth Christiansen <kenneth@gnu.org> + +PACKAGE=evolution + +DEPENDS=$(which xml-i18n-toolize 2> /dev/null) + +if [ "$DEPENDS" = "" -o ! -x "$DEPENDS" ] ; + then echo "The xml-i18n-tools system is not installed or in path!" + echo + echo "The module $PACKAGE requires this inplimentation, which" + echo "can be found at:" + echo + echo " ftp://ftp.gnome.org/pub/GNOME/stable/xml-i18n-tools " + echo + echo "Please install before trying to update the translations" + echo "again..." + echo + exit +fi + +XMLDIR=$(which xml-i18n-toolize | sed s@/bin/xml-i18n-toolize@@) +XML_I18N_EXTRACT="$XMLDIR/share/xml-i18n-tools/xml-i18n-extract" +XML_I18N_UPDATE="$XMLDIR/share/xml-i18n-tools/xml-i18n-update" +PACKAGE=$PACKAGE XML_I18N_EXTRACT=$XML_I18N_EXTRACT \ +$XML_I18N_UPDATE $1 |