[cstex] Pdfcsplain 2009 vs. 2015

Petr Olsak petr at olsak.net
Tue Mar 24 11:21:49 CET 2015


Dobrý den,

chtěl bych uvést na pravou míru některé záležitosti, které by si mohli 
čtenáři tohoto listu mylně interpetovat na základě odpovědi pana Wagnera.

Z připojeného logu (dole) vyplývá, že pan Polách spouští starší 
implementaci TeXu s csplainem z roku 2005:

     This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/Debian)
     (format=pdfcsplain 2013.2.24)  22 MAR 2015 20:06
     entering extended mode
      %&-line parsing enabled.
     **kronika-2015.tex
     (./kronika-2015.tex The format: csplain <Sep. 2005>.
     The cs-fonts are preloaded and A4 size implicitly defined.
     (./styl.tex
     ...

Tento csplain nemá aktivován UTF8 vstup, takže veškerá další diskuse o 
csplainu a UTF8 vstupu je v souvislosti s tímto problémem irelevantní. Pro 
srovnání, současný csplain se v logu chová takto:

    This is pdfTeX, Version 3.14159265-2.6-1.40.15 (TeX Live 2014)
    (preloaded format=csplain 2014.12.31)  24 MAR 2015 10:58
    entering extended mode
     %&-line parsing enabled.
     encTeX v. Jun. 2004, reencoding enabled
    **pok.tex
    (./pok.tex The format: csplain <Aug. 2014>.
    The cs-fonts are preloaded and A4 size implicitly defined.
    The utf8->iso8859-2 re-encoding of Czech+Slovak alphabet activated by encTeX
    (./styl.tex
    ...

Všimněte si zejména dvou řádků navíc: "encTeX v. Jun. 2004, reencoding 
enabled" a "The utf8->iso8859-2 re-encoding of Czech+Slovak alphabet 
activated by encTeX" a dále data csplainu (tedy ne <Sep. 2005>.).

Další omyl: Pokud máte nový csplain s UTF-8 vstupem, pak tento vstup 
můžete vypnout pomocí

    \input utf8off

v prvním řádku dokumentu a tím převést chování csplainu na původní s 
kódováním ISO-8859-2. Zmínka o \input plain-il2-cs je chybná, tímto 
souborem se generuje speciální formát.

A konečně, kde je problém. Podle logu:

    ! pdfTeX error (pncb8z.vf): invalid character code.

to vypadá tak, že v TeXové distribuci pana Polácha se kříží stará a nová 
verze balíčku cspsfonts. Stará verze obsahovala *.vf soubory (mezi nimi i 
pncb8z.vf) zatímco nová verze nic takového neobsahuje. Viz poznámku na www 
stránce

    http://math.feld.cvut.cz/olsak/cstex.html

někde v první třetině stránky. Poznámka se týká balíčku CSpsfonts a jeho 
změny v říjnu 2012. Stará verze balíčku cspsfonts obsahovala pncb8z.vf, 
který interně odkazoval na pncb8z.tfm a rpncb.tfm a ten odkazoval do pfb 
fontu. Nová verze obsahuje jen pncb8z.tfm a ten odkazuje pomocí map 
souboru přímo pfb fontu. Pokud kdekoli ve staré verzi balíčku podstrčíte 
na cestě ve vyhledávání

    pncb8z.vf -> pncb8z.tfm -> rpncb.tfm -> pfb

soubor z nové verze balíčku, je velice pravděpodobný krach, který se 
projevil. Kde a jaký soubor je podstrčen, na jaké vyhledávací cestě dané 
distribuce, to je ale těžké posoudit.

Zdravím

Petr Olšák



On Mon, 23 Mar 2015, Zdenek Wagner wrote:

> Dne 23. března 2015 19:56 <josef at polach.org> napsal(a):
>       Zdravím vás
>
>       vracím se k dokumentu, který jsem vytvořil v roce 2009. Nic
>       složitého, knížka s členěním na kapitoly dvou úrovní, obsah,
>       vkládání obrázků, kódování ISO-8859-2, písmo "texovské" New
>       Century (cncent)... Jak to bývá, potřebuji něco doplnit,
>       opravit... a zjišťuji, že mi to TeX nebere. Přesněji pdfcsplain.
>       Dopátral jsem se, že před koncem roku 12 byly uvedeny nějaké
>       změny, které se týkaly hlavně kódování vstupu. V csplainu
>       používám stále úspěšně vstup Latin2. Nevím však, není-li to v
>       pdfcsplainu nějak jinak nebo zda může být příčina ještě v něčem
>       jiném. Zkusím přiložit aspoň log, z něhož nejsem dost chytrý.
>       Děkuji za radu nebo za nakopnutí, kde mám hledat příčinu
>       neúspěchu. Moc děkuji.
> 
> 
> 
> Ano, defaultní kódování vstupu je UTF-8 a je aktivován encTeX. Díky tomu lze
> za běhu programu kódování přepnout bez nutnosti přegenerování formátu. Můžete
> např. na začátek starého dokumentu vložit:
> 
> \input plain-il2-cs
> 
> Měl by asi zabrat i parametr -translate-encoding na příkazovém řádku, ale zde
> si nejsem zcela jist se syntaxí, už jsem to dlouho nepoužil, ale metodu s
> \input jsem před léty otestoval.
> 
> Zdeněk Wagner
> http://hroch486.icpf.cas.cz/wagner/
> http://icebearsoft.euweb.cz
> 
>  
>
>       Pohoda, hezký den
>
>       Josef
>
>       %%% log %%%%%%%%%%%%%%%%%%%%%%%%%%
>       This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/Debian)
>       (format=pdfcsplain 2013.2.24)  22 MAR 2015 20:06
>       entering extended mode
>        %&-line parsing enabled.
>       **kronika-2015.tex
>       (./kronika-2015.tex The format: csplain <Sep. 2005>.
>       The cs-fonts are preloaded and A4 size implicitly defined.
>       (./styl.tex
>       (/usr/share/texmf-texlive/tex/csplain/base/cncent.tex)
>       \setsimplemath WARNING: Greek symbols may be loss, see Missing
>       char in .log!
>       Czech hyphenation used (\language=5). \frenchspacing is set on.
>       \cisloobr=\count33
>       \toc=\write0
>       )
>       \openout0 = `kronika-2015.toc'.
>
>       \pagetoks=\toks12
>        <./img/s597.png (PNG copy)> [1
>       checksum mismatch in font pncb8z.vf ignored
>       ! pdfTeX error (pncb8z.vf): invalid character code.
>       \plainoutput ...headline \pagebody \makefootline }
>                                                         \advancepageno
>       \ifnum \out...
>       <output> {\plainoutput
>                              }
>       \break ->\penalty -\@M
>
>       \obr ...kip =0pt plus2fill \parindent =0pt {\it #3
>                                                         } \par \rm
>       \medskip \noind...
>       l.28
> 
>
>       !  ==> Fatal error occurred, no output PDF file produced!
>
>       %%% konec logu %%%%%%%%%%%%%%%%%%%
>
>       _______________________________________________
>       csTeX mailing list
>       csTeX at cs.felk.cvut.cz
>       https://lists.felk.cvut.cz/mailman/listinfo/cstex
> 
> 
> 
>


More information about the csTeX mailing list