Re: [team-gnome-gr] Μνεία μεταφÏασ τών
- From: Simos Xenitellis <simos lists googlemail com>
- To: manolis kapcom gr
- Cc: team lists gnome gr
- Subject: Re: [team-gnome-gr] Μνεία μεταφÏασ τών
- Date: Wed, 17 Nov 2010 01:02:28 +0200
2010/11/16 Εμμανουήλ ΚαπεÏνάÏος
<manolis kapcom gr>
Στις 16/11/2010 08:33 μμ, ο/η Simos Xenitellis ÎγÏαψε:
2010/11/16 Εμμανουήλ ΚαπεÏνάÏος <manolis kapcom gr>:
Στις 16/11/2010 05:55 μμ, ο/η Simos Xenitellis ÎγÏαψε:
2010/11/16 Εμμανουήλ ΚαπεÏνάÏος <manolis kapcom gr>:
Στις 15/11/2010 11:19 μμ, ο/η Εμμανουήλ ΚαπεÏνάÏος ÎγÏαψε:
Στις 15/11/2010 10:56 μμ, ο/η Simos Xenitellis ÎγÏαψε:
2010/11/15 Εμμανουήλ ΚαπεÏνάÏος <manolis kapcom gr>:
ΠαÏατήÏησα στο Banshee πηγαίνοντας "Βοήθεια>ΠεÏί>Μνεία>ΜετάφÏαση από>", ότι
κάποια ονόματα μεταφÏαστών όπως και της ελληνικής γλώσσας, τα βγάζει με
εÏωτηματικά "?????? ?????". Σε τι οφείλεται; ΜποÏοÏμε να το διοÏθώσουμε;
Μανώλη,
Το αÏχείο με τα ονόματα των μεταφÏαστών είναι το
http://git.gnome.org/browse/banshee/tree/src/Core/Banshee.Core/Resources/translators.xml
Το αÏχείο είναι σωστά σε UTF-8, οπότε το Ï€Ïόβλημα είναι στο κώδικα και
στο πως διαβάζει το .xml.
Οι εντολÎÏ‚ που διαβάζουν το translators.xml είναι
XmlDocument doc = new XmlDocument ();
doc.LoadXml (AssemblyResource.GetFileContents
("translators.xml"));
Δε φαίνεται κάτι στÏαβό.
Οπότε, μποÏείς να ελÎγξεις στο
https://bugzilla.gnome.org/browse.cgi?product=banshee
αν το Ï€Ïόβλημα Îχει ήδη αναφεÏθεί; Αν όχι, τότε κάνε μια αναφοÏά σφάλματος.
Το Ï€Ïόβλημα είναι ότι ο κώδικας του Banshee εμφανίζει τους μεταφÏαστÎÏ‚
ως κείμενο ASCII, αντί για UTF-8.
Σίμος
ΟΚ το ελÎγχω και θα ενημεÏώσω.
--
Μανώλης
ΣυγκεκÏιμÎνα το xml αÏχείο που βλÎπουμε εμείς με εÏωτηματικά είναι το
http://git.gnome.org/browse/banshee/tree/src/Core/Banshee.Core/Resources/translators.xml?h=stable-1.8
μιας και στο 10.10 Îχουμε το Banshee 1.8.
Î’Ïήκα Îνα παλιό bug report και Îκανα Îνα σχόλιο.
https://bugzilla.gnome.org/show_bug.cgi?id=506556
Î Ïιν κάνω το σχόλιο δοκίμασα το Banshee σε Ubuntu 9.10, 10.04, Linux Mint
Debian Edition και openSUSE.
Όλα Îχουν την 1.6 του Banshee.
Το openSUSE όμως δεν είχε Ï€Ïόβλημα και εμφάνιζε κανονικά τους χαÏακτήÏες.
Στο bug report λÎνε πως το Îχουν λÏσει με μια Ï„Ïοποποίηση σε Îνα Makefile.
Μήπως δε γίνεται με το σωστό Ï„Ïόπο το compile στο Ubuntu και στο Mint?
ΠαÏεμπίπτοντος η κάθε διανομή κάνει μόνη της compile και packaging ή τα
παίÏνουν πακεταÏισμÎνα από το Debian?
Î Ïοσπάθησα να το κάνω compile μόνος μου αλλά είχα σφάλματα.. θα το
ξαναπÏοσπαθήσω..
ΜποÏείς να δεις τον πηγαίο κώδικα του εγκατεστημÎνου banshee με
apt-get source banshee
Από το επίÏαμμα/'patch',
http://bugzilla-attachments.gnome.org/attachment.cgi?id=114732
μποÏοÏμε να διαπιστώσουμε αν η Îκδοση του Debian/Ubuntu διαθÎτει την
Ï€Ïοσθήκη.
ΔοκίμασΠτο.
Για τη μεταγλώττιση του banshee, Ï€ÏÎπει να βάλεις τις εξαÏτήσεις για
μεταγλώττιση.
Αυτό το κάνεις με μια εντολή,
sudo apt-get build-dep banshee
Δοκιμάζεις να μεταγλωττίσεις. Για τη δημιουÏγία του translators.xml το
Banshee Ï„ÏÎχει Îνα μικÏÏŒ
αυτόνομο Ï€ÏόγÏαμμα C#. Κατά το επίÏαμμα, είναι το TranslatorExtractor.cs.
Σίμος
Σίμο χάÏη στη βοήθειά σου εντόπισα το Ï€Ïόβλημα!
Το Makefile δεν ήταν ακÏιβώς ίδιο στο κώδικα που Îχει το Ubuntu.
Έβαλα σε σχόλιο τη γÏαμμή που ήταν λάθος και Ï€Ïόσθεσα αυτή από το patch:
$(TRANSLATOR_EXTRACTOR_ASSEMBLY): TranslatorExtractor.cs
   if [ "x$(top_srcdir)" = "x$(top_builddir)" ]; then \
#Â Â Â Â Â Â $(MCS) -out:$@ $< && LC_ALL=en_US.UTF-8 $(MONO) $@
$(top_builddir)/po > \
      $(MCS) -out:$@ $< && LC_ALL=en_US.utf8 $(MONO) $@ $(top_builddir)/po
\
         $(top_srcdir)/src/Core/Banshee.Core/Resources/translators.xml; \
   fi;
Έκανα μεταγλώττιση και τα ονόματα εμφανίστηκαν σωστά στη Μνεία! :)
Το πεÏίεÏγο είναι ότι το Ï€ÏόγÏαμμα δεν ήταν εξελληνισμÎνο μετά.. ίσως είναι
άσχετο αυτό οκ..
Όπως καταλαβαίνω, η αλλαγή που Îκανες είναι από en_US.UTF-8 σε
en_US.utf8. Έτσι δεν είναι;
ναι αυτό Îκανα
ΠαλαιότεÏα οι διανομÎÏ‚ χÏησιμοποιοÏσαν τη μοÏφή '.UTF-8' και Ï„ÏŽÏα
βλÎπω στο Ubuntu το '.utf8'.
Πάντως, όταν θÎτω
export LANG el_GR.UTF-8
gedit
ή
export LANG el_GR.utf8
gedit
Îχω το ελληνικό gedit, οπότε και τα δÏο λειτουÏγοÏν. Είναι πιθανό με
το mono να μην καταλαβαίνει ότι αυτά τα δÏο είναι ίδια;
και το banshee ελληνικό εμφανίζεται και με el_GR.UTF-8 και με
el_GR.utf8 όταν Ï„ÏÎχω το εγκατεστημÎνο όπως Îκανες με το gedit.
απλώς όταν Ï„ÏÎχω το
~/banshee/bin/Banshee.exe που
μεταγλώττισα εγώ, βγαίνει αγγλικό.. κάτι κάνω εγώ λάθος μάλλον.
Για να βγαίνει το Banshee που μεταγλώττισες αγγλικό, τότε είναι πιθανό για κάποιο λόγο να μη βÏίσκει τις μεταφÏάσεις. ΜποÏείς να Ï„ÏÎξεις το Banshee με Ï€.χ.
strace -f -o output.txt ./Banshee.exe
Στο output.txt θα καταγÏαφοÏν οι Ï€Ïοσπάθειες για άνοιγμα αÏχείων, οπότε με Ï€.χ.
grep '^open(' output.txt
ή
grep locale output.txt
μποÏείς να δεις αν ψάχνει Ï€Ïαγματικά για την ελληνική μετάφÏαση, και που ψάχνει.
Î ÏŽÏ‚ γίνεται όμως να μην υπάÏχει το patch?
Δεν κάνω σχόλιο ακόμα στο bugzilla γιατί νομίζω πως το Ubuntu φταίει που δεν
πήÏε το patch..
Για να φτιάξεις τη διόÏθωσή σου σε patch, αυτό που Ï€ÏÎπει να κάνεις είναι
1. Λήψη του αποθετηÏίου του banshee
sudo apt-get install git-core # σε πεÏίπτωση που δεν το Îχεις ήδη
git clone git://git.gnome.org/banshee
Έπειτα μπαίνεις στο 'banshee' και κάνεις την αλλαγή σου. ΤÎλος, για να
λάβεις το επίÏαμμα (patch),
εκτελείς
git diff
Αν για κάποιο λόγο θÎλεις να αναιÏÎσεις τις αλλαγÎÏ‚ σου, εκτελείς 'git
reset --hard'.
ΜποÏείς ακόμα να μεταγλωττίσεις την Îκδοση αυτή (ονομάζεται Îκδοση git).
Σίμος
Λοιπόν μπεÏδεÏτηκα εντελώς! :)
(όχι με αυτά που είπες)
Το
git clone git://git.gnome.org/banshee κατεβάζει την 1.9
Îκδοση στην οποία (όπως και στις άλλες τελικά) φαίνεται πως το patch
δεν είναι πεÏασμÎνο.
αυτό το διαπιστώνω κοιτώντας στο tree και αλλάζοντας το branch από
master
σε
stable-1.8 και
stable-1.6
http://git.gnome.org/browse/banshee/tree/build/Makefile.am (master)
http://git.gnome.org/browse/banshee/tree/build/Makefile.am?h=stable-1.8
http://git.gnome.org/browse/banshee/tree/build/Makefile.am?h=stable-1.6
ΆÏα δεν είναι ότι το ubuntu δεν το Ï€ÎÏασε.
To patch το βλÎπω πεÏασμÎνο και στα 3 από τα παÏαπάνω. Το ότι κάνει αναφοÏά στο LC_ALL=en_US.UTF-8 σημαίνει ότι το patch είναι πεÏασμÎνο.
ΈτÏεξα την εντολή apt-get source banshee (λαμβάνει το 1.6) και είδα ότι υπάÏχει το «LC_ALL=en_US.UTF-8»
.
ΜποÏείς να επιβεβαιώσεις ότι δεν υπάÏχει αναφοÏά για LC_ALL=en_US.UTF-8
στο δικό σου apt-get source;
Κανονικά, UTF-8 == utf8.
Από πεÏιÎÏγεια λοιπόν μεταγλωττίζω το 1.9 χωÏίς να διοÏθώσω το λάθος
και λειτουÏγεί κανονικά!
Το δοκίμασα και με την αλλαγή σε utf8 και Îπαιξε πάλι.. αλλά
Ï„Îλοσπάντων δεν χÏειάζεται..
Το ζήτημα με το en_US.utf8 / en_US.UTF-8 είναι ότι Ï€ÏÎπει να Îχει το locale ο 'build server' του Debian ή Ubuntu για να δουλÎψει σωστά. Κατά τη μεταγλώττιση Ï€ÏÎπει να υπάÏχει το συγκεκÏιμÎνο locale.
Â
Οπότε κατÎβασα και το 1.8 από το git για να συγκÏίνουμε όμοια
Ï€Ïάγματα και παίζει και εκεί χωÏίς να κάνω τη διόÏθωση!
ΣυγκεκÏιμÎνα τη μεταγλώττιση την κάνω ως εξής:
- Για το πηγαίο κώδικα από το ubuntu:
apt-get source banshee
cd banshee-1.8.0
./configure --disable-ipod #πετάει
σφάλματα με το ipod
make
- Για το πηγαίο κώδικα από το git:
cd banshee
git checkout origin/stable-1.8
./autogen.sh --disable-ipod
./configure --disable-ipod
make -i #βάζω -i για να αγνοεί κάτι
σφάλματα του mono που δεν καταλαβαίνω :P
και Ï„ÏÎχω όπως είπα παÏαπάνω το
bin/Banshee.exe
ΔÏο ίδιες εκδόσεις λοιπόν (1.8) η μία από το git.gnome και η άλλη
από το ubuntu συμπεÏιφÎÏονται διαφοÏετικά.
Πως συνεχίζουμε;
Αν κατάλαβα καλά, όταν ÎµÏƒÏ Î¼ÎµÏ„Î±Î³Î»Ï‰Ï„Ï„Î¯Î¶ÎµÎ¹Ï‚ το translators.xml είναι μια χαÏά. Το πακÎτο που μεταγλωττίστηκε από το Debian/Ubuntu Îχει το Ï€Ïόβλημα. Οπότε το πιο πιθανό είναι ο build server να μην Îχει το locale 'en_US.UTF-8'.
Σίμος
υ.γ.
Με 'git blame build/Makefile.am' μποÏείς να δεις πότε μπήκε η διόÏθωση με το locale.
ΣυγκεκÏιμÎνα,
7d736c2a (Iain Lane     2009-10-10 21:39:48 +0100 22)         $(MCS) -out:$@ $< && LC_ALL=en_US.UTF-8 $(MONO) $@ $(top_builddir)/po
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]