summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/blindtext
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/blindtext
Initial commit
Diffstat (limited to 'macros/latex/contrib/blindtext')
-rw-r--r--macros/latex/contrib/blindtext/README57
-rw-r--r--macros/latex/contrib/blindtext/blindtext.dtx1136
-rw-r--r--macros/latex/contrib/blindtext/blindtext.ins53
-rw-r--r--macros/latex/contrib/blindtext/blindtext.pdfbin0 -> 342440 bytes
-rw-r--r--macros/latex/contrib/blindtext/blindtext_american.dtx161
-rw-r--r--macros/latex/contrib/blindtext/blindtext_catalan.dtx148
-rw-r--r--macros/latex/contrib/blindtext/blindtext_english.dtx160
-rw-r--r--macros/latex/contrib/blindtext/blindtext_french.dtx144
-rw-r--r--macros/latex/contrib/blindtext/blindtext_german.dtx190
-rw-r--r--macros/latex/contrib/blindtext/blindtext_latin.dtx207
-rw-r--r--macros/latex/contrib/blindtext/blindtext_ngerman.dtx190
11 files changed, 2446 insertions, 0 deletions
diff --git a/macros/latex/contrib/blindtext/README b/macros/latex/contrib/blindtext/README
new file mode 100644
index 0000000000..75ff23d586
--- /dev/null
+++ b/macros/latex/contrib/blindtext/README
@@ -0,0 +1,57 @@
+Name of contribution: blindtext (V2.0)
+Name and email: Knut Lickert <knut@lickert.net>
+Location on CTAN: tex-archive/macros/latex/contrib/blindtext
+Summary description: Package for writing text
+License type: LaTeX Project Public License
+
+blindtext.sty: Create dummy text.
+
+Can be used to create examples with a lot text to become a feeling
+for the look of classes, packages...
+
+Some macros:
+- \blindtext creates some text,
+- \Blindtext creates more text.
+- \blinddocument creates a small document with sections, lists...
+- \Blinddocument creates a large document with sections, lists...
+
+Text corpus cann be changed with package options:
+- random
+- pangram
+- bible
+
+Supported languages:
+- (n)german
+- english and american
+- latin (short Lorem ipsum)
+- french (interim solution)
+- catalan
+
+====================================
+Provided Files:
+*blindtext.dtx
+*blindtext_<language>.dtx
+*blindtext.ins
+*blindtext.pdf
+*Readme
+
+
+For more information visit
+ http://tex.lickert.net/packages/blindtext/index.html (German)
+ http://tex.lickert.net/packages/blindtext/index_en.html (English)
+ http://tex.lickert.net/dokumente/klassen/index_en.html
+
+====================================
+Similar packages:
+lipsum - A long 'Lorem ipsum'
+
+Similarities:
+-Both styles create dummy text.
+-The length can be defined by optional parameters.
+
+Differences between blindtext and lipsum:
+-lipsum contains a larger 'Lorem Ipsum'.
+-blindtext supports different languages
+-blindtext contains macros for dummy lists (itemize, enumerate, description)
+-blindtext contains macros for documents (including sections, text and lists)
+-blindtext contains macros for math formulas if requested
diff --git a/macros/latex/contrib/blindtext/blindtext.dtx b/macros/latex/contrib/blindtext/blindtext.dtx
new file mode 100644
index 0000000000..d0a864169e
--- /dev/null
+++ b/macros/latex/contrib/blindtext/blindtext.dtx
@@ -0,0 +1,1136 @@
+% ^^A CTAN:macros/latex/contrib/supported/blindtext
+%\iffalse
+%<*package>
+%\fi
+\def\blindfileversion{V2.0}
+\def\blindfiledate{2012/01/06}
+% ^^A For index and changes, run:
+% ^^A makeindex -s gglo.ist -o blindtext.gls blindtext.glo
+% ^^A makeindex -s gind.ist -o blindtext.ind blindtext.idx
+%
+% \CheckSum{1786}
+%%
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+%%
+% \DoNotIndex{\" , \-, \flqq,\frqq, \ ,\def, \begin, \end}
+% \DoNotIndex{\csname,\endcsname, \expandafter, \global, \newcommand}
+% \DoNotIndex{\advance, \blindfiledate, \blindfileversion, \MessageBreak}
+% \DoNotIndex{\newcount, \newcounter, \newif, \or}
+% \DoNotIndex{\if, \else, \fi, \ifcase, \ifdefined, \ifnum, \ifx, \loop, \repeat}
+% \DoNotIndex{\heartsuit}
+% \DoNotIndex{\NeedsTeXFormat, \providecommand, \ProvidesPackage, \relax, \RequirePackage}
+% \DoNotIndex{\par, \chapter, \section, \subsection, \subsubsection, \paragraph, }
+% \DoNotIndex{\selectlanguage, \stepcounter, \ss, \space, \setcounter}
+% \DoNotIndex{\value, \typeout, \long, \renewcommand}
+%
+% \iffalse
+%</package>
+%<*driver>
+\documentclass{ltxdoc}
+\usepackage[ngerman,english]{babel}
+\usepackage{blindtext}
+\usepackage{makeidx}
+\usepackage{varioref}
+\IfFileExists{hyperref.sty}{\usepackage{hyperref}}{}
+\CodelineIndex
+\makeindex
+%\OnlyDescription
+\begin{document}
+ \RecordChanges
+ \DocInput{blindtext.dtx}
+\end{document}
+%</driver>
+%
+%<*package>
+% \fi
+%
+% \newcommand*{\Lpack}[1]{\textsf {#1}} ^^A typeset a package
+% \newcommand*{\Lenv}[1]{\texttt {#1}} ^^A typeset a package
+%
+% \title{Blindtext.sty:\\
+% Creating Dummy Text\\
+% \em Blindtext erzeugen}
+%
+% \date{\today, \blindfileversion}
+% \author{Knut Lickert\thanks{
+% \url{http://tex.lickert.net/packages/blindtext/}}
+% }
+% \maketitle
+%
+%\begin{abstract}
+%\selectlanguage{english}
+%With this package you can create dummy text.
+%Use \cmd{\blindtext} to get some text and
+%\cmd{\Blindtext} to get a long text.
+%With \cmd{\blinddocument} (or \cmd{\Blinddocument})
+%you get complete dummy documents.
+%
+%Details can be found at \url{http://tex.lickert.net/packages/blindtext/index_en.html}.
+%This File describes version \blindfileversion.
+%
+%\selectlanguage{ngerman}
+%\em
+%Mit diesem Paket kann man lange Texte erzeugen, ohne lange
+%Texte einzugeben.
+%Sinn ist die Erzeugung langer Beispieltexte, ohne den
+%Quelltext lang zu machen.
+%
+%Details unter \url{http://tex.lickert.net/packages/blindtext/}.
+%Dieses Dokument beschreibt Version \blindfileversion.
+%\end{abstract}
+%
+% \tableofcontents
+%
+%\selectlanguage{english}
+%\section{Overview/{\"U}bersicht}
+%
+%\begin{table}
+%\renewcommand{\arraystretch}{1.1}
+%\begin{tabular}{p{0.3\textwidth}*{2}{p{0.3\textwidth}}}\hline
+%Command/Makro & Englisch & German \\\hline
+%\cmd{\blinddocument} & create a document & erzeugt ein Dokument\\
+%\cmd{\Blinddocument} & create a big document & erzeugt ein gro{\ss}es Dokument\\
+%\cmd{\blindtext} & create text & erzeugt Text\\
+%\cmd{\Blindtext} & create more text & erzeugt mehr Text\\
+%\verb|\blindlist{env}| & create a list & erzeugt eine Liste\\
+%\verb|\blindlistoptional|\newline\hspace*{2em}\verb|{env}| & create a list with \verb|\item[]| & erzeugt eine Liste mit \verb|\item[]|\\
+%\verb|\blindlistlist|\newline\hspace*{2em}\verb|[level]{env}| & create cascaded lists & erzeugt geschachtelte Listen\\
+%\verb|\Blindlist{env}| & create a big list & erzeugt eine gro{\ss}e Liste\\
+%\verb|\Blindlistoptional|\newline\hspace*{2em}\verb|{env}| & create a big list with \verb|\item[]| & erzeugt eine gro{\ss}e Liste mit \verb|\item[]|\\
+%\verb|\blinditemize| & create an itemize list & erzeugt eine itemize-Liste\\
+%\verb|\blindenumerate| & create an enumerate list & erzeugt eine enume\-ra\-te-Liste\\
+%\verb|\blinddescription| & create a description list & erzeugt eine des\-crip\-tion-Liste\\\hline
+%$\sim$[x] & Repetition & Wiederholungsfaktor\\
+%\end{tabular}
+%\caption{Command Overview/Kommando\"ubersicht}
+%\end{table}
+%
+% \subsection{Create Documents}
+% \DescribeMacro{\blinddocument}
+% \cmd{\blinddocument} create a document with sections,
+% subsections\ldots and lists (\Lenv{itemize},
+% \Lenv{enumerate} and \Lenv{description}).
+%
+% \DescribeMacro{\Blinddocument}
+% \cmd{\Blinddocument} create a
+% document with bigger sections, subsections\ldots and longer
+% lists.\par
+%
+% The smallest document to check the look of a class would be:
+% \begin{quote}
+% \begin{verbatim}
+% \documentclass{<class>}
+% \usepackage{blindtext}
+% \begin{document}
+% \blinddocument
+% \end{document}
+% \end{verbatim}
+% \end{quote}
+%
+% If you want to have a table of contents you have two ways:
+% \begin{enumerate}
+% \item use the package option ``toc''
+% \item Just add the |\tableofcontents|-command in your testdocument.
+% \end{enumerate}
+%
+% \subsection{Package options}
+% \subsubsection{Math Option}
+% The \emph{math}-option activates math formula for |\blindtext|.
+%
+% More see in section~\vref{sec:math} and \vref{sec:optionmath}.
+%
+% \subsubsection{Toc Option}
+% Activate the table of contents for |\blinddoccument|.
+%
+% \subsubsection{Random Option}
+% \label{sec:optionrandom}
+% \changes{V2.0}{2011-12-28}{Add option random}
+% The \emph{random}-option changes the default blind text to
+% a sequence of predefined sentences.
+% The next paragraph starts with the next phrase from the previous paragraph.
+%
+% You may redefine the number of phrases per paragraph,
+% details see table~\vref{tab:repetion}.
+%
+% \begin{table}
+% \begin{minipage}{\textwidth}
+% \begin{tabular}{llll}
+% Command & Parameter(s) & Remark & Section\\\hline
+% \cmd{\blindtext} & \oarg{n} & n repetition\textsuperscript{*} &\ref{sec:blindtext}\\
+% \cmd{\Blindtext} & \oarg{x}\oarg{n} & x paragraphs with n repetitions&\ref{sec:blindtext}\\[1ex]
+% \multicolumn{3}{l}{\textbf{Global Redefinitions of Default} -- \cmd{\setcounter}\marg{Counter}\marg{n}}\\
+% Counter & Parameter & Remark & Section\\\hline
+% blindtext & \marg{n} & n repetitions per paragraph\\
+% Blindtext & \marg{n} & n paragraph for \cmd{\Blindtext}\\
+% blindlist & \marg{n} & n items in list&\ref{sec:blindlists}\\
+% blindlistlevel & \marg{n} & depth of nested lists (max. 4)&\ref{sec:def:blindlists}\\
+% \end{tabular}
+% \footnotetext{* The default for \cmd{\blindtext} values depends on selected option
+% (\emph{random}: 17~sentences, \emph{pangram}:~5 pangrams, default:~1 text).}
+% \end{minipage}
+% \caption{Modifiying Repetion Factors}
+% \label{tab:repetion}
+% \end{table}
+%
+% If the language does not support this option, the default text is used.
+%
+% \subsubsection{Pangram Option}
+% \label{sec:optionpangram}
+% \changes{V2.0}{2012-01-02}{Add option pangram}
+% The \emph{pangram}-option changes the default blind text to
+% a sequence of pangrams.
+% A pangram, or holoalphabetic sentence, is a sentence using
+% every letter of the alphabet at least once.\footnote{\url{http://en.wikipedia.org/wiki/Pangram}}
+%
+% You may redefine the number of phrases per paragraph,
+% details see table~\vref{tab:repetion}.
+%
+% If the language does not support this option, the default text is used.
+%
+% \subsubsection{Bible Option}
+% \label{sec:optionbible}
+% \changes{V2.0}{2011-12-27}{Add option bible}
+% The \emph{bible}-option changes the default blind text to
+% texts from bible verse 3.14 (Genesis, Exodus, Leviticus, Numeri and Deuteronomium)
+%
+% \subsection{Get Some Text}
+% \label{sec:blindtext}
+% \DescribeMacro{\blindtext}
+% \cmd{\blindtext}\oarg{x} create a text. The optional parameter define a
+% repetition. Default for the repetition is one and can be modified
+% with \cmd{\setcounter}\marg{blindtext} \marg{1}.
+% See also table~\vref{tab:repetion}.
+%
+% \DescribeMacro{\Blindtext}
+% \cmd{\Blindtext}\oarg{x}\oarg{y} create $x$ paragraphs with the text of
+% \cmd{\blindtext}. The first optional parameter defines a
+% repetition of the paragraphs. Default for the repetition is five
+% and can be modified with \cmd{\setcounter}\marg{Blindtext}\marg{5}. The
+% second optional parameter is given to \cmd{\blindtext}.
+% See also table~\vref{tab:repetion}.
+%
+% \DescribeMacro{\parstart}
+% \DescribeMacro{\parend}
+% It is possible to add a start and end sequence for each paragraph.
+%
+% The two macros \cmd{\parstart} and \cmd{\parend} define a
+% starting and ending sequence for each paragraph in
+% \cmd{\Blindtext}.
+%
+% \changes{V2.0}{2011-12-09}{Default paragraph start}
+% The paragraph start is redefined for each language change:
+% First paragraphs get an empty start, the following paragraphs get
+% different starting texts.
+% Advantage: Each paragraph in a paragraph sequence looks different.
+% This feature must be supported by the language\footnote{
+% see redefinitions of \cmd{\blindtext@parstart}}
+%
+% \subsection{Get Some Lists}
+% \label{sec:blindlists}
+% \DescribeMacro{\blindlist}
+% \cmd{\blindlist}\marg{env}\oarg{x} create a list, the type is defined by the
+% obligatory parameter. The optional parameter defines a repetition.
+% Default for the repetition is five and can be modified with
+% \cmd{\setcounter}\marg{blindlist}\marg{x}.
+%
+% \DescribeMacro{\blindlistlist}
+% \cmd{\blindlistlist}\oarg{level}\marg{env}\oarg{x} creates cascaded lists up to
+% level \verb|level|, the type is defined by the second obligatory
+% parameter. The optional parameter defines a repetition. Default is the
+% same like in \cmd{\blindlist}.
+%
+% \DescribeMacro{\Blindlist}
+% \cmd{\Blindlist}\marg{env}\oarg{x} create a list with long texts.
+% The optional parameter defines a
+% repetition. Default for the repetition is five and can be modified
+% with \cmd{\setcounter}\marg{blindlist}\marg{x}.
+%
+% \DescribeMacro{\blindlistoptional}
+% \cmd{\blindlistoptional}\marg{env}\oarg{x} create a list with \cmd{\item}\oarg{}. The
+% list is defined by the obligatory parameter. The optional
+% parameter defines a repetition. Default for the repetition is five
+% and can be modified with \cmd{\setcounter}\marg{blindlist} \marg{x}.
+%
+% \DescribeMacro{\Blindlistoptional}
+% \cmd{\Blindlistoptional} create a list like
+% \cmd{\blindlistoptional} with long texts.
+%
+% \DescribeMacro{\blinditemize}
+% \DescribeMacro{\blindenumerate}
+% \DescribeMacro{\blinddescription}
+% The commands \cmd{\blinditemize}, \cmd{\blindenumerate} and \cmd{\blinddescription}
+% are abbreviations for \cmd{\blindlist}\marg{itemize}, \cmd{\blindlist}\marg{enumerate}
+% and \cmd{\blindlist}\marg{description}.
+%
+% \DescribeMacro{\Blinditemize}
+% \DescribeMacro{\Blindenumerate}
+% \DescribeMacro{\Blinddescription}
+% The commands \cmd{\Blinditemize}, \cmd{\Blindenumerate} and \cmd{\Blinddescription}
+% are abbreviations for \cmd{\Blindlist}\marg{itemize}, \cmd{\Blindlist}\marg{enumerate}
+% and \cmd{\Blindlist}\marg{description}.
+%
+%
+% \subsection{Get Some Math in the Text}
+% \label{sec:math}
+% \marginpar{\hfill Option math}
+% If you need a dummy text with math formula, you can add
+% some math with the package option ``math''.
+%
+%\DescribeMacro{\blindmathpaper}
+% |\blindmathpaper| built some text with formulas in between.
+% This macro is used in |\blinddocument| if |\blindmathtrue| is set.
+%
+% If you need dummy text with and without math, you can (de)activate
+% the math option with the following commands:
+%
+%\DescribeMacro{\blindmathtrue}
+% With |\blindmathtrue| you set a flag, so the following blind text contains
+% inline math.
+%
+%\DescribeMacro{\blindmathfalse}
+% With |\blindmathfalse| you reset the flag for inline math
+% inside the blind text.
+%
+% \subsection{Get Additional Markup in the Text}
+% \DescribeMacro{\blindmarkup}
+% If you want to test some markup in your dummy text you can redefine
+% |\blindmarkup|.
+%
+% |\blindmarkup| is a macro with one parameter and it set some
+% parts in your markup.
+%
+% Example:
+% \begin{verbatim}
+% \renewcommand{\blindmarkup}[1]{\emph{#1}}
+% \end{verbatim}
+%
+% \section{FAQ/More features}
+%
+% \subsection{Add Tabulars and Tables}
+% Is it possible to add tabulars to blindtext?
+%
+% There are no plans to integrate tabulars in blindtext.
+% Tabulars in text are no good idea, they should be integrated
+% to tables-environment (tabular, may be a short description, caption).
+%
+% Tabulars need there own layout, I don't think you may define
+% a table for each use in blindtext.
+%
+% You may define your own tabular/table and surround it with
+% |\blindtext|.
+%
+% Example:
+% \begin{verbatim}
+% \Blindtext
+% % Your tabular
+% \Blindtext
+% \end{verbatim}
+%
+% \subsection{Add Pictures and Figures }
+% Is it possible to add pictures to blindtext?
+%
+% There are no plans to integrate pictures in blindtext.
+%
+% I don't think you may define
+% a picture for each use in blindtext.
+%
+%
+% \subsection{Key-Value-Options}
+%
+% You may change some defaults by redefining commands\footnote{macro \cmd{\blindmarkup}}
+% or numbers\footnote{|blindtext|, |Blindtext|, |blindlist| and |blindlistlevel|}.
+% Would it be possible to define them as key-value options?
+%
+% In theory yes, but I don't want to add an additional dependency to other packages.
+%
+%
+% \subsection{More Languages}
+% The language xx is not supported - can you add it?
+%
+% If you want to have blindtext in another language, please provide me some texts.
+%
+% I need:
+% \begin{itemize}
+% \item The language name (used in babel)
+% \item Some text for the paragraphs
+% \item Some (at least three) sentences for paragraph start.
+% \item The numbers as used in ``first, second\ldots''
+% \item Some sentences to be used with option \emph{random}.
+% You may tell a little story and the last sentence can be continued with
+% the first sentence.
+% \item Some pangrams (See \url{http://en.wikipedia.org/wiki/List_of_pangrams}.
+% \item The following texts:
+% \begin{itemize}
+% \item item: ``item in a list''
+% \item heading: ``Heading on level''
+% \item lists: ``Lists''
+% \item listsEx: ``Example for list''
+% \item blindmath: ``Some blind text with math formulas''
+% \end{itemize}
+% \end{itemize}
+
+% \appendix
+% \StopEventually
+%
+% \selectlanguage{english}
+% \section{Implementation}
+% \changes{V1.8}{2009-01-27}{Adding a lot percent to avoid spaces.}
+%
+%
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{blindtext}[\blindfiledate\space\blindfileversion\space%
+ blindtext-Package]
+\RequirePackage{xspace}
+% \end{macrocode}
+% \begin{macro}{\grqq}
+% \begin{macro}{\glqq}
+% Just in case the German quote are not defined
+% \begin{macrocode}
+\providecommand{\grqq}{}
+\providecommand{\glqq}{}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\blind@checklanguage}
+% \changes{V1.6}{2006-08-02}{Check for defined language}
+% \changes{V2.0}{2011-12-31}{Text default lorem lipsum}
+% It is possible, that you use blindtext.sty with
+% undefined languages.
+% This macro checks if blindtext supports the language.
+% If it is not available, an error is reported and
+% the default lorem lipsum used.
+%
+% If you don't load babel, the message may be confusing:
+% I get the warning ``welsh not defined''.\footnote{
+% \LaTeX\ loads babel on it's own to load hyphenations,
+% Welsch is the last language in alphabet.
+% }
+% \begin{macrocode}
+\newcommand{\blind@checklanguage}{%
+ \@ifundefined{blindtext@\languagename}{%
+ \PackageWarning{blindtext}{\languagename\space not
+ defined, using English instead.\MessageBreak
+ }%
+ }{}%
+}
+% \end{macrocode}
+% \end{macro}
+%
+%
+% \subsection{Counter and Supporting Macros}
+% First we need some counters for the number of repetitions of the
+% text and the paragraphs.
+% \begin{macrocode}
+\newcounter{blindtext}\setcounter{blindtext}{1}
+\newcounter{Blindtext}\setcounter{Blindtext}{5}
+% \end{macrocode}
+%
+% Define a counter for paragraph start sequence.
+% \begin{macrocode}
+\newcounter{blind@countparstart}
+% \end{macrocode}
+%
+% \begin{macro}{\blindtext}
+%
+% \verb|\blindtext[x]| writes a sentence x times.
+% The default is stored in the counter \verb|blindtext|. This value
+% can be changed with \verb|\setcounter{blindtext}{1}|.
+%
+% \changes{V1.6}{2006-08-02}{Check for defined language}
+% \begin{macrocode}
+\newcount\blind@countxx
+\newcommand{\blindtext}[1][\value{blindtext}]{%
+ \blind@checklanguage
+ \setcounter{blind@randommax}{#1}%for option random
+ \setcounter{blind@pangrammax}{#1}%for option pangram
+ \blind@countxx=1 %
+ \loop
+ \blindtext@text\
+ \ifnum\blind@countxx<#1\advance\blind@countxx by 1 %
+ \repeat
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Creating Text}
+% \begin{macro}{\Blindtext}
+% \verb|\Blindtext[x][y]| execute $x\times$\verb|\blindtext[y]|. Each
+% \verb|\blindtext[y]| built a paragraph.
+% The default is stored in the counter \verb|Blindtext|. This value
+% can be changed with \verb|\setcounter{Blindtext}{5}|.
+% The counter \verb|blindtext@numBlindtext| stores the first
+% optional parameter to be used in \verb|\blindtext@Blindtext|.
+% \changes{V1.6}{2006-08-02}{Check for defined language}
+% \begin{macrocode}
+\newcount\blindtext@numBlindtext
+\newcommand{\Blindtext}[1][\value{Blindtext}]{%
+ \blind@checklanguage
+ \blindtext@numBlindtext=#1\relax
+ \blind@Blindtext
+}
+% \end{macrocode}
+% \end{macro} %^^A Blindtext
+%
+% \begin{macro}{\blind@Blindtext}
+% This macro continue \cmd{\Blindtext} with a second optional parameter.
+%
+% Each paragraph starts and end with a text, which can be defined with
+% \verb|\starttext| or \verb|\endtext|.
+% \begin{macrocode}
+\newcount\blind@countyy
+\newcommand{\blind@Blindtext}[1][\value{blindtext}]{%
+ \blind@countyy=1 %
+ \loop
+ {\blindtext@parstart\blindtext[{#1}]\blindtext@parend\par}%
+ \ifnum\blind@countyy<\blindtext@numBlindtext\advance\blind@countyy by 1 %
+ \repeat
+}
+% \end{macrocode}
+% \end{macro}%^^A {\blind@Blindtext}
+%
+% \begin{macro}{\parstart}
+% \begin{macro}{\parend}
+% \begin{macrocode}
+\newcommand{\blindtext@parstart}{} % Text at start of paragraph
+\newcommand{\blindtext@parend}{} % Text at end of paragraph
+\newcommand{\parstart}[1]{\renewcommand{\blindtext@parstart}{#1}}
+\newcommand{\parend}[1]{\renewcommand{\blindtext@parend}{#1}}
+% \end{macrocode}
+% \end{macro}%^^A{\parstart}
+% \end{macro}%^^A{\parend}
+%
+% \subsection{Lists}
+% \label{sec:def:blindlists}
+% Here I define some flags to decide in the lists if we have to
+% create big items and if we need the optional parameter at
+% \verb|\item|. These flags are reset in \verb|\blind@list|.\par
+% The counter \verb|blindlist| define the default number of items in a list.
+% The counter \verb|blindlistitem| is needed by \verb|\blindtext@count|
+% to write a text like 'first', 'second'\ldots.
+% \begin{macrocode}
+\newif\ifblind@long\blind@longfalse
+\newif\ifblind@optional\blind@optionalfalse
+\newcounter{blindlist}
+\newcounter{blindlistlevel}% Up tu X level
+\newcounter{blindlist@level}% internal counter
+\newcount\blind@listitem
+% \end{macrocode}
+%
+% \begin{macro}{\blindlist}
+% \begin{macro}{\blind@listtype}
+% \verb|\blindlist{env}[x]| writes an env-list with $x$ items.
+% The default is stored in the counter \verb|blindlist|. This value
+% can be changed with \verb|\setcounter{blindlist}{1}|.
+% The type of list is stored in \verb|\blind@listtype|.
+% \changes{V1.6}{2006-08-02}{Check for defined language}
+% \begin{macrocode}
+%% ^^A-----------------------------------------------------------
+\newcommand{\blindlist}[1]{%
+ \blind@checklanguage
+ \def\blind@listtype{#1}%
+ \setcounter{blind@levelcount}{1}%
+ \blind@list
+}
+% \end{macrocode}
+% \end{macro}%^^A{\blindlist}
+% \end{macro}%^^A{\blind@listtype}
+%
+% \begin{macro}{\blind@list}
+% This macro continue the macro \verb|\blindlist| and with the
+% optional parameter. After the printout, we reset the flags and the
+% counter for the list text.
+% \begin{macrocode}
+\newcommand{\blind@list}[1][5]{%
+ \setcounter{blindlist}{#1}%
+ \stepcounter{blindlist@level}% depth of list
+ \blind@listitem=1 %
+ \begin{\blind@listtype}%
+ \blind@items
+ \end{\blind@listtype}%
+ \blind@longfalse
+ \blind@optionalfalse
+}
+% \end{macrocode}
+% \end{macro}%^^A {\blind@list}
+%
+% \begin{macro}{\blindlistlist}
+% \verb|\blindlistlist[num]{env}[x]| writes cascaded lists up to level num.
+% \begin{macrocode}
+\newcommand{\blindlistlist}[2][4]{%
+ \setcounter{blindlistlevel}{#1}%
+ \setcounter{blindlist@level}{0}% deepest reached level
+ \setcounter{blind@levelcount}{1}% actual level for printout
+ \def\blind@listtype{#2}%
+ \blind@list
+}
+% \end{macrocode}
+% \end{macro}%^^A {\blindlistlist}
+% \begin{macro}{\blindlistlistoptional}
+% Like \verb|\blindlistlist[num]{env}[x]| but for environment with optional parameters.
+% \begin{macrocode}
+\newcommand{\blindlistlistoptional}{%
+ \blind@optionaltrue
+ \blindlistlist
+}
+% \end{macrocode}
+% \end{macro}%^^A{\blindlistlistoptional}
+%
+% \begin{macro}{\blinditemize}
+% \begin{macro}{\blindenumerate}
+% Some default macros for the standard environments.
+% \begin{macrocode}
+\newcommand{\blinditemize}{\blindlist{itemize}}
+\newcommand{\blindenumerate}{\blindlist{enumerate}}
+% \end{macrocode}
+% \end{macro}%^^A{\blinditemize}
+% \end{macro}%^^A{\blindenumerate}
+%
+% \verb|\Blindlist[x]| write a list with $x$ items.
+% The default is stored in the counter \verb|blindlist|. This value
+% can be changed with \verb|\setcounter{blindlist}{1}|.
+%
+%
+% \begin{macro}{\Blindlist}
+% \begin{macrocode}
+\newcommand{\Blindlist}[1]{%
+ \blind@longtrue
+ \blindlist{#1}%
+}
+% \end{macrocode}
+% \end{macro}%^^A{\Blindlist}
+%
+% \begin{macro}{\Blinditemize}
+% \begin{macro}{\Blindenumerate}
+% Some default macros for the standard environments.
+% \begin{macrocode}
+\newcommand{\Blinditemize}{\Blindlist{itemize}}
+\newcommand{\Blindenumerate}{\Blindlist{enumerate}}
+% \end{macrocode}
+% \end{macro}%^^A{\Blinditemize}
+% \end{macro}%^^A{\Blindenumerate}
+%
+% \begin{macro}{\blindlistoptional}
+% Here we start a list with \verb|\item[]|. So we set the flag for optional
+% parameter and start the normal list.
+% \begin{macrocode}
+\newcommand{\blindlistoptional}[1]{%
+ \blind@optionaltrue
+ \blindlist{#1}%
+}
+% \end{macrocode}
+% \end{macro}%^^A{\blindlistoptional}
+%
+% \begin{macro}{\Blindlistoptional}
+% Now a big list with optional parameter at \verb|\item|.
+% \begin{macrocode}
+\newcommand{\Blindlistoptional}[1]{%
+ \blind@optionaltrue
+ \blind@longtrue
+ \blindlist{#1}%
+}
+% \end{macrocode}
+% \end{macro}%^^A{\blindlistoptional}
+%
+% \begin{macro}{\blinddescription}
+% \begin{macro}{\Blinddescription}
+% Some default macros for the standard environment description.
+%\changes{1.7}{2006-12-01}{Replace counter listcount}
+% \begin{macrocode}
+\newcommand{\blinddescription}{\blindlistoptional{description}}
+\newcommand{\Blinddescription}{\Blindlistoptional{description}}
+\newcounter{blind@listcount}
+\newcounter{blind@levelcount}
+% \end{macrocode}
+% \end{macro}%^^A{\blinddescription}
+% \end{macro}%^^A{\Blinddescription}
+%
+% \begin{macro}{\blind@items}
+% Here the \verb|\item| are written.
+% A local counter is defined and the \verb|\item| is written. The
+% type of \verb|\item| is influenced by the flags.
+% \begin{macrocode}
+\newcommand{\blind@items}{%
+ \setcounter{blind@listcount}{1}%
+ \loop
+ \ifblind@optional
+ \ifblind@long
+ \item[\blindtext@countitem] \blindtext@text
+ \else
+ \item[\blindtext@count] \blindtext@item
+ \fi
+ \else % \blind@optionalfalse
+ \ifblind@long
+ \item \blindtext@text
+ \else
+ \item \blindtext@countitem
+ \fi
+ \fi % \ifblind@optional
+% \end{macrocode}
+% Loop for cascaded lists.
+% \changes{V1.3}{2003-05-18}{Cascaded lists}
+% \begin{macrocode}
+ {%
+ \loop
+ \ifnum\value{blindlistlevel}>\value{blindlist@level}%
+ \stepcounter{blind@levelcount}%
+ \blind@list[\value{blindlist}]\relax
+ \addtocounter{blind@levelcount}{-1}%
+ \setcounter{blind@listcount}{1}%
+ \repeat
+ }%
+ \ifnum\value{blind@listcount}<\value{blindlist}%
+ \stepcounter{blind@listcount}%
+% \end{macrocode}
+% Correction for nested values.
+% \begin{macrocode}
+% \end{macrocode}
+% Close the loop
+% \begin{macrocode}
+ \repeat
+}
+% \end{macrocode}
+% \end{macro}%^^A{\blind@item}
+%% ^^A-----------------------------------------------------------
+% \subsection{Blind Text with Markup}
+% \changes{V1.9d}{2010-01-14}{Adding markup feature}
+% \begin{macro}{\blindmarkup}
+% \begin{macrocode}
+\newcommand{\blindmarkup}[1]{#1}
+% \end{macrocode}
+% \end{macro}% ^^A \blindmarkup
+%
+%% ^^A-----------------------------------------------------------
+% \subsection{Blind Text with Math}
+% \changes{V1.9}{2009-05-06}{Adding math}
+% \subsubsection{Inline Math}
+% \begin{macro}{\blindtext@endsentence}
+% Finish a sentence with a dot.
+% This macro is redefined for blind text with inline math/formulas.
+% \begin{macrocode}
+ \def\blindtext@endsentence{.\xspace}%
+% \end{macrocode}
+%
+% Counter to make some alternation of inline formulas.
+% \begin{macrocode}
+ \newcount{\blind@mathformula}\blind@mathformula=0%
+% \end{macrocode}
+%
+% A flag to sign, if math formulas should be used in blind text.
+% \begin{macrocode}
+\newif\ifblindmath
+% \end{macrocode}
+%
+% \begin{macro}{\blindmathtrue}
+% Make the following blind text with inline math.
+% This redefine the logical variable |\ifblindmath|,
+% to keep the flag we have to store and call the old definition.
+% \begin{macrocode}
+\let\oldblindmathtrue\blindmathtrue
+\renewcommand{\blindmathtrue}{
+ \oldblindmathtrue
+% \end{macrocode}
+% Make a formula each x sentence.
+% \begin{macrocode}
+ \def\blindtext@endsentence{%
+ \advance\blind@mathformula by 1%
+ \ifcase\blind@mathformula%
+ \or. \(\sin^2(\alpha) + \cos^2(\beta) = 1\)%
+ \or\xspace\(E = mc^2\)%
+ \or. \(\sqrt[n]{a} \cdot \sqrt[n]{b} = \sqrt[n]{ab}\)%
+ \or. \(\frac{\sqrt[n]{a}}{\sqrt[n]{b}} = \sqrt[n]{\frac{a}{b}}\)%
+ \or. \(a\sqrt[n]{b} = \sqrt[n]{a^n b}\)%
+ \or. \(\mathrm{d}\Omega = \sin \vartheta \mathrm{d} \vartheta \mathrm{d}\varphi\)%
+ \else\global\blind@mathformula=0%
+ \fi%
+ .\xspace}%
+% \end{macrocode}
+% \begin{macrocode}
+ }%\blindmathtrue
+% \end{macrocode}
+% \end{macro} %^^A \blindmathtrue
+%
+% \begin{macro}{\blindmathfalse}
+% Make the following blind text without inline math.
+% \begin{macrocode}
+\let\oldblindmathfalse\blindmathfalse
+\renewcommand{\blindmathfalse}{
+ \oldblindmathfalse
+% \end{macrocode}
+% Rebuild the normal sentence end.
+% \begin{macrocode}
+ \def\blindtext@endsentence{.\xspace}%
+% \end{macrocode}
+% \begin{macrocode}
+}%\includemath
+% \end{macrocode}
+% \end{macro} %^^A \blindmathfalse
+% \end{macro} %^^A\blindtext@endsentence
+%
+%
+% \subsubsection{'Big' Formulas}
+% Counter to make some alternation of 'big' formulas.
+% \begin{macrocode}
+ \newcount{\blind@Mathformula}
+ \blind@Mathformula=0%
+% \end{macrocode}
+% \begin{macro}{\blindtext@formula}
+% Make a formula each x sentence.
+% \begin{macrocode}
+ \def\blindtext@formula{%
+ \advance\blind@Mathformula by 1%
+ \ifcase\blind@Mathformula%
+ \[\bar x = \frac{1}{n}\sum_{i=1}^{i=n} x_i = \frac{x_1 + x_2 + \dots{} + x_n}{n}\]
+ \or \[ \int_0^\infty e^{-\alpha x^2} \mathrm{d}x =
+ \frac12\sqrt{\int_{-\infty}^\infty e^{-\alpha x^2}}
+ \mathrm{d}x\int_{-\infty}^\infty e^{-\alpha y^2}\mathrm{d}y =
+ \frac12\sqrt{\frac{\pi}{\alpha}} \]
+ \or \[ \sum_{k=0}^\infty a_0q^k = \lim_{n\to\infty}\sum_{k=0}^n a_0q^k =
+ \lim_{n\to\infty} a_0\frac{1-q^{n+1}}{1-q} = \frac{a_0}{1-q}
+ \]
+ \or \[x_{1,2}=\frac{-b \pm \sqrt{b^2-4ac}}{2a} = \frac{-p \pm \sqrt{p^2-4q}}{2}\]
+ \or \[ \frac{\partial^2 \Phi}{\partial x^2} + \frac{\partial^2 \Phi}{\partial y^2} +
+ \frac{\partial^2 \Phi}{\partial z^2} =
+ \frac{1}{c^2}\frac{\partial^2\Phi}{\partial t^2}
+ \]
+ \or \[\sqrt[n]{a} \cdot \sqrt[n]{b} = \sqrt[n]{ab}\]
+ \or \[\frac{\sqrt[n]{a}}{\sqrt[n]{b}} = \sqrt[n]{\frac{a}{b}}\]
+ \or \[a\sqrt[n]{b} = \sqrt[n]{a^n b}\]
+ \global\blind@Mathformula=0%
+ \fi%
+}%
+% \end{macrocode} %^^A \blindtext@formula
+% \end{macro} %^^A \blindtext@formula
+%
+%% ^^A-----------------------------------------------------------
+% \subsection{Create Complete Documents}
+% A flag to sign, if the dummy documents should include a
+% table of contents.
+% \begin{macrocode}
+\newif\ifblindtoc
+\blindtocfalse
+% \end{macrocode}
+%
+% \begin{macro}{\blinddocument}
+% \cmd{\blinddocument} adds a document with \verb|\chapter|,
+% \verb|\section|\ldots, texts and lists (itemize, enumerate,
+% description).
+% \begin{macrocode}
+\newcommand{\blinddocument}{%
+ \ifblindtoc\tableofcontents\fi
+ \@ifundefined{chapter}{}{%
+ \chapter{\blindtext@heading 0 (chapter)}%
+ \blindtext
+ }%
+ \section{\blindtext@heading 1 (section)}%
+ \blindtext
+ \subsection{\blindtext@heading 2 (subsection)}%
+ \blindtext
+ \subsubsection{\blindtext@heading 3 (subsubsection)}%
+ \blindtext
+ \paragraph{\blindtext@heading 4 (paragraph)}%
+ \blindtext
+ \section{\blindtext@list}%
+ \subsection{\blindtext@listEx (itemize)}%
+ \blinditemize
+ \subsubsection{\blindtext@listEx (4*itemize)}%
+ \blindlistlist{itemize}[2]%
+ \subsection{\blindtext@listEx (enumerate)}%
+ \blindenumerate
+ \subsubsection{\blindtext@listEx (4*enumerate)}%
+ \blindlistlist{enumerate}[2]%
+ \subsection{\blindtext@listEx (description)}%
+ \blinddescription
+ \subsubsection{\blindtext@listEx (4*description)}%
+ \blindlistlistoptional{description}[2]%
+}
+% \end{macrocode}
+% \end{macro}%^^A{\blinddocument}
+%
+% \begin{macro}{\Blinddocument}
+% \cmd{\blinddocument} adds a document with \verb|\chapter|,
+% \verb|\section|\ldots, texts and lists (itemize, enumerate,
+% description).
+% \begin{macrocode}
+\newcommand{\Blinddocument}{%
+ \ifblindtoc\tableofcontents\fi
+ \@ifundefined{chapter}{}{%
+ \chapter{\blindtext@heading 0 (chapter)}%
+ \blindtext
+ }%
+ \section{\blindtext@heading 1 (section)}%
+ \Blindtext
+ \subsection{\blindtext@heading 2 (subsection)}%
+ \Blindtext
+ \subsubsection{\blindtext@heading 3 (subsection)}%
+ \Blindtext
+ \paragraph{\blindtext@heading 4 (paragraph)}%
+ \Blindtext
+ \section{\blindtext@list}%
+ \subsection{\blindtext@listEx (itemize)}%
+ \Blinditemize
+ \subsubsection{\blindtext@listEx (4*itemize)}%
+ \blind@longtrue
+ \blindlistlist{itemize}[2]%
+ \subsection{\blindtext@listEx (enumerate)}%
+ \Blindenumerate
+ \subsubsection{\blindtext@listEx (4*enumerate)}%
+ \blind@longtrue
+ \blindlistlist{enumerate}[2]%
+ \subsection{\blindtext@listEx (description)}%
+ \Blinddescription
+ \subsubsection{\blindtext@listEx (4*description)}%
+ \blind@longtrue
+ \blindlistlistoptional{description}[2]%
+ %
+ \ifblindmath
+ \section{\blindtext@blindmath}%
+ \blindmathpaper%
+ \fi%
+}
+% \end{macrocode}
+% \end{macro}%^^A{\Blinddocument}
+%
+% \begin{macro}{\blindmathpaper}
+% \changes{V1.9}{2009-05-06}{Adding math}
+% Build some text with formulas in between.
+% \begin{macrocode}
+\newcommand{\blindmathpaper}{
+\blindtext
+\blindtext@formula
+\blindtext
+\blindtext@formula
+\blindtext
+\blindtext@formula
+\blindtext
+\blindtext@formula
+\blindtext
+\blindtext@formula
+\blindtext\relax%
+}%\blindmathpaper
+% \end{macrocode}
+% \end{macro} %^^A \blindmathpaper
+%
+%
+% \section{Option Processing}
+% \subsection{Bible Option}
+% \label{sec:optionbible}
+% \subsection{Bible Option}
+% \changes{V2.0}{2011-12-27}{Option bible}
+%
+% The option bible change the default blind text to texts from the bible.
+% \begin{macrocode}
+\newif\ifblindbible
+\DeclareOption{bible}{
+ \blindbibletrue
+}
+% \end{macrocode}
+%
+%
+% \subsection{Random Option}
+% \changes{V2.0}{2011-12-27}{Option random}
+% \begin{macrocode}
+\newif\ifblindrandom
+% \end{macrocode}
+% Define a counter for continues text change.
+% \begin{macrocode}
+\newcounter{blind@randomcount}\setcounter{blind@randomcount}{0}
+% \end{macrocode}
+% Define a counter to define the number of sentences per paragraph when you use the random option.
+% blind@randommax is redefined in \cmd{blindtext}
+% \begin{macrocode}
+\newcounter{blind@randommax}
+% \end{macrocode}
+%
+% The option random change the default blind text to texts from the random.
+% Changes also the counter \emph{blindtext} (Default parameter for \cmd{blindtext}).
+% \begin{macrocode}
+\DeclareOption{random}{
+\blindrandomtrue
+}
+% \end{macrocode}
+%
+%
+% \subsection{Pangram Option}
+% \changes{V2.0}{2012-01-02}{Option pangram}
+% \begin{macrocode}
+\newif\ifblindpangram
+% \end{macrocode}
+% Define a counter for continues text change.
+% \begin{macrocode}
+\newcounter{blind@pangramcount}\setcounter{blind@pangramcount}{0}
+% \end{macrocode}
+% Define a counter to define the number of sentences per paragraph when you use the pangram option.
+% blind@pangrammax is redefined in \cmd{blindtext}
+% \begin{macrocode}
+\newcounter{blind@pangrammax}
+% \end{macrocode}
+%
+% The option pangram change the default blind text to texts from the pangram.
+% Changes also the counter \emph{blindtext} (Default parameter for \cmd{blindtext}).
+% \begin{macrocode}
+\DeclareOption{pangram}{
+\blindpangramtrue
+}
+% \end{macrocode}
+%
+%
+% \subsection{Math Option}
+% \label{sec:optionmath}
+% \changes{V1.9}{2009-06-06}{Option math}
+% Activate the math formulas in the text.
+% \begin{macrocode}
+\DeclareOption{math}{
+ \blindmathtrue
+}
+% \end{macrocode}
+%
+% \subsection{Toc Option}
+% \label{sec:optiontoc}
+% \changes{V1.9}{2009-06-14}{Option toc}
+% Activate the table of contents for |\blinddoccument|.
+% \begin{macrocode}
+\DeclareOption{toc}{
+ \blindtoctrue
+}
+% \end{macrocode}
+%
+% \section{Closing Actions}
+% Activate the options
+% \begin{macrocode}
+\ProcessOptions\relax
+% \end{macrocode}
+%
+%
+%% ^^A-----------------------------------------------------------
+% \section{The Texts}
+%
+% \changes{V1.7}{2006-11-21}{Delete trailing spaces in language definitions.}
+%
+% \begin{macro}{\blind@addtext}
+% This macro adds the texts according to the language definitions.
+% Four language packages are supported:
+%\begin{itemize}
+% \item babel
+% \item polyglossia (see \url{http://tug.ctan.org/tex-archive/macros/xetex/latex/polyglossia/})
+% \item german
+% \item ngerman
+%\end{itemize}
+%
+%Parameters:
+%\begin{enumerate}
+% \item Language
+% \item The text definitions
+%\end{enumerate}
+% \begin{macrocode}
+\newcommand{\blind@addtext}[2]{%
+% \end{macrocode}
+% First we take care of the babel-package.
+% \begin{macrocode}
+ \@ifpackageloaded{babel}{
+ \expandafter\addto\csname extras#1\endcsname{#2}
+ }{}%
+% \end{macrocode}
+% \changes{V1.9}{2009-06-03}{Support polyglossia}
+% Polyglossia provides a complete Babel replacement for users of Xe\LaTeX.
+% \begin{macrocode}
+ \@ifpackageloaded{polyglossia}{
+ \expandafter\gappto\csname captions#1\endcsname {#2}
+ }{}%
+% \end{macrocode}
+% \changes{V1.9}{2009-06-04}{Support (n)german}
+% Now some special support for the (n)german-package.
+% \begin{macrocode}
+ \@ifpackageloaded{ngerman}{
+ \expandafter\g@addto@macro\csname captions#1\endcsname {#2}
+ }{}%
+ \@ifpackageloaded{german}{
+ \expandafter\g@addto@macro\csname captions#1\endcsname {#2}
+ }{}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+}%\blind@addtext
+% \end{macrocode}
+% \end{macro}%^^A\blind@addtext
+%
+%
+% \subsection{Default Without Language}
+% First all default texts if no language is selected.
+%
+% \begin{macrocode}
+\def\blindtext@text{%
+ Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Etiam
+ lobortis facilisis sem. Nullam nec mi et neque pharetra
+ sollicitudin. Praesent imperdiet mi nec ante. Donec ullamcorper,
+ felis non sodales commodo, lectus velit ultrices augue, a
+ dignissim nibh lectus placerat pede. Vivamus nunc nunc, molestie
+ ut, ultricies vel, semper in, velit. Ut porttitor. Praesent in
+ sapien. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
+ Duis fringilla tristique neque. Sed interdum libero ut metus.
+ Pellentesque placerat. Nam rutrum augue a leo. Morbi sed elit sit
+ amet ante lobortis sollicitudin. Praesent blandit blandit mauris.
+ Praesent lectus tellus, aliquet aliquam, luctus a, egestas a,
+ turpis. Mauris lacinia lorem sit amet ipsum. Nunc quis urna dictum
+ turpis accumsan semper.%
+}
+\def\blindtext@count{%
+ \ifcase\blind@listitem\or
+ First\or Second%...
+ \else
+ Last%
+ \blind@listitem=0 %
+ \fi
+ \global\advance\blind@listitem by 1 %
+}% \blindtext@count
+\def\blindtext@item{itemtext}
+\def\blindtext@countitem{\blindtext@count\ \blindtext@item}
+\def\blindtext@heading{Heading on level\xspace}
+\def\blindtext@list{Lists}
+\def\blindtext@listEx{Example for list\xspace}
+\def\blindtext@blindmath{Some blind text with math formulas}
+% \end{macrocode}
+%</package>
+%
+% ^^A Add text documentations
+% \input{blindtext_english.dtx}
+% \input{blindtext_german.dtx}
+% \input{blindtext_ngerman.dtx}
+% \input{blindtext_american.dtx}
+% \input{blindtext_catalan.dtx}
+% \input{blindtext_latin.dtx}
+% \input{blindtext_french.dtx}
+%
+%<*packageend>
+% \section{Thanks}
+% Thanks to Heiko Oberdiek and Arno Trautmann for corrections (Version 1.8)
+%
+% Thanks to Andrea Bergschneider for her idea with math formulas inside the text
+% (and Arno Trautmann for his cooperation in realizing it).
+% Thanks to Dennis Heidsieck for his hint with polygloss.
+% (Version 1.9)
+%
+% Thanks to Joan Queralt Gil for the Catalanian translation.
+% Thanks to Felix Lehmann for corrections of the documentation and German and English blind texts.
+% (Version 2.0)
+%
+% \Finale
+% \PrintIndex
+% \PrintChanges
+% \end{document}
+%</packageend>
diff --git a/macros/latex/contrib/blindtext/blindtext.ins b/macros/latex/contrib/blindtext/blindtext.ins
new file mode 100644
index 0000000000..013bcbf5e1
--- /dev/null
+++ b/macros/latex/contrib/blindtext/blindtext.ins
@@ -0,0 +1,53 @@
+\def\batchfile{blindtext.ins}
+\input docstrip.tex
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\preamble
+----------------------------------------------------------------------
+The original file is loadable from CTAN on:
+tex-archive/latex/contrib/blindtext
+
+Name of contribution: blindtext
+Name and email: Knut Lickert <knut@lickert.net>
+Location on CTAN: tex-archive/macros/latex/contrib/blindtext
+Summary description: Package for writing text
+License type: Free
+
+Announcement text:
+blindtext.sty:
+ Style to create text.
+ Can be used to create examples with a lot text to become a feeling
+ for the look of classes, packages...
+
+ There are macros to create dummy text, dummy lists and
+ dummy documents with sections, text and lists.
+
+For more information visit
+ http://tex.lickert.net/packages/blindtext/index.html
+----------------------------------------------------------------------
+\endpreamble
+
+\generateFile{blindtext.sty}{f}{
+ \from{blindtext.dtx}{package}
+ \from{blindtext_american.dtx}{package}
+ \from{blindtext_catalan.dtx}{package}
+ \from{blindtext_english.dtx}{package}
+ \from{blindtext_french.dtx}{package}
+ \from{blindtext_german.dtx}{package}
+ \from{blindtext_latin.dtx}{package}
+ \from{blindtext_ngerman.dtx}{package}
+ \from{blindtext.dtx}{packageend}
+}
+%\generateFile{blind_texts.sty}{f}{\from{generator_text/blind_texts.dtx}{package}}
+
+\Msg{***************************************************************}
+\Msg{*}
+\Msg{* To finish the installation you have to copy the files }
+\Msg{*}
+\Msg{*\space\space *.sty into a directory searched by TeX}
+\Msg{*}
+\Msg{***************************************************************}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+
diff --git a/macros/latex/contrib/blindtext/blindtext.pdf b/macros/latex/contrib/blindtext/blindtext.pdf
new file mode 100644
index 0000000000..442f9d9e7a
--- /dev/null
+++ b/macros/latex/contrib/blindtext/blindtext.pdf
Binary files differ
diff --git a/macros/latex/contrib/blindtext/blindtext_american.dtx b/macros/latex/contrib/blindtext/blindtext_american.dtx
new file mode 100644
index 0000000000..e1091e98a8
--- /dev/null
+++ b/macros/latex/contrib/blindtext/blindtext_american.dtx
@@ -0,0 +1,161 @@
+%
+%
+% ^^A This document is generated by mk_blindtext_texts.rb
+%
+%
+% \subsection{American Texts (English) (babel: american)}
+% \changes{V1.9e}{2011-12-09}{Add American}
+% American is a copy of English. This definition is added to allow the usage of Amrican with ba
+% Thanks to Karl Voit for the hint.
+%
+% \begin{macro}{\blindtext@american}
+% Define flag, so we can check if language is defined.
+% \begin{macrocode}
+\def\blindtext@american{}
+% \end{macrocode}
+% \end{macro}
+%
+% Define the default blind text for American.
+% \begin{macrocode}
+\blind@addtext{american}{%
+ \def\blindtext@text{%
+ Hello, here is some text without a meaning\blindtext@endsentence
+ This text should show what a printed text will look like at this
+ place\blindtext@endsentence If you read this text, you will get no
+ information\blindtext@endsentence Really? Is there no information?
+ Is there a difference between this text and some nonsense like
+ ``Huardest gefburn''? Kjift -- not at all! A blind text
+ \blindmarkup{like this} gives you information about the selected
+ font, how the letters are written and an impression of the
+ look\blindtext@endsentence This text should contain \blindmarkup{all
+ letters of the alphabet} and it should be written in of the original
+ language\blindtext@endsentence There is no need for special
+ contents, but the length of words should match the
+ language\blindtext@endsentence%
+ }% \blindtext@text
+}
+% \end{macrocode}
+%
+%
+% \changes{V1.9e}{2011-12-09}{Default paragraph start for American}
+% Define different paragraph starts for second and later paragraphs.
+% The first paragraph gets no special start.
+% \begin{macrocode}
+\blind@addtext{american}{%
+ \def\blindtext@parstart{%
+ \ifcase\value{blind@countparstart}\or
+This is the second paragraph.\or
+And after the second paragraph follows the third paragraph.\or
+After this fourth paragraph, we start a new paragraph sequence.\or
+ \setcounter{blind@countparstart}{0}
+ \fi
+ \stepcounter{blind@countparstart}
+ }% \blindtext@parstart
+}
+% \end{macrocode}
+%
+% Define counters for list environments.
+% \begin{macrocode}
+\blind@addtext{american}{%
+ \def\blindtext@count{%
+ \ifcase\value{blind@listcount}\or
+ First\or Second\or Third\or Fourth\or Fifth\or
+ Sixth\or Seventh\or Eighth\or Ninth\or Tenth\or
+ Eleventh\or Twelfth%
+ \else
+ Another%
+ \fi
+ }% \blindtext@count
+ \def\blindtext@item{item in a list}%
+}%\addto\extrasamerican
+% \end{macrocode}
+%
+% Define title lines for American.
+% \begin{macrocode}
+\blind@addtext{american}{%
+ \def\blindtext@heading{Heading on level\xspace}%
+ \def\blindtext@list{Lists}%
+ \def\blindtext@listEx{Example for list\xspace}%
+}%\addto\extrasamerican
+% \end{macrocode}
+%
+% Add the title for |\blindmathpaper|.
+% \begin{macrocode}
+\blind@addtext{american}{%
+ \def\blindtext@blindmath{Some blind text with math formulas}%
+}%\addto\extrasamerican
+% \end{macrocode}
+%
+%
+% Define the bible-option text for american.
+% \begin{macrocode}
+\ifblindbible
+\blind@addtext{american}{%
+ \def\blindtext@text{%
+ And the Lord God said unto the serpent, Because thou hast done this,
+ thou art cursed above all cattle, and above every beast of the
+ field; upon thy belly shalt thou go, and dust shalt thou eat all the
+ days of thy life:
+ And God said unto Moses, `I am that I am': and he said, Thus shalt
+ thou say unto the children of Israel, `I am' hath sent me unto you.
+ And he shall offer thereof his offering, even an offering made by
+ fire unto the Lord; the fat that covereth the inwards, and all the
+ fat that is upon the inwards,\ldots
+ And the Lord spake unto Moses in the wilderness of Sinai,
+ saying,\ldots
+ Jair the son of Manasseh took all the country of Argob unto the
+ coasts of Geshuri and Maachathi; and called them after his own name,
+ Bashanhavothjair, unto this day.%
+ }% \blindtext@text
+ \def\blindtext@parstart{}%no change for bible option
+}
+\fi %\ifbible
+% \end{macrocode}
+%
+% Define the random-option text for american.
+% \begin{macrocode}
+\ifblindrandom
+ \PackageWarning{blindtext}{Option random not defined for american\MessageBreak}%
+ \blind@addtext{american}{%
+ \setcounter{blindtext}{1}
+ }
+\fi %option random
+% \end{macrocode}
+%
+% Define the pangram-option text for american.
+% \begin{macrocode}
+\ifblindpangram
+\blind@addtext{american}{%
+ \setcounter{blindtext}{5}
+ \def\blindtext@text{%
+ \blind@countxx=1 %
+ \loop
+ \ifcase\value{blind@pangramcount}%
+The quick brown fox jumps over the lazy dog\blindtext@endsentence
+\or Jackdaws love my big Sphinx of Quartz\blindtext@endsentence
+\or Pack my box with five dozen liquor jugs\blindtext@endsentence
+\or The five boxing wizards jump quickly\blindtext@endsentence
+\or Sympathizing would fix Quaker objectives\blindtext@endsentence
+\or Many-wived Jack laughs at probes of sex quiz\blindtext@endsentence
+\or Turgid saxophones blew over Mick's jazzy quaff\blindtext@endsentence
+\or Playing jazz vibe chords quickly excites my
+wife\blindtext@endsentence
+\or A large fawn jumped quickly over white zinc
+boxes\blindtext@endsentence
+\or Exquisite farm wench gives body jolt to prize
+stinker\blindtext@endsentence
+\or Jack amazed a few girls by dropping the antique onyx vase!\xspace%
+ \setcounter{blind@pangramcount}{-1}%
+ \fi%
+ \refstepcounter{blind@pangramcount}%
+ \ifnum\blind@countxx<\value{blind@pangrammax}\advance\blind@countxx by 1 %
+ \repeat%
+ \setcounter{blind@pangrammax}{\value{blindtext}}%
+ }% \blindtext@text
+ \def\blindtext@parstart{}%no change for pangram option
+}
+\fi %option pangram
+% \end{macrocode}
+%
+% ^^A %%%%%%%%%% End American Texts (English) %%%%%%%%%%%%%%%%
+%
diff --git a/macros/latex/contrib/blindtext/blindtext_catalan.dtx b/macros/latex/contrib/blindtext/blindtext_catalan.dtx
new file mode 100644
index 0000000000..3618901d09
--- /dev/null
+++ b/macros/latex/contrib/blindtext/blindtext_catalan.dtx
@@ -0,0 +1,148 @@
+%
+%
+% ^^A This document is generated by mk_blindtext_texts.rb
+%
+%
+% \subsection{Catalan Texts (babel: catalan)}
+% \changes{V1.9e}{2011-12-09}{Add Catalan}
+% Thanks to Joan Queralt.
+%
+% \begin{macro}{\blindtext@catalan}
+% Define flag, so we can check if language is defined.
+% \begin{macrocode}
+\def\blindtext@catalan{}
+% \end{macrocode}
+% \end{macro}
+%
+% Define the default blind text for Catalan.
+% \begin{macrocode}
+\blind@addtext{catalan}{%
+ \def\blindtext@text{%
+ Qu\`{e} \'es aix\`{o}?\blindtext@endsentence \'Es la meva primera
+ frase des de fa anys: Lorem ipsum dolor sit amet, consectetuer
+ adipiscing elit\blindtext@endsentence Etiam lobortis facilisis
+ sem\blindtext@endsentence Nullam nec mi et neque pharetra
+ sollicitudin\blindtext@endsentence Praesent imperdiet mi nec
+ ante\blindtext@endsentence Donec ullamcorper, \blindmarkup{felis
+ non sodales commodo}, lectus velit ultrices augue, a dignissim nibh
+ lectus placerat pede\blindtext@endsentence Vivamus nunc nunc,
+ molestie ut, ultricies vel, \blindmarkup{semper in},
+ velit\blindtext@endsentence Ut porttitor\blindtext@endsentence
+ Praesent in sapien\blindtext@endsentence%
+ }% \blindtext@text
+}
+% \end{macrocode}
+%
+%
+% \changes{V1.9e}{2011-12-09}{Default paragraph start for Catalan}
+% Define different paragraph starts for second and later paragraphs.
+% The first paragraph gets no special start.
+% \begin{macrocode}
+\blind@addtext{catalan}{%
+ \def\blindtext@parstart{%
+ \ifcase\value{blind@countparstart}\or
+Aquest \'es el segon par\`agraf\blindtext@endsentence\or
+I despr\'es del segon ve el tercer par\`agraf\blindtext@endsentence\or
+Despr\'es del quart par\`agraf comencem una nova tanda de nous par\`agrafs\blindtext@endsentence\or
+ \setcounter{blind@countparstart}{0}
+ \fi
+ \stepcounter{blind@countparstart}
+ }% \blindtext@parstart
+}
+% \end{macrocode}
+%
+% Define counters for list environments.
+% \begin{macrocode}
+\blind@addtext{catalan}{%
+ \def\blindtext@count{%
+ \ifcase\value{blind@listcount}\or
+ Primer\or Segon\or Tercer\or Quart\or Cinqu\`e\or
+ Sis\`e\or Set\`e\or Vuit\`e\or Nov\`e\or Des\`e\or
+ Onz\`e\or Dotuz\`e%
+ \else
+ Altres%
+ \fi
+ }% \blindtext@count
+ \def\blindtext@item{punt d'una llista}%
+}%\addto\extrascatalan
+% \end{macrocode}
+%
+% Define title lines for Catalan.
+% \begin{macrocode}
+\blind@addtext{catalan}{%
+ \def\blindtext@heading{T\'itol de nivell\xspace}%
+ \def\blindtext@list{Llistes}%
+ \def\blindtext@listEx{Exemple de llista\xspace}%
+}%\addto\extrascatalan
+% \end{macrocode}
+%
+% Add the title for |\blindmathpaper|.
+% \begin{macrocode}
+\blind@addtext{catalan}{%
+ \def\blindtext@blindmath{Alguns textos amb f\'ormules matem\`atiques.}%
+}%\addto\extrascatalan
+% \end{macrocode}
+%
+%
+% Define the bible-option text for catalan.
+% \begin{macrocode}
+\ifblindbible
+\blind@addtext{catalan}{%
+ \def\blindtext@text{%
+ Jahv\`e D\'eu digu\'e a la serp16 : \flqq Perqu\`e has fet aix\`o,
+ ser\`as male\"{i}da entre totes les b\`esties i tots els animals
+ salvatges. T'arrossegar\`as damunt del ventre i menjar\`as pols tot
+ el temps de la teva vida.
+ Llavors D\'eu digu\'e a Mois\`es: \flqq Jo s\'ec, el qui s\'ec.\frqq
+ I afeg\'i: \flqq Aix\'i parlar\`as als israelites: Jo s\'ec m'ha
+ enviat a vosaltres\frqq
+ Com a combusti\'e per a Jahv\`e, n'oferir\`a el greix que cobreix
+ les entranyes i tot el greix de damunt les entranyes;\ldots
+ Jahv\`e va dir a Mois\`es, a la muntanya del Sina\'i: 1\ldots
+ Ja\"{i}r, fill de Manas\'es, s'apoder\`a de tota la regi\'e d'Argob
+ fins a la frontera dels guesurites i dels macatites, i don\`a a
+ Basan el seu nom d'Havot-Ja\"{i}r, que ha quedat fins avu\'i.%
+ }% \blindtext@text
+ \def\blindtext@parstart{}%no change for bible option
+}
+\fi %\ifbible
+% \end{macrocode}
+%
+% Define the random-option text for catalan.
+% \begin{macrocode}
+\ifblindrandom
+ \PackageWarning{blindtext}{Option random not defined for catalan\MessageBreak}%
+ \blind@addtext{catalan}{%
+ \setcounter{blindtext}{1}
+ }
+\fi %option random
+% \end{macrocode}
+%
+% Define the pangram-option text for catalan.
+% \begin{macrocode}
+\ifblindpangram
+\blind@addtext{catalan}{%
+ \setcounter{blindtext}{5}
+ \def\blindtext@text{%
+ \blind@countxx=1 %
+ \loop
+ \ifcase\value{blind@pangramcount}%
+Jove xef, porti whisky amb quinze gla\c{c}ons d'hidrogen, coi!
+\or Aqueix betzol, Jan, comprava whisky de figa\blindtext@endsentence
+\or Zel de grum: quetxup, whisky, caf\`e, bon vi; ja!
+\or Coi! quinze jans golafres de X\`ativa, beuen whisky a
+pams\blindtext@endsentence%
+ \setcounter{blind@pangramcount}{-1}%
+ \fi%
+ \refstepcounter{blind@pangramcount}%
+ \ifnum\blind@countxx<\value{blind@pangrammax}\advance\blind@countxx by 1 %
+ \repeat%
+ \setcounter{blind@pangrammax}{\value{blindtext}}%
+ }% \blindtext@text
+ \def\blindtext@parstart{}%no change for pangram option
+}
+\fi %option pangram
+% \end{macrocode}
+%
+% ^^A %%%%%%%%%% End Catalan Texts %%%%%%%%%%%%%%%%
+%
diff --git a/macros/latex/contrib/blindtext/blindtext_english.dtx b/macros/latex/contrib/blindtext/blindtext_english.dtx
new file mode 100644
index 0000000000..358fb6c514
--- /dev/null
+++ b/macros/latex/contrib/blindtext/blindtext_english.dtx
@@ -0,0 +1,160 @@
+%
+%
+% ^^A This document is generated by mk_blindtext_texts.rb
+%
+%
+% \subsection{English Texts (babel: english)}
+% \changes{V1.9e}{2011-12-09}{Correction English}
+% Thanks to Felix Lehmann for corrections.
+%
+% \begin{macro}{\blindtext@english}
+% Define flag, so we can check if language is defined.
+% \begin{macrocode}
+\def\blindtext@english{}
+% \end{macrocode}
+% \end{macro}
+%
+% Define the default blind text for English.
+% \begin{macrocode}
+\blind@addtext{english}{%
+ \def\blindtext@text{%
+ Hello, here is some text without a meaning\blindtext@endsentence
+ This text should show what a printed text will look like at this
+ place\blindtext@endsentence If you read this text, you will get no
+ information\blindtext@endsentence Really? Is there no information?
+ Is there a difference between this text and some nonsense like
+ ``Huardest gefburn''? Kjift -- not at all! A blind text
+ \blindmarkup{like this} gives you information about the selected
+ font, how the letters are written and an impression of the
+ look\blindtext@endsentence This text should contain \blindmarkup{all
+ letters of the alphabet} and it should be written in of the original
+ language\blindtext@endsentence There is no need for special
+ content, but the length of words should match the
+ language\blindtext@endsentence%
+ }% \blindtext@text
+}
+% \end{macrocode}
+%
+%
+% \changes{V1.9e}{2011-12-09}{Default paragraph start for English}
+% Define different paragraph starts for second and later paragraphs.
+% The first paragraph gets no special start.
+% \begin{macrocode}
+\blind@addtext{english}{%
+ \def\blindtext@parstart{%
+ \ifcase\value{blind@countparstart}\or
+This is the second paragraph.\or
+And after the second paragraph follows the third paragraph.\or
+After this fourth paragraph, we start a new paragraph sequence.\or
+ \setcounter{blind@countparstart}{0}
+ \fi
+ \stepcounter{blind@countparstart}
+ }% \blindtext@parstart
+}
+% \end{macrocode}
+%
+% Define counters for list environments.
+% \begin{macrocode}
+\blind@addtext{english}{%
+ \def\blindtext@count{%
+ \ifcase\value{blind@listcount}\or
+ First\or Second\or Third\or Fourth\or Fifth\or
+ Sixth\or Seventh\or Eighth\or Ninth\or Tenth\or
+ Eleventh\or Twelfth%
+ \else
+ Another%
+ \fi
+ }% \blindtext@count
+ \def\blindtext@item{item in a list}%
+}%\addto\extrasenglish
+% \end{macrocode}
+%
+% Define title lines for English.
+% \begin{macrocode}
+\blind@addtext{english}{%
+ \def\blindtext@heading{Heading on Level\xspace}%
+ \def\blindtext@list{Lists}%
+ \def\blindtext@listEx{Example for list\xspace}%
+}%\addto\extrasenglish
+% \end{macrocode}
+%
+% Add the title for |\blindmathpaper|.
+% \begin{macrocode}
+\blind@addtext{english}{%
+ \def\blindtext@blindmath{Some blind text with math formulas}%
+}%\addto\extrasenglish
+% \end{macrocode}
+%
+%
+% Define the bible-option text for english.
+% \begin{macrocode}
+\ifblindbible
+\blind@addtext{english}{%
+ \def\blindtext@text{%
+ And the Lord God said unto the serpent, Because thou hast done this,
+ thou art cursed above all cattle, and above every beast of the
+ field; upon thy belly shalt thou go, and dust shalt thou eat all the
+ days of thy life:
+ And God said unto Moses, `I am that I am': and he said, Thus shalt
+ thou say unto the children of Israel, `I am' hath sent me unto you.
+ And he shall offer thereof his offering, even an offering made by
+ fire unto the Lord; the fat that covereth the inwards, and all the
+ fat that is upon the inwards,\ldots
+ And the Lord spake unto Moses in the wilderness of Sinai,
+ saying,\ldots
+ Jair the son of Manasseh took all the country of Argob unto the
+ coasts of Geshuri and Maachathi; and called them after his own name,
+ Bashanhavothjair, unto this day.%
+ }% \blindtext@text
+ \def\blindtext@parstart{}%no change for bible option
+}
+\fi %\ifbible
+% \end{macrocode}
+%
+% Define the random-option text for english.
+% \begin{macrocode}
+\ifblindrandom
+ \PackageWarning{blindtext}{Option random not defined for english\MessageBreak}%
+ \blind@addtext{english}{%
+ \setcounter{blindtext}{1}
+ }
+\fi %option random
+% \end{macrocode}
+%
+% Define the pangram-option text for english.
+% \begin{macrocode}
+\ifblindpangram
+\blind@addtext{english}{%
+ \setcounter{blindtext}{5}
+ \def\blindtext@text{%
+ \blind@countxx=1 %
+ \loop
+ \ifcase\value{blind@pangramcount}%
+The quick brown fox jumps over the lazy dog\blindtext@endsentence
+\or Jackdaws love my big Sphinx of Quartz\blindtext@endsentence
+\or Pack my box with five dozen liquor jugs\blindtext@endsentence
+\or The five boxing wizards jump quickly\blindtext@endsentence
+\or Sympathizing would fix Quaker objectives\blindtext@endsentence
+\or Many-wived Jack laughs at probes of sex quiz\blindtext@endsentence
+\or Turgid saxophones blew over Mick's jazzy quaff\blindtext@endsentence
+\or Playing jazz vibe chords quickly excites my
+wife\blindtext@endsentence
+\or A large fawn jumped quickly over white zinc
+boxes\blindtext@endsentence
+\or Exquisite farm wench gives body jolt to prize
+stinker\blindtext@endsentence
+\or Jack amazed a few girls by dropping the antique onyx vase!\xspace%
+ \setcounter{blind@pangramcount}{-1}%
+ \fi%
+ \refstepcounter{blind@pangramcount}%
+ \ifnum\blind@countxx<\value{blind@pangrammax}\advance\blind@countxx by 1 %
+ \repeat%
+ \setcounter{blind@pangrammax}{\value{blindtext}}%
+ }% \blindtext@text
+ \def\blindtext@parstart{}%no change for pangram option
+}
+\fi %option pangram
+% \end{macrocode}
+%
+% ^^A %%%%%%%%%% End English Texts %%%%%%%%%%%%%%%%
+%
diff --git a/macros/latex/contrib/blindtext/blindtext_french.dtx b/macros/latex/contrib/blindtext/blindtext_french.dtx
new file mode 100644
index 0000000000..e479694b8d
--- /dev/null
+++ b/macros/latex/contrib/blindtext/blindtext_french.dtx
@@ -0,0 +1,144 @@
+%
+%
+% ^^A This document is generated by mk_blindtext_texts.rb
+%
+%
+% \subsection{FrenchTexts (babel: french)}
+% \changes{V1.9b}{2009-06-05}{Support French - interim version}
+% \changes{V1.9b}{2009-12-29}{Correction French}
+% This text is just an interim solution until I get a correct text.
+% To fill up the text the Latin Lorem lipsum is used.
+% \changes{V1.9e}{2011-12-11}{Add Lorem Lipsum to French}
+%
+% \begin{macro}{\blindtext@french}
+% Define flag, so we can check if language is defined.
+% \begin{macrocode}
+\def\blindtext@french{}
+% \end{macrocode}
+% \end{macro}
+%
+% Define the default blind text for French.
+% \begin{macrocode}
+\blind@addtext{french}{%
+ \def\blindtext@text{%
+ Qu'est que c'est?\blindtext@endsentence C'est une phrase
+ fran\c{c}ais \blindmarkup{avant le lorem
+ ipsum}\blindtext@endsentence Lorem ipsum dolor sit amet,
+ consectetuer adipiscing elit. Etiam lobortis facilisis sem. Nullam
+ nec mi et neque pharetra sollicitudin. Praesent imperdiet mi nec
+ ante. Donec ullamcorper, felis non sodales commodo, lectus velit
+ ultrices augue, a dignissim nibh lectus placerat pede. Vivamus nunc
+ nunc, molestie ut, ultricies vel, semper in, velit. Ut porttitor.
+ Praesent in sapien. \blindmarkup{Lorem ipsum} dolor sit amet,
+ consectetuer adipiscing elit. Duis fringilla tristique neque. Sed
+ interdum libero ut metus. Pellentesque placerat. Nam rutrum augue a
+ leo. Morbi sed elit sit amet ante lobortis sollicitudin. Praesent
+ blandit blandit mauris. Praesent lectus tellus, \blindmarkup{aliquet
+ aliquam}, luctus a, egestas a, turpis. Mauris lacinia lorem sit amet
+ ipsum. Nunc quis urna dictum turpis accumsan semper.%
+ }% \blindtext@text
+}
+% \end{macrocode}
+%
+% Define counters for list environments.
+% \begin{macrocode}
+\blind@addtext{french}{%
+ \def\blindtext@count{%
+ \ifcase\value{blind@listcount}\or
+ Premier\or Deuxi\`eme\or Troisi\`eme\or Quatri\`eme\or Cinqui\`eme\or
+ Sixi\`eme\or Septi\`eme\or Huiti\`eme\or Neuvi\`eme\or Dixi\`eme\or
+ Onzi\`eme\or Douzi\`eme%
+ \else
+ L'autres%
+ \fi
+ }% \blindtext@count
+ \def\blindtext@item{point dans une list}%
+}%\addto\extrasfrench
+% \end{macrocode}
+%
+% Define title lines for French.
+% \begin{macrocode}
+\blind@addtext{french}{%
+ \def\blindtext@heading{Titres de niveau\xspace}%
+ \def\blindtext@list{Lists}%
+ \def\blindtext@listEx{Example pour une list\xspace}%
+}%\addto\extrasfrench
+% \end{macrocode}
+%
+% Add the title for |\blindmathpaper|.
+% \begin{macrocode}
+\blind@addtext{french}{%
+ \def\blindtext@blindmath{Quelques textes avec des formules math\'ematiques.}%
+}%\addto\extrasfrench
+% \end{macrocode}
+%
+%
+% Define the bible-option text for french.
+% \begin{macrocode}
+\ifblindbible
+\blind@addtext{french}{%
+ \def\blindtext@text{%
+ L'\'Eternel Dieu dit au serpent: Puisque tu as fait cela, tu seras
+ maudit entre tout le b\'etail et entre tous les animaux des champs,
+ tu marcheras sur ton ventre, et tu mangeras de la poussi\`ere tous
+ les jours de ta vie.
+ Dieu dit \`a Mo\"ise: Je suis celui qui suis. Et il ajouta: C'est
+ ainsi que tu r\'epondras aux enfants d'Isra\"el: Celui qui s'appelle
+ 'je suis'm'a envoy\'e vers vous.
+ De la victime, il offrira en sacrifice consum\'e par le feu devant
+ l'\'eternel: la graisse qui couvre les entrailles et toute celle qui
+ y est attach\'ee,\ldots
+ L'\'eternel parla \`a Mo\"ise, dans le d\'esert de Sina\"i, et dit:
+ Ja\"ir, fils de Manass\'e, prit toute la contr\'ee d'Argob jusqu'\`a
+ la fronti\`ere des Gueschuriens et des Maacathiens, et il donna son
+ nom aux bourgs de Basan, appel\'es encore aujourd'hui bourgs de
+ Ja\"ir.%
+ }% \blindtext@text
+ \def\blindtext@parstart{}%no change for bible option
+}
+\fi %\ifbible
+% \end{macrocode}
+%
+% Define the random-option text for french.
+% \begin{macrocode}
+\ifblindrandom
+ \PackageWarning{blindtext}{Option random not defined for french\MessageBreak}%
+ \blind@addtext{french}{%
+ \setcounter{blindtext}{1}
+ }
+\fi %option random
+% \end{macrocode}
+%
+% Define the pangram-option text for french.
+% \begin{macrocode}
+\ifblindpangram
+\blind@addtext{french}{%
+ \setcounter{blindtext}{5}
+ \def\blindtext@text{%
+ \blind@countxx=1 %
+ \loop
+ \ifcase\value{blind@pangramcount}%
+Voyez le brick g\'eant que j'examine pr\`es du
+wharf\blindtext@endsentence
+\or Portez ce vieux whisky au juge blond qui fume\blindtext@endsentence
+\or Buvez de ce whisky que le patron juge fameux
+\or B\^achez la queue du wagon-taxi avec les pyjamas du
+fakir\blindtext@endsentence
+\or Voix ambigu\"e d'un c\oe ur qui au z\'ephyr pr\'ef\`ere les jattes
+de kiwi\blindtext@endsentence
+\or Monsieur Jack, vous dactylographiez bien mieux que votre ami
+Wolf\blindtext@endsentence%
+ \setcounter{blind@pangramcount}{-1}%
+ \fi%
+ \refstepcounter{blind@pangramcount}%
+ \ifnum\blind@countxx<\value{blind@pangrammax}\advance\blind@countxx by 1 %
+ \repeat%
+ \setcounter{blind@pangrammax}{\value{blindtext}}%
+ }% \blindtext@text
+ \def\blindtext@parstart{}%no change for pangram option
+}
+\fi %option pangram
+% \end{macrocode}
+%
+% ^^A %%%%%%%%%% End FrenchTexts %%%%%%%%%%%%%%%%
+%
diff --git a/macros/latex/contrib/blindtext/blindtext_german.dtx b/macros/latex/contrib/blindtext/blindtext_german.dtx
new file mode 100644
index 0000000000..f2ddf5b60a
--- /dev/null
+++ b/macros/latex/contrib/blindtext/blindtext_german.dtx
@@ -0,0 +1,190 @@
+%
+%
+% ^^A This document is generated by mk_blindtext_texts.rb
+%
+%
+% \subsection{German Texts (babel: german)}
+% \changes{V1.9e}{2011-12-09}{Correction German}
+% Thanks to Felix Lehmann for corrections.
+%
+% \begin{macro}{\blindtext@german}
+% Define flag, so we can check if language is defined.
+% \begin{macrocode}
+\def\blindtext@german{}
+% \end{macrocode}
+% \end{macro}
+%
+% Define the default blind text for German.
+% \begin{macrocode}
+\blind@addtext{german}{%
+ \def\blindtext@text{%
+ Dies hier ist ein Blindtext zum Testen von
+ Textausgaben\blindtext@endsentence Wer diesen Text liest, ist selbst
+ schuld\blindtext@endsentence Der Text gibt lediglich den Grauwert
+ der Schrift an\blindtext@endsentence Ist das wirklich so? Ist es
+ gleich\-g\"ul\-tig, ob ich schreibe: \glqq Dies ist ein
+ Blindtext\grqq\ oder \glqq Huardest gefburn\grqq ? Kjift --
+ mitnichten! Ein Blindtext bietet mir wichtige
+ Informationen\blindtext@endsentence An ihm messe ich die
+ \blindmarkup{Lesbarkeit einer Schrift}, ihre Anmutung, wie
+ harmonisch die Figuren zueinander stehen und pr\"u\-fe, wie breit
+ oder schmal sie l\"auft\blindtext@endsentence Ein Blindtext sollte
+ m\"og\-lichst \blindmarkup{viele verschiedene Buchstaben} enthalten
+ und in der Originalsprache gesetzt sein\blindtext@endsentence Er
+ mu\ss\ keinen Sinn ergeben, sollte aber lesbar
+ sein\blindtext@endsentence Fremdsprachige Texte wie \glqq Lorem
+ ipsum\grqq\ dienen nicht dem eigentlichen Zweck, da sie eine falsche
+ Anmutung vermitteln\blindtext@endsentence%
+ }% \blindtext@text
+}
+% \end{macrocode}
+%
+%
+% \changes{V1.9e}{2011-12-09}{Default paragraph start for German}
+% Define different paragraph starts for second and later paragraphs.
+% The first paragraph gets no special start.
+% \begin{macrocode}
+\blind@addtext{german}{%
+ \def\blindtext@parstart{%
+ \ifcase\value{blind@countparstart}\or
+Das hier ist der zweite Absatz.\or
+Und nun folgt -- ob man es glaubt oder nicht -- der dritte Absatz.\or
+Nach diesem vierten Absatz beginnen wir eine neue Z\"ahlung.\or
+ \setcounter{blind@countparstart}{0}
+ \fi
+ \stepcounter{blind@countparstart}
+ }% \blindtext@parstart
+}
+% \end{macrocode}
+%
+% Define counters for list environments.
+% \begin{macrocode}
+\blind@addtext{german}{%
+ \def\blindtext@count{%
+ \ifcase\value{blind@listcount}\or
+ Erster\or Zweiter\or Dritter\or Vierter\or F{\"u}nfter\or
+ Sechster\or Siebter\or Achter\or Neunter\or Zehnter\or
+ Elfter\or Zw{\"o}lfter\or Dreizehnter\or Vierzehnter%
+ \else
+ Noch ein%
+ \fi
+ }% \blindtext@count
+ \def\blindtext@item{Listenpunkt, Stufe~\arabic{blind@levelcount}}%
+}%\addto\extrasgerman
+% \end{macrocode}
+%
+% Define title lines for German.
+% \begin{macrocode}
+\blind@addtext{german}{%
+ \def\blindtext@heading{{\"U}berschrift auf Ebene
+\xspace}%
+ \def\blindtext@list{Listen}%
+ \def\blindtext@listEx{Beispiel einer Liste\xspace}%
+}%\addto\extrasgerman
+% \end{macrocode}
+%
+% Add the title for |\blindmathpaper|.
+% \begin{macrocode}
+\blind@addtext{german}{%
+ \def\blindtext@blindmath{Blindtext mit mathematischen Formeln}%
+}%\addto\extrasgerman
+% \end{macrocode}
+%
+%
+% Define the bible-option text for german.
+% \begin{macrocode}
+\ifblindbible
+\blind@addtext{german}{%
+ \def\blindtext@text{%
+ Da sprach Gott der Herr zu der Schlange: Weil du solches getan hast,
+ seist du verflucht vor allem Vieh und vor allen Tieren auf dem
+ Felde. Auf deinem Bauche sollst du gehen und Erde essen dein Leben
+ lang.
+ Gott sprach zu Mose: \glqq Ich werde sein, der Ich sein werde.\grqq\
+ Und sprach: Also sollst du den Kindern Israel sagen: \glqq Ich werde
+ sein\grqq\ hat mich zu euch gesandt\ldots
+ und er soll davon opfern ein Opfer dem Herrn, n\"amlich das Fett,
+ welches die Eingeweide bedeckt, und alles Fett am Eingeweide,\ldots
+ Und der HERR redete mit Mose in der W\"uste Sinai und sprach:
+ Jair, der Sohn Manasses, nahm die ganze Gegend Argob bis an die
+ Grenze der Gessuriter und Maachathiter und hiess das Basan nach
+ seinem Namen D\"orfer Jairs bis auf den heutigen Tag.%
+ }% \blindtext@text
+ \def\blindtext@parstart{}%no change for bible option
+}
+\fi %\ifbible
+% \end{macrocode}
+%
+% Define the random-option text for german.
+% \begin{macrocode}
+\ifblindrandom
+ \blind@addtext{german}{%
+ \setcounter{blindtext}{17}
+ \def\blindtext@text{%
+ \blind@countxx=1 %
+ \loop
+ \ifcase\value{blind@randomcount}%
+Dies hier ist ein Blindtext zum Testen von
+Textausgaben\blindtext@endsentence
+\or Gerne werden Pangramme als Blindtexte
+verwendet\blindtext@endsentence
+\or Das griechische Wort Pangramm (oder holoalphabetischer Satz)
+bezeichnet einen Satz, der alle Buchstaben des Alphabets
+enth\"alt\blindtext@endsentence
+\or Wobei man \glqq alle Buchstaben\grqq\ mit und ohne Umlaute z\"ahlen
+kann\blindtext@endsentence
+\or Aber das soll uns hier nicht k\"ummern, eigentlich wollen wir doch
+eine Geschichte erz\"ahlen\blindtext@endsentence
+\or Aber wozu wollen wir eine Geschichte erz\"ahlen?\xspace
+\or Ach ja, wir brauchen Text um das Layout dieses Textes zu p\"ufen --
+dazu nimmt man meist einen Blindtext\blindtext@endsentence%
+ \setcounter{blind@randomcount}{-1}%
+ \fi%
+ \refstepcounter{blind@randomcount}%
+ \ifnum\blind@countxx<\value{blind@randommax}\advance\blind@countxx by 1 %
+ \repeat%
+ \setcounter{blind@randommax}{\value{blindtext}}%
+ }% \blindtext@text
+ \def\blindtext@parstart{}%no change for random option
+ }
+\fi %option random
+% \end{macrocode}
+%
+% Define the pangram-option text for german.
+% \begin{macrocode}
+\ifblindpangram
+\blind@addtext{german}{%
+ \setcounter{blindtext}{5}
+ \def\blindtext@text{%
+ \blind@countxx=1 %
+ \loop
+ \ifcase\value{blind@pangramcount}%
+Franz jagt im komplett verwahrlosten Taxi quer durch
+Bayern\blindtext@endsentence
+\or Zw\"olf Boxk\"ampfer jagen Viktor quer \"uber den gro{\ss}en Sylter
+Deich\blindtext@endsentence
+\or Vogel Quax zwickt Johnys Pferd Bim\blindtext@endsentence
+\or Sylvia wagt quick den Jux bei Pforzheim\blindtext@endsentence
+\or Prall vom Whisky flog Quax den Jet zu Bruch\blindtext@endsentence
+\or Jeder wackere Bayer vertilgt bequem zwo Pfund
+Kalbshaxen\blindtext@endsentence
+\or Stanleys Expeditionszug quer durch Afrika wird von jedermann
+bewundert\blindtext@endsentence%
+ \setcounter{blind@pangramcount}{-1}%
+ \fi%
+ \refstepcounter{blind@pangramcount}%
+ \ifnum\blind@countxx<\value{blind@pangrammax}\advance\blind@countxx by 1 %
+ \repeat%
+ \setcounter{blind@pangrammax}{\value{blindtext}}%
+ }% \blindtext@text
+ \def\blindtext@parstart{}%no change for pangram option
+}
+\fi %option pangram
+% \end{macrocode}
+% If the package \Lpack{german} is loaded, select the language.
+% \begin{macrocode}
+\@ifpackageloaded{german}{\selectlanguage{german}}{}
+% \end{macrocode}
+%
+% ^^A %%%%%%%%%% End German Texts %%%%%%%%%%%%%%%%
+%
diff --git a/macros/latex/contrib/blindtext/blindtext_latin.dtx b/macros/latex/contrib/blindtext/blindtext_latin.dtx
new file mode 100644
index 0000000000..414791fce6
--- /dev/null
+++ b/macros/latex/contrib/blindtext/blindtext_latin.dtx
@@ -0,0 +1,207 @@
+%
+%
+% ^^A This document is generated by mk_blindtext_texts.rb
+%
+%
+% \subsection{Latin Texts (babel: latin)}
+%
+% I don't speak Latin, but I think the classic "Lorem ipsum" should be available.
+% There is no inline math supported for this "Lorem ipsum".
+%
+% The following "Latin" texts are not really correct Latin.
+% If you want correct texts, please provide them to me.
+%
+% \changes{V1.9e}{2011-12-31}{Asterix citations}
+% Latin with option \emph{random} use some citations from Asterix.
+%
+% \begin{macro}{\blindtext@latin}
+% Define flag, so we can check if language is defined.
+% \begin{macrocode}
+\def\blindtext@latin{}
+% \end{macrocode}
+% \end{macro}
+%
+% Define the default blind text for Latin.
+% \begin{macrocode}
+\blind@addtext{latin}{%
+ \def\blindtext@text{%
+ Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Etiam
+ lobortis facilisis sem. Nullam nec mi et neque pharetra
+ sollicitudin. Praesent imperdiet mi nec ante. Donec ullamcorper,
+ felis non sodales commodo, lectus velit ultrices augue, a dignissim
+ nibh lectus placerat pede. Vivamus nunc nunc, molestie ut, ultricies
+ vel, semper in, velit. Ut porttitor. Praesent in sapien.
+ \blindmarkup{Lorem ipsum} dolor sit amet, consectetuer adipiscing
+ elit. Duis fringilla tristique neque. Sed interdum libero ut metus.
+ Pellentesque placerat. Nam rutrum augue a leo. Morbi sed elit sit
+ amet ante lobortis sollicitudin. Praesent blandit blandit mauris.
+ Praesent lectus tellus, \blindmarkup{aliquet aliquam}, luctus a,
+ egestas a, turpis. Mauris lacinia lorem sit amet ipsum. Nunc quis
+ urna dictum turpis accumsan semper.%
+ }% \blindtext@text
+}
+% \end{macrocode}
+%
+% Define counters for list environments.
+% \begin{macrocode}
+\blind@addtext{latin}{%
+ \def\blindtext@count{%
+ \ifcase\value{blind@listcount}\or
+ Primus\or Duo\or Tres\or Quattuor\or Quinque\or
+ Sex\or Septem\or Octo\or Novem\or Decem\\or
+ Undecim\or Duodecim%
+ \else
+ Nova%
+ \fi
+ }% \blindtext@count
+ \def\blindtext@item{, altum~\arabic{blind@levelcount}}%
+}%\addto\extraslatin
+% \end{macrocode}
+%
+% Define title lines for Latin.
+% \begin{macrocode}
+\blind@addtext{latin}{%
+ \def\blindtext@heading{Sectio\xspace}%
+ \def\blindtext@list{Caudex}%
+ \def\blindtext@listEx{Exemplum caudex\xspace}%
+}%\addto\extraslatin
+% \end{macrocode}
+%
+% Add the title for |\blindmathpaper|.
+% \begin{macrocode}
+\blind@addtext{latin}{%
+ \def\blindtext@blindmath{Mathematica}%
+}%\addto\extraslatin
+% \end{macrocode}
+%
+%
+% Define the bible-option text for latin.
+% \begin{macrocode}
+\ifblindbible
+\blind@addtext{latin}{%
+ \def\blindtext@text{%
+ et ait Dominus Deus ad serpentem quia fecisti hoc maledictus es
+ inter omnia animantia et bestias terrae super pectus tuum gradieris
+ et terram comedes cunctis diebus vitae tuae
+ dixit Deus ad Mosen ego sum qui sum ait sic dices filiis Israhel qui
+ est misit me ad vos
+ tollentque ex ea in pastum ignis dominici adipem qui operit ventrem
+ et qui tegit universa vitalia
+ Iocutus est Dominus ad Mosen in deserto Sinai dicens
+ Iair filius Manasse possedit omnem regionem Argob usque ad terminos
+ Gesuri et Machathi vocavitque ex nomine suo Basan Avothiair id est
+ villas Iair usque in praesentem diem%
+ }% \blindtext@text
+ \def\blindtext@parstart{}%no change for bible option
+}
+\fi %\ifbible
+% \end{macrocode}
+%
+% Define the random-option text for latin.
+% \begin{macrocode}
+\ifblindrandom
+ \blind@addtext{latin}{%
+ \setcounter{blindtext}{17}
+ \def\blindtext@text{%
+ \blind@countxx=1 %
+ \loop
+ \ifcase\value{blind@randomcount}%
+Ab imo pectore\blindtext@endsentence
+\or Acta est fabula\blindtext@endsentence
+\or Ad augusta per angusta!\xspace
+\or Ad gladios!\xspace
+\or Alea iacta est\blindtext@endsentence
+\or Argumentum baculinum!\xspace
+\or Audaces fortuna juvat!\xspace
+\or Auri sacra fames!\xspace
+\or Aut Caesar, aut nihil!\xspace
+\or Ave C\"asar, lucrifacturi te salutant!\xspace
+\or Beati Asterixem possidentes!\xspace
+\or Beati pauperes spiritu\blindtext@endsentence
+\or Bis repetita non placent\blindtext@endsentence
+\or Carpe diem\blindtext@endsentence
+\or Cautela abundans non nocet\blindtext@endsentence
+\or Cogito, ergo sum\blindtext@endsentence
+\or Concursu!\xspace
+\or Condicio sine qua non\blindtext@endsentence
+\or Contraria contrariis curantur!\xspace
+\or Similia similibus curantur\blindtext@endsentence
+\or Da capo!\xspace
+\or Ceterum censeo Carthaginem esse delendam\blindtext@endsentence
+\or Desinit in piscem mulier formosa superne!\xspace
+\or Diem perdidi!\xspace
+\or Dignus est intrare\blindtext@endsentence
+\or Donec eris felix, multos numerabis amicos\blindtext@endsentence
+\or Tempora si fuerint nubila, solus eris\blindtext@endsentence
+\or Dulce et decorum est pro patria mori\blindtext@endsentence
+\or Errare humanum est\blindtext@endsentence
+\or Et nunc reges, intelligite erudimini qui judicatis
+terram\blindtext@endsentence
+\or Exegi monumentum aere perennius\blindtext@endsentence
+\or Felix, qui potuit rerum cognoscere\blindtext@endsentence
+\or Felix qui potuit rerum cognocscere causas!\xspace
+\or Fluctuat nec mergitur!\xspace
+\or Ipso facto!\xspace
+\or Ira furor brevis est\blindtext@endsentence
+\or Ita deis placuit!\xspace
+\or Ita est!\xspace
+\or Legio expedita!\xspace
+\or Leontes te devorant \blindtext@endsentence
+\or Major e longinquo reverentia\blindtext@endsentence
+\or Mens sana in corpore sano\blindtext@endsentence
+\or Morituri te salutant!\xspace
+\or Nihil conveniens decretis ejus!\xspace
+\or Non licet omnibus adire Brivatum\blindtext@endsentence
+\or Non licet omnibus adire Corinthum\blindtext@endsentence
+\or Non omnia possumus omnes!\xspace
+\or O fortunatos nimium, sua si bona norint, agricolas!\xspace
+\or Qui habet aures audiendi, audiat!\xspace
+\or Quod erat demonstrandum\blindtext@endsentence
+\or Quot capita tot census!\xspace
+\or Sic transit gloria mundi\blindtext@endsentence
+\or Summum jus, summa injuria!\xspace
+\or Ubi solitudinem faciunt, pacem appellant\blindtext@endsentence
+\or Vanitas vanitatum et omnia vanitas\blindtext@endsentence
+\or Victrix causa diis placuit, sed victa Catoni\blindtext@endsentence
+\or Video meliora proboque deteriora sequor\blindtext@endsentence
+\or Vinum et musica laetificant cor\blindtext@endsentence%
+ \setcounter{blind@randomcount}{-1}%
+ \fi%
+ \refstepcounter{blind@randomcount}%
+ \ifnum\blind@countxx<\value{blind@randommax}\advance\blind@countxx by 1 %
+ \repeat%
+ \setcounter{blind@randommax}{\value{blindtext}}%
+ }% \blindtext@text
+ \def\blindtext@parstart{}%no change for random option
+ }
+\fi %option random
+% \end{macrocode}
+%
+% Define the pangram-option text for latin.
+% \begin{macrocode}
+\ifblindpangram
+\blind@addtext{latin}{%
+ \setcounter{blindtext}{5}
+ \def\blindtext@text{%
+ \blind@countxx=1 %
+ \loop
+ \ifcase\value{blind@pangramcount}%
+Sic fugiens, dux, zelotypos quam karus haberis\blindtext@endsentence
+\or Duc zephire exurgens currum cum flatibus
+\ae{}quor\blindtext@endsentence
+\or Vix phlegeton zephiri qu\ae{}rens modo flabra
+mycillo\blindtext@endsentence%
+ \setcounter{blind@pangramcount}{-1}%
+ \fi%
+ \refstepcounter{blind@pangramcount}%
+ \ifnum\blind@countxx<\value{blind@pangrammax}\advance\blind@countxx by 1 %
+ \repeat%
+ \setcounter{blind@pangrammax}{\value{blindtext}}%
+ }% \blindtext@text
+ \def\blindtext@parstart{}%no change for pangram option
+}
+\fi %option pangram
+% \end{macrocode}
+%
+% ^^A %%%%%%%%%% End Latin Texts %%%%%%%%%%%%%%%%
+%
diff --git a/macros/latex/contrib/blindtext/blindtext_ngerman.dtx b/macros/latex/contrib/blindtext/blindtext_ngerman.dtx
new file mode 100644
index 0000000000..6179a1946a
--- /dev/null
+++ b/macros/latex/contrib/blindtext/blindtext_ngerman.dtx
@@ -0,0 +1,190 @@
+%
+%
+% ^^A This document is generated by mk_blindtext_texts.rb
+%
+%
+% \subsection{German -- New Orthography (babel: ngerman)}
+% \changes{V1.9e}{2011-12-09}{Correction NGerman}
+% Thanks to Felix Lehmann for corrections.
+%
+% \begin{macro}{\blindtext@ngerman}
+% Define flag, so we can check if language is defined.
+% \begin{macrocode}
+\def\blindtext@ngerman{}
+% \end{macrocode}
+% \end{macro}
+%
+% Define the default blind text for Ngerman.
+% \begin{macrocode}
+\blind@addtext{ngerman}{%
+ \def\blindtext@text{%
+ Dies hier ist ein Blindtext zum Testen von
+ Textausgaben\blindtext@endsentence Wer diesen Text liest, ist selbst
+ schuld\blindtext@endsentence Der Text gibt lediglich den Grauwert
+ der Schrift an\blindtext@endsentence Ist das wirklich so? Ist es
+ gleich\-g\"ul\-tig, ob ich schreibe: \glqq Dies ist ein
+ Blindtext\grqq\ oder \glqq Huardest gefburn\grqq ? Kjift --
+ mitnichten! Ein Blindtext bietet mir wichtige
+ Informationen\blindtext@endsentence An ihm messe ich die
+ \blindmarkup{Lesbarkeit einer Schrift}, ihre Anmutung, wie
+ harmonisch die Figuren zueinander stehen und pr\"u\-fe, wie breit
+ oder schmal sie l\"auft\blindtext@endsentence Ein Blindtext sollte
+ m\"og\-lichst viele \blindmarkup{verschiedene Buchstaben} enthalten
+ und in der Originalsprache gesetzt sein\blindtext@endsentence Er
+ muss keinen Sinn ergeben, sollte aber lesbar
+ sein\blindtext@endsentence Fremdsprachige Texte wie \glqq Lorem
+ ipsum\grqq\ dienen nicht dem eigentlichen Zweck, da sie eine falsche
+ Anmutung vermitteln\blindtext@endsentence%
+ }% \blindtext@text
+}
+% \end{macrocode}
+%
+%
+% \changes{V1.9e}{2011-12-09}{Default paragraph start for Ngerman}
+% Define different paragraph starts for second and later paragraphs.
+% The first paragraph gets no special start.
+% \begin{macrocode}
+\blind@addtext{ngerman}{%
+ \def\blindtext@parstart{%
+ \ifcase\value{blind@countparstart}\or
+Das hier ist der zweite Absatz.\or
+Und nun folgt -- ob man es glaubt oder nicht -- der dritte Absatz.\or
+Nach diesem vierten Absatz beginnen wir eine neue Z\"ahlung.\or
+ \setcounter{blind@countparstart}{0}
+ \fi
+ \stepcounter{blind@countparstart}
+ }% \blindtext@parstart
+}
+% \end{macrocode}
+%
+% Define counters for list environments.
+% \begin{macrocode}
+\blind@addtext{ngerman}{%
+ \def\blindtext@count{%
+ \ifcase\value{blind@listcount}\or
+ Erster\or Zweiter\or Dritter\or Vierter\or F{\"u}nfter\or
+ Sechster\or Siebter\or Achter\or Neunter\or Zehnter\or
+ Elfter\or Zw{\"o}lfter\or Dreizehnter\or Vierzehnter%
+ \else
+ Noch ein%
+ \fi
+ }% \blindtext@count
+ \def\blindtext@item{Listenpunkt, Stufe~\arabic{blind@levelcount}}%
+}%\addto\extrasngerman
+% \end{macrocode}
+%
+% Define title lines for Ngerman.
+% \begin{macrocode}
+\blind@addtext{ngerman}{%
+ \def\blindtext@heading{{\"U}berschrift auf Ebene\xspace}%
+ \def\blindtext@list{Listen}%
+ \def\blindtext@listEx{Beispiel einer Liste\xspace}%
+}%\addto\extrasngerman
+% \end{macrocode}
+%
+% Add the title for |\blindmathpaper|.
+% \begin{macrocode}
+\blind@addtext{ngerman}{%
+ \def\blindtext@blindmath{Blindtext mit mathematischen Formeln}%
+}%\addto\extrasngerman
+% \end{macrocode}
+%
+%
+% Define the bible-option text for ngerman.
+% \begin{macrocode}
+\ifblindbible
+\blind@addtext{ngerman}{%
+ \def\blindtext@text{%
+ Da sprach Gott der Herr zu der Schlange: Weil du solches getan hast,
+ seist du verflucht vor allem Vieh und vor allen Tieren auf dem
+ Felde. Auf deinem Bauche sollst du gehen und Erde essen dein Leben
+ lang.
+ Gott sprach zu Mose: \glqq Ich werde sein, der Ich sein werde.\grqq\
+ Und sprach: Also sollst du den Kindern Israel sagen: \glqq Ich werde
+ sein\grqq\ hat mich zu euch gesandt\ldots
+ und er soll davon opfern ein Opfer dem Herrn, n\"amlich das Fett,
+ welches die Eingeweide bedeckt, und alles Fett am Eingeweide,\ldots
+ Und der HERR redete mit Mose in der W\"uste Sinai und sprach:
+ Jair, der Sohn Manasses, nahm die ganze Gegend Argob bis an die
+ Grenze der Gessuriter und Maachathiter und hiess das Basan nach
+ seinem Namen D\"orfer Jairs bis auf den heutigen Tag.%
+ }% \blindtext@text
+ \def\blindtext@parstart{}%no change for bible option
+}
+\fi %\ifbible
+% \end{macrocode}
+%
+% Define the random-option text for ngerman.
+% \begin{macrocode}
+\ifblindrandom
+ \blind@addtext{ngerman}{%
+ \setcounter{blindtext}{17}
+ \def\blindtext@text{%
+ \blind@countxx=1 %
+ \loop
+ \ifcase\value{blind@randomcount}%
+Dies hier ist ein Blindtext zum Testen von
+Textausgaben\blindtext@endsentence
+\or Gerne werden Pangramme als Blindtexte
+verwendet\blindtext@endsentence
+\or Das griechische Wort Pangramm (oder holoalphabetischer Satz)
+bezeichnet einen Satz, der alle Buchstaben des Alphabets
+enth\"alt\blindtext@endsentence
+\or Wobei man \glqq alle Buchstaben\grqq\ mit und ohne Umlaute z\"ahlen
+kann\blindtext@endsentence
+\or Aber das soll uns hier nicht k\"ummern, eigentlich wollen wir doch
+eine Geschichte erz\"ahlen\blindtext@endsentence
+\or Aber wozu wollen wir eine Geschichte erz\"ahlen?\xspace
+\or Ach ja, wir brauchen Text um das Layout dieses Textes zu p\"ufen --
+dazu nimmt man meist einen Blindtext\blindtext@endsentence%
+ \setcounter{blind@randomcount}{-1}%
+ \fi%
+ \refstepcounter{blind@randomcount}%
+ \ifnum\blind@countxx<\value{blind@randommax}\advance\blind@countxx by 1 %
+ \repeat%
+ \setcounter{blind@randommax}{\value{blindtext}}%
+ }% \blindtext@text
+ \def\blindtext@parstart{}%no change for random option
+ }
+\fi %option random
+% \end{macrocode}
+%
+% Define the pangram-option text for ngerman.
+% \begin{macrocode}
+\ifblindpangram
+\blind@addtext{ngerman}{%
+ \setcounter{blindtext}{5}
+ \def\blindtext@text{%
+ \blind@countxx=1 %
+ \loop
+ \ifcase\value{blind@pangramcount}%
+Franz jagt im komplett verwahrlosten Taxi quer durch
+Bayern\blindtext@endsentence
+\or Zw\"olf Boxk\"ampfer jagen Viktor quer \"uber den gro{\ss}en Sylter
+Deich\blindtext@endsentence
+\or Vogel Quax zwickt Johnys Pferd Bim\blindtext@endsentence
+\or Sylvia wagt quick den Jux bei Pforzheim\blindtext@endsentence
+\or Prall vom Whisky flog Quax den Jet zu Bruch\blindtext@endsentence
+\or Jeder wackere Bayer vertilgt bequem zwo Pfund
+Kalbshaxen\blindtext@endsentence
+\or Stanleys Expeditionszug quer durch Afrika wird von jedermann
+bewundert\blindtext@endsentence%
+ \setcounter{blind@pangramcount}{-1}%
+ \fi%
+ \refstepcounter{blind@pangramcount}%
+ \ifnum\blind@countxx<\value{blind@pangrammax}\advance\blind@countxx by 1 %
+ \repeat%
+ \setcounter{blind@pangrammax}{\value{blindtext}}%
+ }% \blindtext@text
+ \def\blindtext@parstart{}%no change for pangram option
+}
+\fi %option pangram
+% \end{macrocode}
+%
+% If the package \Lpack{ngerman} is loaded, select the language.
+% \begin{macrocode}
+\@ifpackageloaded{ngerman}{\selectlanguage{ngerman}}{}
+% \end{macrocode}
+%
+% ^^A %%%%%%%%%% End German -- New Orthography %%%%%%%%%%%%%%%%
+%