diff options
author | Robert Alessi <alessi@robertalessi.net> | 2020-07-16 10:21:22 +0200 |
---|---|---|
committer | Robert Alessi <alessi@robertalessi.net> | 2020-07-16 10:21:22 +0200 |
commit | e76ae3e1038bfba0c61ef78857f7594b66afb1f1 (patch) | |
tree | 0b7854f981271906d148fa0299b6488325752520 | |
parent | 61b96868e1b00ffb825cc3b9799976289c1fc81b (diff) | |
download | ekdosis-e76ae3e1038bfba0c61ef78857f7594b66afb1f1.tar.gz |
added \SetLineation
-rw-r--r-- | Makefile | 2 | ||||
-rw-r--r-- | ekdosis.dtx | 29 |
2 files changed, 26 insertions, 5 deletions
@@ -31,7 +31,7 @@ $(NAME).pdf: $(NAME).dtx | |||
31 | mv TMP/*.pdf samples/ | 31 | mv TMP/*.pdf samples/ |
32 | mv $(texsamplesout)-tei.xml samples/ | 32 | mv $(texsamplesout)-tei.xml samples/ |
33 | @ echo "Build the documentation of $(NAME)..." | 33 | @ echo "Build the documentation of $(NAME)..." |
34 | $(CMP) --shell-escape -recorder -interaction=batchmode $(NAME).dtx >/dev/null | 34 | $(CMP) --shell-escape --recorder --interaction=batchmode $(NAME).dtx >/dev/null |
35 | biber $(NAME) >/dev/null | 35 | biber $(NAME) >/dev/null |
36 | if [ -f $(NAME).glo ]; then makeindex -q -s gglo.ist -o $(NAME).gls $(NAME).glo; fi | 36 | if [ -f $(NAME).glo ]; then makeindex -q -s gglo.ist -o $(NAME).gls $(NAME).glo; fi |
37 | if [ -f $(NAME).idx ]; then makeindex -q -s gind.ist -o $(NAME).ind $(NAME).idx; fi | 37 | if [ -f $(NAME).idx ]; then makeindex -q -s gind.ist -o $(NAME).ind $(NAME).idx; fi |
diff --git a/ekdosis.dtx b/ekdosis.dtx index e34dc71..f4204bc 100644 --- a/ekdosis.dtx +++ b/ekdosis.dtx | |||
@@ -2391,6 +2391,7 @@ texts=latin[xml:lang="la"]+\textcolor{red}{;}+ | |||
2391 | \RequirePackage{refcount} | 2391 | \RequirePackage{refcount} |
2392 | \RequirePackage[user,abspage]{zref} | 2392 | \RequirePackage[user,abspage]{zref} |
2393 | \RequirePackage{ltxcmds} | 2393 | \RequirePackage{ltxcmds} |
2394 | \RequirePackage{atbegshi} | ||
2394 | \if@pkg@parnotes | 2395 | \if@pkg@parnotes |
2395 | \RequirePackage{parnotes} | 2396 | \RequirePackage{parnotes} |
2396 | \fi | 2397 | \fi |
@@ -2735,7 +2736,7 @@ texts=latin[xml:lang="la"]+\textcolor{red}{;}+ | |||
2735 | } | 2736 | } |
2736 | % \end{macrocode} | 2737 | % \end{macrocode} |
2737 | % \begin{macro}{\SetApparatus} | 2738 | % \begin{macro}{\SetApparatus} |
2738 | % All settings can also be defined as|key-value| options within the | 2739 | % All settings can also be defined as |key-value| options within the |
2739 | % argument of \cs{SetApparatus}:--- | 2740 | % argument of \cs{SetApparatus}:--- |
2740 | % \begin{macrocode} | 2741 | % \begin{macrocode} |
2741 | \NewDocumentCommand{\SetApparatus}{m}{ | 2742 | \NewDocumentCommand{\SetApparatus}{m}{ |
@@ -2882,7 +2883,7 @@ texts=latin[xml:lang="la"]+\textcolor{red}{;}+ | |||
2882 | \fi% | 2883 | \fi% |
2883 | } | 2884 | } |
2884 | % \end{macrocode} | 2885 | % \end{macrocode} |
2885 | % Before inserting any new entry, \cs{add@apparatus} is called | 2886 | % Before inserting any new entry, \cs{add@apparatus} calls |
2886 | % \cs{test@apparatus} to decide whether a new apparatus block must be | 2887 | % \cs{test@apparatus} to decide whether a new apparatus block must be |
2887 | % created on a given page. | 2888 | % created on a given page. |
2888 | % \begin{macrocode} | 2889 | % \begin{macrocode} |
@@ -3452,6 +3453,27 @@ texts=latin[xml:lang="la"]+\textcolor{red}{;}+ | |||
3452 | \luadirect{ekdosis.storecurcol(\luastring{\thecolumn})}% | 3453 | \luadirect{ekdosis.storecurcol(\luastring{\thecolumn})}% |
3453 | } | 3454 | } |
3454 | % \end{macrocode} | 3455 | % \end{macrocode} |
3456 | % \paragraph{Lineation settings} | ||
3457 | % | ||
3458 | % \begin{macrocode} | ||
3459 | \newif\ifekd@pagelineation | ||
3460 | \NewDocumentCommand{\ekdatbegshihook}{}{% | ||
3461 | \ifekd@pagelineation\resetlinenumber\fi | ||
3462 | } | ||
3463 | \AtBeginShipout{\ekdatbegshihook} | ||
3464 | \ekvdefinekeys{ekd@lineation}{ | ||
3465 | choice lineation = {page = \ekd@pagelineationtrue, | ||
3466 | document = \ekd@pagelineationfalse}, | ||
3467 | unknown-choice lineation = \PackageError{ekdosis}{unknown | ||
3468 | lineation=#1}{`lineation' must be either `page' or `document'.}, | ||
3469 | code modulonum = \chardef\c@linenumbermodulo#1\relax, | ||
3470 | noval modulo = \modulolinenumbers | ||
3471 | } | ||
3472 | \NewDocumentCommand{\SetLineation}{m}{ | ||
3473 | \ekvset{ekd@lineation}{#1} | ||
3474 | } | ||
3475 | % \end{macrocode} | ||
3476 | % | ||
3455 | % Start and stop |ekdosis|: | 3477 | % Start and stop |ekdosis|: |
3456 | % \begin{macrocode} | 3478 | % \begin{macrocode} |
3457 | \NewDocumentCommand{\EkdosisOn}{}{% | 3479 | \NewDocumentCommand{\EkdosisOn}{}{% |
@@ -3487,12 +3509,11 @@ texts=latin[xml:lang="la"]+\textcolor{red}{;}+ | |||
3487 | \luadirect{ekdosis.exporttei(\luastringN{\par #1\par })}\fi} | 3509 | \luadirect{ekdosis.exporttei(\luastringN{\par #1\par })}\fi} |
3488 | % \end{macrocode} | 3510 | % \end{macrocode} |
3489 | % \end{environment} | 3511 | % \end{environment} |
3490 | % \paragraph{Alignment} What follows isto arrange texts in parallel | 3512 | % \paragraph{Alignment} What follows is to arrange texts in parallel |
3491 | % columns either on single pages or on facing pages. | 3513 | % columns either on single pages or on facing pages. |
3492 | % | 3514 | % |
3493 | % Define keys to be used by the \env{alignment} environment:--- | 3515 | % Define keys to be used by the \env{alignment} environment:--- |
3494 | % \begin{macrocode} | 3516 | % \begin{macrocode} |
3495 | \newif\ifekd@pagelineation | ||
3496 | \ekvdefinekeys{ekd@align}{ | 3517 | \ekvdefinekeys{ekd@align}{ |
3497 | store tcols = \tcols@num, | 3518 | store tcols = \tcols@num, |
3498 | store lcols = \lcols@num, | 3519 | store lcols = \lcols@num, |