If both content and form live in the same file, like in the standard LaTeX approach, they&#x27;re not separated.<p>My approach is to abstract all style-related concerns in a template and keep the content in dedicated files: YAML for structured content (CVs and invoices) and markdown for prose-like content (letters).<p>Beside making life easier by using formats more suited, syntax-wise, for the particular type of content I&#x27;m dealing with, this opens up new possibilities for automation (e.g. I can iterate on repetitive data structures, for example for building an invoice table) and ultimately results in DRYer LaTeX code in the template.