name: sync-tex description: Transfers prose edits from latex/index.tex (Overleaf) back into index.qmd. Use after pulling LaTeX edits from a collaborator. disable-model-invocation: true allowed-tools: Bash, Read, Write, Edit, Glob, Grep
Sync LaTeX Edits to QMD
Transfer prose changes made by collaborators in latex/index.tex (e.g., via Overleaf) back into index.qmd.
Prerequisites
latex/.baseline.texmust exist (auto-created bybash scripts/render.sh)latex/index.texmust contain collaborator edits (pulled from Overleaf / GitHub)
Steps
-
Read these three files:
latex/.baseline.tex— the LaTeX snapshot from the last render (before edits)latex/index.tex— the LaTeX after collaborator editsindex.qmd— the current QMD manuscript source
-
Compare
latex/.baseline.texvslatex/index.texto identify changes. Focus on the document body only (everything between\begin{document}and\end{document}). Ignore the preamble (lines before\begin{document}) — these are auto-generated by Quarto. -
For each section (identified by
\section{...}\label{...}and\subsection{...}\label{...}markers), check if the prose text changed between baseline and modified. -
For each changed section, apply the edits to the corresponding section in
index.qmd:- Convert LaTeX formatting to QMD equivalents:
\textbf{...}→**...**\textit{...}or\emph{...}→*...*\href{url}{text}→[text](url)Section~\ref{sec-id}→@sec-idFigure~\ref{fig-id}→@fig-idTable~\ref{tbl-id}→@tbl-id\cite{key}or\citep{key}→[@key]\citet{key}→@key- Footnotes:
\footnote{...}→^[...]
- CRITICAL: Preserve all
{{< embed >}}shortcodes exactly as they are in the QMD. Do NOT replace them with\includegraphics,\begin{figure},\begin{longtable}, or any LaTeX equivalents. These shortcodes pull live outputs from notebooks and must remain intact. - If a collaborator edited a figure/table caption in LaTeX (
\caption{...}), note the change in the summary report but do NOT modify the embed shortcodes — captions are defined in the notebook source cells.
- Convert LaTeX formatting to QMD equivalents:
-
After applying all changes, show a summary:
- List each section that was modified
- For each, show a brief description of what changed (e.g., "Added two sentences to Introduction", "Rewrote paragraph 2 in Methods")
- Note any changes that could NOT be transferred (e.g., caption edits, preamble changes, new LaTeX packages)
-
Render the manuscript with
bash scripts/render.shto verify the round-trip is clean (no warnings, no errors).
Error handling
- If
latex/.baseline.texdoes not exist, tell the user to run/project:renderfirst. - If
latex/.baseline.texandlatex/index.texare identical, report "No changes detected" and stop. - If a section label in the LaTeX does not match any section in
index.qmd, flag it and skip.