[cstex] Jak udělat z LaTexu plainTeX

Zdenek Wagner zdenek.wagner at gmail.com
Thu Aug 27 15:49:26 CEST 2015


Dobrý den,

já se obávám, že pomocí \input plain se LaTeX zákonitě totálně zblbne. Řada
plainovských maker má jinou definici, třeba \line v plainu znamená \hbox to
\hsize, zatímco v LaTeXu je to makro na kreslení úseček v prostření
picture, původní plainovské makro je schováno v \@@line. A takových případů
je spousta. Je tedy vysoce pravděpodobné, že mnohá makra pak při expanzi
používají vnitřní makra, jejichž definice je změněna.

Pokud se má v LaTeXu použín plainovský soubor, je třeba redefinice udělat
odpovědně. K tomu slouží balíček plain od Davida Carlisla a plainovské
konstrukce se vkládají do prostředí plain. Hodně stručná informace je
například zde:

http://www.tex.ac.uk/FAQ-inclplain.html

Je ovšem otázkou, jestli u tak jednoduchých příkladů je to nutné. Například
${a+b \over c-d}$ bude fungovat i v LaTeXu. Stejně tak fungují \hbox,
\vbox, \vtop, \hskip, \vskip apod., není nutné používat \mbox, \parbox,
\hspace atd.

Zdeněk Wagner
http://ttsm.icpf.cas.cz/team/wagner.shtml
http://icebearsoft.euweb.cz

Dne 27. srpna 2015 14:19 Vaclav Studený <vaclav.studeny at gmail.com>
napsal(a):

> Řeším takový technický problém, protože jsme dostal za úkol přepisovat
> nějaké příklady do informačního systému. Ten používá nějaký
> program tex2img, při vytváření stránky mu předá všechno, co je mezi tagy
> <m> </m>, udělá z toho obrázek a umístí jej do html.
>
> Chtěl jsme si napsat program, který mi zkonvertuje příklady do formátu
> těch takzvaných odpovědníků. Domníval jsme se, že vše vyřeším  příkazem
> \input plain na začátku., Jenže:
>
> zjistil jsem, že LaTex intetpetuje
>
>
> \begin{document}
>
> \vbox{
> \def\patterns#1{}
> \input plain
> \hbox{
> $x\mapsto y$}}
> \end{document}
>
> jako 1x^y
>
> kde se tam ta jednička bere?
>
>
> Kromě toho přímo ten program tex2img
> při interpretaci kódu
>
> \vbox{\hsize=25cm
> \def\patterns#1{}
> \input plain\relax
> u $x^2$ v
> }
>
> hlásí chybu:
>
> ! Infinite glue shrinkage found in a paragraph.
> l.15 }
>       $
>
>
> při interpetaci
> \vbox{\hsize=25cm
> \def\patterns#1{}
> \input plain\relax
> u \hbox{$x^2$} v
> }
>
> přidá tu jedničku:
> u 1x^2 v
>
>
>
> zatímco
>
> \vbox{\hsize=25cm
> \def\patterns#1{}
> \input plain\relax
> u $$x^2$$ v
> }
>
> projde bez problémů. Nev9te, kde se tam to lepidlo bere?
>
>
>
>
> _______________________________________________
> csTeX mailing list
> csTeX at cs.felk.cvut.cz
> https://lists.felk.cvut.cz/mailman/listinfo/cstex
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.felk.cvut.cz/pipermail/cstex/attachments/20150827/d3c7d5c6/attachment-0003.html>


More information about the csTeX mailing list