% Linux Installation and Getting Started    -*- TeX -*-
% text.tex
% Copyright (c) 1992-1994 by Matt Welsh <mdw@metalab.unc.edu>
%
% This file is freely redistributable, but you must preserve this copyright 
% notice on all copies, and it must be distributed only as part of ``Linux 
% Installation and Getting Started''. This file's use is covered by the 
% copyright for the entire document, in the file ``copyright.tex''.
%
% Copyright (c) 1998 by Specialized Systems Consultants Inc. 
% <ligs@ssc.com>

\subsection{Urejanje in obdelava besedil}
 % (?) Text processing and word processing.

Skoraj vsak uporabnik računalnika potrebuje postopek za pripravo
spisov.  V svetu osebnih računalnikov je standard \textbf{urejanje
besedil}: urejanje in upravljanje besedila v okolju >>kar vidiš, to
dobiš<< (angl.\ What You See Is What You Get, WYSIWYG) in tiskanje
besedila skupaj s slikami, tabelami in okraski.

V svetu Unixa so dostopni komercialni urejevalniki besedil podjetij
Corel, Applix in Star Division, toda pogostejše je \textbf{stavljenje
besedil}, kar je precej drugačna stvar.  V sistemih za urejanje
besedil je besedilo vnešeno v \textbf{jeziku za opis strani}, ki pove,
kako naj bo besedilo oblikovano.  Namesto vnosa besedila v posebnem
okolju za urejanje besedil lahko spremenite besedilo v kateremkoli
urejevalniku, kot sta \texttt{vi} ali Emacs.  Ko končate z vnosom
izvornega besedila (v stavnem jeziku), poseben program pretvori
izvorno kodo v obliko, primerno za tiskanje.  To je nekako analogno
programiranju v jeziku, kot je C, in >>prevajanju<< spisa v obliko za
izpis.

Za Linux je na voljo veliko stavnih sistemov.  Eden od njih je
\texttt{groff}, GNU-jevska različica klasičnega stavnika besedil
\texttt{troff}, izvorno razvitega v Bell Labs in še vedno
uporabljanega na mnogih sistemih Unix po vsem svetu.  Drug sodoben
sistem za stavljenje besedil je \TeX, ki ga je razvil Donald Knuth,
znan s področja teoretičnega računalništva.  Na voljo so tudi
dialekti \TeX-a, kot je \LaTeX.

Stavniki besedil, kot sta \TeX\ in \texttt{groff}, se razlikujejo
predvsem v skladnji svojih jezikov za oblikovanje besedila.  Izbira
enega oblikovalnega sistema izmed ostalih temelji na dostopnosti
pripomočkov, ki zadovoljujejo vaše potrebe, kot tudi na osebnem okusu.

Za mnoge ljudi je oblikovalni jezik \texttt{groff}-a malce obskuren in
se jim zdi \TeX{} lažje berljiv.  Vendar \texttt{groff} naredi izhod v
obliki ASCII, ki ga zlahka pregledamo na terminalu, medtem ko je
\TeX{} predvsem namenjen izdelavi izhoda za tiskalniško napravo.
Če želimo iz sestavkov v \TeX-u izdelati izhod ASCII ali pretvoriti
vhod \TeX-a v obliko za \texttt{groff}, potrebujemo različne dodatne
programe.

Še en takšen program je \texttt{texinfo}, razširitev \TeX-a,
ki so jo razvili pri Free Software Foundation in se uporablja
za programsko dokumentacijo.  \texttt{texinfo} lahko izdela
natisnjen izhod ali hipertekstni sestavek, imenovan >>Info<<,
iz iste izvorne datoteke.  Datoteke Info so glavna oblika
dokumentacije, ki jo uporablja programje GNU (na primer
\texttt{emacs}).

Stavniki besedil se v računalniški srenji na široko uporabljajo za
pisanje razprav, disertacij, časopisnih člankov in knjig.  (Ta knjiga
je napisana z \LaTeX-om.)  Ker izvorni spis ni shranjen v obskurnem
zapisu, ki ga lahko bere le en urejevalnik besedil, lahko programerji
pišejo čitalnike in prevajalnike za oblikovalni jezik in s tem
razširjajo sistem.

Kako je videti oblikovalni jezik?  V splošnem je oblikovana izvorna
datoteka sestavljena predvsem iz samega besedila s \textbf{krmilnimi
kodami} za doseganje učinkov, kot so spremembe pisave ali robov in
oblikovanje seznamov.

Preglejte naslednje besedilo:

\begin{quote}
Gospod Torvalds: 

Zelo smo vznemirjeni zaradi vaših trenutnih načrtov za izvedbo
\emph{post-hipnotičnih sugestij} s kodo terminalskega gonilnika
v \textbf{Linuxu}.  Tako čutimo iz treh razlogov:
\begin{enumerate}
\item Podtikanje subliminalnih sporočil v gonilnik terminala
      ni le nemoralno, je izguba časa;
\item Dokazano je, da so ,,post-hipnotične sugestije``
      neučinkovite, če jih izvajamo na nič hudega slutečih
      hekerjih Unixa;
\item Že zdaj smo kot varnostno sredstvo implementirali
      visoko-napetostne električne šoke v izvorni kodi
      za \texttt{login}.
\end{enumerate}
Upamo, da boste še enkrat premislili.
\end{quote}

To besedilo se lahko takole zapiše v opisnem jeziku za \LaTeX:
\begin{verbatim}
\begin{quote}
Gospod Torvalds: 

Zelo smo vznemirjeni zaradi vaših trenutnih načrtov za izvedbo
\emph{post-hipnotičnih sugestij} s kodo terminalskega gonilnika
v \textbf{Linuxu}.  Tako čutimo iz treh razlogov:
\begin{enumerate}
\item Podtikanje subliminalnih sporočil v gonilnik terminala
      ni le nemoralno, je izguba časa;
\item Dokazano je, da so ,,post-hipnotične sugestije``
      neučinkovite, če jih izvajamo na nič hudega slutečih
      hekerjih Unixa;
\item Že zdaj smo kot varnostno sredstvo implementirali
      visoko-napetostne električne šoke v izvorni kodi
      za \texttt{login}.
\end{enumerate}
Upamo, da boste še enkrat premislili.
\end{quote}
\end{verbatim}

Avtor vnese besedilo s katerimkoli urejevalnikom navadnega besedila in
ustvari oblikovan izhod s procesiranjem izvornega besedila z
\LaTeX-om.  Na prvi pogled se morda zdi stavni jezik skrivnosten,
vendar ga je v resnici zelo lahko razumeti.  Uporaba sistema za
stavljenje besedil že ob pisanju vsiljuje tipografske standarde.  Vsi
oštevilčeni seznami v spisu bodo izgledali enako, razen če avtor
spremeni definicijo oštevilčenega seznama.  Cilj takšne filozofije je,
da se avtor osredotoči na samo besedilo, ne na podrobnosti dogovorov o
stavljenju.

Ko se piše v urejevalniku besedil, se v splošnem ne razmišlja o tem,
kakšno bo videti natisnjeno besedilo.  Pisec se nauči končni izgled
predočiti v mislih s pomočjo formatirnih ukazov v izvornem besedilu.

Urejevalniki besedil WYSIWYG so privlačni zaradi več razlogov.
Ponujajo lahko praktičen vizualni vmesnik za urejanje spisov.  Toda ta
vmesnik je omejen na aspekte videza besedila, ki so dostopni
uporabniku.  Na primer, veliko urejevalnikov besedil še vedno ponuja
poseben formatirni jezik za vključevanje zapletenih izrazov, na primer
matematičnih formul.  To je stavljenje besedila, čeprav v manjšem
obsegu.

Nezanemarljiva prednost stavljenja besedil je, da lahko določite
natančno tisto obliko, ki jo potrebujete.  V veliko primerih zahteva
stavni sistem naknadno določitev oblike.  Stavni sistemi tudi
omogočajo, da se izvorno besedilo uredi s katerimkoli tekstovnim
urejevalnikom, namesto da se zanašajo na formatne kode, ki so skrite
pod neprozornim uporabniškim vmesnikom urejevalnika besedil.  Nadalje,
izvorno besedilo se zlahka pretvori v druge oblike zapisa.  Cena za to
prilagodljivost in moč stavnih sistemov je pomanjkanje oblikovanja
WYSIWYG.

Nekateri programi vam pred tiskanjem omogočajo predogled oblikovanega
spisa na grafičnem zaslonu.  Program \texttt{xdvi} pod okni X prikaže
>>od naprave neodvisno<< datoteko, ki jo naredi sistem \TeX.
Aplikacije kot sta \texttt{xfig} in \texttt{gimp} ponujajo grafične
vmesnike WYSIWYG za risanje slik in diagramov, ki se lahko pretvorijo
v opisno obliko, primerno za vključitev v vaš sestavek.

Stavniki besedil kot \texttt{troff} so se pojavili dosti prej kot
urejevalniki besedil WYSIWYG.  Mnogo ljudi ima še vedno raje njihovo
vsestranskost in neodvisnost od grafičnega okolja.

% Sorry about this.
\font\manual=manfnt
\def\MF{{\manual META}\-{\manual FONT}}

Na voljo je veliko pripomočkov, povezanih s stavljenjem besedil.
Zmogljivi sistem \MF, ki se uporablja za oblikovanje pisav za \TeX, je
vključen v izvedbo \TeX-a za Linux.  Drugi programi vključujejo
\texttt{ispell}, interaktivni črkovalnik in popravljalnik;
\texttt{makeindex}, ki generira stvarna kazala v \LaTeX-ovih spisih;
in veliko drugih paketov makrojev za \TeX{} in \texttt{groff}, ki
oblikujejo raznovrstna tehnična in matematična besedila.  Na voljo so
tudi programi, ki prevajajo izvorno kodo za \TeX{} ali \texttt{groff}
v veliko število drugih formatov.

Novinec pri stavljenju besedil je YODL, ki ga je napisal Karel Kubat.
YODL je lahko naučljivi jezik s filtri za izdelavo različnih
izhodnih formatov, kot so \LaTeX{}, SGML in HTML.
