magaz/content/articles/08/07_GreekTeXFAQ.md

299 γραμμές
19 KiB
Markdown

2022-03-23 20:14:33 +02:00
+++
title = 'Εγκατάσταση της Ελληνικής Επιλογής του Babel για LaTeX'
date = '1998-10-01T00:00:00Z'
description = ''
author = '`Προκόπης Προκοπίδης` `Απόστολος Συρόπουλος`'
issue = ['Magaz 08']
issue_weight = 7
+++
----------------------------------------------------------------------------------------------------------------------------------------------------------------
*Αυτό το κείμενο περιγράφει τη διαδικασία εγκατάστασης της Ελληνικής επιλογής του babel, ενός πακέτου για την επεξεργασία πολυγλωσσικών κειμένων με το LaTeX.*
----------------------------------------------------------------------------------------------------------------------------------------------------------------
**1. Απαραίτητα Αρχεία**
------------------------------------------------------
**2. Το Βασικό Μέρος του babel.**
---------------------------------------------------------------
**3. Bιβλιογραφικό Στυλ, Ελληνικόs Συλλαβισμόs, και grtools**
-------------------------------------------------------------------------------------------
**4. Γραμματοσειρές**
---------------------------------------------------
**5. Τελικές Ρυθμίσεις**
------------------------------------------------------
**6. Editors για το LaTeX και η Χρήση των Ελληνικών**
-----------------------------------------------------------------------------------
- [6.1 Emacs](#ss6.1)
- [6.2 LyX](#ss6.2)
**7. Ευχαριστίες**
------------------------------------------------
### [1. Απαραίτητα Αρχεία]{#s1}
Υποθέτουμε ότι μπορείτε να γράφετε Ελληνικά στο σύστημα σας. Επίσης ότι έχετε μια σωστά εγκατεστημένη έκδοση του LaTeX, μπορείτε να παράγετε π.χ. Αγγλικά
κείμενα χρησιμοποιώντας το και να τα δείτε με το Xdvi ή το ghostview. Αν κάτι από τα παραπάνω δεν ισχύει, πριν να συνεχίσετε, μπορείτε να διαβάστε τα εξής:
> `ftp://www.linux.gr/pub/linux/HOWTO/Hellenic-HOWTO.html http://linux.forthnet.gr/LDP/HOWTO/TeTeX-HOWTO.html`
Υποθέτουμε τέλος ότι θα έχετε την κοινή λογική να πάρετε αντίγραφα των αρχείων που θα μετατρέψετε κατά τη διαδικασία της εγκατάστασης.
Το (La)TeX του παραδείγματός μας στήθηκε σε ένα PC από το Red Hat 5.1 κατά την εγκατάσταση όλου του Linux. Σε περίπτωση που η διάρθρωση του TeX καταλόγου είναι
διαφορετική στο σύστημά σας, μπορείτε να βρείτε τα αρχεία που περιγράφονται παρακάτω χρησιμοποιώντας τις εντολές `locate` και `find`. Ως παράδειγμα, μπορούμε να
δούμε πού τοποθετούν τις γραμματοσειρές οι διάφορες εκδόσεις του teTeX, της διανομής δηλαδή που περιέχει τα TeX, LaTeX, BibTeX, makeindex, κ.λ.π.
> `RedHat-5.1: tetex-0.4pl8-11 /usr/lib/texmf/texmf/fonts/`
> `RedHat Rawhide 1.0: tetex-0.9-2 /usr/share/texmf/fonts/`
> `Open Linux: tetex-0.4pl7-2 /usr/TeX/texmf/fonts/`
> `SuSe: tetex-0.4pl8-29 /usr/lib/teTeX/texmf/fonts/`
Γίνετε λοιπόν root στο σύστημα σας και κατεβάστε το αρχείο
> `ftp://obelix.ee.duth.gr/pub/TeX/TeXgreek.tar.gz`
Ένα καλό σημείο να το τοποθετήσετε στο δίσκο σας είναι τo `/usr/local/src`. Όταν το αποσυμπιέσετε με την παρακάτω εντολή
> gunzip xvfz TeXgreek.tar.gz
θα δημιουργηθεί ένας κατάλογος `Texgreek` με την εξής δομή:
> Texgreek---
> | -- BibTeX
> | -- babel
> | -- doc
> | -- grtools
> | -- hyphenation
> | -- iso8858-7
> | -- misc
> | -- mf
> | -- tfm
Προαιρετικά μπορείτε να κατεβάσετε το `greek-mode.el` (από το `http://www.ics.forth.gr/~sarantos/`), δηλαδή την Ελληνική επιλογή για τον Emacs που έγραψε ο
Σαράντος Καπιδάκης.
Προαιρετικά επίσης μπορείτε να στήσετε το LyX, που θα το κατεβάσετε σε tar.gz μορφή από το `http://www.lehigh.edu/~dlj0/LyriX.html` ή σε RPM από το
` http://rufus.w3.org/linux/RPM/contrib/hurricane/i386/lyx-0.12.0-3.i386.html`
Λεπτομέρειες γι\' αυτά τα δύο προγράμματα στο τέλος του άρθρου.
### [2. Το Βασικό Μέρος του babel.]{#s2}
Όντας στον κατάλογο `Texgreek` πηγαίνετε πρώτα στον υποκατάλογο `babel` για να εγκαταστήσετε το βασικό πακέτο.
> cd ../babel/
> cp lg*.fd /usr/lib/texmf/texmf/tex/generic/babel/
ή εναλλακτικά
> cp lg*.fd /usr/lib/texmf/texmf/tex/latex/fd
Ακολουθεί η εγκατάσταση του `iso8858-7.def` ώστε να μη χρειάζεται να γράφουμε σε greeklish και το TeX να καταλαβαίνει τα Ελληνικά μας κείμενα.
> cd ../iso8858-7/
> cp iso-8859-7.def /usr/lib/texmf/texmf/tex/latex/base
Πλέον, μπορούμε να γράφουμε Ελληνικό LaTeX σε οποιονδήποτε editor, με την προϋπόθεση να υπάρχουν πριν από το κείμενο μας, δηλαδή πριν από την εντολή
`\begin{document}`, οι παρακάτω γραμμές
> \usepackage[greek]{babel}
> \usepackage[iso-8859-7]{inputenc}
Αν δεν χρησιμοποιηθεί αυτό το αρχείο, θα πρέπει να πληκτρολογούμε το κείμενο μας κάπως έτσι \...
> mia dokimastikh grammh
\... πράγμα που κανείς μάλλον δε θέλει. Το αποτέλεσμα πάντως θα είναι το ίδιο και στις δύο περιπτώσεις. Θυμίζουμε ότι για να έχετε Ελληνικό και ξένο κείμενο στο
ίδιο αρχείο, θα πρέπει να ακολουθήσετε τις οδηγίες στο `http://www.linux.gr/magaz/04/05_babel-3.html` ή στα αρχεία του υποκαταλόγου `doc` του `Texgreek`.
### [3. Bιβλιογραφικό Στυλ, Ελληνικόs Συλλαβισμόs, και grtools]{#s3}
Πηγαίνετε πρώτα στον κατάλογο `bibtex` για να εγκαταστήσετε το Ελληνικό βιβλιογραφικό στυλ.
> cd ../bibtex
> cp hellas.bst /usr/lib/texmf/texmf/bibtex/bst/base/
Παρεμπιπτόντως, ένα εύχρηστο πρόγραμμα για τη δημιουργία και τη διαχείριση της βιβλιογραφίας σας μέσα στα X είναι το bibview. Δουλεύει μια χαρά και με τα
Ελληνικά. Μπορείτε να το κατεβάσετε σε RPM από το ` http://rufus.w3.org/linux/RPM/dld/5.4/i386/RPMS/i386/bibview-2.2-1.i386.html` ή
σε tar.gz από το <http://ctan.tug.org/cgi-bin/ctan-web-ftp?biblio/bibtex/utils/bibview-2.0/bibview-2.2.tar.gz>.
Ακολουθεί το αρχείο για τον Ελληνικό συλλαβισμό.
> cd ../hyphenation/
> cp grhyph.tex /usr/lib/texmf/texmf/tex/generic/hyphen/
Εντοπίστε το αρχείο `hyphen.tex` στο σύστημα σας. Μπορείτε να χρησιμοποιήσετε την εντολή
> locate hyphen.tex
Χρησιμοποιήστε την εντολή `more` για να δείτε τι περιέχει.
> more /usr/lib/texmf/texmf/tex/generic/config/hyphen.tex
Αν η απάντηση που πήρατε είναι
> \input hyphen.cfg
το αρχείο είναι εντάξει. Αν δεν υπάρχει αυτή η γραμμή, προσθέστε την με έναν editor. Εναλλακτικά, αλλάξτε το όνομα του σε `UShyphen.tex` και δημιουργήστε ένα
αρχείο με το ίδιο όνομα, που θα περιέχει την παραπάνω γραμμή.
Το `/usr/lib/texmf/texmf/tex/generic/config/language.dat` είναι άλλο ένα αρχείο που πρέπει να \"πειράξουμε\". Ανοίξτε το σε έναν editor και προσθέστε τη γραμμή
> greek grhyph.tex
ώστε το αρχείο σας να μοιάζει κάπως έτσι:
> % File : language.dat
> % Purpose : specify which hypenation patterns to load
> % while running iniTeX
>
> % The hyphenation pattern files are in the dirctory:
> % texmf/tex/generic/hyphen
>
>
> % The US-english patterns should be loaded *always* and as *first* ones.
> american ushyph1.tex
> =USenglish
>
> % UK english, THREE LINES!
> %british ukhyph.tex
> %=UKenglish
> =english
>
> %catalan cahyph.tex
> %croatian hrhyph.tex
> %czech czhyph2e.tex
> %danish dkhyphen.tex
> %dutch nehyph1.tex
> %dutch nehyph2.tex
> %dutch nehyph3.tex
> %finnish fihyph.tex
> %french frhyph.tex frhyphex.tex
> %german ghyph31.tex
> greek grhyph.tex
> %italian ithyph.tex
> %norsk nohyph.tex
> %polish plhyph.tex
> %portuges pthyph.tex
> %romanian rohyphen.tex
> %slovene sihyph22.tex
> %spanish sphyph.tex
> %swedish sehyph.tex
\"Τα πακέτα της σειράς εργαλείων grtools προσφέρουν επιπλέον λειτουργικότητα στην ελληνική επιλογή\" σύμφωνα με το
`http://www.linux.gr/magaz/04/05_babel-4.html` όπου και θα βρείτε περισσότερες πληροφορίες για τη χρήση τους. Για να τα εγκαταστήσετε,
> cd ../grtools
> tex grtools.ins
> mkdir /usr/lib/texmf/texmf/tex/latex/grtools
> cp *.sty /usr/lib/texmf/texmf/tex/latex/grtools
Επίσης, ο [Απόστολος Συρόπουλος](mailto:apostolo@obelix.ee.duth.gr) προετοιμάζει ένα πρόγραμμα, το οποίο, σε συνεργασία με το makeindex, θα δημιουργεί Ελληνικό
ευρετήριο.
### [4. Γραμματοσειρές]{#s4}
Οι γραμματοσειρές αρκεί να μπούνε κάπου που το TeΧ ψάχνει για τέτοιου είδους αρχεία. Στο παράδειγμα που ακολουθεί, δημιουργείται ένας κατάλογος `cbgreek` για
τις γραμματοσειρές που έρχονται με το πακέτο.
> cd ../mf
> mkdir /usr/lib/texmf/texmf/fonts/source/public/cbgreek
> cp *.mf /usr/lib/texmf/texmf/fonts/source/public/cbgreek
Αντίστοιχα για τα \*.tfm αρχεία που περιγράφουν τις διαστάσεις των χαρακτήρων της κάθε γραμματοσειράς.
> cd ../tfm
> mkdir /usr/lib/texmf/texmf/fonts/tfm/public/cbgreek
> cp *.tfm /usr/lib/texmf/texmf/fonts/tfm/public/cbgreek
Τέλος θα πρέπει να προσθέσετε με έναν editor τις γραμμές από το αρχείο `special.map` που βρίσκεται στον κατάλογο `misc`, στο αρχείο
`/usr/lib/texmf/texmf/fontname/special.map`. Το αρχείο αυτό αφορά την θέση των \*.pk αρχείων, που είναι υπεύθυνα για τη μορφή των χαρακτήρων.
### [5. Τελικές Ρυθμίσεις]{#s5}
Ενημερώστε το TeX για τις αλλαγές που κάνατε με την εντολή:
> texhash
Δημιουργήστε το καινούργιο αρχείο φόρμας για το LaTeX με την εντολή:
> cd /tmp
> initex latex.ltx
Mετά από ένα κατεβατό μηνυμάτων του TeX, θα έχετε ένα αρχείο `latex.fmt` που θα μεταφέρετε στο σωστό σημείο:
> mv latex.fmt /usr/lib/texmf/texmf/web2c/
Το νέο σας LaTeX με την Ελληνική επιλογή του babel είναι έτοιμο. Στον υποκατάλογο `doc` θα βρείτε οδηγίες για τη χρήση του πακέτου.
Για να το δοκιμάσετε, πηγαίνετε πίσω στον κατάλογο `Texgreek` και
> cd babel
> latex test2
Αν όλα πήγαν καλά, μπορείτε να δείτε το `test.dvi` με τους γνωστούς τρόπους (Xdvi, Kdvi) ή να το μετατρέψετε σε postscript με το dvips και να το εξετάσετε με το
ghostview.
### [6. Editors για το LaTeX και η Χρήση των Ελληνικών]{#s6}
Στο PC του παραδείγματος έχουν χρησιμοποιηθεί δύο πακέτα για Ελληνικά στα Χ, το grkbd του Γιάννη Τσακίρη, και το grISO του Δημήτρη Μπούρα στην RPM μορφή του, το
XFGreekKBD. Τον Emacs και το LyX, τις δύο εφαρμογές που χρησιμοποιούν πολλοί για να γράψουν LaTeX, μπόρεσαν να δουλέψουν μόνο με το πρώτο. Οδηγίες χρήσης για το
grkbd στο ίδιο το πακέτο που θα το κατεβάσετε από το ` ftp://argeas.argos.hol.gr/pub/unix/linux/GREEK/GRkbd-1.2.linux.tar.gz`.
Θυμίζουμε ξανά εδώ ότι και στις δύο εφαρμογές δεν αρκεί η αλλαγή γλώσσας στην οθόνη σας για το LaTeX. Θα πρέπει να δηλώνετε την αλλαγή γλώσσας με τις TeX
εντολές όπως αυτές περιγράφονται στα αρχεία του υποκαταλόγου `doc` του `Texgreek`.
### [6.1 Emacs]{#ss6.1}
Στον Emacs, υπάρχει η δυνατότητα Ελληνικών είτε με το grkbd είτε με ένα ειδικό mode για τον Emacs, το `greek-mode.el`. Το δεύτερο είναι προτιμότερο γιατί, καθώς
είναι φτιαγμένο ειδικά για τον Emacs, καταλαβαίνει πότε πληκτρολογείτε εντολή του LaTeX και γυρίζει αυτόματα το πληκτρολόγιο στα Αγγλικά. Για να το στήσετε
κάνετε τα εξής. Aφού φορτώσετε στον Emacs to αρχείο `greek-mode.el` θα πρέπει να το μεταγλωττίσετε δίνοντας
`Alt-x byte-compile-file` και να σώσετε το αρχείο `greek-mode.elc` που θα προκύψει στον κατάλογο `/usr/lib/emacs/site-lisp/`.
Κατόπιν, προσθέστε στο αρχείο .emacs που έχετε στον προσωπικό σας κατάλογο την παρακάτω γραμμή:
> `(load "/usr/lib/emacs/site-lisp/greek-mode.elc")`
Τέλος τρέξτε τον Emacs με κάποια ελληνική γραμματοσειρά ή ακόμη καλύτερα δημιουργήστε ένα script με όνομα π.χ. `gremacs` που θα περιέχει κάτι σαν το παρακάτω
και θα το τρέχετε κάθε φορά που θα θέλετε τον Emacs με Ελληνικά.
> ----------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> #! /bin/sh
> # gremacs
>
> emacs -fn -etl-fixed-medium-r-normal--0-0-100-100-c-0-iso8859-7
>
> ----------------------------------------------------------------------------------------------------------------------------------------------------------------
Μετά από όλα αυτά τα φοβερά και τρομερά θα μπορείτε να γράφετε Ελληνικά κείμενα, LaTeX και μη. Η αλλαγή του πληκτρολογίου θα γίνεται με `alt-g`. Αξίζει τον κόπο
γιατί ο Emacs προσφέρει ένα πολύ εύχρηστο περιβάλλον για τη συγγραφή κειμένων σε (La)TeX, το TeX mode. Αυτό περιλαμβάνει έλεγχο των εντολών, διαφορετικό
χρωματισμό για τις εντολές και το κυρίως κείμενο κ.λ.π.
### [6.2 LyX]{#ss6.2}
Για να γράψετε ελληνικά στο LyX, θα πρέπει να πάτε στο menu `Screen Options` και να αλλάξετε το πεδίο `font-norm` από `iso8859-1` σε `iso8859-7`. Εφόσον έχετε
στήσει το grkbd, με `alt-shift` θα μπορείτε να γράφετε ελληνικά. Θα έχετε ένα σχεδόν WYSIWYG editor που θα σας βοηθήσει αρκετά στο να γράψετε κείμενα για το
LaTeX. Σίγουρα όμως, όταν θα θελήσετε κάτι πιο περίπλοκο, θα χρειαστεί να χρησιμοποιήσετε κώδικα LaTeX. Το LyX παρέχει τη δυνατότητα προεπισκόπησης του κειμένου
σας σε dvi ή postscript μορφή, copy paste και πολλά άλλα. Είναι beta εφαρμογή με ό,τι αυτό συνεπάγεται.
### [7. Ευχαριστίες]{#s7}
Ευχαριστούμε τον Αντώνη Τσολομίτη για τη βοήθεια και τις πληροφορίες σχετικά με τον Emacs και το LyX