Mi hija está aprendiendo a leer; Estoy aprendiendo TeX. Entonces necesito tu ayuda en esto:
Tengo una serie/una lista de sustantivos (básicamente nombres de personas y dos criaturas míticas llamadasFara y Fu:
noun = ["Fu", "Fara", "Uta", "Mama", "Mami", "Ralf", "Lara", "Mara", "Murat", "Marta", "Mamut", "Ira", "Mira", "Maria" ]
Junto a esto va una lista de verbos que puede leer:
verb = ["malt", "ruft", "umarmt" ]
Estoy buscando una manera de componer automáticamente todas las permutaciones posibles y sensatas de sustantivos y verbos, como esta lista que mi simple script Ruby ya genera:
Maria umarmt Mama.
Maria malt Uta mit mir.
Mara malt Maria.
Fu malt Mamut.
Marta malt Mama.
Por "sensible" quiero decirnotener cosas como
Fu umarmt Fu.
ya que es físicamente imposible abrazarse a uno mismo (a menos que seas James Bond).
A cada frase se le puede añadir aleatoriamente el texto "mit mir" (junto conmigo).
¿Por qué látex? ruby
solo genera texto, y aquí viene la solicitud número dos:
Las sílabas de las palabras deben colorearse blue-red-blue-red-....
por first-second-third-...
sílaba, como esta:
En nombre de mi hija (y del mío, por supuesto) - ¡Gracias!
Mi configuración actual según mi comentario a continuación:
\documentclass[18pt,oneside,a4paper]{scrartcl}
\usepackage{pgfmath,color}
\usepackage[doublespacing]{setspace}
%Einstellungen der Seitenrnder
\renewcommand{\familydefault}{\sfdefault}
\usepackage{helvet}
\usepackage[left=4cm,right=3cm,top=3cm,bottom=3cm,includeheadfoot]{geometry}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\renewcommand{\headrulewidth}{0.5pt}
%Fu§zeile mittig
\fancyfoot[C]{\thepage}
%Linie unten
\renewcommand{\footrulewidth}{0.5pt}
%neue Rechtschreibung
\usepackage{ngerman}
\def\noun{%
{{Fu}},{{Fa}{ra}},{{U}{ta}},{{Ma}{ma}},%
{{Ma}{mi}},{{Ralf}},{{La}{ra}},%
{Ma}{ra},{{Mu}{rat}},{{Mar}{ta}},%
{{Ma}{mut}},{I}{ra},{Mi}{ra},{{Ma}{ri}{a}}%
}
\def\verb{{{malt}},{{ruft}},{{um}{armt}}%
}
\def\zc{\expandafter\zzblue}
\def\zzblue#1{%
\ifx\relax#1\else\textcolor{blue}{#1}%
\expandafter\zzred
\fi}
\def\zzred#1{%
\ifx\relax#1\else\textcolor{red}{#1}%
\expandafter\zzblue
\fi}
\begin{document}
\makeatletter
\@for\za:=\noun\do{%
\@for\zb:=\noun\do{%
\ifx\za\zb\else
\@for\v:=\verb\do{
\par\zc\za\relax\ \zc\v\relax\ \zc\zb\relax
\pgfmathparse{random(2)}%
\ifnum\pgfmathresult=1\ \textcolor{blue}{mit mir}\fi.
}%
\fi
}}
\end{document}
\pgfmathparse{random(8)}%
\let\zza\pgfmathresult
\pgfmathparse{random(8)}%
\show\pgfmathresult
Respuesta1
\documentclass{article}
\usepackage{pgfmath,color}
\def\noun{%
{{Fu}},{Fa}{ra},{{Uta}},{Ma}{ma},%
{Ma}{mi},{{Ralf}},{La}{ra},%
{Ma}{ra},{Mu}{rat},{Mar}{ta},%
{Ma}{mut},{Ir}{a},{Mir}{a},{Ma}{ri}{a}%
}
\def\verb{{{malt}},{{ruft}},{um}{armt}%
}
\def\zc{\expandafter\zzblue}
\def\zzblue#1{%
\ifx\relax#1\else\textcolor{blue}{#1}%
\expandafter\zzred
\fi}
\def\zzred#1{%
\ifx\relax#1\else\textcolor{red}{#1}%
\expandafter\zzblue
\fi}
\begin{document}
\makeatletter
\@for\za:=\noun\do{%
\@for\zb:=\noun\do{%
\ifx\za\zb\else
\@for\v:=\verb\do{
\par\zc\za\relax\ \zc\v\relax\ \zc\zb\relax
\pgfmathparse{random(2)}%
\ifnum\pgfmathresult=1\ \textcolor{blue}{mit mir}\fi.
}%
\fi
}}
\end{document}
\pgfmathparse{random(8)}%
\let\zza\pgfmathresult
\pgfmathparse{random(8)}%
\show\pgfmathresult