Cómo crear un 'resumen de cambios' con latexdiff

Cómo crear un 'resumen de cambios' con latexdiff

Siguiendo miPregunta anterior, he creado con éxito undif.texarchivo de un proyecto grande y complejo, cuyos resultados se pueden veraquí. (Esto se hizo, al final, actualizandolátexdiffa la última versión: 1.0.3 que no está en Ubuntu 12.04 ppas y usando: PICTUREENV=(?:picture|DIFnomarkup|lstlisting|figure|table)[\w\d*@]*comoarchivo de configuración.

Es fantástico poder desplazarse por el documento y ver todas las mejoras que se han realizado. ¡Gracias látexdiff!

El siguiente problema es que el documento pdf es muy grande y los cambios son relativamente escasos: no puedo esperar que mis examinadores revisen las 300 páginas en busca de texto rojo y azul para indicar cambios. Lo que necesito es unResumen de Cambios. Esto contendría, como mínimo, el texto que había cambiado. Lo ideal sería que también contuviera palabras circundantes para dar contexto y (un vistazo general) el número de página de la modificación. Formas en las que he pensado hacer esto:

  • Redefinir el \DIFdelbeginentorno
  • Utilice una expresión regular como grep para extraer todas las líneas de dif.tex que contienen \DIFy compílelas por separado
  • Hágalo usando comandos latexdiff (he revisado la documentación, pero no veo cómo.
  • ¿Sería mejor un enfoque completamente diferente para resolver este problema (hacer una lista accesible de los cambios realizados, sin incluir el texto que permanece igual)?

Yo sé unpregunta similarestaba cerrado en este sitio. Esperemos que la claridad de esta pregunta y la provisión de un ejemplo la hagan útil para otros.

Respuesta1

Hay una nueva funcionalidad en latexdiff desde la versión 1.1.0 que genera solo aquellas páginas donde se ha realizado un cambio.

Consulte la opción --only-changespara latexdiff-vcu opciones -s ONLYCHANGEDPAGEo -s ZLABELpara latexdiff. Lo primero es mucho más conveniente ya que el posprocesamiento se realiza entre bastidores.

(Sé que esta pregunta es muy antigua, pero la mejora en latexdiff a este respecto desde que se publicaron las respuestas originales es significativa)

Respuesta2

Creo que la forma más sencilla con diferencia es utilizar grep. La implementación GNU de grep(que es la que tienes si estás ejecutando GNU/Linux), proporciona un interruptor llamado -Cpara hacer exactamente lo que quieres: proporciona líneas de contexto alrededor de la coincidencia.

Algo como esto debería ayudar

grep -C 5 '\\DIF' source.tex > destination.tex

Esto proporcionará 5 líneas antes y 5 líneas después del partido. Modificarad libido.

Formas en que esto puede fallar

  • Si las líneas de contexto cruzan los límites del entorno/grupo de LaTeX, su nuevo documento no se podrá compilar.
  • Si \DIFexiste dentro de un "radio" de 5 líneas de otro, grepla salida de 'contendrá duplicados. Puede que esto no sea un gran problema si sus ediciones son escasas, pero es posible que deba verificarlo visualmente.

Respuesta3

Hazlo manualmente.

Descubrí que la mejor manera de crear un "resumen de cambios" era buscar en eldif.texarchivo y seleccione manualmente los cambios que necesitaba. Esto fue genial, ya que me permitió incluir solo los cambios que eran necesarios e incluir suficiente contexto para permitir que otros entendieran por qué se habían realizado los cambios.

El resultado (verdifsum.pdf), junto con los archivos .tex relevantes y el código reproducible y la tesis de datos de ejemplo se han colocado en GitHub para fomentar la transparencia yrepetibleinvestigación:https://github.com/Robinlovelace/thesis-reproducible. Con suerte, esto será de utilidad para otras personas que buscan optimizar el uso de LaTeX para la presentación y modificación de proyectos de tesis.

información relacionada