TeX, gisa estilizatua, Donald E. Knuth-ek idatzitako tipografia-sistema bat da, oso ezaguna ingurune akademikoan, batez ere matematikari, fisikari eta informatikarien artean. Neurri handi batean Unix-erako Troff tipografia-programa ordezkatzea lortu dut.

 TeX
Jatorria
Sortzailea(k)Donald Knuth
Sorrera-urtea1978
Argitaratze-data1978
Azken bertsioa3.141592653
Honen izena daramatechne (en) Itzuli
Ezaugarriak
Programazio-lengoaiaWeb, Pascal eta Stanford Artificial Intelligence Language (en) Itzuli
Media motaapplication/x-tex, text/x-tex eta math/tex
Sistema eragileaPlataforma-anitz
Idatz dezakedevice independent file format (en) Itzuli
Egile-eskubideakcopyright, egile-eskubideen titularrak jabari publikoari eskainia
Ekoizpena
ProgramatzaileaDonald Knuth
GaratzaileaDonald Knuth
Historia
Gertaera nabarmenakpublication of a work (en) Itzuli
dokumentazio

publication of a work (en) Itzuli
The TeXbook (en) Itzuli

1989
freeze (en) Itzuli
Jasotako sariak
tug.org
Iturri-kodeahttps://www.tug.org/svn/texlive/ eta svn://tug.org/texlive/trunk

TeX formula matematiko konplexuak osatzeko modurik onena da eta LaTeX-en zein beste makro-pakete batzuen forman, konposizio-lanetarako erabil daiteke.

Historia

aldatu

Knuth TeX idazten hasi zen, bere The Art of Computer Programming [1] liburuaren I.tik III.era bitarteko tipografiaren kalitatearen beherakadarekin gogaituta zegoelako. Horregatik, bere tipografia-lengoaia diseinatzen hasi zen. Urte sabatiko batean, 1978an, amaitu zezakeela pentsatu zuen baina 1985 urtean bukatu zuen. TeX-en lehen bertsioa Stanford Unibertsitateko SAIL programazio-lengoaia erabiliz idatzi zen. TeX-en geroagoko bertsioetarako, Knuth-ek programak diseinatzeko programazio literarioaren kontzeptua asmatu zuen, iturburu-kode konpilagarria eta kalitate handiko erreferentziazko dokumentazioa (TeX-n idatzia, noski) jatorrizko fitxategi beretik ekoizteko modu bat. Erabiltzen den hizkuntzari WEB deitzen zaio eta Pascal-en programak sortzen ditu.

TeX-ek bertsioak zenbakitzeko sistema berezi bat du. 3. bertsioaz geroztik, eguneraketak amaieran zifra hamartar gehigarri bat gehituz adierazten dira, bertsio-zenbakia asintotikoki π hurbil dadin. Bertsio berriena 3.14159265 da eta oso egonkorra denez, eguneratze txikiak baino ez dira espero.

Sistema tipografikoa

aldatu

TeX komandoak atzera-barra ("\") batekin hasten dira eta haien argumentuak giltzen bidez adierazten dira ("{}"). TeX oinarrizko komandoetan eta makroetan oinarritutako lengoaia da: komando asko, erabiltzaileak definitutako gehienak barne, berehala ordezkatzen dira oinarrizko komandoak bakarrik geratzen diren arte, gero exekutatzen direnak. Ordezkapena bera albo-ondoriorik gabe dago. Makroen errekurtsioak ez du memoria kontsumitzen eta if-then-else formak ere eskuragarri daude. Horrek guztiak TeX Turing hizkuntza osoa bihurtzen du ordezkapen mailan ere.

TeX sistemak karaktereen eta sinboloen tamainaren ezagutza zehatza du, eta informazio hori erabiliz lerro bakoitzeko letren eta orrialde bakoitzeko lerroen lerrokadura optimoa kalkulatzen du. Ondoren, DVI (DeVice Independent) fitxategi bat sortzen du, karaktere guztien azken posizioa duena. DVI fitxategia zuzenean inprima daiteke edo beste formatu batzuetara bihur daiteke. Gaur egun, pdfTeX PDF fitxategiak sortzeko erabiltzen da DVI fitxategien sorrera saihestuz.

Funtzionalitate gehiena hainbat makroek ematen dute: Knuth-en jatorrizkoak plainTeX deritzonean sartuta, LaTeX (gehien bat zientzia teknikoetan) eta ConTeXt (batez ere argitaratzeko erabiltzen da).

TeX erreferentzia nagusia Knuth-en Computers and Typesetting-en lehenengo bi liburukiak dira: ` The TeXbook' ´ eta ` TeX: The Program ´ (honek TeX iturburu-kode osoa eta dokumentatua barne hartzen du).

TeX instalazio batean direktorioen antolaketa texmf izeneko zuhaitz batean estandarizatuta dago.

TeX lizentziak doako banaketa eta aldaketa ahalbidetzen du, baina aldatutako edozein bertsio T E X, TeX edo antzeko zerbait deitzea eskatzen du, jatorrizko bertsioarekin nahas daitekeena. Lizentziak marka erregistratuaren antzeko eskubideak ematen ditu.

Izenari buruz

aldatu

Donald Knuthek The TeXbook lanean azaltzen du teknologia hitzak grekerako erroa duela eta τεχ letrekin hasten dela. Beraz, euskarazko TeX izena [tej] ahoskatu behar da, eta ez [teks]. Hau da, TeX-ek ez duelako TEX esan nahi τεχ baizik, greziar χ [ ji ] letraz amaitzen dena. Grezierazko τέχνη (ΤΕΧΝΗ – technē) hitzak "artea" esan nahi du, teknika artearekin edo aurkezpen dotorearekin harreman estua duenaren seinale.

Fitxategi bat TeX-en idazten ari zarenean eta izena aipatu nahi duzunean, \TeX komandoa duzu, honela definituta:

 \hbox{T\kern-.1667em\lower.5ex\hbox{E}\kern-.125ex X}

edo abar   :

 \TeX()

eta Knuth-ek sortu zuela TeX-ekin zer den posible erakusteko. "E" letra oinarri-lerroaren azpitik eta T-tik gertuago dago; gainerako sistemetan " TeX " ikuspegia erabiliz idazten da.

Lan eratorriak

aldatu

Dokumentuak prozesatzeko hainbat sistema TeX-en oinarritzen dira; horien artean nabarmentzen dira:

  • LaTeX (izena bere sortzailea den Leslie Lamport-i egiten dio erreferentzia), zeinak liburu, gutun eta bestelako lanenetarako dokumentu-estiloak barne hartzen ditu eta atal eta ekuazioen erreferentzia gurutzatuak eta zenbakitze automatikoa gehitzen ditu.
  • ConTeXt, gehienbat Hans Hagen -ek Pragma -n sortua, TeX-en oinarritutako dokumentuen diseinurako tresna profesionala da. LaTeX baino berriagoa da eta, beraz, agian ez da hain ezaguna.
  • AMS-TeX, American Mathematical Society-k ekoitzitako, erabilerraza da eta aldizkariek alda ditzaketen estilo editorialaren arabera. AMS-TeX-en ezaugarri gehienak LaTeX-en erabil daitezke AMS "pakete" desberdinak erabiliz eta AMS-LaTeX deitzen zaie. AMS-TeX eskuliburu nagusiak The Joy of TeX izena du .
  • jadeTeX James Clark -en DSSSL sistematik inprimatzeko oinarri gisa TeX erabiltzen du
  • Texinfo, GNU proiektuaren dokumentazioa prestatzeko sistema.

Sistema hauek guztiak TeX programazio-lengoaian idatzita daude (batzuk beste programazio-lengoaia batzuetako pluginekin). Horrez gain, programazio-lengoaia komando eta gaitasun berriekin zabaltzen duten programak daude:

  • pdfTeX -ek PDF fitxategiak sortzeko aukera ematen dizu eta ezaugarri tipografiko berriak gehitzen ditu, hala nola puntuazio marjinala.
  • Omegak Unicode erabiltzeko eta hainbat norabidetan idazteko aukera ematen du (eskuinetik ezkerrera edo goitik behera).
  • NTS -k TeX Javan berriro inplementatzen du eta klase berriekin zabaltzeko aukera ematen du.
  • LuaTeX -ek pdfTeX, Omega eta Lua programazio-lengoaia konbinatzen ditu.

Tresna bateragarriak

aldatu

Unix-ekin bateragarriak diren sistemetan, TeX teTeX forman banatzen da. Windows sistemetan MiKTeX eta fpTeX daude . Mac OS X sistemetan MacTeX dago TeXShop bezalako utilitateekin .

TeXmacs testu editorea WYSIWYG testu editore zientifiko bat da, TeX-ekin bateragarria dela dioena. Knuth-en letra-tipoak erabiltzen ditu eta TeX fitxategi bat sor dezake. Antzeko beste tresna bat LyX da.

Adibide matematikoak

aldatu

Ekuazio kuadratikoa

aldatu

TeX martxan ikusteko, saiatu ekuazio koadratikoen formula ezaguna idazten:

 Formula koadratikoa da $x_{1,2}={-b\pm\sqrt{b^2-4\times a\times c} \over {2 \times a}}$
 \bye

Goiko testuarekin honelako zerbait lortu beharko zenuke

Formula koadratikoa da  

Lehen graduko ekuazio aljebraikoa

aldatu
:<math>\sqrt[3]{x+5+2x} = \sqrt[3]{3x+7x+12}</math>
:<math>x+5+2x = 3x+7x+12</math>
 
 

Zatiketa baten deribatua

aldatu
:<math>\left ( {x^2 \over x^3 +1} \right ) ^\prime = { \left ( x^3 +1 \right ) 
\left ( x^2 \right )^\prime - \left ( x^2 \right ) \left ( x^3 +1 \right ) ^\prime
 \over \left ( x^3 +1 \right )^2 } </math>
Kozienteen formularen aplikazioa
 

Limiteak

aldatu
:<math>\lim_{x \to 1^+} {1 \over x - 1} = ? </math>
: Ebazpena
:<math> = {1 \over 1,001 - 1} </math>
:<math> = {1 \over 0,001} </math>
:<math>\lim_{x \to 1^+} {1 \over x - 1} = +\infty \ \Rightarrow \ </math> Horrek esan nahi du joera duela <math>+\infty</math>
 
Ebazpena
 
 
  Horrek esan nahi du joera duela  

Parametro orokorrak

aldatu

Funtzioak, ikurrak eta karaktere bereziak

aldatu
Parametroa Sintaxia Nola ikusten da
Tildeak eta marka diakritikoak \acute{a} \quad \grave{a} \quad \breve{a} \quad \check{a} \quad \tilde{a}  
Funtzio estandarrak \sin x + \ln y + \operatorname{sgn} z  
\sin a + \cos b + \tan c + \cot d + \sec e + \csc f  
\sinh g + \cosh h + \tanh i + \coth j  
\arcsin k + \arccos l + \arctan m  
\lim n + \limsup o + \liminf p  
\min q + \max r + \inf s + \sup t  
\exp u + \lg v + \log w  
\ker x + \deg x + \gcd x + \Pr x  
\det x + \hom x + \arg x + \dim x  
Aritmetika modularra s_k \equiv 0 \pmod{m} \quad a \bmod b  
Deribatuak \nabla \; \partial x \; dx \; \dot x \; \ddot y  
Multzoak \forall \; \exists \; \empty \; \emptyset \; \varnothing \; \in \; \ni \; \not\in \; \notin  
\subset \; \subseteq \; \supset \; \supseteq \; \cap \; \bigcap \; \cup \; \bigcup \; \biguplus  
\sqsubset \; \sqsubseteq \; \sqsupset \; \sqsupseteq \; \sqcap \; \sqcup \; \bigsqcup  
Logika p \land \wedge \; \bigwedge \; \bar{q} \to p\lor \vee \; \bigvee \; \lnot \; \neg q \; \setminus \; \smallsetminus  
Erroak \sqrt{2}\approx 1.4  
\sqrt[n]{x}  
Erlazioak \sim \; \approx \; \simeq \; \cong \; \le \; \ge \; \equiv \; \not\equiv \; \ne \; \propto \; \pm \; \mp  
Geometria \Diamond \Box \triangle \angle \perp \mid \; \nmid \| \; 45^\circ  
Geziak \leftarrow \; \gets \; \rightarrow \; \to \; \leftrightarrow \quad \longleftarrow \; \longrightarrow \quad \mapsto \; \longmapsto \; \hookrightarrow \; \hookleftarrow  
\nearrow \; \searrow \; \swarrow \; \nwarrow \quad \uparrow \; \downarrow \; \updownarrow  
\rightharpoonup \; \rightharpoondown \; \leftharpoonup \; \leftharpoondown \; \upharpoonleft \; \upharpoonright \; \downharpoonleft \; \downharpoonright  
\Leftarrow \; \Rightarrow \; \Leftrightarrow \; \Longleftarrow \; \Longrightarrow \; \Longleftrightarrow \; \iff \quad \Uparrow \; \Downarrow \; \Updownarrow  
Karaktere bereziak \eth \; \S \; \P \; \% \; \dagger \; \ddagger \; \star \; * \; \ldots  
\smile \; \frown \; \wr \; \oplus \; \bigoplus \; \otimes \; \bigotimes  
\times \; \cdot \; \circ \; \bullet \; \bigodot \; \triangleleft \; \triangleright \; \infty \; \bot \; \top \; \vdash \; \vDash \; \Vdash \; \models \; \lVert \; \rVert  
\imath \; \hbar \; \ell \; \mho \; \Finv \; \Re \; \Im \; \wp \; \complement \quad \diamondsuit \; \heartsuit \; \clubsuit \; \spadesuit \; \Game \quad \flat \; \natural \; \sharp  

Azpi-indizeak, goi-indizeak eta integralak

aldatu
Parametroa Sintaxia Nola ikusten da
Goi-indizea a^2    
Azpi-indizea a_2    
Taldekatzea a^{2+2}    
a_{i,j}    
Goi eta azpi-indizea x_2^3  
Goi eta azpi-indizea aurretik {}_1^2\!X_3^4  
Deribatuak x', y''    
Deribatuaren puntuak \dot{x} \; \ddot{x}  
Goi-marra, segmentu, bektore, azpimarra \hat a \; \bar b \; \vec c \; \overrightarrow{a b} \; \overleftarrow{c d} \; \widehat{d e f} \; \overline{g h i} \; \underline{j k l}  
Goiko giltzak \begin{matrix} 5050 \\ \overbrace{ 1+2+\cdots+100 } \end{matrix}  
Beheko giltzak \begin{matrix} \underbrace{ a+b+\cdots+z } \\ 26 \end{matrix}  
Batukariak \sum_{k=1}^N k^2  
Biderkariak \prod_{i=1}^N x_i  
Limiteak \lim_{n \to \infty}x_n  
Integralak \int_{-N}^{N} e^x\, dx  
Integral bikoitzak \iint_{D}^{W} \, dx\,dy  
Integral hirukoitzak \iiint_{E}^{V} \, dx\,dy\,dz  
Integral laukoitzak \iiiint_{F}^{U} \, dx\,dy\,dz\,dt  
Integral itxiak \oint_{C} x^3\, dx + 4y^2\, dy  
Ebakidurak \bigcap_1^{n} p  
Bildurak \bigcup_1^{k} p  

Zatikiak, matrizeak eta polilerroak

aldatu
Parametroa Sintaxia Nola ikusten da
Zatikiak \frac{2}{4} o {2 \over 4}  
Koefiziente binomialak {n \choose k}  
Matrizeak \begin{matrix} x & y \\ z & v \end{matrix}  
\begin{vmatrix} x & y \\ z & v \end{vmatrix}  
\begin{Vmatrix} x & y \\ z & v \end{Vmatrix}  
\begin{bmatrix} 0 & \cdots & 0 \\ \vdots & \ddots & \vdots \\ 0 & \cdots & 0\end{bmatrix}  
\begin{Bmatrix} x & y \\ z & v \end{Bmatrix}  
\begin{pmatrix} x & y \\ z & v \end{pmatrix}  
Zatikako funtzioak f(n) = \begin{cases} n/2, & n\mbox{ bakoitia bada} \\ 3n+1, & \n\mbox{ bikoitia bada} \end{cases}  
Lerro anitzeko ekuazioak \begin{matrix}f(n+1) & = & (n+1)^2 \\ \ & = & n^2 + 2n + 1 \end{matrix}  
Ekuazio-sistemak (\frac erabiliz) \left . \begin{matrix} 4 \cdot \frac{2x^3+7}{5x^2+2y+5}=2 \\ \frac{2x^y+8xy}{5x^2+2yz^2+17z}=43\end{matrix} \right \}  
Ekuazio-sistemak (\cfrac erabiliz) \left . \begin{matrix} 4 \cdot \cfrac{2x^3+7}{5x^2+2y+5}=2 \\ \cfrac{2x^y+8xy}{5x^2+2yz^2+17z}=43\end{matrix} \right \}  

Kanpo estekak

aldatu
  1. https://en.wikipedia.org/w/index.php?title=The_Art_of_Computer_Programming&action=editThe Art of Computer Programming