Voici une solution basée sur un script (makefile) `batch`.
Le Par exemple, le fichier .tex `.tex` est blabla.tex par exemple comme suit
**Fichier.tex**
\documentclass[french]{book}
\usepackage{lmodern}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{geometry}
\providecommand\monformat{a4paper,outer=2cm}
\expandafter\geometry\expandafter{\monformat,headheight=1cm}
\usepackage{mwe}
\title{Mon Livre}
\author{Moi Meme}
\begin{document}
\maketitle
\tableofcontents
\blinddocument
\end{document}
Le point clé est les deux lignes
\providecommand\monformat{a4paper,outer=2cm}
\expandafter\geometry\expandafter{\monformat,headheight=1cm}
ça marche aussi pour un fichier `.cls`.
Maintenant on passe au script
**Compilateur.bat**
@echo off
echo.
echo ***********************************************************
echo * *
echo * bienvenue au compilateur multi-versions *
echo * *
echo ***********************************************************
echo.
rem Nom de fichier
set /p monfichier="Entrez un nom de fichier SVP (sans extension .tex) : "
rem ********** production de la version finale. +++++++++++++
pdflatex -jobname=%monfichier%-Livre \newcommand\monformat{a5paper,outer=2cm} \input{%monfichier%}
rem ---------- on peut ajouter d'autres commandes (makeinex,2*pdflatex,bibtex,...)
rem ********** suppression des fichiers temporaires +++++++++++++
for %%a in (*.aux, *.toc, *.lof, *.lot) do del %%a
rem ********** production de la version draft. +++++++++++++
pdflatex -jobname=%monfichier%-draft \newcommand\monformat{a4paper,outer=5cm} \input{%monfichier%}
rem ---------- on peut ajouter d'autres commandes (makeinex,2*pdflatex,bibtex,...)
rem ********** suppression des fichiers temporaires +++++++++++++
for %%a in (*.aux, *.toc, *.lof, *.lot) do del %%a
rem ********** production de la version ebook. +++++++++++++
rem ---------- REMARQUE : On peut utiliser l'un des deux lignes suivantes ---------
make4ht -u %monfichier%
rem htlatex %monfichier% "xhtml,charset=utf-8" " -cunihtf -utf8"
ebook-convert %monfichier%.html %monfichier%.epub --authors="Moi Meme"
Dans le dernier ligne "Moi Meme" à remplacer par "l'auteur de livre".
Enfin : il suffit de double cliquez le fichier `.bat` puis entrer, à la demande, le nom de fichier à compiler.