diff options
Diffstat (limited to 'macros/latex/contrib/lipsum/lipsum.ins')
-rw-r--r-- | macros/latex/contrib/lipsum/lipsum.ins | 65 |
1 files changed, 61 insertions, 4 deletions
diff --git a/macros/latex/contrib/lipsum/lipsum.ins b/macros/latex/contrib/lipsum/lipsum.ins index a2c3bc6519..4a289f65f3 100644 --- a/macros/latex/contrib/lipsum/lipsum.ins +++ b/macros/latex/contrib/lipsum/lipsum.ins @@ -19,7 +19,7 @@ This file is part of the package lipsum for use with LaTeX2e. -Function: Access to 150 paragraphs of the well known Lorem Ipsum dummy text. +Function: Access to 150 paragraphs of dummy text. This program may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3 @@ -37,8 +37,64 @@ Please send error reports and suggestions for improvements to \endpostamble \generate{\file{lipsum.sty}{\from{lipsum.dtx}{package}}} -\generate{\file{lipsum.ltd.tex}{\from{lipsum.dtx}{lipsum}}} -\generate{\file{cicero.ltd.tex}{\from{lipsum.dtx}{cicero}}} + +\newread\lipsread +\newread\lipswrite +\newcount\parno +\newif\ifinpar +\def\empty{}% +\def\line{}% +\edef\lb{\string{}% +\edef\rb{\string}}% +\begingroup\lccode`\?=`\% +\lowercase{\endgroup\def\pc{?}}% +\def\wline{\immediate\write\lipswrite}% +\def\genlipsum#1#2#3{% + \begingroup + \def\inFileName{lipsum-#1.txt}% + \def\outFileName{#2.ltd.tex}% + \openin\lipsread\inFileName\space + \immediate\openout\lipswrite\outFileName\space + \inparfalse + \parno=0 + \endlinechar=-1 + \def~{ }% + \def\ReferenceLines{% + \MetaPrefix ^^J% + \MetaPrefix~The original source files were:^^J% + \MetaPrefix ^^J% + \MetaPrefix~\inFileName^^J}% + \immediate\write\lipswrite{\defaultpreamble}% + \immediate\write\lipswrite{\string\SetLipsumLanguage{#3}}% + \genlipsumaux\genlipsumaux + \closein\lipsread + \immediate\closeout\lipswrite + \endgroup} +\def\genlipsumaux#1\genlipsumaux{% + \ifeof\lipsread\let\line\empty + \else \read\lipsread to \line \fi + \toks0{#1}% + \ifx\line\empty + \ifinpar + \wline{\the\toks0 \rb\pc^^J\pc}% + \inparfalse + \fi + \else + \ifinpar + \wline{\the\toks0 }% + \else + \inpartrue + \advance\parno by 1 + \wline{\string\NewLipsumPar\lb\pc~{\the\parno}}% + \fi + \fi + \ifeof\lipsread\expandafter\genlipsumend\fi + \expandafter\genlipsumaux\line\genlipsumaux} +\def\genlipsumend#1\genlipsumaux#2\genlipsumaux{} + +\genlipsum{la}{lipsum}{latin} +\genlipsum{cs}{lipsum-cs}{czech} +\genlipsum{cicero}{cicero}{latin} \obeyspaces \Msg{****************************************************} @@ -49,10 +105,11 @@ Please send error reports and suggestions for improvements to \Msg{* *} \Msg{* lipsum.sty *} \Msg{* lipsum.ltd.tex *} +\Msg{* lipsum-cs.ltd.tex *} \Msg{* cicero.ltd.tex *} \Msg{* *} \Msg{* To produce the documentation run the file *} -\Msg{* lipsum.dtx through XeLaTeX or luaLaTeX. *} +\Msg{* lipsum.dtx through XeLaTeX or LuaLaTeX. *} \Msg{* *} \Msg{* Happy TeXing! *} \Msg{* *} |