Codex

Για την εγκατάσταση και χρήση του PmWiki στα Ελληνικά, συστήνεται η χρήση της κωδικοποίησης UTF-8 (Unicode). Αυτό επιτρέπει την ταυτόχρονη απεικόνιση Ελληνικών και πολυγλωσσικών κειμένων αλλά και την υπέρβαση γνωστών προβλημάτων των άλλων κωδικοποιήσεων (iso-8859-7 και cp1253).

Προβλήματα στη χρήση των Ελληνικών

Δυστυχώς η PHP, ακόμα και στις νεώτερες εκδόσεις της, δεν προσφέρει την καλύτερη δυνατή υποστήριξη Unicode, με αποτέλεσμα να παρουσιάζονται κάποια μικρά προβλήματα στη λειτουργία του PmWiki. Οι έμπειροι σε web applications χρήστες, θα γνωρίζουν και από άλλες εφαρμογές αυτά τα προβλήματα καθώς και τις πιθανές λύσεις που κατά καιρούς έχουν βρεθεί.

Το PmWiki λειτουργεί σχεδόν άψογα, ακόμα και με τις πρόσφατες εκδόσεις της PHP (5.x και 6.x) αλλά και τις κοινές και εξαιρετικά σταθερές 4.x.x (> 4.3.0). To σημαντικότερο πρόβλημα που αντιμετώπισα στα Ελληνικά, είναι η αδυναμία case-insensitive αναζήτησης. Για παράδειγμα, ενώ η αναζήτηση στα Αγγλικά δεν ξεχωρίζει τις λέξεις "Case" και "case", στα Ελληνικά οι λέξεις "Πρόταση" και "πρόταση" λαμβάνονται ως διαφορετικές. Σαν αποτέλεσμα, αν σε κάποια σελίδα υπάρχει κάποια Ελληνική λέξη γραμμένη με πεζά και την αναζητήσουμε στα κεφαλαία, αυτή δεν θα βρεθεί καθόλου.

Η λύση είναι η προσθήκης μίας κλήσης της συνάρτησης mb_strtolower της PHP στο αρχείο pagelist.php του PmWiki, πριν την αναζήτηση στο pageindex. Δυστυχώς όμως ο προγραμματιστής του PmWiki, θέλει να αποφύγει την χρήση συναρτήσεων multibyte για το λόγο του ότι αυτές δεν είναι διαθέσιμες σε όλες τις εγκαταστάσεις PHP. Μια δεύτερη λύση που όπως ο ίδιος ο Patrick μου είπε ότι σκέφτεται, είναι η χρήση μιάς νέας βοηθητικής συνάρτησης που θα κάνει αντίστοιχη δουλειά με την mb_strtolower. Δυστυχώς όμως δεν είναι ακόμη διαθέσιμη. Μπορείτε να δείτε την σχετική καταχώρηση στα PITS?.

Ένα ακόμα σχετικό πρόβλημα με τα Ελληνικά, αν και όχι ιδιαίτερα εμφανές, είναι η κωδικοποίηση του αρχείου pageindex όπου αποθηκεύονται όλες οι μοναδικές λέξεις των σελίδων και χρησιμοποιείται για γρήγορη αναζήτηση. Στην πραγματικότητα, το PmWiki αναζητά τα κριτήρια σε αυτό και μόνο το αρχείο και όχι σε όλες τις διαθέσιμες σελίδες, κερδίζοντας έτσι σε χρόνο και resources. Η κωδικοποίηση αυτού του αρχείου, είναι η στάνταρ Western (iso-8859-1) ενώ για καλύτερη συνεργασία με πολυγλωσσικά websites θα έπρεπε να ακολουθεί την κωδικοποίησή τους, δηλαδή στην περίπτωση των Ελληνικών UTF-8.

Τα παραπάνω προβλήματα, δεν εμποδίζουν παρά ελάχιστα την χρήση του PmWiki στα Ελληνικά. Αντίθετα μάλιστα, το PmWiki είναι ένα από τα καλύτερα wiki scripts, όσον αφορά την συνεργασία με τα Ελληνικά, έχοντας πολύ λιγότερα προβλήματα απ' ότι άλλα γνωστά scripts.


Παρατηρήσεις και σχόλια

Αν έχετε οποιαδήποτε απορία ή παρατήρηση σχετικά με την συνεργασία PmWiki - Ελληνικών, μπορείτε να προσθέσετε κάποιο σχόλιο αμέσως παρακάτω...



___ Πρόβλημα με το αρχείο PmWikiEl.XLPage

Στο συγκεκριμένο αρχείο
(/main/wikilib.d/PmWikiEl.XLPage),
ο στίχος...
charset=UTF-8

δημιουργεί πρόβλημα στην εμφάνιση των μηνυμάτων στα Ελληνικά.

Παλιότερα ήταν...
charset=iso_κάτι

Σε κάποια, από τα άλλα .XLPage αρχεία, άλλων γλωσσών,
ή είναι charset=iso_κάτι
ή δεν υπάρχει καθόλου.
Γι αυτό και προτείνω να αφαιρεθεί από ο αρχείο.
nikos?