Om emacs og forberedelserne til at skrive LaTeX i emacs

latex

Normalt når man skriver en artikel har man sine kilder til sidst. Jeg vil gøre det modsatte.
Der er af den simple grund, at jeg kun har brugt
emacs i omkring 3mdr og LaTeX i omtrent én mdr. Så det jeg skriver, kommer ikke af lang tids erfaring, men fra de folk, på vis skuldre jeg står (sagde dværgen).
Så i stedet for en litteratur liste vil jeg kalde det Tak for Hjælpen til:

Folkene på SSLUG-emacs-listen og på SSLUG-Dokumentations-listen (omhandler bl.a. hvordan man skriver LaTeX koder)
Samt flere her på LinuxIN.dk.

Derudover har disse bøger også været en hjælp:

The Not So Short Introduktion To LaTeX
(http://www.ctan.org/tex-arcive/info/lshort)
Denne er et "must" for nybegyndere!

The LaTeX Companion
For fanatikerne som ikke kan styre deres lyst til suspekte LaTeX koder. Den har plads ved siden af min seng, det er ikke en læse-let bog, men et LaTeX-leksikon!

Linux - friheden til at skrive dokumentation
- den er en fin indledning, og på dansk!
(de præambler vi senere kommer til er tyvstjålet fra den bog eller rettere fra SSLUG - undskyld)

- enhver fejl i artikeln, eller misforståelser af hvad disse folk har sagt er min skyld alene.

Og så begynder den egentlige artikel.
Der kommer mindst tre.
Den første er den, du nu læser, den omhandler den grundlæggende brug af emacs, og klargøring til at skrive LaTeX.
Den næste kommer til at handle om, at skrive de første simple tekster i LaTeX og compile dem.
Den tredje bliver om lidt mere avancerede koder (som om jeg kan sige noget om det), og hvordan du kan tilpasse præamblerne, så de passer til dit behov.

Hvis du er begynder, og der var sære ord i det ovenstående, så fortvivl ikke, de bliver forklaret senere, og de er ikke så underligt, når det kommer til stykket :-)

Jeg bruger KDE, jeg ved ikke om der er nogle ting der er anderledes i gnome, jeg tror det ikke, men nu er i advaret. :-)

Hvis du ikke har Emacs installeret på din pc, så er det tiden at gøre det nu - ikke lige nu, men når du har læst artiklen.
Når emacs er installeret, kan din første kommando passende være "C-h t" - så åbner du emacs' indbyggede tutorial, hvilket er en stor hjælp! Så brug den. Men hov!? Hvad var det du skulle trykke: "C-h t"?
Det er emacsesk for "CTRL+h t". (hold CTRL og h ned, slip og tryk t :-)
Der er nogle helt grundlæggende, tastetursymboler i emacs:
C = CTRL
M = Meta (et levn fra gamle dage) i dag er det ALT (og/eller WIN tasten, på nogle pc'er, det virke ikke hos mig).
RET = Return = at skal taste enter efter kommandoen

Emacs kan også styres med mus, men da alle kommandoer også har en tastekode, lære man dem hurtigt, og de er ganske effektive.

Du kan starte emcas via ikonet, eller ved at skrive "emacs &" i konsolen, de der har læst "Basale kommandoer i Bash" burde kunne
genneskue hvorfor der står et "&" ;-)

Fordelen ved at bruge konsolen er, at du med det samme kan angive, hvilken fil du vil skabe eller redigere.
Fx da jeg startede denne artikel skrev jeg: "emacs emacet &".
Når der ikke er nogen endelse får man bare en normal tekstfil.
Skulle jeg i stedet skrive et LaTeX-dokument kunne jeg skrive: "emacs la.tex &", da .tex er den type filer man skriver LaTeX-koderne i.
Et c-program skulle have endelsen, ".c".
Hvis du har skabt filen inde i emacs. Dvs. du har startet emacs via et ikon, og så skrevet en tekst som nu skal gemmes, hvad så?

Så taster du "C-x s" (det går du også for at gemme under
skrivningen). I minibufferen, den "kommandolinje" som findes i bunden af emacs, fremkommer nu: "write file: ~/ RET". Filen er nu oprettet og gemt. Hvis du er ved at redigere en tekst og trykker C-x s, kommer svaret "wrote /home/". Nu er dine ændringer gemt.

Men hvorfor dette hys med endelserne, kan det ikke være lige meget?
Jooo, hvis du har den vildeste klæbehjerne, og ikke har bruge for den mindste hjælp til at overskue koderne i fx et program, eller et LaTeX dokument.
Men vi andre dødelige vil nok gerne have lidt hjælp.
Hvis du har auctex installeret, får du nogle hjælpe facilliter frem, når du åbner en .tex-fil. Du har adgang til helt andre menuer end, hvis det fx var en almindelig tekstfil du var i gang med. Koderne bliver også fremhæver så du nemmere kan overskue dokumentet.

Med hensyn til auctex, bør du se om den ikke ligger på dine installations cd'erne. I SuSE 8.1 Prof, hedder pakken bare auctex, når man finder den med YaST2.
Hvis du ikke har auctex med i din distribution, kan du downloade den fra: "http:/www.nongnu.org/auctex"

For at installere auctex skal du finde emacs load-path (det er de filer emacs læser når den starter), dette gøres ved at taste "C-h v load-path RET" hos mig bliver resultatet, at load-path blandt andet går gennem
"/usr/share/emacs/21.1/lisp", så her lægger jeg mine tilføjelser.

Du anbringer den hentede tar-pakker et sted i emacs load-path, fx /usr/share/emacs/21.1/lisp, pakker den ud. Så opstår der et nyt katalog, du kan nu slette tar-pakken. Jeg gør det, at jeg flytter den til en mappe i mit /home/, så jeg har den, når jeg på et tidspunkt ændre på root opsættingerne.
Du kan nu prøve at starte emacs op på en tex-fil, du skulle gerne få to nye elementer i menubaren: "LaTeX" og "Commands". (dette hedder tex-mode)
Hvis det lykkes har installationen været planmæssigt. Tillykke!

En anden ting det også kan være rart at have er flyspell, den tjekker for stavefejl, men du skriver.
Du installere den på sammen måde.
Downloader den fra:
"http://www.sop.inria.fr/mimosa/personnel/Manuel.Serrano/flyspell/flyspell.html"
Det er dog bare en fil, så du placere den bare et sted i load-path, jeg vil stadig anbefale "/usr/share/emacs/21.1/lisp".
Ved flyspell skal du være opmærksom på et par ting:
Den er ikke selv en stave kontrol, den bruger ispell eller aspell.
Du kan se om disse er installeret ved at skrive "rpm -qa | grep -i spell" i konsolen. Kig efter noget der hedder aspell eller ispell. Hvis du ikke har en af disse, så installer dem - de burde følg med
distributionen. (hvis det er dansk du skal skrive, er det en god ide også at installere den danske a/i-spell ordbog)

Når dette er gjort skriver du "emacs .emacs &" i konsolen.
Jeg ved ikke, hvad man kalder denne fil, men det er bl.a. her du kan give ordre om, hvordan emacs skal bruge flyspell. Ved at skrive:
(;; medføre at linjen ikke får programmerings betydning, bruges til "noter")

;; Brug ispell
(setq ispell-program-name "ispell")

;; Bruge dansk ordbog som standart
(setq ispell-dictionary "dansk-latin1")

;; Brug flyspell i TeX-mode
(add-hook 'TeX-mode-hook 'flyspell-mode)

;; Ispell i TeX-mode
(add-hook 'TeX-mode-hook (function(lambda()(setq ispell-parser'tex))))

Dette får emacs til at arbejde med ispell. Du får ispell til at bruge en dansk ordbog. Du aktivere flyspell automatisk i TeX-mode, og den bruger ispell.

Flyspell kan altid aktiveres med kommandoen "M-x flyspell-mode RET" - i et hvert mode. Nu slipper du bare for at gøre det når du skal skrive
tex-filer.

Du burde nu have rigeligt at lege med, indtil næste artikel.
Og endnu en gang tutorialen er en fantastisk opfindelse.

Navnet: Jeg ved ikke hvordan emacs udtales, personligt siger jeg vidst émacs (med e som i equesion, og mac som i macintosh ) men jeg ved ikke om det er "det rigtige" :-)