Ελληνικά στο FreeBSD

Εικόνα: nikos
Submitted by nikos on Δευ, 02/04/2007 - 18:11

Ελληνικά στο FreeBSD

Νικόλαος Κόκκαλης

Πνευματικά Δικαιώματα © 2006, 2007 Νικόλαος Κόκκαλης

Αυτό το κείμενο δίνει οδηγίες για τις ρυθμίσεις που χρειάζονται, ώστε
να μπορούμε να διαβάσουμε και να γράψουμε Ελληνικά στο FreeBSD, τόσο
σε κατάσταση κονσόλας όσο και χρησιμοποιώντας το γραφικό περιβάλλον
X.ORG.
_________________________________________________________________
_________________________________________________________________

Εισαγωγή

Η ρύθμιση της υποστήριξης του FreeBSD για την Ελληνική γλώσσα είναι
αρκετά εύκολη, σε κάθε επίπεδο. Με σχετικά λίγες ρυθμίσεις, μπορεί να
γράψει και να διαβάσει κανείς σωστά Ελληνικά με την επίσημη
κωδικοποίηση ISO/IEC8859-7 , τόσο σε κατάσταση κονσόλας όσο και μέσα
από το γραφικό περιβάλλον X.ORG. Αν και οι ρυθμίσεις που αφορούν
αποκλειστικά στο FreeBSD είναι αυτές της κονσόλας, εδώ θα αναφερθούν
και αυτές που αφορούν και τα X.ORG αλλά και τις επιμέρους εφαρμογές.

Αφού διαβάσετε αυτό το άρθρο θα ξέρετε:

* Που θα βρείτε Ελληνικές γραμματοσειρές, τόσο για την κονσόλα του
όσο και για X.ORG.
* Πώς να ορίσετε μια αντιστοιχία πληκτρολογίου ("keymap") σε
κατάσταση κονσόλας, η οποία να επιτρέπει την εισαγωγή Ελληνικού
κειμένου, με την κωδικοποίηση ISO/IEC8859-7.
* Πώς να ορίσετε ότι η προκαθορισμένη γραμματοσειρά σε κατάσταση
κονσόλας θα είναι κάποια που έχει Ελληνικούς χαρακτήρες.
* Πώς να ορίσετε μια αντιστοιχία πληκτρολογίου ("keymap") σε
κατάσταση γραφικών, η οποία να επιτρέπει την εισαγωγή Ελληνικού
κειμένου, με την κωδικοποίηση ISO/IEC8859-7.
* Πώς να στήσετε γραμματοσειρές για το γραφικό περιβάλλον του , οι
οποίες θα έχουν υποστήριξη τόσο για UTF-8 όσο και για
ISO/IEC8859-7 Ελληνικά.
_________________________________________________________________

Ρυθμίσεις για Ελληνικά στην κονσόλα του

Στην κονσόλα οι ρυθμίσεις αφορούν δύο στάδια. Το πρώτο στάδιο γίνεται
κατά τον ίδιο τρόπο πάντα, ενώ το δεύτερο διαφοροποιείται ανάλογα με
το κέλυφος ("shell").

* Ρυθμίσεις για την προκαθορισμένη γραμματοσειρά της κονσόλας και
μια αντιστοιχία πληκτρολογίου με υποστήριξη για Ελληνικά.
* Ρυθμίσεις έτσι ώστε το περιβάλλον του κελύφους να υποστηρίζει την
Ελληνική γλώσσα.
_________________________________________________________________

Ελληνική γραμματοσειρά για την κονσόλα

Αρχικά χρειαζόμαστε μια ελληνική γραμματοσειρά, η οποία να έχει
Ελληνικούς χαρακτήρες στις σωστές θέσεις για την κωδικοποίηση
ISO/IEC8859-7. Μια τέτοια γραμματοσειρά είναι αυτή που δημιούργησε ο
Γιωργος Κεραμιδας. Αυτή μπορούμε να την κατεβάσουμε και να στήσουμε
στο σύστημα μας, στον κατάλογο /usr/share/syscons/fonts, τρέχοντας τις
παρακάτω εντολές ως root:
cd /usr/share/syscons/fonts
fetch 'http://people.freebsd.org/~keramida/files/grfixed-8x16.fnt'
_________________________________________________________________

Ελληνική αντιστοιχία πληκτρολογίου για την κονσόλα

Το επόμενο αρχείο που θα χρειαστούμε είναι μια αντιστοιχία
πληκτρολογίου ("keymap"), η οποία να μας δίνει τη δυνατότητα να
γράψουμε Ελληνικό κείμενο στην κονσόλα. Μια τέτοια αντιστοιχία έχει
γράψει πάλι ο Γιωργος Κεραμιδας, και μπορούμε να την τοποθετήσουμε στη
σωστή θέση με τις εντολές:
cd /usr/share/syscons/keymaps
fetch 'http://people.freebsd.org/~keramida/files/keramida.el-iso.kbd'
_________________________________________________________________

Ενεργοποίηση της Ελληνικής υποστήριξης στην κονσόλα

Για να ορίσουμε ως προκαθορισμένη γραμματοσειρά και αντιστοιχία
πληκτρολογίου αυτές που κατεβάσαμε, αρκεί να βάλουμε στο αρχείο
/etc/rc.conf τις παρακάτω ρυθμίσεις:
font8x16="grfixed8x16"
keymap="keramida.el-iso"

Με αυτές τις ρυθμίσεις, το σύστημά μας θα χρησιμοποιεί τα αρχεία που
μόλις κατεβάσαμε από την επόμενη φορά που θα ξεκινήσει. Στο δε
χρειάζεται όμως να κάνουμε επανεκκίνηση για μια τέτοια μικρή αλλαγή.
Μπορούμε απλά να τρέξουμε ως χρήστης root τις εντολές:
vidcontrol -f 8x16 grfixed-8x16 /dev/ttyv0
kbdcontrol -l keramida.el-iso /dev/ttyv0

Αυτές οι εντολές θα φορτώσουν εκείνη τη στιγμή τη νέα γραμματοσειρά
κονσόλας, και τη νέα αντιστοιχία πληκτρολογίου.
_________________________________________________________________

Ρυθμίσεις για το κέλυφος χρήστη

Με τις ρυθμίσεις που έχουμε κάνει ως τώρα δεν έχει ενεργοποιηθεί
πλήρως η Ελληνική υποστήριξη. Στο κάθε πρόγραμμα, ακόμα και το κέλυφος
χρήστη που χρησιμοποιούμε, εξαρτάται από τις τρέχουσες ρυθμίσεις
"locale", για να ξέρει σε τι γλώσσα δουλεύουμε.

Οι προκαθορισμένες ρυθμίσεις locale υποστηρίζουν μόνο την εισαγωγή και
ανάγνωση κειμένου σε Αγγλικά, οπότε πρέπει να αλλάζουμε τις ρυθμίσεις
αυτές για να μπορεί το κέλυφος μας να δουλέψει σωστά με την Ελληνική
γλώσσα.
_________________________________________________________________

Ρυθμίσεις για το κέλυφος

Αν το κέλυφος που χρησιμοποιούμε είναι το sh, πρέπει να βάλουμε στο
αρχείο .profile στον κατάλογο του χρήστη μας τις ρυθμίσεις:
export LANG="C"
export LC_CTYPE="el_GR.ISO8859-7"
export LC_COLLATE="el_GR.ISO8859-7"
unset LC_ALL LC_MESSAGES LC_MONETARY LC_NUMERIC LC_TIME
_________________________________________________________________

Ρυθμίσεις για το κέλυφος

Αν το κέλυφος που χρησιμοποιούμε είναι το csh, πρέπει να βάλουμε στο
αρχείο .cshrc στον κατάλογο του χρήστη μας τις ρυθμίσεις:
setenv LANG "C"
setenv LC_CTYPE "el_GR.ISO8859-7"
setenv LC_COLLATE "el_GR.ISO8859-7"
unsetenv LC_ALL LC_MESSAGES LC_MONETARY LC_NUMERIC LC_TIME
_________________________________________________________________

Ρυθμίσεις για το κέλυφος bash

Αν το κέλυφος που χρησιμοποιούμε είναι το bash, πρέπει να βάλουμε στο
αρχείο .bashrc στον κατάλογο του χρήστη μας τις ρυθμίσεις:
export LANG="C"
export LC_CTYPE="el_GR.ISO8859-7"
export LC_COLLATE="el_GR.ISO8859-7"
unset LC_ALL LC_MESSAGES LC_MONETARY LC_NUMERIC LC_TIME

Επίσης, ειδικά για το bash, πρέπει να βάλουμε και τις εξής ρυθμίσεις
στο αρχείο .inputrc στον αρχικό μας κατάλογο:
set convert-meta Off
set input-meta On
set output-meta On
_________________________________________________________________

Ρυθμίσεις για Ελληνικά στο γραφικό περιβάλλον

Τα πιο συνηθισμένα γραφικό περιβάλλον εργασίας σε βασίζονται στην
πλατφόρμα X.ORG. Οι ρυθμίσεις για υποστήριξη Ελληνικών σε είναι
εντελώς ίδιες με αυτές που χρησιμοποιεί το περιβάλλον και σε άλλα UNIX
συστήματα (π.χ. σε GNU/Linux).

Αρχικά, πρέπει να ρυθμίσετε το περιβάλλον έτσι ώστε να ξεκινά σωστά
ακόμη και χωρίς Ελληνικά, αν χρειαστεί. Για πληροφορίες σχετικά με τις
πρώτες αυτές ρυθμίσεις, δείτε το αντίστοιχο κεφάλαιο στο Εγχειρίδιο
του FreeBSD.

Αφού καταφέρετε να ρυθμίσετε τα πάντα για να ξεκινά το γραφικό
περιβάλλον , πρέπει να τοποθετήσετε τις παρακάτω γραμμές στο αρχείο
/etc/x11/xorg.conf:
Section "InputDevice"
Identifier "Keyboard1"
Driver "kbd"
Option "XkbRules" "xorg"
Option "XkbModel" "pc105"
Option "XkbLayout" "us,el"
Option "XkbOptions" "grp:alt_shift_toggle"
EndSection

Αν στο αρχείο /etc/x11/xorg.conf υπάρχει ήδη ένα τέτοιο τμήμα,
μπορείτε να τροποποιήσετε το υπάρχον τμήμα. Χρησιμοποιήστε τον
χαρακτήρα "#" για να σχολιάσετε όποιες γραμμές δε θέλετε να κρατήσετε
από το αρχικό τμήμα "InputDevice".

Σημείωση

Γενικά, υπάρχουν τουλάχιστον δύο διαφορετικά "InputDevice" τμήματα σε
ένα συνηθισμένο αρχείο /etc/x11/xorg.conf. Προσοχή να κάνετε όποιες
τροποποιήσεις έχετε κατά νου στο τμήμα το οποίο αναφέρει το
πληκτρολόγιο (αυτό σημαίνει το "Identifier "Keyboard1"" παραπάνω.

Έπειτα αν χρησιμοποιούμε το παραμετροποιούμε το ~/.xinitrc για το
locale environment. Ανεξάρτητα από αυτό για να έχουμε font για
ελληνικά στο προσθέτουμε στο /usr/X11R6/lib/X11/fonts/misc/fonts.alias
τα παρακάτω:
fixedgr -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-7

Και στο ~/.xinitrc:
export LC_CTYPE="el_GR.ISO8859-7"
export LC_COLLATE="el_GR.ISO8859-7"
export LANGUAGE="el_GR"
export LANG="el_GR"
export LC_ALL="el_GR"

Για τις διάφορες εφαρμογές στα XWindows τοποθετούμε τις κατάλληλες
ρυθμίσεις στο ~/.Xdefaults . Πάντα αυτές που ακολουθόυν γιατί
λειτουργούν για όλες τις εφαρμογες.
*basicLocale: C
*timeFormat: C
*numeric: C
*displayLang: iso8859-7
*inputLang: iso8859-7

Και αυτές για το xterm:
XTerm*font: fixedgr
nxterm*font: fixedgr
XTerm*locale: true
_________________________________________________________________

Ρυθμίσεις για Ελληνικά σε διάφορες εφαρμογές.

Για να διαβάζουμε και να γράφουμε ελληνικά με τov emacs θα πρέπει να
προσθέσουμε στο ~/.emacs το παρακάτω κομμάτι:
(setq unibyte-display-via-language-environment t)
(set-language-environment "Greek")
(set-terminal-coding-system 'greek-iso-8bit)
(set-input-mode (car (current-input-mode))
(nth 1 (current-input-mode))
0)

Για να διαβάζουμε και να γράφουμε ελληνικά με τον mutt θα πρέπει να
προσθέσουμε στο ~/.muttrc το παρακάτω κομμάτι:
set charset="greek"
set send_charset="US-ASCII:ISO-8859-1:ISO-8859-7:UTF-8"
_________________________________________________________________

Επίλογος

Έτσι τώρα μπορούμε να διαβάσουμε ελληνικά και με Alt-Shift να γράψουμε
ελληνικά. Αυτό ήταν :-) .
_________________________________________________________________

Πηγές

* www.mathimatiko.net Οδηγίες για ελληνικά στο OpenBSD και στα
Xwindows.
* www.bsd.gr Οδηγίες για ελληνικά στο OpenBSD και στα Xwindows.
* www.google.com

Διάφορα man pages και ο Γιωργος Κεραμιδας τον οποίο και ευχαριστώ
θερμά για την βοήθεια που μου έδωσε.