Bal璭 soubor□(texinput) na generov嫕□form嫢u csplain
******************************************************
* Petr Ol嫗k Verze: z暟□1996 *
齶jen 1998
Form嫢 csplain je skoro shodn□s klasick□ form嫢em plain. Rozd璱 je jedin□v tom, 頡 m疄to CM font□se pracuje s CS-fonty, co□umo橢uje zav廥t
v tomto k鏚ov嫕□font□vzory d骴en□pro 鋀sk□a slovensk□jazyk.
Pomoc□form嫢u csplain je mo駐o nahradit origin嫮n□form嫢 plain,
tj. pro anglick□dokumenty se oba form嫢y chovaj□(skoro) stejn□
Nepatrn□odli雉osti, vypl□aj獳□z pou養t□CS-font□m疄to CM font□
viz soubor cs-fonts.doc.
Pot鷫bn□soubory
****************
Pro vygenerov嫕□form嫢u csplain je pot鷫ba:
1. v /tfm m癃 metriky CS-font□(nap□ csr10.tfm),
2. v /texinput m癃 n嫳leduj獳□soubory:
csplain.ini ... hlavn□soubor pro vygenerov嫕□form嫢u
plain.tex ... Knuth驠 plain
csfonts.tex ... makro pro zaveden□CS-font□ il2code.tex ... makro pro pr塶i s k鏚em CS-font□(ISO-8859-2)
hyphen.lan ... 齶dic□soubor k zavedn□vzor□d骴en□r鱵n□h jazyk□ hyphen.tex ... z嫜ladn□vzory d骴en□pro US (sou魨st□plainu)
hyphen.ex ... slovn璭 v□imek pro US
czhyphen.tex ... vzory d骴en□pro 鋀靖inu
czhyphen.ex ... slovn璭 v□imek pro 鋀靖inu
skhyphen.tex ... vzory d骴en□pro sloven靖inu
skhyphen.ex ... slovn璭 v□imek pro sloven靖inu
plaina4.tex ... makro upravuj獳□v□oz□rozm鬳 zrcadla pro A4
3. pokud p鷫dpokl墂嫢e vstupn□soubory v jin幦 k鏚ov嫕□ ne□ISO-8859-2,
pot鷫bujete nav獳 a) p鷡 pou養t□emTeXu -- p齶slu雉ou *.tcp tabulku
b) p鷡 vyu養t□encTeXu -- p齶slu雉□soubor enc-?.tex
Generov嫕□form嫢u
******************
Generov嫕□form嫢u csplain je z嫛isl□na implementaci TeXu.
V UNIX like syst幦ech (odvozen□h z implementace web2c) pou養jte p齶kaz:
initex csplain.ini
nebo v nov骹寤 verzi web2c:
tex -ini csplain.ini
Vstupn□k鏚ov嫕□bude rovno vnit鷢璥u k鏚ov嫕□ISO-8859-2. P鷫dpokl嫢e-li
k鏚ov嫕□vstupn獳h text□v jin幦 k鏚ov嫕□ ne□ISO-8859-2 a nav獳 m嫢e
implementaci bin嫫n璫o programu TeX obsahuj獳□encTeX (to pozn嫢e podle
druh嶭o 鸅dku v soborech *.log), pak si vyberte jedno z p疄men: w=CP1250,
k=Kamenicti, p=PC Latin2 (CP852) a inicializujte form嫢 takto:
tex -ini \let\enc=? \input csplain.ini
kde ? je jedno z p疄men w, k, nebo p charakterizuj獳□vstupn□k鏚ov嫕□ Na
p齶kazov幦 鸅dku v UNIXu mus癃e ka鞏□znak "\" ps嫢 dvakr嫢, nap齶klad:
tex -ini \\let\\enc=k \\input csplain.ini
Pot鷫bujete-li implementovat vstupn□k鏚ov嫕□ kter□zde nen□uvedeno,
zvolte si pro n□n骹ak□dal寤 p疄meno a editujte p齶slu雉□soubor enc-?.tex.
V DOSu (emTeXu) m躨ete volit vstupn□k鏚ov嫕□pomoc□*TCP tabulek. Nap□
pro k鏚ov嫕□Kamenick□h nap竁ete:
tex[386] /i /8 -cKAMENIC.TCP csplain.ini
M躨ete si ov檟it spr嫛nost instalace csplainu testem cstrip. Viz soubor
cstripm.dvi nebo cstripm.ps
Pou養t□鋀靖iny a sloven靖iny
*****************************
csplain je inicializov嫕 tak, aby se implicitn□choval jako plain. To
znamen□ 頡 je nastaveno anglick□d骴en□slov a sekvence \v, \'
expanduj□na primitiv \accent. Rovn儩 je aktivn□\nonfrenchspacing.
Rozd璱 je jen ve velikosti implicitn璫o rozm鬳u zrcadla sazby, kter□je
v csplainu nastaveno pro palcov□okraje p鷡 form嫢u A4, zat璥co
v plainu je nastaveno pro palcov□okraje form嫢u Letter.
Pro sazbu v 鋀sk幦 nebo slovensk幦 jazyce NEMUS炆E volat styl
czech.sty. Sta鴈 pou橙t na za魨tku dokumentu tyto sekvence:
\chyph % nebo \shyph : inicializuje 鋀sk□slovensk□d骴en□slov
% a \frenschpacing
\csaccents % zp鑸ob□jin□chov嫕□sekvenc□\' \v a \r, kter□od t彋o
% chv璱e expanduj□na znaky podle CSfont□
% n嫛rat k p驠odn璥u nastaven□
\ehyph % americk□d骴en□a \nonfrenchspacing
\cmaccents % \, \v expanduj□na primitiv \accent
Od verze csplainu <Sep. 1996> je sekvence pro uvozovky \uv{cosi}
zanesena do form嫢u.
Verze csplainu.
***************
csplain zav墂□do \everyjob hl廜en□o datu posledn璫o z嫳ahu do
zdrojov□h text□csplainu (viz soubor csplain.ini). Pokud tam takov□hl廜en□nen□ m嫢e verzi csplainu z r. 1994 nebo star寤.
Jednotliv□verze ozna鋎jeme datem zm髶y zdrojov嶭o textu a nikoli
鴈slem. Odli雉osti nov骹寤ch verz□ne□<Apr. 1995> jsou uvedeny p齶mo
v souboru csplain.ini. Odli雉osti verze z roku 1994 od <Apr. 1995>
jsou uvedeny n篿e.
V 鋀m se li寤 csplain z csTeXu94 od verze <Apr. 1995>
*****************************************************
1. plain.tex. M疄to verze 3.0 je pou養ta verze 3.14159.
2. csfonts.tex. Nav獳 p鷡d嫕a vlastnost \font\preloaded = nezav墂骹 擔dn□font.
D鑸ledek: Po na鋈en□form嫢u plain.tex je zavedeno pouh□h 16 z嫜ladn獳h
font□proti d齶v骹寤m 50.
D驠od: P鷡 dne雉獳h rychlostech po鴈ta凞 u□asi neocen璥e, 頡 je n骹ak□ font dop鷫du zaveden ve form嫢u. Nav獳 m嫥e v獳e m疄ta pro nov□fonty.
Odchylka: Krom□nepatrn嶭o zdr頡n□p鷡 zav墂髶□(d齶ve \preloaded) font□ nen□擔dn□jin□rozd璱.
3. il2code.tex (d齶ve extcode.tex). Krom□p驠odn獳h definic \catcode,
\lccode a \uccode obsauje dal寤 makra z嫛isl□na k鏚ov嫕□
a) makro \csaccents p鷫definuje makra \v, \', ... tak, 頡 expanduj□ p齶mo do znak□podle CS-font□
V□ody:
* Po \csaccents lze na鴈st vzory d骴en□ve tvaru nez嫛isl幦 na
k鏚ov嫕□
* Po \csaccents budou spr嫛n□rozd骴ena i slova zapsan□ t\'imto zp\r usobem. Tak□na n□bude spr嫛n□fungovat primitiv
\uppercase (v□imku tvo齶 p齶pad, kdy je \'i ps嫕o "postaru", tj.
jako \'\i).
* \v d a \v t vede na □a □(s apostrofy, nikoly s h摜ky).
V□hoz□chov嫕□form嫢u csplain je z d驠odu nutn□kompatibility
se standardn璥 plainem nastaveno na p驠odn□v□nam maker \v, \'.
P齶kazem \csaccents se inicializuje nov□v□nam a p齶kazem \cmaccents
se v鈹 vrac□do p驠odn璫o stavu. Inicializace je nav獳 lok嫮n□vr嫥ci
skupiny.
Pokud bude n骿do 醀sto p鷫p璯at \csaccents, \cmaccents, pak m躨e
potla鋱t hl廜ky na termin嫮u a do .logu p鷫definov嫕璥 p齶kazu
\csaccentsmessage, \cmaccentsmessage.
b) Jsou dopln髶y definice sekvenc□ kter□jsou z嫛isl□na k鏚ov嫕□ CS-font□ Tj. uvozovky \clqq, \crqq, \flqq, \frqq, \ogonek, \promile.
D嫮e je definov嫕 p齶kaz \extrahyphens, kter□inicializuje
\hyphenchar do alternativn璫o znaku v CS-fontu pro z嫜ladn□ desetibodov□textov□fonty. T璥 nap□ "je-li" nebude rozd骴eno.
Bohu頡l vznik□zobrazovac□z墂rhel: p鷡 hl廜k塶h "Overfull" TeX
zobrazuje na termin嫮 m疄to znaku - znak ^^9c. V emTeXu sta鴈 m甏n□ upravit tabulku tcp a sm鬳ovat do ^^9c n骹ak□n墏radn□a podobn□ semigrafick□symbol (viz p鷡lo頡n□tabulka kamenic.tcp).
4. hyphen.lan.
* Na za魨tku m□\csaccents, aby zavedl vzory d骴en□napsan□ pomoc□sekvenc□a na konci vrac□\cmaccents.
* M疄to hyphen.cz a hyphen.czx zav墂□czhyphen.tex a czhyphen.ex (z d驠odu
kompatibility s makrem pro 鋀靖inu v LaTeXu 2e). Podobn□pro dal寤
jazyky.
* M疄to p驠odn獳h \righthyphenmin=2 je pro \chyph a \shyph zavedeno
\righthyphenmin=3 (co□je podle normy). S嫙□li u養vatel do □k□h
sloupc□ m躨e si to zm髶it nap齶klad takto: \chyph \righthyphenmin=2
* P鷡 vol嫕□czhyphen.tex, skhyphen.tex je \let\global=\relax, aby
nedo雍o ke zm髶□\everyjob\message. Skute鋝ost, jak□d骴en□slov je
zavedeno, lze zjistit z verze csplainu <Apr. 1995>, tj. nen□pot鷫ba
jmenovat n骹ak□konkr彋n□lidi v \everyjobu.
5. czhyphen.tex je kompletn□jin□(z鷫jm□lep寤), ne□v p驠odn璥 csTeXu.
Je pou養to d骴en□ kter□(po m甏n幦 pomr鈹n□ dal k dispozici Pavel
委ve鋀k TeXovsk□ve鷫jnosti pro pou養t□v nekomer鋝璥 sv鮅□zdarma.
6. czhyphen.ex je zmen鈹no o v駥i, kter□u□czhyphen.tex um□spr嫛n□a
zbytek je p鷫ps嫕 do sekvenc□nez嫛isl□h na k鏚ov嫕□
7. skhyphen.tex je pravd髹odobn□stejn□ jako bylo (nezkoumal jsem to).
Stejn□tak z鑸t嫛□skhyphen.ex. Je pou養to d骴en□ru鋝□vyroben□ Jankou Chleb璭ovou.
8. csplain.ini.
* Zm髶髶o po鷻d□vol嫕□extcode.tex
* Zm髶髶 text \everyjob\message.
9. czech.sty
* Na za魨tku za鷻zena v鮅vi鋘a
\if Form嫢=LaTeX2e \input lczech.sty \endinput \fi
* Za鷻zen nov□test na \ifx\chyph\undefined \message{Warning...}
* Za鷻zen test na pou養t□CS-font□podle prvn獳h dvou p疄men v n嫙vu
fontu \tenrm. Pokud CS-fonty jsou zavedeny a p鷡tom nen□definov嫕
\clqq (p齶pad star□csform嫢, nov□czech.sty), pak se definuj□n骿ter□ sekvence analogicky, jako v bod□3b).
* Do p齶kaz□\czechTeX, resp. \originalTeX je vlo頡no \csaccents, resp.
\cmaccents, tj. styl czech aktivuje \csaccents.
* V鈹, co bylo 鷫鋀no pro czech.sty plat□analogicky pro slovak.sty