\documentclass[a5paper,twoside,openany]{book}
\usepackage{geometry}
\usepackage{titlesec}
\usepackage{graphicx}
\usepackage{marginnote}
\usepackage{setspace}
\usepackage{fancyhdr}
\usepackage{tikzpagenodes}
\usepackage{everypage}
\usepackage[switch*,pagewise,modulo]{lineno}
\usepackage{amssymb}
\usepackage[classiclatin]{babel}
\usepackage{titletoc}
\usepackage{ragged2e}


% basic page geoemtry
\geometry{
  a5paper,
  portrait,
  inner=25pt,
  outer=130pt,
  marginparwidth=85pt,
  marginparsep=20pt,
  headsep=10pt,
  top=50pt,
  bottom=80pt
}


% set default font and line spacing
\renewcommand{\rmdefault}{ptm}
\linespread{1.5}


% default "empty" style to use for front pages
\fancypagestyle{empty}{
   \fancyhf{} % clear all header and footer fields
   \renewcommand{\headrulewidth}{0pt}
   \renewcommand{\footrulewidth}{0pt}
}


% redefine \cleardoublepage so the pages created are completely empty
\makeatletter
\renewcommand{\cleardoublepage}{
  \clearpage
  \ifodd\value{page}
  \else
    \hbox{}
    \thispagestyle{empty}
    \newpage
  \fi
}
\makeatother


% title page template
\makeatletter
\renewcommand{\maketitle}{
  \begin{titlepage}
    \begin{center}
      \MakeUppercase{\LARGE\@author}
      \\ {\Huge \@title \par}
      \vspace*{\fill}
      {\LARGE\@date}
    \end{center}
  \end{titlepage}
}
\makeatother


% formatting of table-of-contents entries
\titlecontents{chapter}
  [0pt] % left margin from left page margin
  { \thispagestyle{empty}} % above-code / global formatting
  {} % numbered-entry-format
  {} % numberless-entry-format
  { % what happens after title
    \titlerule*[0.5pc]{.} % a dotted line of 1pc between-dot distances
    \contentspage % the page number
  }


% chapter title format
\titleformat{\chapter}
  [hang] % title shape
  {\large\centering} % title formatting
  {} % section label (e.g. "Chapter")
  {0pt} % distance between label and title body
  {\chappic\MakeUppercase} % code preceding title body
  [] % code succeeding title body
\titlespacing{\chapter}
  {0pt} % left margin
  {0pt} % top margin
  {\baselineskip} % bottom margin
\newcommand{\newcontentsname}[1]{  % if we want to customize the ToC title
  \AtBeginDocument{\renewcommand{\contentsname}{#1}}
}


% build first book pages and set up formatting for chapters following
\newcommand{\bookstart}{
  \newgeometry{}
  \maketitle
  \cleardoublepage
  \tableofcontents
  \cleardoublepage
  \restoregeometry
  \linenumbers
  \AddEverypageHook{\drawmarginsep}
  \pagestyle{fancy}
}


% highly customized \chapter wrapper
\newcommand{\mychapter}[4]{ % picture, chapter title, ad capitulum
  % if picture path given, build \chappic command and \chappicheight, else empty them
  \ifx&#1& % \ifx checks if succeeding items are the same, i.e. &==& _if_ %1/picture argument is empty
    \renewcommand{\chappic}{\relax}
    \settoheight{\chappicheight}{0}
  \else
    \renewcommand{\chappic}{\vspace{-2\baselineskip}\\\includegraphics[width=\textwidth]{pics/#1}\\} % beware, carefully calibrated whitespace
    \settoheight{\chappicheight}{\chappic}
  \fi
  % header content
  \newpage % ensures markboth arguments are correct ones
  \markboth{#2}{#3}
  % call chapter with only chapter title, add subtitle below
  \chapter{#2}
  \vspace{-\baselineskip}
  \begin{center}
  \itshape{#3}
  \\\itshape{#4}
  \end{center}
  \vspace*{-\baselineskip}
  % ensure first paragraph stars non-indented
  \noindent
  \\ % necessary for unknown reason to make \noindent work
}
\newcommand{\chappic}{} % used in \titleformat to insert chapter picture before title body _if_ re_set by chapter command as non-empty
\newlength{\chappicheight} % used by marginnote positioning next to chapter picture


% marginalia formatting
\renewcommand\linenumberfont{\normalfont\small}
\let\oldmarginnote\marginnote
\renewcommand\marginnote[1]{
  \oldmarginnote{\setstretch{1} #1}
 }
\let\oldmarginpar\marginpar
\renewcommand\marginpar[1]{
  \oldmarginpar{\setstretch{1}\RaggedRight #1}
}
% use \marginnote for marginalia on/next to the chapter pic itself
\newlength{\chapterpicnoteoffset}
\newcommand{\chapterpicnote}[2]{
  \setlength{\chapterpicnoteoffset}{\dimexpr-\chappicheight-4\baselineskip}
  \ifx&#1&
  \else
    \setlength{\chapterpicnoteoffset}{\dimexpr+\chapterpicnoteoffset+#1\baselineskip}
  \fi
  \ifodd\value{page}
    \marginnote{\\#2}[\chapterpicnoteoffset]
  \else
    \marginnote{\raggedright \\#2}[\chapterpicnoteoffset]
  \fi
}


% default chapter style
\fancypagestyle{fancy}{
  \renewcommand{\headrulewidth}{1pt}
  \fancyheadoffset[LE]{\dimexpr\marginparsep+\marginparwidth\relax}
  \fancyheadoffset[RO]{\dimexpr\marginparsep+\marginparwidth\relax}
  \fancyfootoffset[LE]{\dimexpr\marginparsep+\marginparwidth\relax}
  \fancyfootoffset[RO]{\dimexpr\marginparsep+\marginparwidth\relax}
  \fancyhf{} % clear all header and footer fields
  \fancyhead[LE]{\leftmark}
  \fancyhead[RO]{\rightmark}
  \fancyfoot[LE,RO]{\thepage} % page number
}
\renewcommand{\chaptermark}[1]{\relax} % empty automatically inserted chapter label
\assignpagestyle{\chapter}{fancy}


% draw vertical margin separator lines
\newlength{\halfmarginparsep}
\setlength{\halfmarginparsep}{\dimexpr\marginparsep / 2 \relax}
\newcommand{\drawmarginsep}{
  \begin{tikzpicture}[remember picture, overlay]
    \ifodd\value{page}
      \draw [line width=1pt] ([xshift=\halfmarginparsep]current page header area.south east) -- ([xshift=\halfmarginparsep]current page text area.south east);
    \else
      \draw [line width=1pt] ([xshift=-\halfmarginparsep]current page header area.south west) -- ([xshift=-\halfmarginparsep]current page text area.south west);
    \fi
  \end{tikzpicture}
}


% some shortcuts to make the code less obtrusive inside the texts
\newcommand{\vs}[1]{\vspace{#1\baselineskip}\\}
\newcommand{\vsnonl}[1]{\vspace{#1\baselineskip}}
\newcommand{\marpicnonl}[2]{\includegraphics[width=#1\marginparwidth]{pics/#2}}
\newcommand{\marpic}[2]{\marpicnonl{#1}{#2}\\}


\title{FABVLAE ADDENDAE}
\author{plomlompom}
\date{MMXXIII}
\newcontentsname{INDEX FABVLARVM}
\begin{document}
\bookstart
\mychapter{provrom.png}{PROVINCIAE ROMANAE}{AD CAPITVLVM I}{}
\chapterpicnote{}{
littera Rōmāna: V
\vs{}
litterae \emph{nōn} Rōmānae: u, U, v
\vs{}
V/v \emph{et} U/u $\leftarrow$ V
\vs{}
v = V in\\PROVINCIA (prōvincia)
\vs{}
u = V in\\CAPITVLVM (capitulum)
\vs{3}
\emph{ad} capitulum prīmum:
\vs{0.5}
\marpic{}{frpag1.png}
}
DIODŌRUS: Ubi est imperium Rōmānum?
\\ SEXTUS: In Italiā est.
\\ DIODŌRUS: Est. Et ubi est?
\\ QUĪNTUS: In Āfricā est. In Galliā quoque est!
\\ DIODŌRUS: Est. Suntne prōvinciae Rōmānae, Āfrica et Gallia?
\\ SEXTUS, QUĪNTUS: Sunt!
\\ DIODŌRUS: Num Germānia quoque prōvincia Rōmāna est?
\\ MĀRCUS: Est!
\\ DIODŌRUS: Nōn est. Germānia in Eurōpā, sed in imperiō Rōmānō nōn est. Sed magnum imperium Rōmānum est, et multae sunt prō\-vinciae Rōmānae.
\\ QUĪNTUS: Numerus magnus est! Nōnne\marginpar{nōnne = nōn-ne} Hispānia quoque prō\-vincia Rōmāna est?
\\ DIODŌRUS: Est.
\\ SEXTUS: Hispānia magna est. Multa et magna oppida in Hispāniā sunt, et fluvīi multī et magnī!
\marginpar{parva $\leftrightarrow$ magna\\pauca $\leftrightarrow$ multa}
\\ MĀRCUS: Quid? Pauca oppida in Hispāniā sunt, et fluviī parvī.
\\ DIODŌRUS: Pauca oppida in Hispāniā sunt, sed non parva. Parvī sunt fluviī, sed nōn paucī. Magnae silvae quoque in Hispāniā sunt.
\\ QUĪNTUS: Nōnne Graecia est prōvincia Rōmāna?
\\ DIODŌRUS: Est. Multae sunt īnsulae Graecae in imperiō Rōmānō.
\\ MĀRCUS: Sed parvae sunt!
\marginpar{\marpic{}{forest.png}silva, silvae}
\\ DIODŌRUS: Sunt in Graeciā īnsulae parvae, et sunt magnae quoque īnsulae.
\\ QUĪNTUS: Suntne īnsulae Graecae in ōceanō Ātlanticō?
\\ MĀRCUS: Sunt!
\marginpar{\emph{īnsula} Britannia:\vs{0.5}\marpicnonl{0.5}{britannia-insula.png}\vs{1.5}\emph{nōn} prōvincia \\Britannia:\vs{}\marpic{0.65}{britannia-provincia.png}\emph{prōvincia} Britannia\\(in īnsulā Britanniā)}
\\ SEXTUS: Nōn sunt.
\\ DIODŌRUS: Num in ōceanō Ātlanticō sunt īnsulae Graecae? Nōn sunt.
\\ QUĪNTUS: Suntne īnsulae Rōmānae in ōceanō Ātlanticō?
\\ MĀRCUS: Sunt! Nōnne Britannia est?
\\ DIODŌRUS: Est īnsula Britannia, et est prōvincia quoque Britannia, in īnsulā Britanniā. Sed īnsula nōn parva est. Sunt multae silvae et multī fluvii in īnsulā, sed nōn in prōvinciā. Silvae et fluviī nōn in prōvinciā nōn sunt Rōmānī. Nōnne prōvincia Britannia Rōmāna est? Est. Num īnsula Rōmāna est?
\\ SEXTUS, QUĪNTUS: Nōn est!
\\ MĀRCUS: Est!
\\ DIODŌRUS: Nōn est.

\mychapter{domina.png}{DOMINA EVROPAE}{AD CAPITVLVM II}{}
\chapterpicnote{3}{Ecce domina Rōma!}
Ubi sunt fīliī et fīliae Eurōpae, Āfricae, Asiaeque?
\marginpar{
\begin{tikzpicture}[x=0.25\marginparwidth,y=3\baselineskip]
    \node[align=center] (mater) at (0,2) {māter\\ancilla};
    \node[align=center] (pater) at (2,2) {pater\\nōn\\servus};
    \node[align=center] (liberi) at (1,0) {filiae ancillae,\\filiī servī};
    \draw (mater.south) -- (0,1) -- (1,1) -- (liberi.north);
    \draw (pater.south) -- (2,1) -- (1,1);
\end{tikzpicture}
\vs{3}
\begin{tikzpicture}[x=0.25\marginparwidth,y=3\baselineskip]
    \node[align=center] (mater) at (0,2) {māter\\nōn\\ancilla};
    \node[align=center] (pater) at (2,2) {pater\\servus};
    \node[align=center] (liberi) at (1,0) {nōn ancillae,\\nōn servī};
    \draw (mater.south) -- (0,1) -- (1,1) -- (liberi.north);
    \draw (pater.south) -- (2,1) -- (1,1);
\end{tikzpicture}
}

Sunt in imperiō Rōmānō: Sunt servī et ancillae familiārum Rōmānārum. Magnus numerus est servōrum ancillārumque. Virī Rōmānī dominī servōrum sunt Graecōrum Hispānicōrum Britannicōrum cēterā\-rumque prōvinciārum. Rōma domina est multārum mag\-nārum prōvinciārum. Multae fēminae et multī virī prōvinci\-ārum Rōmae ancillae et servī sunt.

Līberī Iūliī Aemiliaeque nōn sunt servī, nōn sunt ancillae. Sed multī puerī sunt servī, multae puellae sunt ancillae in imperiō Rō\-mānō. Cuius fīlius servus est? Ancillae fīlius servus est. Estne servī fīlius servus quoque?

Germānia nōn est prōvincia Rōmāna. Suntne virī Germāniae dominī? Suntne servī? Suntne fēminae Germāniae dominae? Suntne ancillae?

\mychapter{}{LIBRI LIBERORVM}{AD CAPITVLVM II}{}
\marginpar{librī $\neq$ līberī}
Ecce liber antīquus. Est liber Iūliae. Quis est titulus librī puellae? `FEMINAE ANTIQVAE' est. Quot vocābula in titulō sunt librī antīquī? Duo.

Ecce liber novus. Est liber Quīntī. Quis est titulus librī puerī? `VIRI IMPERII ROMANI' est. Quot vocābula in titulō librī novī sunt? Tria sunt. Quot syllabae in vocābulō sunt prīmō? Duae sunt.

\marginpar{\marpic{0.5}{single-book.png}ūnus liber\vs{}\marpic{0.5}{two-books.png}duo librī}

Iūlia et Quīntus fīlia fīliusque sunt. Fīliae et fīliī līberī sunt. Librī Iūliae Quīntīque sunt librī līberōrum.

Quot sunt librī līberōrum? Num trēs sunt? Nōn trēs, sed duo sunt. Quot sunt librī novī? Ūnus est.

Quot sunt pāginae librōrum līberōrum? Centum sunt. Quot sunt capitula in librō Iūliae? Sex sunt. Quot sunt vocābula in librō puerī? Mīlle sunt.

Quīntus: ``Ecce liber meus magnus est!''
\marginpar{\marpic{0.5}{child.png}ūnus …?\vs{}\marpic{0.5}{children.png}duo līberī}

Iūlia: ``Liber tuus nōn magnus, sed parvus est. Liber meus magnus est.''

Quīntus: ``Pāginae librī meī sunt multae. Pāginae librī tuī paucae sunt.''

Iūlia: ``Sed pāginae librī meī sunt magnae, et sunt parvae pāginae librī tuī.''

Quī sunt titulī librōrum līberōrum? Suntne Iūlia Quīntusque līberī librōrum?

\mychapter{}{NVM DOMINVS PLORAT?}{AD CAPITVLVM III}{}
Batiātus, quī dominus est, dormit.

Naevia, quae ancilla est, cantat. Iam nōn dormit Batiātus, quia eam audit. Īrātus venit et eam pulsat. Plōrat Naevia.

Crīxus, quī servus est, rīdet. Batiātus, quī Crīxum audit, eum vocat: ``Servus probus nōn rīdet!'' Pulsat Crīxum. Plōrat Crīxus. Batiātus: ``Vir nōn plōrat!'' Crīxum verberat. Iam nōn plōrat Crīxus.

\marginpar{\marpic{}{pulsat.png}Ancillam pulsat.}

\marginpar{\marpic{}{verberat.png}Servum verberat.}

Venit Spartacus. Est servus quoque. Videt Naeviam Crīxum\-que, quem interrogat: ``Cūr Naevia plōrat? Quis eam pulsat?'' Respondet Crīxus: ``Batiātus eam pulsat, mēque verberat.'' Spartacus eum interrogat: ``Quid? Tē verberat? Cūr Crīxus nōn Batiātum verberat? Fū! Vir probus verberat virum quī fē\-minam pulsat.'' Crīxus respondet: ``Quia servus dominum nōn verberat.'' Spartacus īrātus: ``Improbum est!''

Dormit Batiātus. Venit Spartacus. Verberat Batiātum.

Venit Crīxus, videt Spartacum, videtque Batiātum, quī plōrat et quem verberat Spartacus. Rīdet Crīxus et vocat Batiātum: ``Fū! Vir nōn plōrat!'' Batiātum verberat quoque.

\marginpar{Est Naevia \emph{quam} Batiātus pulsat.\vs{}Est Batiātus \emph{quem} Spartacus verberat.\vs{}Quid est \emph{quod} \\Naevia videt?}

Venit Naevia. Ecce servus verberat dominum, et plōrat dominus! Naevia Batiātum pulsat, et rīdet: ``Dominus quī plōrat et quem verberat servus nōn dominus est, sed servus!'' Cantat: ``Iam Spartacus Crīxusque dominī novī sunt, et Naevia domina nova est, et Batiātus servus meus est! Hahahae!''

\mychapter{}{DOMINI NOVI}{AD CAPITVLVM IV}{(et fābulam anteriōrem `NVM DOMINVS PLORAT?')}
Crīxus: ``Batiāte, ubi est pecūnia?''

Tacet Batiātus. Spartacus baculum eius sūmit, Batiātumque rūr\-sus verberat. Eum vocat: ``Batiāte!''

Batiātus nullum vocābulum respondet, tantum plōrat.

Naevia: ``Ecce sacculum eius! Vidē, hīc! Habet pecūniam suam in sacculum suum!''

Sūmit sacculum eius Naevia.

Crīxus: ``Num vacuus est?''

Spartacus imperat: ``In mēnsā pōne!''

Naevia respondet: ``Nōn sacculus tuus, sed meus est.''

Spartacus rūrsus imperat: ``Eum pōne!''

Naevia tacet, et pāret.

Sunt nummī in sacculō. Crīxus: ``Quot nummī sunt?''

Naevia numerat: ``Sunt decem nummī!''

Sunt laetī Spartacus, Crīxus, Naeviaque, quia numerus num\-mōrum magnus est. Sed sunt trēs hominēs Naevia Spartacus Crī\-xus\-que. Quem numerum nummōrum habet ūnus homō? \marginpar{\marpic{0.75}{vitruvian.png}homō, hominēs}

Sūmit Spartacus prīmum nummum. ``Sūme nummum secundum, Crīxe.'' Is sūmit. ``Sūme nummum tertium, Naevia.'' Sūmit.

Sunt septem nummī in sacculō. Rūrsus ūnum sūmit Spartacus, ūnum sūmit Crīxus, ūnum Naevia.

Sunt quattuor nummī in sacculō. Rūrsus sūmit Spartacus, sūmit Crīxus, sūmit Naevia.

Est ūnus tantum nummus cēterus in sacculō. Cuius nummus est? Tacet Spartacus, tacet Crīxus, tacet Naevia.

Rīdet Crīxus, et sūmit nummum. Num nummus eius est? Īrātī sunt Spartacus Naeviaque. Sūmit baculum Spartacus.

Sed ecce, pōnit Crīxus nummum in nāsō\marginpar{nāsus} Batiātī. Iam rīdet Spartacus, iam rīdet Naevia. Crīxus: ``Probus servus est Batiātus. Batiāte, probe serve – sūme nummum tuum!'' Tacet Batiātus, et pāret.

Sed audī, vocat fēmina: ``Batiāte!'' Est Seppia quae vocat, fīlia Batiātī. Iam nōn rīdet Spartacus, neque rīdet Naevia.

Crīxus: ``Fū! Fīlia adest.''

Spartacus: ``Nōn iam adest. Sed venit. Nōn iam audit neque videt quod hīc est. Tacē.''

Batiātus fīliam suam vocat: ``Seppia! Sep…!'' Pulsat eum rūrsus Naevia.

Spartacus: ``Tacē, Batiāte. Nullum verbum respondē.''

Seppia rūrsus vocat: ``Batiāte? Respondē!'' Nōn iam videt Batiātum neque videt Spartācum Crīxumque. Sed videt Naeviam, quae venit.

Salūtat Seppiam Naevia: ``Salvē!''

Nōn salūtat Naeviam Seppia, tantum eam interrogat: ``Batiātus adest?''

Naevia: ``Hīc nōn est. Abest.''

Seppia: ``Nōnne\marginpar{nōnne = nōn-ne} mē vocat? Vir mē vocat!''

Rīdet Naevia: ``Nōn Batiātus est quī tē vocat. Est Crīxus, quī laetus est, quia tē videt.''

Seppia: ``Quid? Improbum Crīxum! Servus fīlīam dominī suī nōn vocat. Fū!''

Discēdit Seppia īrāta. Discēdit Naevia laeta.

\mychapter{}{VILLA VACUA}{AD CAPITVLVM V}{}
Ubi sunt ancillae, ubi servī? Ubi sunt māter et pater, Quīntus Mārcusque? Nūllum audit, nūllum videt. Vocat: ``Māter! Pater! Quīnte! Mārce! Respondite!'' Nūllī respondunt. Absunt. Sōla est Iūlia in vīllā vacuā.

Nōn dēlectat Iūliam. Cūr discēdunt, cūr sine eā? Nōnne amant fīliam suam, quae eōs amat? Plōrat Iūlia sōla. Num discēdunt quia foeda est puella, et improba? Plōrat et plōrat.

Rūrsus vocat servōs ancillāsque. Venit in cubicula eōrum, venit in ātrium, in cubicula Mārcī Quīn\-tī\-que, in cubiculum Iūliī Aemiliaeque. Venit ad fenestram: Ecce hortus magnus est. Hortus magnus Iūliam nōn dēlectat. Discēdit ab fenestrā et rūrsus in ātrium venit.

Videt aquam in impluviō, et ad impluvium venit. Pulsat aquam. Num iam plōrat? Nōn plōrat, sed rīdet: Amat quod agit, et nūlla ancilla, nūlla māter adest quae eam vocat: ``Iūliā! Improba est puella quae aquam pulsat!'' Iam aqua nōn tantum in impluviō est, sed etiam ex impluviō. Pulsat et pulsat Iūlia aquam, et iam magna est aqua in ātriō, et impluvium vacuum.

Discēdit Iūlia ex ātriō, et ad peristȳlum venit. Hortum magnum quī ex villā est nōn amat, sed hortus parvus in peristȳlō eam dēlectat. Dēlectant eam līlia hīc, quae amat, et rosae, quās carpit. Carpit multās rosās, et multa līlia etiam, et ea numerat: ``Ūnum, duo, tria, quattuor, …''

Respondet: ``Quīnque.''

Tacet Iūlia. Quid? Quī respondet? Tacet et audit.

Nūllum audit. Rīdet Iūlia. Sōla est!

Rūrsus numerat: ``Sex, septem, octō …''

Respondet: ``Novem.''

Rūrsus tacet Iūlia. Iam nōn rīdet. Audit et audit. Videt līlia et rosās. Sunt multae, sunt pulchrae. Tacent. Sed … num eae eam vident? Iūlia audit.

``Lalla…''

Cantant! Līlia cantant!

``Lallalla!''

Rosae cantant!

``Tacē! Ō improbam ancillam! Ecce iam nōn dormit mea puella.''

Aemilia īrāta est, quia Dēlia cantat. Et ecce Mārcus rīdet Iūliam, quia nōn iam dormit. Quīntus: ``Ō Mārce! Improbus est puer quī puellam rīdet!'' Sed dēlectat Iūliam, quia adest familia, et nōn iam sōla est. Rīdet quia Mārcus rīdet – rīdet cum Mārcō. Mārcus: ``Cūr Iūlia mē rīdet?'' Īrātus Quīntum pulsat.

\end{document}
