LaTeX/Introducere
Cuprins |
[modificare] Ce este TeX?
TeX (X sau chi se pronunţă ca în cuvântul scoţian loch) este un limbaj de markup şi de programare low-level creat de Donald Knuth pentru redactarea atractivă şi consistentă a documentelor. Numele său provine de la cuvântul grecesc "τεχνολογία" (technologìa), care se traduce prin "tehnologie" în română; prima sa silabă este "τεχ", similar cu TeX din alfabetul latin. După alte surse, numele provine de la cuvântul grecesc "τέχνη" (techni), care înseamnă artă sau meşteşug în română. În al doilea caz, prima silabă este tot "τεχ".
Knuth a început sǎ scrie programul de redactare TeX în 1977 pentru a explora potenţialul echipamentelor de tipǎrire digitală care începea să se infiltreze în domeniul editurilor de la vremea aceea, mai ales în speranţa că va putea inversa tendinţa deteriorării calităţii tipografice, care a văzut că-i afecta propriile cărţi şi articole.
TeX este un limbaj de programare, în sensul că suportă conceptul if-else, poţi face calcule cu el (care se realizează la compilarea documentului), etc., însă este foarte greu să faci altceva în afara redactării. Controlul fin pe care TeX îl oferă îl face foarte puternic, însă de asemenea dificil şi solicită mult timp. TeX este renumit pentru că este extrem de stabil, pentru că rulează pe multe tipuri diferite de calculatoare şi pentru faptul că practic nu are erori de programare.
În zilele noastre, când realizează documente în limbajul TeX, practic nimeni nu foloseşte TeX simplu. În schimb, se folosesc diferite distribuţii TeX, cum este LaTeX, pentru a economisi timp, pentru a automatiza anumite sarcini şi pentru a reduce numărul de erori introduse de utilizatori.
[modificare] Ce este LaTeX?
LaTeX (pronounţat fie "Lah-tech", fie "Lay-tech") este un pachet macro bazat pe TeX creat de Leslie Lamport. Scopul său este să simplifice redactarea TeX, mai ales pentru documente ce conţin formule matematice.
Mulţi autori de mai târziu au contribuit cu extensii, numite pachete sau stiluri, la LaTeX. Unele dintre acestea sunt încorporate în majoritatea distribuţiilor software TeX/LaTeX; altele se pot găsi în arhivele de la Comprehensive TeX Archive Network (CTAN).
De vreme ce LaTeX conţine un grup de comenzi TeX, procesarea documentelor LaTeX este în esenţă programare. Creezi un fişier text în markup-ul LaTeX. Macroul LaTeX îl citeşte pentru a produce documentul final.
În mod evident, această abordare are câteva dezavantaje în comparaţie cu un program WYSIWYG (What You See Is What You Get - Ceea ce vezi pe ecran va fi tipărit exact la fel la imprimantă) de genul Openoffice.org Writer sau Microsoft Word.
În LaTeX:
- Nu vezi (de obicei) versiunea finală a documentului când îl editezi.
- În general, trebuie să ştii comenzile necesare pentru markup-ul LaTeX.
- Câteodată e greu să obţii un anumit aspect pentru document.
Pe de altă parte, abordarea LaTeX are unele avantaje:
- Fişierele sursă ale documentelor pot fi citite cu orice editor de texte şi înţelese, spre deosebire de formatele binare şi XML complexe utilizate de programele WYSIWYG.
- Te poţi concentra doar pe structura şi conţinutul documentului, fără să fii prins de aspecte superficiale legate de afişare.
- Nu trebuie să ajustezi manual fonturi, dimensiunea textului, înălţimea liniilor sau aranjarea textului pentru lizibilitate, deoarece LaTeX se ocupă de aceste aspecte în mod automat.
- În LaTeX, structura documentului este vizibilă utilizatorului, şi poate fi copiată cu uşurinţă în alt document. În aplicaţii WYSIWYG, deseori nu este clar cum s-a realizat o anumită formatare, şi ar putea fi imposibil să fie copiată direct pentru a fi utilizată în alt document.
- Aranjarea în pagină, fonturile, tabelele şi aşa mai departe sunt consistente pentru întregul document.
- Formulele matematice sunt uşor de redactat.
- Se generează uşor indecşi, note de subsol, citate şi referinţe.
- Eşti nevoit să-ţi structurezi corect documentele.
Abordarea tipică LaTeX poate fi denumită WYSIWYM, adică What You See Is What You Mean — Vezi ceea ce vrei să spui: nu poţi vedea versiunea finală în vreme ce tipăreşti. În schimb, vezi structura logică a documentului. LaTeX se ocupă de formatare pentru tine.
Documentul LaTeX este un fişier text simplu ce cuprinde conţinutul documentului, cu markup adiţional. Când fişierul sursă este procesat de pachetul macro, poate produce documente în mai multe formate. LaTeX suportă nativ DVI şi PDF, însă cu alte programe poţi crea uşor PostScript, PNG, JPG, etc.
[modificare] Programe necesare
Vei avea nevoie cel puţin de o distribuţie TeX, un editor de texte bun şi un program de vizualizare pentru DVI sau PDF.
[modificare] Instalarea unei distribuţii
Distribuţiile recomandate pentru fiecare dintre sistemele de operare majore sunt:
[modificare] Windows
Ambele distribuţii Windows au programe de instalare facile care se îngrijesc de setarea mediului şi descărcarea pachetelor.
- TeX Live poate fi obţinut de la pagina de download.
- MiKTeX poate fi descărcat aici.
[modificare] Linux
- Ubuntu are o versiune din 2009 a TeX Live în depozitele de software, aşa că puteţi folosi: sudo apt-get install texlive. Aici e un script pentru automatizarea instalării TeX Live 2010 în Ubuntu.
- Fedora are doar o versiune din 2007 a TeX Live, însă din fericire se găseşte un bun depozit software aici pe care îl poţi folosi pentru a instala direct ultima versiune: yum install texlive (şi oricare dintre pachetele texlive-scheme-).
Dacă distribuţia ta nu are pachetele TeX Live, poţi pune o dorinţă în sistemul de gestiune a problemelor de programare (bug tracking system). În cazul cel mai rău, va trebui să descarci TeX Live singur şi să rulezi programul de instalare manual. Nu este greu, însă va trebui să faci mai multe alegeri decât atunci când îl instalezi cu un manager de pachete (package manager).
[modificare] Mac OS
Descarcă MacTeX.mpkg.zip de pe MacTeX page, dezarhivează-l şi urmează instrucţiunile. E foarte uşor.
[modificare] Obţinerea unui editor de texte
Îţi mai trebuie un editor de texte ca să scrii cod LaTeX, cum este un editor simplu de text de genul Notepad sau Notepad++. Un editor LaTeX dedicat va fi mai util datorită autocompletării şi afişării erorilor.
[modificare] TeXworks
TeXworks este un editor TeX dedicat inclus în MiKTeX şi TeX Live. A fost dezvoltat în ideea că o interfaţă simplă este mai bună decât una plină de facilităţi, şi astfel să facă mai uşor pentru începătorii LaTeX să obţină ce vor: să-şi scrie documentele. TeXworks a fost dezvoltat iniţial întocmai pentru că un profesor de matematică a dorit ca studenţii să aibă o experienţă iniţială mai bună cu LaTeX.
Poţi instala TeXworks cu managerul de pachete al distribuţiei Linux pe care o foloseşti sau să-l selectezi ca opţiune la instalarea în Windows sau Mac.
[modificare] Kile
Kile este un editor LaTeX KDE portabil (cross platform), ce oferă o interfaţă grafică deosebită pentru a edita mai multe tipuri de documente şi a le compila cu diverse compilatoare TeX. Kile se bazează pe editorul Kate, are o bară cu instrumente uşor accesibilă pentru simboluri, un program de vizualizare pentru structura documentului, o consolă şi opţiuni implicite uşor de personalizat. Kile poate rula în orice sistem de operare cu KDE.
[modificare] TeXmaker
TeXmaker este un editor portabil, foarte asemănător cu Kile în ce priveşte facilităţile oferite şi interfaţa cu utilizatorul. În plus, are propriul program de vizualizare pentru PDF.
[modificare] TeXnicCenter
TeXnicCenter este un editor LaTeX gratuit şi open source popular pentru Windows. Are o interfaţă cu utilizatorul similară cu TeXmaker şi Kile.
[modificare] BaKoMa TeX
BaKoMa TeX este un editor LaTeX pentru Windows cu facilităţi de genul WYSIWYG. Realizează compilarea codului sursă LaTeX, pe care îl actualizează constant pentru a vedea schimbările produse documentelor aproape în timp real.
[modificare] LyX
LyX este un editor LaTeX pentru Windows, Linux şi Mac OS. Conţine editoare pentru formule şi tabele şi afişează indicii vizuale ale documentului final pe ecran, permiţând utilizatorilor să scrie documente LaTeX fără să aibă în grijă sintaxa folosită.
[modificare] TeXShop
TeXShop este un editor LaTeX în genul TeXworks pentru Mac OS.
[modificare] gedit-latex-plugin
Gedit cu gedit-latex-plugin merită de asemenea să fie încercat de utilizatorii GNOME. Gedit este o aplicaţie portabilă pentru Windows, Mac şi Linux.
[modificare] Gummi
Gummi este un editor LaTeX pentru Linux, care compilează rezultatul de ieşire al comenzii pdflatex în timp real şi îl prezintă în partea dreaptă a ecranului.
[modificare] Programe de vizualizare
În sfârşit, îţi trebuie un program de redare pentru fişierele de ieşire LaTeX. Dacă foloseşti un compilator de genul pdflatex, poţi vizualiza rezultatul cu programul preferat de redare PDF (Adobe Reader, Okular, Evince, Sumatra, Foxit).
Practic toate distribuţiile LaTeX au un program de redare DVI pentru a vedea rezultatul implicit al comenzii latex, şi de asemenea programe utilitare cum este dvi2pdf pentru a converti automat rezultatul în format PDF.
[modificare] Aplicaţii în cadrul unei distribuţii
Acestea sunt programele principale pe care le puteţi găsi în orice distribuţie (La)TeX:
- tex: compilatorul cel mai simplu, primeşte ca input un fişier TeX şi creează un DVI
- pdftex: primeşte un fişier TeX, însă creează un PDF
- latex: cel mai folosit: primeşte ca input un fişier LaTeX şi creează un DVI
- pdflatex: dintr-un fişier LaTeX creează un PDF
- dvips: transformă un DVI în PostScript
- dvipdf: transformă un DVI în PDF
- dvipdfm: versiune îmbunătăţită a celei dinainte
Când LaTeX a apărut, singurul format pe care putea să-l creeze era DVI; mai târziu, pdflatex a adăugat formatul PDF. pdflatex şi dvipdfm pot amândouă să creeze fişiere PDF. pdflatex foloseşte caracteristici noi ale PDF-urilor, cum sunt hyperlinkurile, care nu se regăsesc în DVI. Trecerea prin formatul intermediar DVI impune limitările acestuia. Pe de altă parte, unele pachete — cum este PSTricks — se bazează pe procesul transformării în DVI, şi de aceea nu merg cu pdflatex. Unele pachete includ informaţii în DVI ce nu apar la vizualizarea DVI, ci doar la transformarea DVI într-un alt format, mai nou.
În mod normal, aţi scrie documentele puţin diferit în funcţie de compilatorul folosit (latex sau pdflatex). Însă, după cum vom vedea mai târziu, se poate adăuga un fel de nivel de abstractizare pentru a ascunde detaliile compilatorului folosit, în vreme ce compilatorul face el însuşi transformarea.
Notaţi faptul că, de vreme ce LaTeX este doar o colecţie de macrouri pentru TeX, dacă compilaţi un document TeX simplu cu un compilator LaTeX (cum este pdflatex), va merge, în vreme ce opusul nu este adevărat: dacă încercaţi să compilaţi un fişier sursă LaTeX cu un compilator de TeX veţi obţine multe erori.
Diagrama următoare prezintă relaţiile dintre codul sursă (La)TeX şi toate formatele ce pot fi create pe baza lui:
Textul scris cu roşu din căsuţe reprezintă formatele de fişiere, textul cu albastru de pe săgeţi reprezintă comenzile pe care trebuie să le folosiţi, iar textul scris mărunt, cu verde închis, de sub căsuţe reprezintă formatele de imagine suportate. De fiecare dată când treceţi printr-o transformare (de-a lungul unei săgeţi), pierdeţi ceva informaţii, lucru care poate diminua calitatea documentului. De aceea, pentru a obţine cea mai bună calitate a rezultatului, trebuie să alegeţi calea cea mai scurtă către formatul ţintă. Acesta este probabil şi modul cel mai convenabil pentru a genera fişierul de ieşire în formatul dorit. Pornind de la codul sursă LaTeX, calea cea mai bună de urmat ar fi să folosiţi comanda latex pentru output DVI şi pdflatex pentru PDF, transformând în PostScript numai când trebuie să tipăriţi documentul.
Cele mai multe dintre programele necesare ar trebui să fie deja în distribuţia LaTeX pe care o folosiţi; celelalte vin cu Ghostscript, care este un program gratuit şi multi-platform la rândul lui.
Capitolul Exportarea sub alte formate spune mai multe despre ce puteţi obţine din sursa LaTeX.