Ελληνικά στο webglimpse/glimpse
Νίκος
Μαυρογιαννόπουλος
Απρίλιος 1999
Τα προγράμματα glimpse/webglimpse αποτελούν τον πυρήνα
μιας μηχανής αναζήτησης. Τo glimpseindex αναλαμβάνει το
ρόλο της ταξινόμησης και δημιουργίας των αρχείων δεικτών
(index files), ενώ το glimpse, την αναζήτηση σε αυτά. Το
webglimpse είναι μια σειρά από scripts σε perl με σκοπό την
εύκολη αναζήτηση από web. Η εγκατάσταση είναι σχετικά απλή
αν ακολουθηθούν οι οδηγίες που περιέχονται στα πακέτα
glimpse και webglimpse. (οι πιο πρόσφατες εκδόσεις
βρίσκονται στο http://glimpse.cs.arizona.edu
και http://glimpse.cs.arizona.edu/webglimpse
To Glimpse σχεδιάστηκε και υλοποιήθηκε από τους Udi
Manber, Sun Wu, και Burra Gopal στο πανεπιστήμιο της
Αριζόνα, τμήμα πληροφορικής. Δεν είναι ελεύθερο λογισμικό
αλλά η διανομή του για μη κερδοσκοπικούς σκοπούς
επιτρέπεται. Για περισσότερες πληροφορίες κοιτάξτε το
αρχείο COPYRIGHT μέσα στα tarball του glimpse.
Η υποστήριξη ελληνικών κατά την δημιουργία των αρχείων
δεικτών καθώς και κατά την αναζήτηση παρ' όλο που δεν
αναφέρεται πουθενά, υπάρχει. Για να την ενεργοποιήσουμε
πρέπει να αλλάξουμε στο Makefile κατά την μεταγλώττιση
του glimpse την μεταβλητή ISO_CHAR_SET από 0 σε 1.
Δηλαδή την σειρά:
ISO_CHAR_SET = 0
σε
ISO_CHAR_SET = 1
Η υποστήριξη αυτή βασίζεται στην δυνατότητα της libc να
διαχωρίζει τους χαρακτήρες σύμφωνα με την χώρα που έχει
δηλωθεί. Η δήλωση αυτή γίνεται μέσω της μεταβλητής
περιβάλλοντος LC_COLLATE (ή και LANG). Αρκεί λοιπόν πριν
τρέξουμε τα glimpseindex και glimpse να θέσουμε
LC_COLLATE=el (ή gr_GR για την libc5). Αν όλα πήγαν καλά
στο αρχείο .glimpse_index υπάρχουν και ελληνικοί
χαρακτήρες-λέξεις.
Το webglimpse χρειάζεται επίσης μερικές αλλαγές για να
μπορέσει να δεχτεί ελληνικούς χαρακτήρες χωρίς να τους
απορρίψει. Αρχικά αλλάζουμε το αρχείο webglimpse στον
cgi-bin κατάλογο.
Αναζητούμε την σειρά:
$ENV{'PATH'} = '/bin:/usr/bin';
και προσθέτουμε πριν από αυτήν:
$ENV{'LC_COLLATE'} = 'el';
Προσοχή όχι
{'LANG'}= 'el';
γιατί με αυτόν τον τρόπο αλλάζουνεκαι οι ημερομηνίες που χρησιμοποιεί το
webglimpse σε ελληνικά, με αποτέλεσμα να μην λειτουργεί καθόλου.
Τώρα στο ίδιο αρχείο αναζητούμε την σειρά:
&err_badquery if !$highlight;
και την αλλάζουμε σε:
#&err_badquery if !$highlight;
δηλαδή την βγάζουμε έξω τελείως, αφού αυτή δεν επιτρέπει
την εισαγωγή ελληνικών στα πεδία. Επειδή δεν ξέρω perl δεν
μπορώ να γνωρίζω τί ακριβώς έκανε αυτή η γραμμή. Αν κάποιος
γνωρίζει καλό θα ήταν να μας διαφωτίσει.
Έτσι από το επόμενο query το webglimpse θα αναγνωρίσει και
ελληνικούς χαρακτήρες χωρίς κανένα πρόβλημα!