Τετάρτη 27 Σεπτεμβρίου 2017

TeX-It: Γνωρίζοντας τη LaTeX - Μέρος 1ο

Η γνώση είναι σαν τη φλόγα· αν τη μοιραστείς με κάποιον άλλο τότε πολλαπλασιάζεται. Η γνώση είναι δύναμη. Η γνώση...



Πριν ξεφύγει η κατάσταση με τα κλισέ περί γνώσης, να προλάβουμε να ανακοινώσουμε και αυτό που θέλουμε. Το bubble-pie (στα Ελληνικά είναι γένους θηλυκού, αλλά είπαμε, το όνομα στα Ελληνικά δεν ακούγεται εύηχα) αποφάσισε να αποκτήσει μία μόνιμη στήλη σχετική με τη LaTeX! (χειροκροτήματα, ποδοκροτήματα, πανδαιμόνιο στο αναγνωστικό κοινό). Ο υποφαινόμενος, ως ένας ακόμα από τους, ταλαίπωρους είναι η αλήθεια, ανθρώπους που έχουν κάκιστο γραφικό χαρακτήρα και, προφανώς, ως ένας ακόμα άνθρωπος που μαστίζεται από μία, όπως την αποκαλούν, βαρεμάρα, να μάθει να γράφει όμορφα και κομψά - θα έλεγα μία δημιουργική ανία, αλλά γι' αυτήν θα μιλήσουμε εν ευθέτω χρόνω - αποφάσισε ότι ο μόνος τρόπος να έχει κάποια τουλάχιστον ευανάγνωστα αποτελέσματα ήταν να αρχίσει, επισταμένως και συστηματικώς, να χρησιμοποιεί τα μέσα που η τεχνολογία του προσφέρει.

Άιντε και τα διάφορα προϊόντα τύπου Office που κυκλοφορούν κάνουν τη δουλειά τους εξαιρετικά όταν μιλάμε για κείμενο, plain text που λέγαμε με τον παππού μου στο Ξηροβούνι - δεν είναι δα και επιστήμη η δακτυλογράφηση ενός κειμένου. Όταν όμως καλείσαι να χρησιμοποιήσεις και έναν σωρό συμβόλων που δεν μπορείς καλά-καλά να τα σχηματίσεις με τα ίδια σου τα χεράκια, τι κάνεις; Εδώ είναι που έρχεται η μαγική αυτή γλώσσα προγραμματισμού, αυτό το μικρό θαύμα της ανθρωπότητας, η LaTeX. Γιατί δεν είναι και λίγα αυτά που μπορεί κανείς να δημιουργήσει μέσω αυτής. 

Ας αφήσουμε όμως τώρα το προοίμιο και ας μπούμε στο ψητό. Τι χρειάζεται κανείς για να γράψει σε LaTeX; Εν γένει λίγα και, προτίστως, όχι χρήματα. Υπάρχουν σαφώς διάφοροι editors αλλά σε αυτήν εδώ τη στήλη θα χρησιμοποιούμε το, επίσης και εξίσου μαγικό, notepad++ (μία απλή αναζήτηση στο google είναι αρκετή για να το κατεβάσει κανείς). Σε ότι αφορά την ίδια τη LaTeX, χρειάζεται κανείς να εγκαταστήσει πρώτα την τελευταία έκδοση του MikTeX (εν καιρώ θα αναφερθούμε εκτενέστερα σε αυτό). Ενδεικτικά, για χρήστες Windows, μπορεί κανείς να το κατεβάσει από αυτόν εδώ τον σύνδεσμο.

Τώρα λοιπόν που τελειώσαμε με τα πρώτα ανιαρά τεχνικά ζητήματα μπορούμε να γράψουμε το πρώτο μας κείμενο σε LaTeX (χειροκροτήματα και τα συναφή, έτι μία φορά). Ας υποθέσουμε ότι θέλουμε να γράψουμε την παρακάτω εξίσωση:
Δημιουργούμε λοιπόν ένα καινούργιο αρχείο κειμένου και το ανοίγουμε με το (αγαπημένο) notepad++. Στη συνέχεια, γράφουμε τα παρακάτω:

και αποθηκεύουμε το αρχείο με επέκταση .tex (π.χ. Δοκιμή.tex). Στη συνέχεια, ανοίγουμε το αρχείο με το TeXworks (αν έχουμε εγκαταστήσει το MikTeX, θα είναι το προεπιλεγμένο πρόγραμμα για όλα τα αρχεία επέκτασης .tex) και πατάμε το πράσινο "κουμπάκι" που βρίσκεται πάνω αριστερά και θυμίζει play-button ή εναλλακτικά πατάμε Ctrl+T (εκ του "typeset") και τότε, δημιουργείται ένα αρχείο .pdf το οποίο έχει το επιθυμητό κείμενο. Αν δεν εκτελείται το typesetting, ελέγχουμε στο αναπτυσσόμενο μενού (dropdown menu) ακριβώς δίπλα από το πράσινο "κουμπάκι" αν μέσα στις επιλογές βρίσκεται και το pdfLaTeX (συνήθως είναι προεπιλεγμένα τα pdfLaTeX+MakeIndex+BibTeX):

Ας αναλύσουμε τώρα λίγο τον κώδικα που γράψαμε παραπάνω.

Γραμμή 1η: Στη LaTeX μπορούμε να δημιουργήσουμε διάφορα είδη εγγράφων/σχημάτων κ.α. οπότε, σε κάθε περίπτωση, οφείλουμε να "ενημερώνουμε" για το τι είναι αυτό που θέλουμε να γράψουμε/σχεδιάσουμε. Αυτό γίνεται με την εντολή:
\documentclass{<τύπος>}
Στην προκειμένη, ο τύπος που μας εξυπηρετούσε ήταν ο minimal, δηλαδή ένα αρχείο που μας επιτρέπει να χρησιμοποιήσουμε μόνο τις βασικές λειτουργίες της γλώσσας και τίποτα περαιτέρω (να εισάγουμε εικόνες ή να σχεδιάσουμε σχήματα κ.λπ.). Άλλοι τύποι είναι οι article, book, letter, και πολλοί ακόμα. Σε επόμενα παραδείγματα θα χρησιμοποιήσουμε αρκετούς από αυτούς.

Γραμμή 2η: Μία κενή γραμμή. Θα μπορούσαμε και να την παραλείψουμε, καθώς η στοίχιση δεν επηρεάζει, εν γένει, τον κώδικα στη LaTeX (αυτό είναι ένα μικρό ψεματάκι, θα δούμε αργότερα πότε η αλλαγή γραμμής αλλάζει το εξαγόμενο αποτέλεσμα κα πώς), αλλά, για λόγους ευκολίας και ευαναγνωσιμότητας καλό είναι ο κώδικάς μας να αναπνέει, κατά διαστήματα. Στην προκειμένη, αλλάξαμε γραμμή γιατί εδώ τελείωνε το preamble (προοίμιο, ελληνιστί) του αρχείου μας, οι εντολές εκείνες δηλαδή οι οποίες δεν θα εκτυπωθούν κάπως στο κείμενό μας, αλλά παρέχουν γενικές πληροφορίες/ρυθμίσεις.

Γραμμή 3η: Εδώ ερχόμαστε σε επαφή με το πρώτο μας περιβάλλον (environment) της LaTeX. Γενικότερα, το ζεύγος
\begin{<κάτι>}
[...]
\end{<κάτι>}
οριοθετεί ένα περιβάλλον σχετικό με αυτό το <κάτι>. Τα περιβάλλοντα, γενικά, μορφοποιούν με έναν συγκεκριμένο τρόπο αυτό το οποίο περιέχουν όπως για παράδειγμα αλλάζοντας τη στοίχιση, προσθέτοντας ένα περίγραμμα, μία εικόνα κ.α.. Στην προκειμένη περίπτωση, το περιβάλλον document μας δίνει απλά τη δυνατότητα ο κώδικας που γράφουμε να είναι στο κομμάτι του αρχείου το οποίο θα "φαίνεται" και όχι στο preamble.

Γραμμή 4η: Εδώ, επιτέλους, γράφουμε κάτι το οποίο "τυπώνεται" στο χαρτί (έστω, στο .pdf). Αρχικά, για την εμφάνιση της επιθυμητής εξίσωσης, χρησιμοποιούμε κανονικά όλα τα σύμβολα που γνωρίζουμε (τα γράμματα/αριθμούς που θέλουμε για μεταβλητές/αγνώστους, παραμέτρους κ.λπ., τα σύμβολα των πράξεων για τις γνωστές πράξεις) καθώς και το ^ το οποίο εμφανίζει τον αμέσως επόμενο (ένα) χαρακτήρα στη θέση του εκθέτη. Αν θέλαμε να εμφανίσουμε αυτήν εδώ την εξίσωση:
\[x^{12}-x+1=0\]
τότε θα έπρπεπε να γράψουμε τον κώδικά μας κάπως έτσι:
Δηλαδή, περικλείωντας το 12 ανάμεσα στα δύο "μουστάκια" {,}, εμφανίζεται στον εκθέτη ο αριθμός 12. Αν δεν είχαμε γράψει τα δύο μουστάκια, θα είχαμε το ακόλουθο αποτέλεσμα:
\[x^12-x+1=0\]
Αντίστοιχο σύμβολο του ^, αλλά για δείκτες, είναι η κάτω παύλα, _, με ακριβώς τις ίδιες ιδοτροπίες.

Αλλά, αν κανείς το προσέξει, έχουμε επίσης περικλείσει την εξίσωσή μας μέσα σε δύο περίεργες αγκύλες:
\[...\]
Με αυτόν τον τρόπο δηλώνουμε δύο ξεχωριστά πράγματα:
  1. Ότι θέλουμε να εμφανίσουμε κάποιο μαθηματικό περιεχόμενο ή εν γένει κάτι που δεν εμπίπτει στην κατηγορία του απλού κειμένου.
  2. Ότι αυτό το περιεχόμενο θέλουμε να εμφανιστεί σε ξεχωριστή γραμμή από το υπόλοιπο κείμενο· και αυτό που έπεται και αυτό που ακολουθεί.
Σε ότι αφορά το δεύτερο, αν προσθέσουμε και λίγο κείμενο στο παράδειγμά μας θα γίνει αμέσως εμφανές τι θέλουμε να πούμε (για να προσθέσουμε κέιμενο απλώς γράφουμε ό,τι θέλουμε να γράψουμε, προς το παρόν μόνο στα αγγλικά):

Ενδεικτικά, ο αντίστοιχος κώδικας είναι ο εξής:


Εναλλακτικά, αν θέλουμε η εξίωση να εμφανιστεί στην ίδια γραμμή με το κείμενο (inline), μπορούμε να την περικλείσουμε ανάμεσα στα:
$...$
οπότε ο κώδικάς μας θα γίνει κάπως έτσι:


και το τελικό αποτέλεσμα θα είναι αυτό:


Γραμμή 5η: Κλείνουμε το περιβάλλον του κειμένου και ολοκληρώνουμε το έγγραφο.

Αυτά, για αρχή! Σύντομα θα επανέλθουμε με περισσότερα και πιο ενδιαφέροντα πράγματα!

Υ.Γ. Για μία αναλυτική λίστα με όλα τα σύμβολα της LaTeX, μπορείτε να συμβουλεύεστε αυτό εδώ το αρχείο.

Ενημέρωση: Μέρος 2ο, εδώ.

Και λίγη μουσική, για το απόγευμα:

Δεν υπάρχουν σχόλια:

Δημοσίευση σχολίου