Автоматически генерировать похожие документы

Автоматически генерировать похожие документы

Мне нужно сгенерировать документ, содержащий элементы из txt-файла (например). Txt-файл:

Item 1
Item 2
Item 3
Item 4
Item 5
Item 6

Могу ли я запустить скрипт (?), который сгенерирует примерно следующее:

Заголовок №1.

  1. Пункт 1 (из txt)
  2. Пункт 4 (из txt)

Заголовок №2.

1.Пункт 2 (из txt)

2.Пункт 5 (из txt)


Заголовок №3.

1.Пункт 3 (из txt)

2.Пункт 6 (из txt)

Возможно ли это или мне следует использовать другой язык, и это будет проще?

решение1

Вот вариант.

файл.txt

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer nec odio.
Praesent libero. Sed cursus ante dapibus diam. Sed nisi. 
Nulla quis sem at nibh elementum imperdiet. Duis sagittis ipsum. 
Praesent mauris. Fusce nec tellus sed augue semper porta. Mauris massa. 
Vestibulum lacinia arcu eget nulla. 
Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. 
Curabitur sodales ligula in libero. 
Sed dignissim lacinia nunc. Curabitur tortor. 
Pellentesque nibh. Aenean quam. In scelerisque sem at dolor. 
Maecenas mattis. Sed convallis tristique sem. 
Proin ut ligula vel nunc egestas porttitor.

Main.tex

\documentclass{article}

\newcounter{mtctr}
\newcounter{tmp}
\newread\mt
\openin\mt=file.txt
\loop
\read\mt to \mtt
\unless\ifeof\mt
\stepcounter{mtctr}
\expandafter\xdef\csname question\themtctr\endcsname{\mtt}
\repeat
\closein\mt
\xdef\qustionnbr{\themtctr}
\setcounter{mtctr}{0}

\renewcommand\labelenumi{\thetmp.\theenumi.}

\begin{document}
\loop
\stepcounter{tmp}
\section*{Header \thetmp}
\begin{enumerate}
\stepcounter{mtctr}
\item \csname question\themtctr\endcsname
\ifnum\value{mtctr}<\qustionnbr
\stepcounter{mtctr}
\item \csname question\themtctr\endcsname
\fi
\end{enumerate}
\ifnum\value{mtctr}<\qustionnbr
\repeat
\end{document}

ОбновлятьВот более короткая версия.

\documentclass{article}

\newcounter{tmp}
\newread\mt
\openin\mt=file.txt

\renewcommand\labelenumi{\thetmp.\theenumi.}

\begin{document}

\loop
\unless\ifeof\mt
\read\mt to \mtt
\ifeof\mt\else
\stepcounter{tmp}
\section*{Header \thetmp}
\begin{enumerate}
\item \mtt
\read\mt to \mtt
\ifeof\mt\else
\item \mtt
\fi
\end{enumerate}
\fi
\repeat

\end{document}

Связанный контент