1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197
|
Balk soubor (texinput) na generovn formtu csplain
******************************************************
* Petr Olk Verze: z 1996 *
jen 1998
Formt csplain je skoro shodn s klasickm formtem plain. Rozdl je jedin
v tom, e msto CM font se pracuje s CS-fonty, co umouje zavst
v tomto kdovn font vzory dlen pro esk a slovensk jazyk.
Pomoc formtu csplain je mono nahradit originln formt plain,
tj. pro anglick dokumenty se oba formty chovaj (skoro) stejn.
Nepatrn odlinosti, vyplvajc z pouit CS-font msto CM font,
viz soubor cs-fonts.doc.
Potebn soubory
****************
Pro vygenerovn formtu csplain je poteba:
1. v /tfm mt metriky CS-font (nap. csr10.tfm),
2. v /texinput mt nsledujc soubory:
csplain.ini ... hlavn soubor pro vygenerovn formtu
plain.tex ... Knuthv plain
csfonts.tex ... makro pro zaveden CS-font
il2code.tex ... makro pro prci s kdem CS-font (ISO-8859-2)
hyphen.lan ... dic soubor k zavedn vzor dlen rznch jazyk
hyphen.tex ... zkladn vzory dlen pro US (soust plainu)
hyphen.ex ... slovnk vjimek pro US
czhyphen.tex ... vzory dlen pro etinu
czhyphen.ex ... slovnk vjimek pro etinu
skhyphen.tex ... vzory dlen pro sloventinu
skhyphen.ex ... slovnk vjimek pro sloventinu
plaina4.tex ... makro upravujc vhoz rozmr zrcadla pro A4
3. pokud pedpokldte vstupn soubory v jinm kdovn, ne ISO-8859-2,
potebujete navc a) pi pouit emTeXu -- pslunou *.tcp tabulku
b) pi vyuit encTeXu -- pslun soubor enc-?.tex
Generovn formtu
******************
Generovn formtu csplain je zvisl na implementaci TeXu.
V UNIX like systmech (odvozench z implementace web2c) pouijte pkaz:
initex csplain.ini
nebo v novj verzi web2c:
tex -ini csplain.ini
Vstupn kdovn bude rovno vnitnmu kdovn ISO-8859-2. Pedpoklte-li
kdovn vstupnch text v jinm kdovn, ne ISO-8859-2 a navc mte
implementaci binrnho programu TeX obsahujc encTeX (to poznte podle
druhho dku v soborech *.log), pak si vyberte jedno z psmen: w=CP1250,
k=Kamenicti, p=PC Latin2 (CP852) a inicializujte formt takto:
tex -ini \let\enc=? \input csplain.ini
kde ? je jedno z psmen w, k, nebo p charakterizujc vstupn kdovn. Na
pkazovm dku v UNIXu muste kad znak "\" pst dvakrt, napklad:
tex -ini \\let\\enc=k \\input csplain.ini
Potebujete-li implementovat vstupn kdovn, kter zde nen uvedeno,
zvolte si pro n njak dal psmeno a editujte pslun soubor enc-?.tex.
V DOSu (emTeXu) mete volit vstupn kdovn pomoc *TCP tabulek. Nap.
pro kdovn Kamenickch napete:
tex[386] /i /8 -cKAMENIC.TCP csplain.ini
Mete si ovit sprvnost instalace csplainu testem cstrip. Viz soubor
cstripm.dvi nebo cstripm.ps
Pouit etiny a sloventiny
*****************************
csplain je inicializovn tak, aby se implicitn choval jako plain. To
znamen, e je nastaveno anglick dlen slov a sekvence \v, \'
expanduj na primitiv \accent. Rovn je aktivn \nonfrenchspacing.
Rozdl je jen ve velikosti implicitnho rozmru zrcadla sazby, kter je
v csplainu nastaveno pro palcov okraje pi formtu A4, zatmco
v plainu je nastaveno pro palcov okraje formtu Letter.
Pro sazbu v eskm nebo slovenskm jazyce NEMUSTE volat styl
czech.sty. Sta pout na zatku dokumentu tyto sekvence:
\chyph % nebo \shyph : inicializuje esk/slovensk dlen slov
% a \frenschpacing
\csaccents % zpsob jin chovn sekvenc \' \v a \r, kter od tto
% chvle expanduj na znaky podle CSfont
% nvrat k pvodnmu nastaven:
\ehyph % americk dlen a \nonfrenchspacing
\cmaccents % \, \v expanduj na primitiv \accent
Od verze csplainu <Sep. 1996> je sekvence pro uvozovky \uv{cosi}
zanesena do formtu.
Verze csplainu.
***************
csplain zavd do \everyjob hlen o datu poslednho zsahu do
zdrojovch text csplainu (viz soubor csplain.ini). Pokud tam takov
hlen nen, mte verzi csplainu z r. 1994 nebo star.
Jednotliv verze oznaujeme datem zmny zdrojovho textu a nikoli
slem. Odlinosti novjch verz ne <Apr. 1995> jsou uvedeny pmo
v souboru csplain.ini. Odlinosti verze z roku 1994 od <Apr. 1995>
jsou uvedeny ne.
V em se li csplain z csTeXu94 od verze <Apr. 1995>
*****************************************************
1. plain.tex. Msto verze 3.0 je pouita verze 3.14159.
2. csfonts.tex. Navc pidna vlastnost \font\preloaded = nezavdj dn font.
Dsledek: Po naten formtu plain.tex je zavedeno pouhch 16 zkladnch
font proti dvjm 50.
Dvod: Pi dnench rychlostech pota u asi neocenme, e je njak
font dopedu zaveden ve formtu. Navc mme vce msta pro nov fonty.
Odchylka: Krom nepatrnho zdren pi zavdn (dve \preloaded) font
nen dn jin rozdl.
3. il2code.tex (dve extcode.tex). Krom pvodnch definic \catcode,
\lccode a \uccode obsauje dal makra zvisl na kdovn.
a) makro \csaccents pedefinuje makra \v, \', ... tak, e expanduj
pmo do znak podle CS-font.
Vhody:
* Po \csaccents lze nast vzory dlen ve tvaru nezvislm na
kdovn.
* Po \csaccents budou sprvn rozdlena i slova zapsan
t\'imto zp\r usobem. Tak na n bude sprvn fungovat primitiv
\uppercase (vjimku tvo ppad, kdy je \'i psno "postaru", tj.
jako \'\i).
* \v d a \v t vede na a (s apostrofy, nikoly s hky).
Vchoz chovn formtu csplain je z dvodu nutn kompatibility
se standardnm plainem nastaveno na pvodn vznam maker \v, \'.
Pkazem \csaccents se inicializuje nov vznam a pkazem \cmaccents
se ve vrac do pvodnho stavu. Inicializace je navc lokln vrmci
skupiny.
Pokud bude nkdo asto pepnat \csaccents, \cmaccents, pak me
potlait hlky na terminlu a do .logu pedefinovnm pkazu
\csaccentsmessage, \cmaccentsmessage.
b) Jsou doplnny definice sekvenc, kter jsou zvisl na kdovn
CS-font. Tj. uvozovky \clqq, \crqq, \flqq, \frqq, \ogonek, \promile.
Dle je definovn pkaz \extrahyphens, kter inicializuje
\hyphenchar do alternativnho znaku v CS-fontu pro zkladn
desetibodov textov fonty. Tm nap. "je-li" nebude rozdleno.
Bohuel vznik zobrazovac zdrhel: pi hlkch "Overfull" TeX
zobrazuje na terminl msto znaku - znak ^^9c. V emTeXu sta mrn
upravit tabulku tcp a smrovat do ^^9c njak nhradn a podobn
semigrafick symbol (viz piloen tabulka kamenic.tcp).
4. hyphen.lan.
* Na zatku m \csaccents, aby zavedl vzory dlen napsan
pomoc sekvenc a na konci vrac \cmaccents.
* Msto hyphen.cz a hyphen.czx zavd czhyphen.tex a czhyphen.ex (z dvodu
kompatibility s makrem pro etinu v LaTeXu 2e). Podobn pro dal
jazyky.
* Msto pvodnch \righthyphenmin=2 je pro \chyph a \shyph zavedeno
\righthyphenmin=3 (co je podle normy). Sz-li uivatel do zkch
sloupc, me si to zmnit napklad takto: \chyph \righthyphenmin=2
* Pi voln czhyphen.tex, skhyphen.tex je \let\global=\relax, aby
nedolo ke zmn \everyjob\message. Skutenost, jak dlen slov je
zavedeno, lze zjistit z verze csplainu <Apr. 1995>, tj. nen poteba
jmenovat njak konkrtn lidi v \everyjobu.
5. czhyphen.tex je kompletn jin (zejm lep), ne v pvodnm csTeXu.
Je pouito dlen, kter (po mrnm pomren) dal k dispozici Pavel
eveek TeXovsk veejnosti pro pouit v nekomernm svt zdarma.
6. czhyphen.ex je zmeneno o vci, kter u czhyphen.tex um sprvn a
zbytek je pepsn do sekvenc nezvislch na kdovn.
7. skhyphen.tex je pravdpodobn stejn, jako bylo (nezkoumal jsem to).
Stejn tak zstv skhyphen.ex. Je pouito dlen run vyroben
Jankou Chlebkovou.
8. csplain.ini.
* Zmnno poad voln extcode.tex
* Zmnn text \everyjob\message.
9. czech.sty
* Na zatku zaazena vtvika
\if Formt=LaTeX2e \input lczech.sty \endinput \fi
* Zaazen nov test na \ifx\chyph\undefined \message{Warning...}
* Zaazen test na pouit CS-font podle prvnch dvou psmen v nzvu
fontu \tenrm. Pokud CS-fonty jsou zavedeny a pitom nen definovn
\clqq (ppad star csformt, nov czech.sty), pak se definuj nkter
sekvence analogicky, jako v bod 3b).
* Do pkaz \czechTeX, resp. \originalTeX je vloeno \csaccents, resp.
\cmaccents, tj. styl czech aktivuje \csaccents.
* Ve, co bylo eeno pro czech.sty plat analogicky pro slovak.sty
|