Dal�� P�edchoz� Obsah

7. TeX a jin� DTP syst�my

Petr Kol�� [email protected]; 17. 5. 1999

Nejnov�j�� verze �esk�ho teTeXu pro Red Hat 6.0 je na ftp://luznice.felk.cvut.cz/pub/cstex/.

Michal Choura [email protected], Pavel Jan�k ml. [email protected]: 28. 7 1998; Arno�t �t�dr� [email protected]: star�� verze

7.1 Instalace z RPM bal�k� CSTeXu pro RedHat

V sou�asn� dob� existuj� pro distribuci RedHat 5.x bal�ky s kompletn�m �esk�m TeXem. Lze je nal�zt na serveru ftp://math.feld.cvut.cz/pub/cstex/unix/RPMS/ a mirrorech, nap�. ftp://ftp.fi.muni.cz/pub/linux/localization/cstex/. Bal�ky obsahuj� teTeX ve verzi 0.9, a obvykle nejnov�j�� verze dopl�k� csTeXu, tedy csplain, cslatex a dopl�ky do pdfTeXu v�etn� Postscriptov� verze CS font�. Doporu�uji p�ed instalac� p�e��st soubor README.cstetex, kde jsou aktu�ln� informace o bal�c�ch. Rozd�ly oproti p�edchoz�m verz�m lze zjistit p��kazem rpm -qp --changelog tetex-0.9cs-*.i386.rpm.

Postup instalace je jednoduch�. P�esv�d�te se, �e dosud nem�te ��dn� TeX instalov�n; pokud p��kaz

# rpm -qa | grep tetex

zobraz� n�jak� v�stup, tedy jm�no n�jak�ho bal�ku, je t�eba jej odinstalovat p��kazem rpm -e jm�no_bal�ku. Potom lze nainstalovat bal�ky s �esk�m TeXem:

# rpm -Uvh tetex-0.9cs-*.i386.rpm

Pochopiteln�, pokud n�kterou z ��st� nechcete instalovat, nemus�te.

�erstv� nainstalovan� TeX je dobr� nakonfigurovat. K tomu slou�� program texconfig. Po jeho spu�t�n� se objev� menu, kde doporu�uji zkonfigurovat minim�ln� dvips. Tento program toti� v z�kladn� konfiguraci p�esm�rov�v� sv�j v�stup p��mo na tisk�rnu. Zvolte tedy v hlavn�m menu ,,dvips``, d�le ,,global settings``, velikost pap�ru ,,A4``, potom vyberte ,,Set up the command to print on this printer`` a stiskn�te Enter.

Bal�ky v bin�rn� form� jsou kompilov�ny na RedHatu 5.x, a tedy s knihovnou glibc. Nebudou proto chodit na star��ch verz�ch RedHatu. Pokud byste je cht�li pou��vat na star��ch distribuc�ch, je nutn� je p�elo�it z bal�ku tetex-0.9cs-*.src.rpm. Vzhledem ke komplexnosti TeXu v�ak je (alespo� zat�m) nutn� bal�k p�ekl�dat p��mo v syst�mov�ch adres���ch. Proto nejlep�� je p�eklad prov�st na n�jak�m zku�ebn�m po��ta�i. Pozor, v pr�b�hu p�ekladu bal�ku se sma�e obsah adres��e /usr/lib/texmf!

Dal�� informace lze z�skat z ftp serveru ftp://math.feld.cvut.cz/pub/cstex/unix/README.*

7.2 Obecn� instalace na libovoln� Unix

Existuj� dv� mo�nosti. Jednak m��ete nainstalovat TeX ze zdrojov�ch k�d� web2c, dnes ve verzi 7.2, a nebo instalovat komplexn� teTeX. Prvn� mo�nost popisuje pan Petr Ol��k v textu, kter� lze nal�zt na ftp://math.feld.cvut.cz/pub/cstex/unix/README.web2c. Pokud m�te dost m�sta na disku, doporu�uji druhou mo�nost, instalaci teTeXu. Postup prozkoumal Pavel Jan�k ml.

Pro kompilaci a instalaci budete pot�ebovat asi 100 MB voln�ho m�sta. Origin�ln� teTeX lze nal�zt na ftp://ftp.rrzn.uni-hannover.de/pub/local/misc/teTeX-beta/, d�le budete pot�ebovat z  ftp://math.feld.cvut.cz/pub/cstex/unix/ soubory csfonts.tar.gz, cspdftexlib.tar.gz, csplain.tar.gz, cspsfonts.tar.gz, csuvodlat.tar.gz, enctex.tar.gz a nejnov�j�� cslatex-*-.tar.gz. Mnoho cenn�ch rad najdete t� v souboru README.web2c-7.2 tamt�. Vzhledem k rychlosti v�voje doporu�uji t� st�hnout nejnov�j�� verzi pdfTeXu z  ftp://ftp.cstug.cz/pub/local/cstug/janik/, soubory pdftex.tar.gz, Makefile.in a configure.in (p�e�t�te si soubor Install, postup se �asto m�n�).

Do libovoln�ho adres��e, nap�. /usr/src, rozbalte origin�ln� zdrojov� k�dy:

# cd /usr/src
# tar xzvf teTeX-src-0.9.tar.gz

D�le do n�jak�ho vhodn�ho adres��e um�st�te strom vstupn�ch soubor� TeXu:

# mkdir -p /usr/local/teTeX/share/texmf
# cd /usr/local/teTeX/share/texmf
# tar xzvf teTeX-texmf-0.9.tar.gz

Rozbalte distribu�n� bal�k enctexu (umo�n� v TeXu pou��vat a za b�hu p�ep�nat vstupn� k�dov�n� TeXov�ch dokument�):

# cd /usr/src/teTeX-0.9
# tar xzvf enctex.tar.gz

Instalujte �esk� dopl�ky do TeXu (Latex nen� nutno mazat cel�, sta�� smazat adres��e misc, input, a rad�ji i graphics, psnfss a tools):

# rm -rf /usr/local/teTeX/share/texmf/tex/latex
# cd /usr/local/teTeX/share/
# tar xzvf csplain.tar.gz
# tar xzvf cslatex-*.tar.gz
# tar xzvf csfonts.tar.gz
# tar xzvf cspsfonts.tar.gz
# tar xzvf cspdftexlib.tar.gz
# tar xzvf csuvodlat.tar.gz

Pokud chcete pou��vat pdfTeX, nainstalujte nejnov�j�� verzi:

# cd /usr/src/teTeX-0.9/texk/web2c
# rm -rf pdftexdir
# tar xzvf pdftex.tar.gz

Soubory Makefile.in a configure.in z distribuce pdfTeXu p�ekop�rujte do t�ho� adres��e (p�ep��� p�vodn�). Pak vytvo�te nov� soubory Makefile.in a configure.in p��kazem

# autoconf -m ../etc/autoconf
# ./configure

Vytvo�te Makefile pro kompilaci:

# cd /usr/src/teTeX-0.9
# ./configure --prefix=/usr/local/teTeX --disable-multiplatform

Aplikujte patch enctexu (ovlivn� tex.ch) a zkop�rujte jeho soubory do TeXov�ho stromu:

# cd /usr/src/teTeX-0.9/texk/web2c/
# patch <../../enctex/enctex.patch-to-7.2
# mkdir /usr/local/teTeX/share/texmf/tex/enctex
# cp ../../enctex/*.tex /usr/local/teTeX/share/texmf/tex/enctex

D�le je vhodn� upravit Makefile pro xdvi tak, aby se jako n�hradn� font pou��val csr10 a zm�nit standardn� velikost pap�ru z Letter na A4. V souboru /usr/src/teTeX-0.9/texk/xdvik/Makefile upravte ��dek

DEFS = -DHAVE_CONFIG_H $(XDEFS)

na

DEFS = -DHAVE_CONFIG_H -DA4 -DALTFONT=\"csr10\" $(XDEFS)

Aby TeX spr�vn� pracoval s �esk�mi Postscriptov�mi fonty, je t�eba v adres��i /usr/local/teTeX/share/texmf/dvips/ p�idat obsah souboru rawfonts.map na za��tek psfonts.map. Proto:

# cd /usr/local/teTeX/share/texmf/dvips
# mv psfonts.map psfonts.orig
# cat rawfonts.map psfonts.orig > psfonts.map

A dal�� �prava Postscriptov�ch font� je nutn� pro spr�vnou �innost pdfTeXu. Prohl��e�e PDF znaj� jen n�kolik z�kladn�ch font�, ostatn� je nutn� do dokumentu p�ilo�it. Mus�te m�t nainstalov�ny fonty, dod�van� s programem Ghostscript. V souboru /usr/local/teTeX/share/texmf/fonts/type1/adobe/subs upravte prom�nnou GSFPATH tak, aby ukazovala na adres�� s Postscriptov�mi fonty Ghostscriptu. Potom skript pus�te, vygeneruj� se linky na tyto fonty:

# cd /usr/local/teTeX/share/texmf/fonts/type1/adobe/
# ./mklinks

Nejv�ce probl�m� je s TeXov�m modulem Babel. Ten toti� obsahuje soubor czech.sty, jeho� jm�no koliduje se stylem czech.sty, kter� pou��v�me v CSTeXu. Pokud Babel nebudete pot�ebovat, nejjist�j�� je jej zcela vyjmout:

# rm -rf /usr/local/teTeX/share/texmf/tex/generic/babel

Pokud jej pot�ebujete, je nutn� upravit soubor /usr/local/teTeX/share/texmf/web2c/texmf.cnf tak, aby soubor czech.sty z adres��e /usr/local/teTeX/share/texmf/tex/csplain na�etl v�dy d��ve, ne� ten z Babelu.

Te� ji� m��ete cel� teTeX p�elo�it. Nejprve mus�te obnovit TeXovou datab�zi soubor� ls-R, nebo� jste m�nili obsah TeXov�ho stromu.

# cd /usr/src/teTeX-0.9/texk/kpathsea
# make
# ./mktexlsr
# cd ../..
# make world

A nakonec je t�eba vygenerovat �esk� (slovensk�) form�ty TeXu:

# PATH=/usr/local/teTeX/bin:$PATH
# cd /usr/local/teTeX/share/texmf/web2c
# tex -ini csplain.ini
# ln -s latex.fmt cslatex.fmt
# pdftex -fmt pdfcsplain -ini csplain.ini
# etex -efmt=ecsplain -ini \*csplain.ini
# tex -ini cslatex.ini
# cd ../../bin
# ln -s tex csplain
# ln -s tex cslatex
# ln -s pdftex pdfcsplain
# ln -s etex ecsplain
# mktexlsr

Pak u� zb�v� jen TeX nakonfigurovat (viz odstavec o teTeXu pro RedHat) a vyzkou�et.

7.3 Dopl�ky pro TeX

Program vlnka

Slou�� pro p�id�n� vlnky (mezery, ve kter� nem��e doj�t ke zlomu ��dky). Program je k dispozici na ftp://math.feld.cvut.cz/pub/olsak/vlna/. Pro RedHat Linux je k dispozici RPM bal�k na ftp://ftp.fi.muni.cz/pub/linux/localization/ a nebo v adres��i contrib na ka�d�m zrcadle RedHatu.

csindex

Program csindex slou�� pro vytv��en� spr�vn� �esky nebo slovensky set��d�n�ch index� pro LaTeX. Pro RedHat Linux lze nal�zt na ftp://ftp.fi.muni.cz/pub/linux/localization/.

a2ac

Utilitka a2ac um� do Postscriptov�ho AFM souboru p�idat znaky s �esk�mi akcenty. Slou�� pro po�e��ov�n� Postscriptov�ch font�. Program lze nal�zt na ftp://math.feld.cvut.cz/pub/olsak/a2ac/, RPM bal�k pro RedHat Linux je na ftp://ftp.fi.muni.cz/pub/linux/localization/ nebo v adres��i contrib na ka�d�m zrcadle RedHatu.

7.4 �esk� fonty v TeXu

O k�dov�n�

V sou�asn� dob� existuj� t�i z�kladn� mo�nosti jak v TeXu ps�t �esky:

  1. Pou��t nativn� TeXovsk� p��stup a k�dovat �esk� znaky pomoc� sekvenc� \', \v a \accent23, kde \' je sekvence pro ��rku, \v pro h��ek a \accent23 pro krou�ek.
  2. Pou��t CS-fonty distribuovan� CSTUGem a pro k�dov�n� znak� u��vat str�nku ISO-Latin-2.
  3. Pou��t EC/DC fonty pokr�vaj�c� t�m�� v�echny evropsk� jazyky (bal�k Babel).

V�hody a nev�hody t�chto p��stup�:

  1. Lehk� p�enositelnost dokument� jak ve zdrojov�m k�du, tak ve form� dvi. Tento p��stup se kv�li nep�ehlednosti vypl�c� pouze tehdy, pokud �e�tinu pou��v�me na m�lo m�stech v textu. P��klad sl\accent23 un\v ec\'\i = sl�n�c� to mysl�m dokumentuje.
  2. CS fonty jsou osmibitov� fonty obsahuj�c� plnou podporu pro psan� �e�tiny a sloven�tiny. V�echny znaky jsou zde obsa�eny ve sv� akcentovan� podob�, nechyb� ani �esk� uvozovky a ogonok pro psan� polsk�ch slov. Ve znac�ch 1--127 se shoduj� s cm-fonty, �esk� a slovensk� znaky jsou k�dov�ny jako ISO-Latin-2. Instalac� CSTeXu se zab�v� kapitola Obecn� instalace na libovoln� Unix.
  3. EC/DC fonty se st�vaj� evropsk�m standardem a zd� se, �e vytla�� z LaTeXu p�vodn� Knuthovy cm-fonty. K�dov�ny jsou dle standardu Cork. Ve spojen� s LaTeX2e a bal�kem Babel jsou mocn�m n�strojem k psan� v�cejazy�n�ch dokument�. Jejich nev�hodou je men�� typografick� �istota a nekompatibilita s cm-fonty co se t�k� um�st�n� znak� 1--127. Nap�. ��rka nad �esk�m p�smenem � se m� li�it co do velikosti od ��rky nad francouzsk�m p�smenem �, co� v EC/DC fontech z d�vodu nedostatku m�sta nen�. Na druhou stranu jsou podobn� jako cm-fonty k dost�n� ve form�tu Type 1. Metafontov� zdroj�k je pon�kud rozs�hl�, tj. stovky mal�ch soubor�. Sou�asn� CSTeX zaji��uje podporu EC/DC font� pomoc� parametru T1 p��kazu:
      \usepackage[T1]{czech}
      
    
    Je nutno m�ti na pam�ti, �e v LaTeXu mus� b�t zavedeny vzory pro d�len� slov pro T1 k�dov�n�, tj. p�i initexov�n� zad�no v hyphen.cfg:
      \DeclareLanguage[IL2,T1]{\czech}{czhyphen.tex}%
                                    {\lefthyphenmin=2 \righthyphenmin=3
                                     \@requesthyphens}%
      
    

    Pro bli��� info o czech.sty: http://home.zcu.cz/~snajdr5/cslatex/

    Pokud nepot�ebujeme d�len� slov (nechce se n�m pr�v� te� instalovat CSTeX) m��eme pou��t:

    \usapackage[T1]{fontenc}
    

Tak�e (1) pou�ijeme v�t�inou v p��pad�, kdy p��eme dopis v cizin� nebo n�m nezb�v� �as na instalaci. (2) je v sou�asn� dob� podporov�no CSTuGem, tak�e v r�mci �esk� republiky by m�l b�t bezprobl�mov�. (3) je zp�sob podporovan� v Evrop�, �asem by se m�l st�t standardem, tj. vesm�s dostupn�m.

Form�ty font�

Do TeXu lze pohodln� za�lenit jednak fonty ve form�tu Metafontu, jednak fonty ve form�tu Type 1. Prvn� lze vyu��t pro v�echna za��zen�, druh� je v�hodn� pou��vat p�i p�evodu textu do PostScriptu programem DVIPS, kter� zvl�t� ve velk�ch rozli�en�ch generuje men�� v�stup.

Metafontov� fonty

V sou�asn� dob� v�m pouze o t�ech pln� �esk�ch fontov�ch sad�ch. Jednak tedy EC-fonty, pak CS-fonty a nakonec Concrete Modern fonty (vlastn� se jedn� o pouh� klon CS-font�) po�e�titeln� stejn�m mechanismem jako jsou z CM font� ud�l�ny CS-fonty.

D�le se vyskytuj� fonty (nap�. Pandora) dob�e po�e�titeln� pomoc� virtu�ln�ch font� (programem l2accent ftp://ftp.cstug.cz/pub/local/fontware/accents/).

V�echny zm�n�n� fonty jsou dostupn� v arch�vu ftp://ftp.cstug.cz/pub/local/, ftp://ftp.cstug.cz/pub/CTAN/fonts/.

Type 1 fonty

V sou�asn� dob� je k dispozici mnoho �esk�ch nebo po�e�titeln�ch font� ve form�tu Type 1. Tyto fonty mohou b�t bu� p��mo vestav�ny ve v�stupn�m za��zen� nebo mohou b�t dod�v�ny ve form� soubor� s p��ponou pfa nebo pfb, k nim� by m�l b�t dod�v�n i metrick� soubor s p��ponou afm.

Po�e�t�n� font� zabudovan�ch ve v�stupn�m za��zen�.

Tyto fonty lze po�e�tit mechanismem virtu�ln�ch font�. Pokud chcete po�e�tit pouze fonty ze z�kladn� sady, tj.:

TimesNewRoman
Helvetica
NewCenturySchoolBook
Palatino
Bookman

lze s v�hodou pou��t ji� hotov� �e�en� z bal�ku cspsfonts.tar.gz. Obsahuje TFM a VF soubory, kter� sta�� um�stit na pat�i�n� m�sta (/usr/lib/texmf/fonts/tfm, /usr/lib/texmf/fonts/vf). Verze po�e�t�n�ho teTeXu v RPM bal�c�ch je ji� obsahuje.

Pokud vlastn�te Postscriptov� font ve form� AFM a PFA, resp. AFM a PFB soubor�, jsou r�mcov� dv� mo�nosti:

  1. Font je ji� po�e�t�n�, zb�v� jej pouze p�ek�dovat.
  2. Font zat�m neobsahuje v�echny �esk� znaky.

Jak to zjist�m? Pokud ji� font obsahuje �esk� znaky, pak je o nich informace v AFM souboru. Pod�v�me se tedy, zda-li AFM soubor obsahuje ��dky typu:

C -1 ; WX 722 ; N Aacute ; B 15 0 706 892 ;

kde m�sto Aacute jsou postupn� n�zvy �esk�ch znak� (caron = h��ek, acute = ��rka, ring = krou�ek, tedy Ccaron = � (C s h��kem), uring = � (u s krou�kem)). Pokud se n�m poda�� naj�t v�echna �esk� p�smena, m��eme zkusit vygenerovat font p��kazem:

$ afm2tfm font.afm -t kodovani.enc -v cfont rfont

kde

font.afm         je jm�no p�vodn�ho fontu
kodovani.enc     je jm�no �esk�ho k�dov�n�
cfont            je jm�no �esk�ho fontu
rfont            je jm�no raw fontu

�esk� k�dov�n� jsou dostupn� nap�. v bal�ku a2ac ftp://ftp.cstug.cz/pub/local/cstug/olsak/a2ac, kde je tak� podrobn�j�� info. Jm�no �esk�ho fontu by m�lo b�t ve shod� s ,,Font Naming Conventions`` ftp://ftp.cstug.cz/pub/tex/CTAN/documentation/fontname/. Jm�no raw fontu m��ete zvolit libovoln�, v�t�inou se pou��v� jm�no p�vodn�ho fontu s p�edponou r.

Program afm2tfm vygeneruje jednak na standardn� v�stup ��dek:

rfont JmenoFontu

kter� p�id�te (po mal� �prav�) do souboru psfonts.map (/usr/lib/texmf/texmf/dvips/misc/psfonts.map). Co a jak p�esn� p�idat do tohoto souboru, je l�pe konzultovat v dokumentaci k programu DVIPS.

D�le vytvo�� soubor rfont.tfm a cfont.vpl. Na posledn� jmenovan� aplikujeme program:

vptovf cfont.vpl

��m� dostaneme soubory cfont.tfm a cfont.vf, kter� um�st�me do adres��� /usr/lib/texmf/texmf/fonts/tfm a /usr/lib/texmf/texmf/fonts/vf.

Pokud font �esk� znaky neobsahuje, m��ete se pokusit sjednat n�pravu programem a2ac ftp://ftp.cstug.cz/pub/local/cstug/olsak/a2ac, kter�, pokud najde jednotliv� akcenty, je schopen vytvo�it kompozitn� popis v�ech �esk�ch p�smen.

Podrobn�j�� popis viz dokumentace k a2ac, �i �l�nek Virtu�ln� fonty, accents a p��tel� ftp://ftp.cstug.cz/pub/tex/local/cstug/sojka/aboutacc/.

7.5 LyX

Program LyX slou�� k vytv��en� textov�ch dokument�. Je to nadstavba nad TeX, p�esn�ji nad makro LaTeX. U�ivatel LyXu pracuje s grafick�m rozhran�m, podobaj�c�m se textov�m editor�m ze sv�ta MS Windows. V�stup programu LyX se po stisku tla��tka zpracuje LaTeXem a proto je v�sledn� dokument typograficky pom�rn� kvalitn�.

LyX upraven� pro bezprobl�movou pr�ci v �e�tin� pro RedHat Linux lze nal�zt na ftp://ftp.fi.muni.cz/pub/linux/localization/.

7.6 Literatura


Dal�� P�edchoz� Obsah