summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.tex
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.tex')
-rw-r--r--macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.tex283
1 files changed, 283 insertions, 0 deletions
diff --git a/macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.tex b/macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.tex
new file mode 100644
index 0000000000..33f18419f2
--- /dev/null
+++ b/macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.tex
@@ -0,0 +1,283 @@
+\documentclass[twoside]{article}
+\usepackage[osf,p]{libertinus}
+\usepackage{microtype}
+\usepackage[pdfusetitle,hidelinks]{hyperref}
+\usepackage[english, main=latin]{babel}
+\babeltags{english = english}
+\usepackage[series={},noend,nocritical,noeledsec,nofamiliar]{reledmac}
+
+% CONFIG FANCYHDR TO SHOW LEFT/RIGHT MARKS IN HEADERS
+\usepackage{fancyhdr}
+\pagestyle{fancy}
+
+%% What to show in the header
+\newcommand{\mymarks}{%
+ \ifdefstrequal{\leftmark}{\rightmark}%
+ {\rightmark}%
+ {\rightmark\ – \leftmark}%
+}
+%% Configure the header itself
+\fancyhead[LE,RO]{}
+\fancyhead[CE,CO]{\mymarks}
+\fancyhead[LO,RE]{}
+
+
+\def\sectionmark#1{}%Disable section marking
+
+\begin{document}
+
+
+\begin{english}
+\date{}
+\title{Subdivision number inside the header}
+\maketitle
+\begin{abstract}
+ This file shows how to use the \verb+\doinsidethislinehook+
+ command to use \verb+\markboth+ to add verse (sentence) numbers inside the headers.
+
+ We can't call \verb+\markboth+ directly inside the \verb+pstart+…\verb+\pend+, because it creates trouble with vertical spacing.
+
+ We show two examples: the first one add directly the verse number inside the source code, while the second use a counter to determine it automatically.
+
+ To understand this example, you must be familiar with \LaTeX\ marking mechanism (\verb+\markboth+) and the \emph{fancyhdr} package.
+\end{abstract}
+\end{english}
+
+\begin{english}
+\section{Manual subdivision number}
+
+\begin{abstract}
+ In this example, the verse (sentence) number is typeset directly in the source code.
+ We wrap it in a \verb+\versenumber+ macro, which:
+ \begin{itemize}
+ \item typesets it with a bold fontface, followed by a dot;
+ \item uses \verb+\doinsidelinehook+ to call correctly \verb+\markboth+.
+ \end{itemize}
+\end{abstract}
+\end{english}
+
+
+\newcommand{\versenumber}[1]{%
+ \doinsidethislinehook{\markboth{#1}{#1}}%
+ \textbf{#1}.%
+}
+
+\beginnumbering
+\pstart
+\versenumber{1} Lorem ipsum dolor sit amet, consectetur adipiscing elit.
+\versenumber{2} Morbi nec augue elit.
+\versenumber{3} Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Quisque cursus eros a erat placerat, et tempus neque volutpat.
+\versenumber{4} Morbi ultrices at magna et cursus.
+\versenumber{5} Sed vel purus luctus, euismod erat in, fermentum orci.
+\versenumber{6} Vivamus ac rutrum sapien, id ultricies augue.
+\versenumber{7} Fusce sed rutrum lorem, ut auctor urna.
+\versenumber{8} Proin rutrum dignissim turpis, placerat pellentesque nulla elementum in.
+\versenumber{9} Nunc id tristique ipsum.
+\versenumber{10} Quisque semper faucibus orci at eleifend.
+\versenumber{11} Proin velit velit, sagittis nec consequat in, auctor eget tortor.
+\versenumber{12} Pellentesque lorem elit, scelerisque id vulputate vel, faucibus a eros.
+\versenumber{13} Nunc nec orci ullamcorper, sollicitudin magna id, maximus quam.
+\versenumber{14} Pellentesque nec mauris purus.
+\versenumber{15} Duis suscipit nunc vitae faucibus posuere.
+\versenumber{16} Integer mattis varius cursus.
+\versenumber{17} Proin risus diam, imperdiet sit amet sem sed, dapibus sodales quam.
+\versenumber{18} Pellentesque bibendum sapien eu nisl efficitur placerat.
+\versenumber{19} Aenean dignissim ante ac erat pharetra, non pellentesque ante sodales.
+\versenumber{20} Nunc lorem nunc, elementum in accumsan id, blandit ac elit.
+\versenumber{21} In rhoncus augue ex, quis tristique ex laoreet non.
+\versenumber{22} Phasellus tincidunt, mauris nec auctor maximus, sapien elit elementum dolor.
+\versenumber{23} Id pretium urna tortor sed purus.
+\versenumber{24} Donec velit leo, varius ac dui eget, tincidunt euismod nibh.
+\versenumber{25} Nulla facilisis sit amet leo et vehicula.
+\versenumber{26} Morbi ultrices elementum nisi, ac semper neque faucibus non.
+\versenumber{27} Curabitur et justo gravida eros consequat elementum.
+\versenumber{28} Quisque eu consequat eros, vitae ullamcorper risus.
+\versenumber{29} Nullam pellentesque id lectus a aliquet.
+\versenumber{30} Cras rhoncus, arcu ut consequat ultricies, massa ante sollicitudin massa, vehicula ullamcorper quam libero vitae eros.
+\versenumber{31} In dapibus arcu sed sem vehicula, ut imperdiet odio hendrerit.
+\versenumber{32} Praesent nec diam turpis.
+\versenumber{33} Vestibulum erat ante, maximus id pulvinar vitae, sagittis sed odio.
+\versenumber{34} Pellentesque sit amet tellus aliquam, mattis purus a, consectetur turpis.
+\versenumber{35} Praesent nunc magna, posuere ac faucibus eu, ullamcorper vel sem.
+\versenumber{36} Aenean vel dolor eget felis malesuada molestie ac non justo.
+\versenumber{37} Phasellus semper gravida mollis.
+\versenumber{38} Mauris fermentum eget ex et eleifend.
+\versenumber{39} Morbi sit amet cursus velit.
+\versenumber{40} Ut efficitur, risus vel mattis ultrices, arcu metus scelerisque dui, eget semper dolor justo ac nisl.
+\versenumber{41} Fusce euismod ultrices faucibus.
+\versenumber{42} Vestibulum sit amet lacus dui.
+\versenumber{43} Maecenas et nisi vel ex scelerisque dictum at vel nibh.
+\versenumber{44} Morbi mattis quam ut congue elementum.
+\versenumber{45} Etiam luctus ac metus id faucibus.
+\versenumber{46} Nulla vulputate massa non tincidunt fringilla.
+\versenumber{47} Praesent accumsan eget enim eu dapibus.
+\versenumber{48} Nunc auctor, odio nec venenatis auctor, nibh sem efficitur sapien, ut mollis nunc nunc at massa.
+\versenumber{49} Morbi vitae turpis iaculis, imperdiet quam vel, blandit purus.
+\versenumber{50} Suspendisse lobortis dui et enim egestas, sed convallis dolor viverra.
+\versenumber{51} Etiam mollis dolor nec laoreet facilisis.
+\versenumber{52} Pellentesque fringilla mauris rhoncus pretium facilisis.
+\versenumber{53} Quisque vitae posuere justo.
+\versenumber{54} Quisque a rutrum elit.
+\versenumber{55} In at pretium magna.
+\versenumber{56} Morbi sed ullamcorper lectus.
+\versenumber{57} Praesent ut rhoncus odio.
+\versenumber{58} Cras a metus nisl.
+\versenumber{59} Aliquam et congue nisi, viverra ultricies metus.
+\versenumber{60} Duis fringilla laoreet nisi, at suscipit ex porttitor sed.
+\versenumber{61} Mauris sit amet purus efficitur, euismod sem vitae, mattis neque.
+\versenumber{62} Mauris pretium, turpis a suscipit pulvinar, est nunc lacinia lacus, at pulvinar nunc lacus in erat.
+\versenumber{63} Lorem ipsum dolor sit amet, consectetur adipiscing elit.
+\versenumber{64} Morbi nec augue elit.
+\versenumber{65} Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Quisque cursus eros a erat placerat, et tempus neque volutpat.
+\versenumber{66} Morbi ultrices at magna et cursus.
+\versenumber{67} Sed vel purus luctus, euismod erat in, fermentum orci.
+\versenumber{68} Vivamus ac rutrum sapien, id ultricies augue.
+\versenumber{69} Fusce sed rutrum lorem, ut auctor urna.
+\versenumber{70} Proin rutrum dignissim turpis, placerat pellentesque nulla elementum in.
+\versenumber{71} posuere cubilia Curae; Quisque cursus eros a erat placerat, et tempus neque volutpat.
+\versenumber{72} Morbi ultrices at magna et cursus.
+\versenumber{73} Sed vel purus luctus, euismod erat in, fermentum orci.
+\versenumber{74} Vivamus ac rutrum sapien, id ultricies augue.
+\versenumber{75} Fusce sed rutrum lorem, ut auctor urna.
+\versenumber{76} Proin rutrum dignissim turpis, placerat pellentesque nulla elementum in.
+\versenumber{77} Id pretium urna tortor sed purus.
+\versenumber{78} Donec velit leo, varius ac dui eget, tincidunt euismod nibh.
+\versenumber{79} Nulla facilisis sit amet leo et vehicula.
+\versenumber{80} Morbi ultrices elementum nisi, ac semper neque faucibus non.
+\versenumber{81} Curabitur et justo gravida eros consequat elementum.
+\versenumber{82} Quisque eu consequat eros, vitae ullamcorper risus.
+\versenumber{83} Nullam pellentesque id lectus a aliquet.
+\versenumber{84} Cras rhoncus, arcu ut consequat ultricies, massa ante sollicitudin massa, vehicula ullamcorper quam libero vitae eros.
+\versenumber{85} In dapibus arcu sed sem vehicula, ut imperdiet odio hendrerit.
+\versenumber{86} Praesent nec diam turpis.
+\versenumber{87} Vestibulum erat ante, maximus id pulvinar vitae, sagittis sed odio.
+\pend
+\endnumbering
+\newpage
+
+\begin{english}
+\section{Automatic verse number}
+
+\begin{abstract}
+ In this example, the verse (sentence) number is not typeset directly, but stored in a \LaTeX\ counter (whose name is \verb+verse+).
+ The \verb+\autoversenumber+ macro:
+ \begin{itemize}
+ \item increases the counter;
+ \item typesets it with a bold face, followed by a dot;
+ \item use \verb+\doinsidelinehook+ to call correctly \verb+\markboth+.
+ \end{itemize}
+
+ The main problem is that, because of \emph{reledmac} mechanism, the lines are typeset after the \verb+\pend+,
+ at a time when the \verb+verse+ counter is already set to its maximal value.
+ Consequently, with the hack, the \verb+\markboth+ macro won't have set the marker to the correct value.
+
+ However, we can solve this issue, because the argument of \verb+doinsidethislinehook+ is written in a auxiliary file
+ when it is read.
+
+ Nevertheless, to write the correct value of the counter in the auxiliary file, we need to do some hacks with \TeX\'s expansion mechanism.
+
+\end{abstract}
+\end{english}
+
+\newcounter{verse}
+\newcommand{\autoversenumber}{%
+ \refstepcounter{verse}%Add 1 to the counter
+ \edef\tmp{\noexpand\markboth{\the\value{verse}}{\the\value{verse}}}%\tmp will be expanded to \markboth{<verse-value>}{<verse-value}>
+ \expandafter\doinsidethislinehook\expandafter{\tmp}%First, we expand \tmp to the value, and then, pass the result as argument to \doinsidelinehook
+ \textbf{\theverse}.\space%Typeset the verse counter value in bold, followed by a dot and then a space.
+}
+
+\beginnumbering
+\pstart
+\autoversenumber Lorem ipsum dolor sit amet, consectetur adipiscing elit.
+\autoversenumber Morbi nec augue elit.
+\autoversenumber Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Quisque cursus eros a erat placerat, et tempus neque volutpat.
+\autoversenumber Morbi ultrices at magna et cursus.
+\autoversenumber Sed vel purus luctus, euismod erat in, fermentum orci.
+\autoversenumber Vivamus ac rutrum sapien, id ultricies augue.
+\autoversenumber Fusce sed rutrum lorem, ut auctor urna.
+\autoversenumber Proin rutrum dignissim turpis, placerat pellentesque nulla elementum in.
+\autoversenumber Nunc id tristique ipsum.
+\autoversenumber Quisque semper faucibus orci at eleifend.
+\autoversenumber Proin velit velit, sagittis nec consequat in, auctor eget tortor.
+\autoversenumber Pellentesque lorem elit, scelerisque id vulputate vel, faucibus a eros.
+\autoversenumber Nunc nec orci ullamcorper, sollicitudin magna id, maximus quam.
+\autoversenumber Pellentesque nec mauris purus.
+\autoversenumber Duis suscipit nunc vitae faucibus posuere.
+\autoversenumber Integer mattis varius cursus.
+\autoversenumber Proin risus diam, imperdiet sit amet sem sed, dapibus sodales quam.
+\autoversenumber Pellentesque bibendum sapien eu nisl efficitur placerat.
+\autoversenumber Aenean dignissim ante ac erat pharetra, non pellentesque ante sodales.
+\autoversenumber Nunc lorem nunc, elementum in accumsan id, blandit ac elit.
+\autoversenumber In rhoncus augue ex, quis tristique ex laoreet non.
+\autoversenumber Phasellus tincidunt, mauris nec auctor maximus, sapien elit elementum dolor.
+\autoversenumber Id pretium urna tortor sed purus.
+\autoversenumber Donec velit leo, varius ac dui eget, tincidunt euismod nibh.
+\autoversenumber Nulla facilisis sit amet leo et vehicula.
+\autoversenumber Morbi ultrices elementum nisi, ac semper neque faucibus non.
+\autoversenumber Curabitur et justo gravida eros consequat elementum.
+\autoversenumber Quisque eu consequat eros, vitae ullamcorper risus.
+\autoversenumber Nullam pellentesque id lectus a aliquet.
+\autoversenumber Cras rhoncus, arcu ut consequat ultricies, massa ante sollicitudin massa, vehicula ullamcorper quam libero vitae eros.
+\autoversenumber In dapibus arcu sed sem vehicula, ut imperdiet odio hendrerit.
+\autoversenumber Praesent nec diam turpis.
+\autoversenumber Vestibulum erat ante, maximus id pulvinar vitae, sagittis sed odio.
+\autoversenumber Pellentesque sit amet tellus aliquam, mattis purus a, consectetur turpis.
+\autoversenumber Praesent nunc magna, posuere ac faucibus eu, ullamcorper vel sem.
+\autoversenumber Aenean vel dolor eget felis malesuada molestie ac non justo.
+\autoversenumber Phasellus semper gravida mollis.
+\autoversenumber Mauris fermentum eget ex et eleifend.
+\autoversenumber Morbi sit amet cursus velit.
+\autoversenumber Ut efficitur, risus vel mattis ultrices, arcu metus scelerisque dui, eget semper dolor justo ac nisl.
+\autoversenumber Fusce euismod ultrices faucibus.
+\autoversenumber Vestibulum sit amet lacus dui.
+\autoversenumber Maecenas et nisi vel ex scelerisque dictum at vel nibh.
+\autoversenumber Morbi mattis quam ut congue elementum.
+\autoversenumber Etiam luctus ac metus id faucibus.
+\autoversenumber Nulla vulputate massa non tincidunt fringilla.
+\autoversenumber Praesent accumsan eget enim eu dapibus.
+\autoversenumber Nunc auctor, odio nec venenatis auctor, nibh sem efficitur sapien, ut mollis nunc nunc at massa.
+\autoversenumber Morbi vitae turpis iaculis, imperdiet quam vel, blandit purus.
+\autoversenumber Suspendisse lobortis dui et enim egestas, sed convallis dolor viverra.
+\autoversenumber Etiam mollis dolor nec laoreet facilisis.
+\autoversenumber Pellentesque fringilla mauris rhoncus pretium facilisis.
+\autoversenumber Quisque vitae posuere justo.
+\autoversenumber Quisque a rutrum elit.
+\autoversenumber In at pretium magna.
+\autoversenumber Morbi sed ullamcorper lectus.
+\autoversenumber Praesent ut rhoncus odio.
+\autoversenumber Cras a metus nisl.
+\autoversenumber Aliquam et congue nisi, viverra ultricies metus.
+\autoversenumber Duis fringilla laoreet nisi, at suscipit ex porttitor sed.
+\autoversenumber Mauris sit amet purus efficitur, euismod sem vitae, mattis neque.
+\autoversenumber Mauris pretium, turpis a suscipit pulvinar, est nunc lacinia lacus, at pulvinar nunc lacus in erat.
+\autoversenumber Lorem ipsum dolor sit amet, consectetur adipiscing elit.
+\autoversenumber Morbi nec augue elit.
+\autoversenumber Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Quisque cursus eros a erat placerat, et tempus neque volutpat.
+\autoversenumber Morbi ultrices at magna et cursus.
+\autoversenumber Sed vel purus luctus, euismod erat in, fermentum orci.
+\autoversenumber Vivamus ac rutrum sapien, id ultricies augue.
+\autoversenumber Fusce sed rutrum lorem, ut auctor urna.
+\autoversenumber Proin rutrum dignissim turpis, placerat pellentesque nulla elementum in.
+\autoversenumber posuere cubilia Curae; Quisque cursus eros a erat placerat, et tempus neque volutpat.
+\autoversenumber Morbi ultrices at magna et cursus.
+\autoversenumber Sed vel purus luctus, euismod erat in, fermentum orci.
+\autoversenumber Vivamus ac rutrum sapien, id ultricies augue.
+\autoversenumber Fusce sed rutrum lorem, ut auctor urna.
+\autoversenumber Proin rutrum dignissim turpis, placerat pellentesque nulla elementum in.
+\autoversenumber Id pretium urna tortor sed purus.
+\autoversenumber Donec velit leo, varius ac dui eget, tincidunt euismod nibh.
+\autoversenumber Nulla facilisis sit amet leo et vehicula.
+\autoversenumber Morbi ultrices elementum nisi, ac semper neque faucibus non.
+\autoversenumber Curabitur et justo gravida eros consequat elementum.
+\autoversenumber Quisque eu consequat eros, vitae ullamcorper risus.
+\autoversenumber Nullam pellentesque id lectus a aliquet.
+\autoversenumber Cras rhoncus, arcu ut consequat ultricies, massa ante sollicitudin massa, vehicula ullamcorper quam libero vitae eros.
+\autoversenumber In dapibus arcu sed sem vehicula, ut imperdiet odio hendrerit.
+\autoversenumber Praesent nec diam turpis.
+\autoversenumber Vestibulum erat ante, maximus id pulvinar vitae, sagittis sed odio.
+
+\pend
+\endnumbering
+
+\end{document}