aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Alessi <alessi@robertalessi.net>2021-12-09 09:01:02 +0100
committerRobert Alessi <alessi@robertalessi.net>2021-12-09 09:01:02 +0100
commit34bfbfc0bbbc6bc0fa32e6de53ab6ceb2b07498d (patch)
tree6d28c5d39df44a3eeb179d75504cd38264451288
parent4cc485a544abd3fc946d64c0ec8922ace7d254cf (diff)
downloadekdosis-34bfbfc.tar.gz
\Set...Apparatus commands needed more expansion control
-rw-r--r--ekdosis.dtx74
1 files changed, 42 insertions, 32 deletions
diff --git a/ekdosis.dtx b/ekdosis.dtx
index 9f34630..5cb1dac 100644
--- a/ekdosis.dtx
+++ b/ekdosis.dtx
@@ -61,7 +61,7 @@ along with this program. If not, see
61%<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01] 61%<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
62%<package>\ProvidesPackage{ekdosis} 62%<package>\ProvidesPackage{ekdosis}
63%<*package> 63%<*package>
64 [2021/11/23 v1.5-dev Typesetting TEI xml-compliant critical editions] 64 [2021/12/09 v1.5-dev Typesetting TEI xml-compliant critical editions]
65%</package> 65%</package>
66%<*driver> 66%<*driver>
67\begin{filecontents}[noheader,overwrite]{bibdata.xml} 67\begin{filecontents}[noheader,overwrite]{bibdata.xml}
@@ -563,14 +563,11 @@ along with this program. If not, see
563\defaultfontfeatures{Renderer=Harfbuzz} 563\defaultfontfeatures{Renderer=Harfbuzz}
564\usepackage[latin.classic,greek.ancient,american]{babel} 564\usepackage[latin.classic,greek.ancient,american]{babel}
565\babelfont{rm}{Old Standard} 565\babelfont{rm}{Old Standard}
566\babelfont{sf}{NewCMSans10-Book} 566\babelfont{sf}{NewComputerModernSans10}
567\babelfont{tt}{NewCMMono10-Book} 567\babelfont{tt}{NewComputerModernMono10}
568\babelfont[greek]{rm}[ 568\babelfont[greek]{rm}[Script=Greek,
569 Script=Greek, 569 RawFeature={+ss05;+ss06}]
570 RawFeature={+ss05;+ss06} 570 {Old Standard}
571 ]{Old Standard}
572\babelfont[greek]{sf}[Script=Greek]{NewCMSans10-Book}
573\babelfont[greek]{tt}[Script=Greek]{NewCMMono10-Book}
574\newfontfamily{\junicode}{Junicode}[ 571\newfontfamily{\junicode}{Junicode}[
575 Ligatures=TeX, 572 Ligatures=TeX,
576 RawFeature={+hist}] 573 RawFeature={+hist}]
@@ -716,6 +713,8 @@ along with this program. If not, see
716\metaset[sep]{draft}{ -- } 713\metaset[sep]{draft}{ -- }
717\metasetlang{en-US} 714\metasetlang{en-US}
718\metaset{title}{ἔκδοσις} 715\metaset{title}{ἔκδοσις}
716\metaset[print]{title}{\href{http://www.ekdosis.org}{\eKd}\hfill
717 ἔκδοσις\hfill\phantom{\eKd}}
719\metaset{date}{\filedate} 718\metaset{date}{\filedate}
720\metaset{draft}{\fileversion} 719\metaset{draft}{\fileversion}
721\metaset{subject}{TEI xml-compliant critical editions} 720\metaset{subject}{TEI xml-compliant critical editions}
@@ -755,6 +754,7 @@ along with this program. If not, see
755\metawritepdfpreamble 754\metawritepdfpreamble
756\metawritepdfcontact 755\metawritepdfcontact
757\metawritepdfrights 756\metawritepdfrights
757\usepackage{abstract}
758\usepackage{multicol} 758\usepackage{multicol}
759\setlength\IndexMin{100pt} 759\setlength\IndexMin{100pt}
760\usepackage{tocloft} 760\usepackage{tocloft}
@@ -900,19 +900,19 @@ along with this program. If not, see
900% \changes{v1.0}{2020/08/14}{Documentation complete} 900% \changes{v1.0}{2020/08/14}{Documentation complete}
901% 901%
902% \begin{abstract} 902% \begin{abstract}
903% \pkg{ekdosis} is a Lua\LaTeX{} package designed for 903% \pkg{ekdosis} is a Lua\LaTeX{} package designed for multilingual
904% multilingual critical editions. It can be used to typeset texts 904% critical editions. It can be used to typeset texts and different
905% and different layers of critical notes in any direction accepted 905% layers of critical notes in any direction accepted by
906% by Lua\TeX. Texts can be arranged in running paragraphs or on 906% Lua\TeX. Texts can be arranged in running paragraphs or on facing
907% facing pages, in any number of columns which in turn can be 907% pages, in any number of columns which in turn can be synchronized
908% synchronized or not. In addition to printed texts, 908% or not. In addition to printed texts, \pkg{ekdosis} can convert
909% \pkg{ekdosis} can convert \texttt{.tex} source files so as to 909% \texttt{.tex} source files so as to produce \texttt{TEI
910% produce \texttt{TEI xml}-compliant critical 910% xml}-compliant critical editions. Database-driven encoding under
911% editions. Database-driven encoding under \LaTeX{} then allows 911% \LaTeX{} then allows extraction of texts entered segment by
912% extraction of texts entered segment by segment according to 912% segment according to various criteria: main edited text, variant
913% various criteria: main edited text, variant readings, translations 913% readings, translations or annotated borrowings between texts. It
914% or annotated borrowings between texts. It is published under the 914% is published under the terms of the GNU General Public License
915% terms of the GNU General Public License (GPL) version 3. 915% (GPL) version 3.
916% \end{abstract} 916% \end{abstract}
917% 917%
918% \section*{License and Disclaimer} 918% \section*{License and Disclaimer}
@@ -7754,6 +7754,16 @@ Sample text with a \textcolor{red}{word} in red.
7754 \luadirect{ekdosis.closestream()} 7754 \luadirect{ekdosis.closestream()}
7755} 7755}
7756% \end{macrocode} 7756% \end{macrocode}
7757% \paragraph{\textsf{ekdosis} Symbol}
7758% \begin{macro}{\eKd}
7759% \changes{v1.5}{2021/12/09}{Prints \textsf{ekdosis} indentifying
7760% symbol} As of v1.5, \pkg{ekdosis} has its own indentifying
7761% symbol. It is produced by \cs{eKd} and best printed with the Old
7762% Standard Greek font.
7763% \begin{macrocode}
7764\def\eKd{ε\kern -.4em\raise 1.15ex\hbox{κ}\kern -.105emδ}
7765% \end{macrocode}
7766% \end{macro}
7757% \paragraph{Setup} 7767% \paragraph{Setup}
7758% \begin{macro}{\ekdsetup} 7768% \begin{macro}{\ekdsetup}
7759% \changes{v1.3}{2021/08/18}{new command for global options} 7769% \changes{v1.3}{2021/08/18}{new command for global options}
@@ -8279,15 +8289,15 @@ Sample text with a \textcolor{red}{word} in red.
8279% point of the document. The keys to be used follow:--- 8289% point of the document. The keys to be used follow:---
8280% \begin{macrocode} 8290% \begin{macrocode}
8281\newif\ifrtl@app 8291\newif\ifrtl@app
8282\edef\ekdsep{] } 8292\def\ekdsep{] }
8283\edef\ekdsubsep{} 8293\def\ekdsubsep{}
8284\ekvdefinekeys{default@app}{ 8294\ekvdefinekeys{default@app}{
8285 choice direction = {LR = \rtl@appfalse, 8295 choice direction = {LR = \rtl@appfalse,
8286 RL = \rtl@apptrue}, 8296 RL = \rtl@apptrue},
8287 unknown-choice direction = \PackageError{ekdosis}{unknown 8297 unknown-choice direction = \PackageError{ekdosis}{unknown
8288 direction=#1}{`direction' must be either `LR' or `RL'.}, 8298 direction=#1}{`direction' must be either `LR' or `RL'.},
8289 code sep = \edef\ekdsep{#1}, 8299 code sep = \def\ekdsep{#1},
8290 code subsep = \edef\ekdsubsep{#1}, 8300 code subsep = \def\ekdsubsep{#1},
8291 store bhook = \ekd@begin@apparatus, 8301 store bhook = \ekd@begin@apparatus,
8292 initial bhook = {}, 8302 initial bhook = {},
8293 store ehook = \ekd@end@apparatus, 8303 store ehook = \ekd@end@apparatus,
@@ -8330,7 +8340,7 @@ Sample text with a \textcolor{red}{word} in red.
8330% between lemma texts and variant readings, which is by default 8340% between lemma texts and variant readings, which is by default
8331% a closing square bracket followed by a space (\verb*+] +):--- 8341% a closing square bracket followed by a space (\verb*+] +):---
8332% \begin{macrocode} 8342% \begin{macrocode}
8333\NewDocumentCommand{\SetSeparator}{m}{\edef\ekdsep{#1}} 8343\NewDocumentCommand{\SetSeparator}{m}{\def\ekdsep{#1}}
8334% \end{macrocode} 8344% \end{macrocode}
8335% \end{macro} 8345% \end{macro}
8336% \begin{macro}{\SetSubseparator} 8346% \begin{macro}{\SetSubseparator}
@@ -8339,7 +8349,7 @@ Sample text with a \textcolor{red}{word} in red.
8339% \enquote{subseparator} between variant readings. By default, 8349% \enquote{subseparator} between variant readings. By default,
8340% no subseparator is set:--- 8350% no subseparator is set:---
8341% \begin{macrocode} 8351% \begin{macrocode}
8342\NewDocumentCommand{\SetSubseparator}{m}{\edef\ekdsubsep{#1}} 8352\NewDocumentCommand{\SetSubseparator}{m}{\def\ekdsubsep{#1}}
8343% \end{macrocode} 8353% \end{macrocode}
8344% \end{macro} 8354% \end{macro}
8345% \begin{macro}{\SetBeginApparatus} 8355% \begin{macro}{\SetBeginApparatus}
@@ -8347,7 +8357,7 @@ Sample text with a \textcolor{red}{word} in red.
8347% characters at the beginning of the apparatus block. By default, 8357% characters at the beginning of the apparatus block. By default,
8348% nothing is appended:--- 8358% nothing is appended:---
8349% \begin{macrocode} 8359% \begin{macrocode}
8350\NewDocumentCommand{\SetBeginApparatus}{m}{\edef\ekd@begin@apparatus{#1}} 8360\NewDocumentCommand{\SetBeginApparatus}{m}{\def\ekd@begin@apparatus{#1}}
8351% \end{macrocode} 8361% \end{macrocode}
8352% \end{macro} 8362% \end{macro}
8353% \begin{macro}{\SetEndApparatus} 8363% \begin{macro}{\SetEndApparatus}
@@ -8356,7 +8366,7 @@ Sample text with a \textcolor{red}{word} in red.
8356% as it is customary in some editions. By default, nothing is 8366% as it is customary in some editions. By default, nothing is
8357% appended:--- 8367% appended:---
8358% \begin{macrocode} 8368% \begin{macrocode}
8359\NewDocumentCommand{\SetEndApparatus}{m}{\edef\ekd@end@apparatus{#1}} 8369\NewDocumentCommand{\SetEndApparatus}{m}{\def\ekd@end@apparatus{#1}}
8360% \end{macrocode} 8370% \end{macrocode}
8361% \end{macro} 8371% \end{macro}
8362% \begin{macro}{\SetUnitDelimiter} 8372% \begin{macro}{\SetUnitDelimiter}
@@ -12259,12 +12269,12 @@ function ekdosis.appout()
12259 end 12269 end
12260 if apparatuses[n].sep ~= "" 12270 if apparatuses[n].sep ~= ""
12261 then 12271 then
12262 table.insert(output, "\\edef\\ekdsep{" .. apparatuses[n].sep .. "}") 12272 table.insert(output, "\\def\\ekdsep{" .. apparatuses[n].sep .. "}")
12263 else 12273 else
12264 end 12274 end
12265 if apparatuses[n].subsep ~= "" 12275 if apparatuses[n].subsep ~= ""
12266 then 12276 then
12267 table.insert(output, "\\edef\\ekdsubsep{" .. apparatuses[n].subsep .. "}") 12277 table.insert(output, "\\def\\ekdsubsep{" .. apparatuses[n].subsep .. "}")
12268 end 12278 end
12269 if apparatuses[n].bhook ~= "" 12279 if apparatuses[n].bhook ~= ""
12270 then 12280 then