iso date format

Thanos pampo at freemail.gr
Sun Oct 29 18:58:15 EET 2006


On 2006-10-27 20:03, a.fotopoulos at gmail.com wrote:

> *Νομίζω* ότι δεν μπορείς να κάνει compile μόνο το LC_TIME.Θα πρέπει να
> τσακώσεις όλο το αρχείο του locale που έχεις και να το κάνεις
> compile.Εγώκατάφερα να αλλάξω το LC_TIME βρίσκοντας το πηγαίο αρχείο
> του locale που έχω
> στο σύστημά μου στο /usr/share/i18n/locales/en_US, το αντέγραψα σε ένα temp
> κατάλογο με την ονομασία en_US.src, και του άλλαξα τα φώτα στο section
> LC_TIME (γιατί έχει διαφορετική σύνταξη *από ότι κατάλαβα* από σύστημα σε
> σύστημα).
> Κατόπιν το έκανα compile με την localedef -i en_US.src  output_directory
> όπου είχα πλέον το δικό LC_TIME binary αρχείο (καθώς και τα υπόλοιπα αρχεία
> σε binary format ) και μετά έθεσα LC_TIME=/output_directory/LC_TIME (το
> binary αρχείο της μεταγλώτισσης)με export.

Από το λίγο που το έψαξα και ακολουθώντας τις οδηγίες σου, στο 
/usr/share/i18n/locales (Ubuntu) υπάρχουν τα "locale definition files". 
Μέσα σ' αυτά περιέχονται οι ορισμοί για το πως αναπαριστά το κάθε locale 
στοιχεία όπως η ημέρα, η ώρα, ο μήνας, κτλ. Στον τομέα 'LC_TIME' 
υπάρχουν τα εξής:

- Appropriate date and time representation
- Appropriate date representation (%x)
- Appropriate time representation (%X)
- Strings for AM/PM
- Appropriate AM/PM time representation (%r)
- Appropriate date representation (date(1))   "%a %d %b %Y %r %Z"

Αυτά θεωρητικά τα τροποποιείς (θέλει λίγο κόπο όμως γιατί πρέπει να 
δώσεις τον αντίστοιχο χαρακτήρα σε UTF-8, π.χ. U0025 για το '%') όπως 
θέλεις με μετά με την localedef χρησιμοποιώντας το νέο locale definition 
file δημιουργείς τα LC_TIME, LC_ADDRESS, LC_NAME, κτλ. Από εκεί και πέρα 
αντιγράφεις το LC_TIME στο /usr/lib/locale/el_GR.utf8 (για το Ubuntu) 
και έχεις τον νέο τρόπο προβολής της ημερομηνίας ώρας.

Λέω "θεωρητικά" γιατί μετά το δικό μου πειραγμα και χρησιμοποιώντας την

localedef -i el_GR.custom output_dir

μου έβγαζε προειδοποιήσεις πως κάποιοι χαρακτήρες δεν μπορούν να είναι 
κενοί αλλά αναφερόταν σε τιμές που δεν τροποποίησα εγώ. Δοκίμασα

localedef -ci el_GR.custom output_dir (με την -c ή --force δημιουργεί τα 
αρχεία ακόμη και όταν παρουσιάζονται προειδοποιήσεις)

αλλά όταν αντικατέστησα το LC_TIME με το δικό μου, στην επενεκκίνηση το 
σύστημα ήταν στα αγγλικά :-( Κάπου εκεί τα παράτησα...

Τελικά... πιο εύκολος ο τρόπος με το env LC_TIME=locale στην εφαρμογή! ;-)




More information about the Migrate2linux mailing list