KDE 3.0
Vasilis Vasaitis
vvas at hal.csd.auth.gr
Fri Apr 5 20:44:29 EEST 2002
On Fri, Apr 05, 2002 at 04:48:08PM +0300, Dimitrios Kamenopoulos wrote:
> On Friday 05 April 2002 01:42, Vasilis Vasaitis wrote:
> > Τώρα που βγήκε το KDE 3.0, και μια που εγώ δεν είμαι και ιδιαίτερα
> > φανατικός του συγκεκριμένου περιβάλλοντος, μπορεί κάποιος να το βάλει και
> > να
> μας πει πώς τα πάει από υποστήριξη του i18n; (και αν θέλει και του
> > l10n, αλλά αυτό για εμένα είναι κάπως δευτερεύον). Συγκεκριμένα, θα ήθελα
> > πολύ να μάθω πώς συμπεριφέρεται με UTF-8 κείμενο, και πιθανώς με το να
> > τρέχει σε ένα εντελώς UTF-8 locale, όπως π.χ. το el_GR.UTF-8 που έχω στο
> > σύστημά μου αλλά δεν τολμάω να ενεργοποιήσω... ;-)
> Μια εντελως προχειρη αποτιμηση της καταστασης:
>
> 1) Τα μηνυματα των εφαρμογων φαινονται σωστα (αλλωστε ειναι UTF-8 εδω
> και δυο χρονια).
Α, ωραία. Βασικά μεταξύ άλλων είχα την απορία του τι γίνεται όταν μια
μετάφραση χρησιμοποιείται σε πολλαπλά locale. Γενικά, στο gettext ορίζεις
σύνολο χαρακτήρων και μετά αυτό αναλαμβάνει να το μεταφράσει;
Σίμο, στο GNOME η κατάσταση ποια είναι; Πάντως, απ' ότι βλέπω στο σύστημά
μου, τα περισσότερα *.mo αρχεία από διάφορα προγράμματα φαίνονται να είναι
σε ISO8859-7· παρόλ' αυτά, όταν ανοίγω ένα uxterm, τα πάντα φαίνονται
κανονικά, που σημαίνει ότι γίνεται μια μετατροπή κάπου.
> 2) Οι περισσοτερες εφαρμογες μπορουν να χρησιμοποιησουν utf-8 κειμενο (αν
> και οχι αυτοματα). Για παραδειγμα, ο editor Kate, εχει ενα combobox στους
> διαλογους Open/Save στο οποιο καθοριζεις την κωδικοποιηση του αρχειου.
> Αν δε εισαι σε utf-8 locale, η προεπιλεγμενη τιμη για το combo box ειναι
> utf-8. Το KOffice σωζει παντα το κειμενο σε utf-8 εσωτερικα. O Konqueror
> δειχνει utf-8 ιστοσελιδες. Το KMail μπορει (εφ' οσον του το πεις) να
> χρησιμοποιησει utf-8.
Χμ, είπες όχι αυτόματα; Δηλαδή αν γυρίσεις το locale σε UTF-8 δεν το
δέχονται εξ ορισμού; Βασικά, σε ένα παραπλήσιο θέμα, αυτή τη στιγμή η
κατάσταση με την επιλογή του locale από το KDE ποια είναι; Το παίρνει από
τις μεταβλητές περιβάλλοντος; Το ορίζει στα αρχεία ρυθμίσεών του;
> Σε γενικες γραμμες λοιπον, το KDE υποστηριζει utf-8 εξισου καλα με ολα τα
> αλλα encodings. Δυστυχως δε μπορω να πω το ιδιο για το υπολοιπο συστημα:
>
> 1) Το xkb (χωρις βεβαια τα layouts που ειχες στειλει στη λιστα προσφατα)
> γρ??αφει κ??απως ??ετσι (εξ ου και η ελλειψη τονων σε αυτο το μηνυμα).
Οι ακολουθίες compose, δηλαδή τι γίνεται όταν π.χ. πατήσεις ένα νεκρό
πλήκτρο και μετά ένα άλλο, εξαρτώνται από το locale, καθώς ορίζουν απευθείας
τα παραγόμενα byte, και επομένως έχει σημασία το σύνολο χαρακτήρων που
δέχεται η εφαρμογή. Βασικά, αν ο X client τρέχει κάτω από το
el_GR.ISO8859-7, η Xlib πάει και χρησιμοποιεί το iso8859-7/Compose μέσα στο
/usr/lib/X11/locale/, και αντίστοιχοι είναι οι χαρακτήρες που παράγονται.
Αντίθετα, στο el_GR.UTF-8, αν έχεις από XFree86 4.1.0 και πάνω, ανοίγει το
en_US.UTF-8/Compose (που κάνει δουλειά και για μας), ή αν έχεις βάλει τα
δικά μου αρχεία, χρησιμοποιεί το el_GR.UTF-8/Compose, που είναι ακόμα
καλύτερο, με πολυτονικά κτλ.
Δηλαδή δύο είναι τα σημαντικά ζητήματα: να έχουν όλοι ολοκληρωμένα αρχεία
για XKB/Compose, που πιστεύω από τα XFree86 4.3.0, αν βάλουν τα patches που
έχω στείλει, να είμαστε εντάξει, και να ρυθμίζουν σωστά το locale, που απ'
ότι φάνηκε και από το άλλο μήνυμα που ήρθε σήμερα στη λίστα, έχουμε πολύ
δρόμο ακόμα. :-/
> 2) Το filesystem τα παιζει τελειως, αφου προσπαθει να ερμηνευσει ελληνικα
> ονοματα σαν utf-8, με αποτελεσμα πολλα πολλα τετραγωνακια. Αυτο μου φαινεται
> αρκετα περιεργο, γιατι δηλαδη να προσπαθει να ερμηνευσει ως utf-8 ονοματα απο
> ενα συστημα αρχειων οπως το /windows/c που του το εχω δηλωσει ρητα οτι ειναι
> iso-7;
Στα POSIXοειδή συστήματα έχουμε το καλό (καλό είναι, πίστεψέ με), ότι δεν
γίνεται απολύτως καμία παραδοχή για την κωδικοποίηση των ονομάτων των
αρχείων, και επομένως καμία προσπάθεια μετατροπής. Αυτό σημαίναι ότι μπορείς
να έχεις τα αρχεία σου ονομασμένα σε όποιο σύνολο χαρακτήρων σου αρέσει, και
όλα να δουλεύουν μέλι-γάλα. Επίσης όμως σημαίνει ότι αν αποφασίσεις να
αλλάξεις το περιβάλλον σου (στη συγκεκριμένη περίπτωση, από ISO8859-7 σε
UTF-8), θα πρέπει επίσης να πετάξεις μια μαζική μετατροπή σε όλα τα ονόματα
αρχείων, και κατά βάση και σε όλα τα αρχεία που περιέχουν μέσα ελληνικό
κείμενο. Δηλαδή χρειάζεται μια και καλή, να κάνεις μια *ολική μετάβαση*, και
μετά να μην ασχοληθείς άλλο.
Όσο για το vfat σύστημα αρχείων που αναφέρεις, αυτό ορίζει ρητά ότι τα
ονόματα των αρχείων πρέπει να είναι αποθηκευμένα σε UCS-2/UTF-16, οπότε ο
πυρήνας πρέπει να ξέρει από/σε τι να τα μετατρέπει όταν τα παρουσιάζει στις
εφαρμογές. Κατά τ' άλλα, αυτή η πληροφορία δεν χρησιμοποιείται από τα
προγράμματα. Σε ένα UTF-8 περιβάλλον, θα ήθελες να χρησιμοποιήσεις αντί για
την επιλογή iocharset=iso8859-7 την επιλογή utf8.
> Αυτα τα ...ας τα πω μικροπροβληματακια περνανε φυσικα και στο KDE, οποτε
> τι -οου -εν -πι -οου -γιου - ελ -οου, που θα' λεγε κι ο Ρακιτζης.
>
> Συνοψιζοντας, νομιζω οτι καλα κανεις και δεν ενεργοποιεις το utf-8 locale στο
> συστημα σου. Ακομα και αν εφαρμογες τελευταιας γενιας (Java, KDE, Gnome) δεν
> εχουν προβληματα, το υπολοιπο συστημα ειναι υπερβολικα ανωριμο για τετοια
> κολπα.
Μπά, όπως βλέπεις παραπάνω το σύστημα είναι γενικά εντάξει, τουλάχιστον
στα ζητήματα που εσύ αναφέρεις. Ο κύριος λόγος που εγώ ακόμα το αποφεύγω
είναι η περιορισμένη υποστήριξή του στο τερματικό (ncurses, slang), αλλά και
επειδή ο Emacs, καθότι είχε λύσει με άλλο τρόπο το πρόβλημα του i18n εδώ και
πολλά χρόνια (λέγε με Mule), δεν έχει ακόμα υποστήριξη για UTF-8 και δεν θα
την έχει μέχρι την έκδοση 22. Αλλά για κάποιον που χρησιμοποιεί μόνο KDE ή
μόνο GNOME, και ίσως το τερματικό για απλά προγράμματα, που δεν προσπαθούν
να γράψουν σε όλη την οθόνη, η εποχή της ανώδυνης μετάβασης δεν είναι πολύ
μακριά.
--
Vasilis Vasaitis
vvas at hal.csd.auth.gr
"Don't do drugs. Santa Claus is watching."
-- winamp.com
More information about the I18ngr
mailing list