summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/cslatex/base/csplain.doc
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/cslatex/base/csplain.doc')
-rw-r--r--Master/texmf-dist/doc/cslatex/base/csplain.doc197
1 files changed, 197 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/cslatex/base/csplain.doc b/Master/texmf-dist/doc/cslatex/base/csplain.doc
new file mode 100644
index 00000000000..98cf251bbc0
--- /dev/null
+++ b/Master/texmf-dist/doc/cslatex/base/csplain.doc
@@ -0,0 +1,197 @@
+ Balík souborů (texinput) na generování formátu csplain
+ ******************************************************
+ * Petr Olšák Verze: září 1996 *
+ říjen 1998
+
+Formát csplain je skoro shodný s klasickým formátem plain. Rozdíl je jedině
+v tom, že místo CM fontů se pracuje s CS-fonty, což umožňuje zavést
+v tomto kódování fontů vzory dělení pro český a slovenský jazyk.
+Pomocí formátu csplain je možno nahradit originální formát plain,
+tj. pro anglické dokumenty se oba formáty chovají (skoro) stejně.
+Nepatrné odlišnosti, vyplývající z použití CS-fontů místo CM fontů,
+viz soubor cs-fonts.doc.
+
+
+Potřebné soubory
+****************
+
+Pro vygenerování formátu csplain je potřeba:
+ 1. v /tfm mít metriky CS-fontů (např. csr10.tfm),
+ 2. v /texinput mít následující soubory:
+ csplain.ini ... hlavní soubor pro vygenerování formátu
+ plain.tex ... Knuthův plain
+ csfonts.tex ... makro pro zavedení CS-fontů
+ il2code.tex ... makro pro práci s kódem CS-fontů (ISO-8859-2)
+ hyphen.lan ... řídicí soubor k zavední vzorů dělení různých jazyků
+ hyphen.tex ... základní vzory dělení pro US (součástí plainu)
+ hyphen.ex ... slovník výjimek pro US
+ czhyphen.tex ... vzory dělení pro češtinu
+ czhyphen.ex ... slovník výjimek pro češtinu
+ skhyphen.tex ... vzory dělení pro slovenštinu
+ skhyphen.ex ... slovník výjimek pro slovenštinu
+ plaina4.tex ... makro upravující výhozí rozměr zrcadla pro A4
+3. pokud předpokládáte vstupní soubory v jiném kódování, než ISO-8859-2,
+ potřebujete navíc a) při použití emTeXu -- příslušnou *.tcp tabulku
+ b) při využití encTeXu -- příslušný soubor enc-?.tex
+
+
+Generování formátu
+******************
+
+Generování formátu csplain je závislé na implementaci TeXu.
+V UNIX like systémech (odvozených z implementace web2c) použijte příkaz:
+
+ initex csplain.ini
+
+nebo v novější verzi web2c:
+
+ tex -ini csplain.ini
+
+Vstupní kódování bude rovno vnitřnímu kódování ISO-8859-2. Předpokláte-li
+kódování vstupních textů v jiném kódování, než ISO-8859-2 a navíc máte
+implementaci binárního programu TeX obsahující encTeX (to poznáte podle
+druhého řádku v soborech *.log), pak si vyberte jedno z písmen: w=CP1250,
+k=Kamenicti, p=PC Latin2 (CP852) a inicializujte formát takto:
+
+ tex -ini \let\enc=? \input csplain.ini
+
+kde ? je jedno z písmen w, k, nebo p charakterizující vstupní kódování. Na
+příkazovém řádku v UNIXu musíte každý znak "\" psát dvakrát, například:
+
+ tex -ini \\let\\enc=k \\input csplain.ini
+
+Potřebujete-li implementovat vstupní kódování, které zde není uvedeno,
+zvolte si pro ně nějaké další písmeno a editujte příslušný soubor enc-?.tex.
+
+V DOSu (emTeXu) můžete volit vstupní kódování pomocí *TCP tabulek. Např.
+pro kódování Kamenických napíšete:
+
+ tex[386] /i /8 -cKAMENIC.TCP csplain.ini
+
+Můžete si ověřit správnost instalace csplainu testem cstrip. Viz soubor
+cstripm.dvi nebo cstripm.ps
+
+
+Použití češtiny a slovenštiny
+*****************************
+
+csplain je inicializován tak, aby se implicitně choval jako plain. To
+znamená, že je nastaveno anglické dělení slov a sekvence \v, \'
+expandují na primitiv \accent. Rovněž je aktivní \nonfrenchspacing.
+Rozdíl je jen ve velikosti implicitního rozměru zrcadla sazby, které je
+v csplainu nastaveno pro palcové okraje při formátu A4, zatímco
+v plainu je nastaveno pro palcové okraje formátu Letter.
+
+Pro sazbu v českém nebo slovenském jazyce NEMUSÍTE volat styl
+czech.sty. Stačí použít na začátku dokumentu tyto sekvence:
+
+\chyph % nebo \shyph : inicializuje české/slovenské dělení slov
+ % a \frenschpacing
+\csaccents % způsobí jiné chování sekvencí \' \v a \r, které od této
+ % chvíle expandují na znaky podle CSfontů
+
+% návrat k původnímu nastavení:
+\ehyph % americké dělení a \nonfrenchspacing
+\cmaccents % \, \v expandují na primitiv \accent
+
+Od verze csplainu <Sep. 1996> je sekvence pro uvozovky \uv{cosi}
+zanesena do formátu.
+
+
+Verze csplainu.
+***************
+
+csplain zavádí do \everyjob hlášení o datu posledního zásahu do
+zdrojových textů csplainu (viz soubor csplain.ini). Pokud tam takové
+hlášení není, máte verzi csplainu z r. 1994 nebo starší.
+
+Jednotlivé verze označujeme datem změny zdrojového textu a nikoli
+číslem. Odlišnosti novějších verzí než <Apr. 1995> jsou uvedeny přímo
+v souboru csplain.ini. Odlišnosti verze z roku 1994 od <Apr. 1995>
+jsou uvedeny níže.
+
+V čem se liší csplain z csTeXu94 od verze <Apr. 1995>
+*****************************************************
+
+1. plain.tex. Místo verze 3.0 je použita verze 3.14159.
+
+2. csfonts.tex. Navíc přidána vlastnost \font\preloaded = nezaváděj žádný font.
+ Důsledek: Po načtení formátu plain.tex je zavedeno pouhých 16 základních
+ fontů proti dřívějším 50.
+ Důvod: Při dnešních rychlostech počítačů už asi neoceníme, že je nějaký
+ font dopředu zaveden ve formátu. Navíc máme více místa pro nové fonty.
+ Odchylka: Kromě nepatrného zdržení při zavádění (dříve \preloaded) fontů
+ není žádný jiný rozdíl.
+
+3. il2code.tex (dříve extcode.tex). Kromě původních definic \catcode,
+ \lccode a \uccode obsauje další makra závislá na kódování.
+ a) makro \csaccents předefinuje makra \v, \', ... tak, že expandují
+ přímo do znaků podle CS-fontů.
+ Výhody:
+ * Po \csaccents lze načíst vzory dělení ve tvaru nezávislém na
+ kódování.
+ * Po \csaccents budou správně rozdělena i slova zapsaná
+ t\'imto zp\r usobem. Také na ně bude správně fungovat primitiv
+ \uppercase (výjimku tvoří případ, kdy je \'i psáno "postaru", tj.
+ jako \'\i).
+ * \v d a \v t vede na ď a ť (s apostrofy, nikoly s háčky).
+ Výchozí chování formátu csplain je z důvodu nutné kompatibility
+ se standardním plainem nastaveno na původní význam maker \v, \'.
+ Příkazem \csaccents se inicializuje nový význam a příkazem \cmaccents
+ se vše vrací do původního stavu. Inicializace je navíc lokální vrámci
+ skupiny.
+ Pokud bude někdo často přepínat \csaccents, \cmaccents, pak může
+ potlačit hlášky na terminálu a do .logu předefinováním příkazu
+ \csaccentsmessage, \cmaccentsmessage.
+ b) Jsou doplněny definice sekvencí, které jsou závislé na kódování
+ CS-fontů. Tj. uvozovky \clqq, \crqq, \flqq, \frqq, \ogonek, \promile.
+ Dále je definován příkaz \extrahyphens, který inicializuje
+ \hyphenchar do alternativního znaku v CS-fontu pro základní
+ desetibodové textové fonty. Tím např. "je-li" nebude rozděleno.
+ Bohužel vzniká zobrazovací zádrhel: při hláškách "Overfull" TeX
+ zobrazuje na terminál místo znaku - znak ^^9c. V emTeXu stačí mírně
+ upravit tabulku tcp a směrovat do ^^9c nějaký náhradní a podobný
+ semigrafický symbol (viz přiložená tabulka kamenic.tcp).
+
+4. hyphen.lan.
+ * Na začátku má \csaccents, aby zavedl vzory dělení napsané
+ pomocí sekvencí a na konci vrací \cmaccents.
+ * Místo hyphen.cz a hyphen.czx zavádí czhyphen.tex a czhyphen.ex (z důvodu
+ kompatibility s makrem pro češtinu v LaTeXu 2e). Podobně pro další
+ jazyky.
+ * Místo původních \righthyphenmin=2 je pro \chyph a \shyph zavedeno
+ \righthyphenmin=3 (což je podle normy). Sází-li uživatel do úzkých
+ sloupců, může si to změnit například takto: \chyph \righthyphenmin=2
+ * Při volání czhyphen.tex, skhyphen.tex je \let\global=\relax, aby
+ nedošlo ke změně \everyjob\message. Skutečnost, jaké dělení slov je
+ zavedeno, lze zjistit z verze csplainu <Apr. 1995>, tj. není potřeba
+ jmenovat nějaké konkrétní lidi v \everyjobu.
+
+5. czhyphen.tex je kompletně jiné (zřejmě lepší), než v původním csTeXu.
+ Je použito dělení, které (po mírném pomršení) dal k dispozici Pavel
+ Ševeček TeXovské veřejnosti pro použití v nekomerčním světě zdarma.
+
+6. czhyphen.ex je zmenšeno o věci, které už czhyphen.tex umí správně a
+ zbytek je přepsán do sekvencí nezávislých na kódování.
+
+7. skhyphen.tex je pravděpodobně stejné, jako bylo (nezkoumal jsem to).
+ Stejně tak zůstává skhyphen.ex. Je použito dělení ručně vyrobené
+ Jankou Chlebíkovou.
+
+8. csplain.ini.
+ * Změněno pořadí volání extcode.tex
+ * Změněn text \everyjob\message.
+
+9. czech.sty
+ * Na začátku zařazena větvička
+ \if Formát=LaTeX2e \input lczech.sty \endinput \fi
+ * Zařazen nově test na \ifx\chyph\undefined \message{Warning...}
+ * Zařazen test na použití CS-fontů podle prvních dvou písmen v názvu
+ fontu \tenrm. Pokud CS-fonty jsou zavedeny a přitom není definován
+ \clqq (případ starý csformát, nový czech.sty), pak se definují některé
+ sekvence analogicky, jako v bodě 3b).
+ * Do příkazů \czechTeX, resp. \originalTeX je vloženo \csaccents, resp.
+ \cmaccents, tj. styl czech aktivuje \csaccents.
+ * Vše, co bylo řečeno pro czech.sty platí analogicky pro slovak.sty
+
+