Greek needs 144 messages to be translated in Ubuntu
Christos Spyroglou
cspyroglou at gmail.com
Thu Apr 12 10:30:26 UTC 2012
Ok! Όταν επιστρέψω στο σπίτι θα το δοκιμάσω.
-- Inviato dal mio cellulare Android con K-9 Mail.
Savvas Radevic <vicedar at gmail.com> ha scritto:
Ευχαριστώ για την αλλαγή :)
Δίνω τον κώδικα για το Y/N input (cmdline/apt-get.cc):
// YnPrompt - Yes No Prompt. /*{{{*/
// ---------------------------------------------------------------------
/* Returns true on a Yes.*/
bool YnPrompt(bool Default=true)
{
if (_config->FindB("APT::Get::Assume-Yes",false) == true)
{
c1out << _("Y") << endl;
return true;
}
else if (_config->FindB("APT::Get::Assume-No",false) == true)
{
c1out << _("N") << endl;
return false;
}
char response[1024] = "";
cin.getline(response, sizeof(response));
if (!cin)
return false;
if (strlen(response) == 0)
return Default;
regex_t Pattern;
int Res;
Res = regcomp(&Pattern, nl_langinfo(YESEXPR),
REG_EXTENDED|REG_ICASE|REG_NOSUB);
if (Res != 0) {
char Error[300];
regerror(Res,&Pattern,Error,sizeof(Error));
return _error->Error(_("Regex compilation error - %s"),Error);
}
Res = regexec(&Pattern, response, 0, NULL, 0);
if (Res == 0)
return true;
return false;
}
Κοιτώντας το nl_langinfo(YESEXPR), φαίνεται να χρησιμοποιεί το locale variable YESEXPR...
Ανήκει στην κατηγορία LC_MESSAGES:
http://pubs.opengroup.org/onlinepubs/009604599/basedefs/langinfo.h.html
http://pubs.opengroup.org/onlinepubs/009604599/functions/nl_langinfo.html
Στο ubuntu 11.10 υπάρχει σ' αυτό το αρχείο:
$ grep -i YESEXPR /usr/share/i18n/locales/el*
/usr/share/i18n/locales/el_GR:yesexpr "<U005E><U005B><U03BD><U039D><U0079><U0059><U005D><U002E><U002A>"
Διαφέρει από το YESEXPR του en_US:
$ grep -i YESEXPR /usr/share/i18n/locales/en_US
yesexpr "<U005E><U005B><U0079><U0059><U005D><U002E><U002A>"
Χρησιμοποιεί regular expression για να συγκρίνει το input.
Χρησιμοποιώντας python για να βρούμε τι σημαίνουν αυτοί οι κώδικες:
$ python -c 'import locale; locale.setlocale(locale.LC_MESSAGES, "en_US.UTF-8"); print(locale.nl_langinfo(locale.YESEXPR))'
^[yY].*
^[nN].*
$ python -c 'import locale; locale.setlocale(locale.LC_MESSAGES, "el_GR.UTF-8"); print(locale.nl_langinfo(locale.YESEXPR))'
^[νΝyY].*
^[οΟnN].*
Το προβληματικό πακέτο φαίνεται να είναι το locales. "^[νΝyY].*" σημαίνει χαρακτήρας ν ή Ν ή y ή Y.
Σύμφωνα με αυτά θα πρέπει να δουλεύει και με το ελληνικό "Ν" αλλά και με το αγγλικό "Y".
Το ίδιο ισχύει και για το NOEXPR, ελληνικό "Ο" ή αγγλικό "N".
Το πακέτο locales ανήκει στο πρόγραμμα:
http://www.eglibc.org/home
http://www.eglibc.org/cgi-bin/viewvc.cgi/trunk/libc/localedata/locales/el_GR?view=markup
Κανονικά θα έπρεπε να δουλεύει και με τις δύο γλώσσες:
$ LANG=el_GR.UTF-8 LANGUAGE=el_GR:el LC_CTYPE=el_GR.UTF-8 LC_NUMERIC=el_GR.UTF-8 LC_TIME=el_GR.UTF-8 LC_COLLATE=el_GR.UTF-8 LC_MONETARY=el_GR.UTF-8 LC_MESSAGES=el_GR.UTF-8 LC_PAPER=el_GR.UTF-8 LC_NAME=el_GR.UTF-8 LC_ADDRESS=el_GR.UTF-8 LC_TELEPHONE=el_GR.UTF-8 LC_MEASUREMENT=el_GR.UTF-8 LC_IDENTIFICATION=el_GR.UTF-8 LC_ALL=el_GR.UTF-8 sudo apt-get install deluge
Ανάγνωση Λιστών Πακέτων... Ολοκληρώθηκε
Κατασκευή Δένδρου Εξαρτήσεων
Ανάγνωση περιγραφής της τρέχουσας κατάσταση... Ολοκληρώθηκε
Τα ακόλουθα επιπλέον πακέτα θα εγκατασταθούν:
deluge-common deluge-gtk libportmidi0 python-libtorrent python-pygame
Τα ακόλουθα ΝΕΑ πακέτα θα εγκατασταθούν:
deluge deluge-common deluge-gtk libportmidi0 python-libtorrent python-pygame
0 αναβαθμίστηκαν, 6 νέο εγκατεστημένα, 0 θα αφαιρεθούν και 0 δεν αναβαθμίζονται.
Χρειάζεται να μεταφορτωθούν 5375 kB από αρχεία.
Μετά από αυτή τη λειτουργία, θα χρησιμοποιηθούν 29,0 MB χώρου από το δίσκο.
Θέλετε να συνεχίσετε [Ν/ο]; y
Φέρε:1 http://archive.ubuntu.com/ubuntu/ oneiric/universe python-libtorrent amd64 0.15.7-1 [980 kB]
12% [1 python-libtorrent 692 kB/980 kB 70%]^C
$ LANG=el_GR.UTF-8 LANGUAGE=el_GR:el LC_CTYPE=el_GR.UTF-8 LC_NUMERIC=el_GR.UTF-8 LC_TIME=el_GR.UTF-8 LC_COLLATE=el_GR.UTF-8 LC_MONETARY=el_GR.UTF-8 LC_MESSAGES=el_GR.UTF-8 LC_PAPER=el_GR.UTF-8 LC_NAME=el_GR.UTF-8 LC_ADDRESS=el_GR.UTF-8 LC_TELEPHONE=el_GR.UTF-8 LC_MEASUREMENT=el_GR.UTF-8 LC_IDENTIFICATION=el_GR.UTF-8 LC_ALL=el_GR.UTF-8 sudo apt-get install deluge
Ανάγνωση Λιστών Πακέτων... Ολοκληρώθηκε
Κατασκευή Δένδρου Εξαρτήσεων
Ανάγνωση περιγραφής της τρέχουσας κατάσταση... Ολοκληρώθηκε
Τα ακόλουθα επιπλέον πακέτα θα εγκατασταθούν:
deluge-common deluge-gtk libportmidi0 python-libtorrent python-pygame
Τα ακόλουθα ΝΕΑ πακέτα θα εγκατασταθούν:
deluge deluge-common deluge-gtk libportmidi0 python-libtorrent python-pygame
0 αναβαθμίστηκαν, 6 νέο εγκατεστημένα, 0 θα αφαιρεθούν και 0 δεν αναβαθμίζονται.
Χρειάζεται να μεταφορτωθούν 5375 kB από αρχεία.
Μετά από αυτή τη λειτουργία, θα χρησιμοποιηθούν 29,0 MB χώρου από το δίσκο.
Θέλετε να συνεχίσετε [Ν/ο]; ν
Φέρε:1 http://archive.ubuntu.com/ubuntu/ oneiric/universe python-libtorrent amd64 0.15.7-1 [980 kB]
Φέρε:2 http://archive.ubuntu.com/ubuntu/ oneiric/universe deluge-common all 1.3.3-1ubuntu1 [1210 kB]
19% [2 deluge-common 78,0 kB/1210 kB 6%]^C
Και δουλεύει... Θα ήθελα οι Sergey και Christos να δοκιμάσουν τις ακόλουθες εντολές και να δώσουν το αποτέλεσμα:
http://pastebin.com/RZ0ehuCE
Αν έχετε εγκατεστημένο το deluge δοκιμάστε κάποιο άλλο «εξωτικό» πακέτο με εξαρτώμενα πακέτα, π.χ... clementine
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.ubuntu.com/archives/ubuntu-gr/attachments/20120412/8480164e/attachment.html>
More information about the Ubuntu-gr
mailing list