Tengo un pequeño problema en el que me gustaría insertar un svn diff de un documento LaTeX en otro documento LaTeX, el objetivo es mostrar qué ha cambiado desde la revisión XXX. Sin embargo, dado que el diff contiene muchos comandos LaTeX, no puedo incluirlo directamente en el documento, ya que LaTeX los interpondrá y no solo "imprimirá".¿Cómo mostrar el código LaTeX en un documento LaTeX?
Hoy tengo esto en mi Makefile
DIFF_INFO=diff.info.tex
DIFF_REV=167
diffinfo:
$(shell echo "\n" > $(DIFF_INFO))
$(shell echo "\\section{diff $(DIFF_REV)} \n" >> $(DIFF_INFO))
$(shell echo \\\\begin{verbatim} >> $(DIFF_INFO))
$(shell svn diff --revision $(DIFF_REV) $(N).tex >> $(DIFF_INFO))
$(shell echo \\\\end{verbatim} >> $(DIFF_INFO))
Y al final del documento LaTeX tengo esto:
\IfFileExists{diff.info.tex}
{
\newpage
\input{diff.info.tex}
}
Pero esto falla duro!
Mi próxima idea es escribir un script en Perl que reemplace todos los caracteres inválidos con algo que LaTeX pueda mostrar, pero parece que me arriesgaré a reinventar la rueda, así que pensé que podría preguntar si alguien tenía una mejor idea ?
¿Cómo incluyo y muestro código LaTeX en el documento?
Gracias Johan
actualización: Gracias "desconocido (Google)" por señalar textualmente, que hizo lo que yo quería.
Actualización: También parece que debería probar los listados que las3rjock nos contó, ya que se ven muy bien.
Actualización: No se pudo obtener listados que funcionen en mi caso, recibo algunas advertencias utf extrañas sobre caracteres inválidos. Pero al pie de la letra funciona, entonces usaré esta vez.
acuerdo. Iba a recomendar el paquete de listados que ofrece lo mismo en el comando \ lstinputlisting {filename}. Particularmente para los archivos generados por programación como un diff, esta es la manera correcta, ya que mantiene el archivo TeX que lo contiene como una plantilla agradable y limpia. – Boojum
Sí, lstinputlisting es casi siempre mejor que la versión literal. Evito al pie de la letra en casi todas las ocasiones. –