diff options
author | Karl Berry <karl@freefriends.org> | 2013-05-09 22:52:03 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2013-05-09 22:52:03 +0000 |
commit | 75b2113b57c777aaac8bf52968a2accf10c4a2c7 (patch) | |
tree | 8656cae5e32b6c0e710a55e9aedef570e16ad8ab | |
parent | 4e4c128479aaf71fbcea7350a046b57c8f74fcfd (diff) |
plipsum (9may13)
git-svn-id: svn://tug.org/texlive/trunk@30353 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r-- | Master/texmf-dist/doc/plain/plipsum/README | 2 | ||||
-rw-r--r-- | Master/texmf-dist/doc/plain/plipsum/plipsum-doc.pdf | bin | 227140 -> 230007 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/plain/plipsum/plipsum.nw | 114 | ||||
-rw-r--r-- | Master/texmf-dist/tex/plain/plipsum/plipsum.tex | 54 |
4 files changed, 83 insertions, 87 deletions
diff --git a/Master/texmf-dist/doc/plain/plipsum/README b/Master/texmf-dist/doc/plain/plipsum/README index dd5def6ff6f..2c478a9f4a9 100644 --- a/Master/texmf-dist/doc/plain/plipsum/README +++ b/Master/texmf-dist/doc/plain/plipsum/README @@ -6,7 +6,7 @@ of the plain TeX developers. Author: Sergio Spina <sergio.am.spina@gmail.com> -Version: 4.2 of 2013.05.06 +Version: 4.3 of 2013.05.08 Contents of the package diff --git a/Master/texmf-dist/doc/plain/plipsum/plipsum-doc.pdf b/Master/texmf-dist/doc/plain/plipsum/plipsum-doc.pdf Binary files differindex 7165bf06cb9..14157ec4139 100644 --- a/Master/texmf-dist/doc/plain/plipsum/plipsum-doc.pdf +++ b/Master/texmf-dist/doc/plain/plipsum/plipsum-doc.pdf diff --git a/Master/texmf-dist/doc/plain/plipsum/plipsum.nw b/Master/texmf-dist/doc/plain/plipsum/plipsum.nw index b9152bcd2dd..1e238398232 100644 --- a/Master/texmf-dist/doc/plain/plipsum/plipsum.nw +++ b/Master/texmf-dist/doc/plain/plipsum/plipsum.nw @@ -1,7 +1,7 @@ % % filename: plipsum.nw -% version: 4.2 -% date: May 6, 2013 +% version: 4.3 +% date: May 8, 2013 % author: Sergio Spina <sergio.am.spina@gmail.com> % description: 'Lorem ipsum' paragraphs for the purposes % of the plain TeX developers. @@ -53,8 +53,8 @@ \catcode`@=11 \def\newpage{\vfill\pagebreak} -\let\p@rt\part -\def\part{\newpage\p@rt} +\let\@@part\part +\def\part{\newpage\@@part} \def\<{\ifmmode\langle\else$\langle$\fi} \def\>{\ifmmode\rangle\else$\rangle$\fi} \catcode`@=12 @@ -63,7 +63,7 @@ \title{P-Lipsum\\[.3\baselineskip]\small A `lorem ipsum' paragraph generator\\ in plain \TeX\ for plain \TeX ers.} \author{Sergio Spina\\sergio.am.spina@gmail.com} -\date{May 6, 2013} +\date{May 8, 2013} \maketitle @@ -89,7 +89,7 @@ typographic ligatures with the font choosen for your document. your document. \part{Macros} -\section{[[\lipsum]]} It's the main macro. It can accept one or two arguments +\section{\textbackslash lipsum} It's the main macro. It can accept one or two arguments separated by an hyphen and an optional parameter. The argument is one or two different numbers in the range 1-100. @@ -128,11 +128,13 @@ It's ok if the first argument is greater than the second. $$\halign{#\kern.2in\hfil$\leftarrow$\quad &#\hfil\cr [[\lipsum{33-13}]] & E. same as example `C'; it works as well.\cr}$$ -\section{[[\everystartplipsumpar \everyendplipsumpar]]} These two token lists -were in existence in the previous version of \plipsum. As far as they can be -easily replaced with normal \TeX\ programming tools they have been deleted. +\section{\textbackslash everystartplipsumpar +\textbackslash everyendplipsumpar} +These two token lists were in existence in the previous version of \plipsum. +As far as they can be easily replaced with normal \TeX\ programming tools +they have been deleted. -\section{[[\nopar.]]} It eliminates the [[\par]] between one paragraph and +\section{\textbackslash nopar.} It eliminates the [[\par]] between one paragraph and the following one. This way many paragraphs may become one single big paragraph. $$\halign{#\kern.2in\hfil$\leftarrow$\quad &#\hfil\cr [[{\nopar\lipsum{14-16}}\par]] & \vtop{\hsize2.36in \noindent One single @@ -166,18 +168,23 @@ Let's begin with the introductory things. Version informations in a comfortable place. <<preliminaries>>= \def\PLversion{4} -\def\PLrevision{2} -\def\PLrevisiondate{2013/05/06} +\def\PLrevision{3} +\def\PLrevisiondate{2013/05/08} @ The sign `@' for the private macros. <<preliminaries>>= \chardef\beforeplipsumatcatcode=\the\catcode`@ \catcode`@=11 @ +Messages in the log file. Handle the newline with the pipe char. +<<preliminaries>>= +\def\@message#1{{\newlinechar`\^^J\message{#1}}} +\def\@errmessage#1{{\newlinechar`\^^J\errmessage{#1}}} +@ The first cry of this \TeX\ child. <<preliminaries>>= -{\newlinechar`|\message{|P-lipsum version - \PLversion.\PLrevision\space-- revision \PLrevisiondate|}} +\@message{^^JP-lipsum version + \PLversion.\PLrevision\space-- revision \PLrevisiondate^^J} @ Let's go with the real thing. The job will be done in two stages: \begin{enumerate} @@ -840,16 +847,15 @@ occultissimarum. Conclusum est enim contra Cyrenaicos satis acute, nihil ad Epic @ Anyway, after so much work the format launch an echo of proudness in the [[.log]] file. <<echo>>= -{\newlinechar`|\message{|P-lipsum: created - \number\c@parnumber\space paragraphs.|}} +\@message{^^JP-lipsum: created + \number\c@parnumber\space paragraphs.^^J} @ Before of the beginning of the interface building, in which the users will insert values, let's define some error messages. <<interface>>= \newhelp\optparams@error{% Valid optional parameters are 's', 'short', 'm', 'medium', 'l', 'long'.} -\newhelp\paramexcess@error{% - The best possible value is \the\c@parnumber.} +\newhelp\paramexcess@error{The best possible value is 100} @ Once builded the foundations we can build the main macro of the format. [[\lipsum]] has a lot of behaviors: @@ -910,13 +916,13 @@ optional parameters at all. \ifx\param@ne\@short@\shorttrue\mediumfalse\longfalse \else \errhelp\optparams@error - {\newlinechar`|\errmessage{|P-lipsum: !! ERROR !! - Wrong optional parameter.}} + \@errmessage{^^JP-lipsum: !! ERROR !! + Wrong optional parameter.^^J} \fi\fi\fi\fi\fi\fi \no@opt@par{#2}} @ -Now it is necessary to scan the parameter to ensure that there is an hyphen. In -this case is called the macro [[\noopt@parA]], otherwise the macro +Now it is necessary to scan the parameter to ensure that there is an hyphen. +In this case is called the macro [[\noopt@parA]], otherwise the macro [[\noopt@parB]] <<interface>>= \newif\ifhyphen @@ -950,16 +956,24 @@ Now everything is simple and the macros are self-explaining. If the parameter of [[\lipsum]] has an hyphen will be performed [[\noopt@parA]]; otherwise [[\noopt@parB]]. <<interface>>= -\countdef\c@plipsumAone=253 -\countdef\c@plipsumAtwo=251 +\newcount\c@plipsumAone +\newcount\c@plipsumAtwo +\newcount\c@max + +\c@max\c@parnumber +\divide\c@max by3\relax \def\noopt@parA#1-#2\end{{% \global\c@plipsumAone=#1\relax \global\c@plipsumAtwo=#2\relax - \ifnum\c@plipsumAone>\c@parnumber - \warnmsg{first}\fi - \ifnum\c@plipsumAtwo>\c@parnumber - \warnmsg{second}\fi + \ifnum\c@plipsumAone>\c@max + \errhelp\paramexcess@error + \@errmessage{^^JP-lipsum: ERROR at line \the\inputlineno. The + first parameter of \string\lipsum\space is too big.^^J}\fi + \ifnum\c@plipsumAtwo>\c@max + \errhelp\paramexcess@error + \@errmessage{^^JP-lipsum: ERROR at line \the\inputlineno. The + second parameter of \string\lipsum\space is too big.^^J}\fi \ifmedium \advance\c@plipsumAone by100\relax \advance\c@plipsumAtwo by100\relax @@ -973,12 +987,14 @@ otherwise [[\noopt@parB]]. \types@t}} \def\noopt@parB#1\end{% - \ifnum#1>\c@parnumber - \warnmsg{}\fi - \count253=#1\relax - \ifmedium\advance\count253 by100\relax\else - \ifshort\advance\count253 by200\relax\fi\fi - \csname plips@\romannumeral\count253\endcsname} + \c@plipsumAone#1 + \ifnum\c@plipsumAone>\c@max + \errhelp\paramexcess@error + \@errmessage{^^JP-lipsum: ERROR at line \the\inputlineno. The + parameter of \string\lipsum\space is too big.^^J}\fi + \ifmedium\advance\c@plipsumAone by100\relax + \else\ifshort\advance\c@plipsumAone by200\relax\fi\fi + \csname plips@\romannumeral\c@plipsumAone\endcsname} \def\types@t{\let\next\relax \ifnum\c@plipsumAone>\c@plipsumAtwo\else @@ -1044,36 +1060,6 @@ A very long lipsum paragaph:\par <<ending>> %% end of file `plipsum.tex' @ -\part{Revision history} -\begin{description} -\item[rev.\ 2.2] 2012 aug 27 - \begin{description} - \item[--] published on CTAN - \end{description} -\item[rev.\ 2.3] 2012 sep 14 - \begin{description} - \item[--] rewritten the [[\scan]] macro, now much more simple and readable. - \item[--] added the documentation in noweb. - \item[--] solved a bug in [[\warnmsg]]. - \end{description} -\item[rev.\ 2.4] 2012 nov 23 - \begin{description} - \item[--] added [[\everystartplipsumpar]] and [[\everyendplipsumpar]]. - \item[--] replaced all paragraphs. - \item[--] many cosmethyc changes. - \end{description} -\item[rev.\ 3.0] 2013 apr 27 - \begin{description} - \item[--] deleted [[\everystartplipsumpar]] and [[\everyendplipsumpar]]. - \end{description} -\item[rev.\ 4.0] 2013 may 05 - \begin{description} - \item[--] modified the interface of [[\lipsum]]. - \item[--] added the optional parameter. - \item[--] 300 latin paragraphs. - \end{description} -\end{description} -@ \part{Indexes} \section{Chunks.} \nowebchunks diff --git a/Master/texmf-dist/tex/plain/plipsum/plipsum.tex b/Master/texmf-dist/tex/plain/plipsum/plipsum.tex index 17ed20da1ac..df93c2b1ce0 100644 --- a/Master/texmf-dist/tex/plain/plipsum/plipsum.tex +++ b/Master/texmf-dist/tex/plain/plipsum/plipsum.tex @@ -3,12 +3,14 @@ %% The original source file was: plipsum.nw. %% Copyright (C) 2013 by Sergio Spina \def\PLversion{4} -\def\PLrevision{2} -\def\PLrevisiondate{2013/05/06} +\def\PLrevision{3} +\def\PLrevisiondate{2013/05/08} \chardef\beforeplipsumatcatcode=\the\catcode`@ \catcode`@=11 -{\newlinechar`|\message{|P-lipsum version -\PLversion.\PLrevision\space-- revision \PLrevisiondate|}} +\def\@message#1{{\newlinechar`\^^J\message{#1}}} +\def\@errmessage#1{{\newlinechar`\^^J\errmessage{#1}}} +\@message{^^JP-lipsum version +\PLversion.\PLrevision\space-- revision \PLrevisiondate^^J} \newcount\c@parnumber \c@parnumber=0 \def\create@par{\advance\c@parnumber by1 \expandafter\def\csname plips@\romannumeral\the\c@parnumber\endcsname} @@ -328,12 +330,11 @@ occultissimarum. Conclusum est enim contra Cyrenaicos satis acute, nihil ad Epic \create@par{Simus igitur contenti his. Nam ante Aristippus, et ille melius.\@par} \create@par{Tria genera bonorum; Quare attende, quaeso. Quid adiuvas? Quis negat?\@par} \create@par{Tria genera bonorum; Proclivi currit oratio. Sed nimis multa. Quid de Pythagora?\@par} -{\newlinechar`|\message{|P-lipsum: created -\number\c@parnumber\space paragraphs.|}} +\@message{^^JP-lipsum: created +\number\c@parnumber\space paragraphs.^^J} \newhelp\optparams@error{% Valid optional parameters are 's', 'short', 'm', 'medium', 'l', 'long'.} -\newhelp\paramexcess@error{% -The best possible value is \the\c@parnumber.} +\newhelp\paramexcess@error{The best possible value is 100} \newif\iflong \newif\ifmedium \newif\ifshort @@ -360,23 +361,30 @@ The best possible value is \the\c@parnumber.} \ifx\param@ne\@short@\shorttrue\mediumfalse\longfalse \else \errhelp\optparams@error -{\newlinechar`|\errmessage{|P-lipsum: !! ERROR !! -Wrong optional parameter.}} +\@errmessage{^^JP-lipsum: !! ERROR !! +Wrong optional parameter.^^J} \fi\fi\fi\fi\fi\fi \no@opt@par{#2}} \newif\ifhyphen \def\no@opt@par#1{\scan#1-;\end \ifhyphen\noopt@parA#1\end\else\noopt@parB#1\end\fi} \def\scan#1-#2\end{\ifx;#2\hyphenfalse\else\hyphentrue\fi} -\countdef\c@plipsumAone=253 -\countdef\c@plipsumAtwo=251 +\newcount\c@plipsumAone +\newcount\c@plipsumAtwo +\newcount\c@max +\c@max\c@parnumber +\divide\c@max by3\relax \def\noopt@parA#1-#2\end{{% \global\c@plipsumAone=#1\relax \global\c@plipsumAtwo=#2\relax -\ifnum\c@plipsumAone>\c@parnumber -\warnmsg{first}\fi -\ifnum\c@plipsumAtwo>\c@parnumber -\warnmsg{second}\fi +\ifnum\c@plipsumAone>\c@max +\errhelp\paramexcess@error +\@errmessage{^^JP-lipsum: ERROR at line \the\inputlineno. The +first parameter of \string\lipsum\space is too big.^^J}\fi +\ifnum\c@plipsumAtwo>\c@max +\errhelp\paramexcess@error +\@errmessage{^^JP-lipsum: ERROR at line \the\inputlineno. The +second parameter of \string\lipsum\space is too big.^^J}\fi \ifmedium \advance\c@plipsumAone by100\relax \advance\c@plipsumAtwo by100\relax @@ -389,12 +397,14 @@ Wrong optional parameter.}} \c@plipsumAtwo=\count@\fi \types@t}} \def\noopt@parB#1\end{% -\ifnum#1>\c@parnumber -\warnmsg{}\fi -\count253=#1\relax -\ifmedium\advance\count253 by100\relax\else -\ifshort\advance\count253 by200\relax\fi\fi -\csname plips@\romannumeral\count253\endcsname} +\c@plipsumAone#1 +\ifnum\c@plipsumAone>\c@max +\errhelp\paramexcess@error +\@errmessage{^^JP-lipsum: ERROR at line \the\inputlineno. The +parameter of \string\lipsum\space is too big.^^J}\fi +\ifmedium\advance\c@plipsumAone by100\relax +\else\ifshort\advance\c@plipsumAone by200\relax\fi\fi +\csname plips@\romannumeral\c@plipsumAone\endcsname} \def\types@t{\let\next\relax \ifnum\c@plipsumAone>\c@plipsumAtwo\else \csname plips@\romannumeral\the\c@plipsumAone\endcsname |