aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Alessi <alessi@robertalessi.net>2019-10-20 19:34:29 +0200
committerRobert Alessi <alessi@robertalessi.net>2019-10-20 19:34:29 +0200
commit2945227492d10d2e6e649952b9ede6b135755f27 (patch)
tree94c729dc4a6b42c24bf9504365bd58c52d9d5ed5
parentb99befc35e0559fc70011efce24d319d84e7425c (diff)
downloadekdosis-2945227492d10d2e6e649952b9ede6b135755f27.tar.gz
testing blfootnote
-rw-r--r--ekdosis.dtx84
1 files changed, 63 insertions, 21 deletions
diff --git a/ekdosis.dtx b/ekdosis.dtx
index 4a5a025..7ea82a5 100644
--- a/ekdosis.dtx
+++ b/ekdosis.dtx
@@ -341,7 +341,12 @@ Running "make install" installs the files in the local TeX tree.
341 \else\fi\fi\fi} 341 \else\fi\fi\fi}
342\ExecuteOptionsX{} 342\ExecuteOptionsX{}
343\ProcessOptionsX\relax 343\ProcessOptionsX\relax
344\newcommand{\dontusepackage}[2][]{%
345 \@namedef{ver@#2.sty}{9999/12/31}%
346 \@namedef{opt@#2.sty}{#1}}
347\dontusepackage{etex}
344\RequirePackage{luacode} 348\RequirePackage{luacode}
349\RequirePackage{manyfoot}
345\RequirePackage{paracol} 350\RequirePackage{paracol}
346\RequirePackage{keycommand} 351\RequirePackage{keycommand}
347\RequirePackage{xparse} 352\RequirePackage{xparse}
@@ -482,7 +487,25 @@ idno={}, msName={}, origDate={}][3]{%
482 {\luadirect{ekdosis.appin(\luastringO{#2})}} 487 {\luadirect{ekdosis.appin(\luastringO{#2})}}
483 {\luadirect{ekdosis.appin(\luastringO{#2}, \luastringO{#1})}}% 488 {\luadirect{ekdosis.appin(\luastringO{#2}, \luastringO{#1})}}%
484} 489}
485\def\blfootnote{\gdef\@thefnmark{\relax}\@footnotetext} 490 %\def\blfootnote{\gdef\@thefnmark{\relax}\@footnotetext}
491\def\blfootnote{\gdef\@thefnmark{}\@blfootnotetext}
492\long\def\@blfootnotetext#1{\insert\footins{%
493 \reset@font\footnotesize
494 \interlinepenalty\interfootnotelinepenalty
495 \splittopskip\footnotesep
496 \splitmaxdepth \dp\strutbox \floatingpenalty \@MM
497 \hsize\columnwidth \@parboxrestore
498 \protected@edef\@currentlabel{%
499 \csname p@footnote\endcsname\@thefnmark
500 }%
501 \color@begingroup
502 \@makeblfntext{%
503 \rule\z@\footnotesep\ignorespaces#1\@finalstrut\strutbox}%
504 \color@endgroup}}%
505\newcommand\@makeblfntext[1]{%
506 \parindent 1em%
507 \noindent
508 \hb@xt@0em{\hss\@makefnmark}#1}
486\newif\ifrtl@app 509\newif\ifrtl@app
487\NewDocumentCommand{\SetRTLapp}{}{\rtl@apptrue} 510\NewDocumentCommand{\SetRTLapp}{}{\rtl@apptrue}
488\NewDocumentCommand{\SetLTRapp}{}{\rtl@appfalse} 511\NewDocumentCommand{\SetLTRapp}{}{\rtl@appfalse}
@@ -493,6 +516,10 @@ idno={}, msName={}, origDate={}][3]{%
493\def\ekd@unit@delim{} 516\def\ekd@unit@delim{}
494\NewDocumentCommand{\SetUnitDelimiter}{m}{\def\ekd@unit@delim{#1}} 517\NewDocumentCommand{\SetUnitDelimiter}{m}{\def\ekd@unit@delim{#1}}
495\def\ekd@default@rule{\rule{2truein}{0.5pt}} 518\def\ekd@default@rule{\rule{2truein}{0.5pt}}
519 % \def\ekd@default@rule{\vskip-\baselineskip\mbox{}\newline%
520 % \rule{2truein}{0.5pt}}
521\def\footnoterule{}
522\def\pcol@footnoterule{}
496\NewDocumentCommand{\SetDefaultRule}{m}{% 523\NewDocumentCommand{\SetDefaultRule}{m}{%
497 \def\@tempa{#1} 524 \def\@tempa{#1}
498 \ifx\@tempa\empty\def\ekd@default@rule{\mbox{}}% 525 \ifx\@tempa\empty\def\ekd@default@rule{\mbox{}}%
@@ -501,10 +528,15 @@ idno={}, msName={}, origDate={}][3]{%
501 \fi} 528 \fi}
502\newif\ifsubsq@unit 529\newif\ifsubsq@unit
503\subsq@unittrue 530\subsq@unittrue
531\SetFootnoteHook{\hskip -1.8em}
532\newfootnote{@ekd}
504\def\add@@apparatus{% 533\def\add@@apparatus{%
505 % \blfootnote{\apparatus}%
506 \if@pkg@parnotes\parnotes\else\fi% 534 \if@pkg@parnotes\parnotes\else\fi%
507 \keyparbox[b!]{}{\ifrtl@app\setRL\else\setLR\fi% 535 \bgroup%
536 \ifrtl@app\setRL\fi%
537 \blfootnote{%
538 % \Footnotetext@ekd{\relax}{%
539 % \ifrtl@app\setRL\else\setLR\fi%
508 \if@pkg@parnotes% 540 \if@pkg@parnotes%
509 \if@parnotesroman% 541 \if@parnotesroman%
510 \renewcommand*{\theparnotemark}{\roman{parnotemark}}\else\fi% 542 \renewcommand*{\theparnotemark}{\roman{parnotemark}}\else\fi%
@@ -512,6 +544,15 @@ idno={}, msName={}, origDate={}][3]{%
512 \footnotesize\apparatus\unless\ifekd@mapps\ekd@end@apparatus\fi% 544 \footnotesize\apparatus\unless\ifekd@mapps\ekd@end@apparatus\fi%
513 \if@pkg@parnotes\parnotes\parnotereset\else\fi% 545 \if@pkg@parnotes\parnotes\parnotereset\else\fi%
514 }% 546 }%
547 \egroup%
548 % \keyparbox[b!]{}{\ifrtl@app\setRL\else\setLR\fi%
549 % \if@pkg@parnotes%
550 % \if@parnotesroman%
551 % \renewcommand*{\theparnotemark}{\roman{parnotemark}}\else\fi%
552 % \parnoteclear\else\fi%
553 % \footnotesize\apparatus\unless\ifekd@mapps\ekd@end@apparatus\fi%
554 % \if@pkg@parnotes\parnotes\parnotereset\else\fi%
555 % }%
515 \unless\ifekd@mapps\unconditional@appin{% 556 \unless\ifekd@mapps\unconditional@appin{%
516 \expandafter{\ekd@default@rule}\newline}\fi 557 \expandafter{\ekd@default@rule}\newline}\fi
517} 558}
@@ -664,25 +705,25 @@ idno={}, msName={}, origDate={}][3]{%
664 \luadirect{tex.sprint(ekdosis.getappdelim(\luastringO{\ekdan@type}))}}% 705 \luadirect{tex.sprint(ekdosis.getappdelim(\luastringO{\ekdan@type}))}}%
665 \fi% 706 \fi%
666 \ifekdl@nolem\edef\lem@app{% 707 \ifekdl@nolem\edef\lem@app{%
667 \hskip .75em 708 % \hskip .75em
668 \ifekd@mapps 709 \ifekd@mapps
669 \ifbool{subsq@unit@\ekdan@type}% 710 \ifbool{subsq@unit@\ekdan@type}%
670 {\expandafter\noexpand\ekd@munit@delim}{}% 711 {\ekd@munit@delim}{}%
671 \else% 712 \else%
672 \ifsubsq@unit\unexpanded\expandafter{\ekd@unit@delim}\fi% 713 \ifsubsq@unit\unexpanded\expandafter{\ekd@unit@delim}\fi%
673 \fi% 714 \fi%
674 \current@ref\hskip .25em}% 715 \current@ref}%\hskip .25em}%
675 \else% 716 \else%
676 \ifbool{al@rlmode}{% 717 \ifbool{al@rlmode}{%
677 \edef\lem@app{% 718 \edef\lem@app{%
678 \hskip .75em 719 % \hskip .75em
679 \ifekd@mapps 720 \ifekd@mapps
680 \ifbool{subsq@unit@\ekdan@type}% 721 \ifbool{subsq@unit@\ekdan@type}%
681 {\expandafter\noexpand\ekd@munit@delim}{}% 722 {\ekd@munit@delim}{}%
682 \else% 723 \else%
683 \ifsubsq@unit\unexpanded\expandafter{\ekd@unit@delim}\fi% 724 \ifsubsq@unit\unexpanded\expandafter{\ekd@unit@delim}\fi%
684 \fi% 725 \fi%
685 \current@ref\hskip .25em 726 \current@ref%\hskip .25em
686 \ifdefined\ekdlr@alt% 727 \ifdefined\ekdlr@alt%
687 \ifdefined\ekdlr@post% 728 \ifdefined\ekdlr@post%
688 \space\unexpanded\expandafter{\ekdlr@post}\space\else\fi 729 \space\unexpanded\expandafter{\ekdlr@post}\space\else\fi
@@ -706,14 +747,14 @@ idno={}, msName={}, origDate={}][3]{%
706 }% 747 }%
707 {% 748 {%
708 \edef\lem@app{% 749 \edef\lem@app{%
709 \hskip .75em 750 % \hskip .75em
710 \ifekd@mapps 751 \ifekd@mapps
711 \ifbool{subsq@unit@\ekdan@type}% 752 \ifbool{subsq@unit@\ekdan@type}%
712 {\expandafter\noexpand\ekd@munit@delim}{}% 753 {\ekd@munit@delim}{}%
713 \else% 754 \else%
714 \ifsubsq@unit\unexpanded\expandafter{\ekd@unit@delim}\fi% 755 \ifsubsq@unit\unexpanded\expandafter{\ekd@unit@delim}\fi%
715 \fi% 756 \fi%
716 \current@ref\hskip .25em 757 \current@ref%\hskip .25em
717 \ifdefined\ekdlr@alt% 758 \ifdefined\ekdlr@alt%
718 \ifdefined\ekdlr@pre% 759 \ifdefined\ekdlr@pre%
719 \space\unexpanded\expandafter{\ekdlr@pre}\space\else\fi 760 \space\unexpanded\expandafter{\ekdlr@pre}\space\else\fi
@@ -852,27 +893,27 @@ idno={}, msName={}, origDate={}][3]{%
852 set.}\fi% 893 set.}\fi%
853 \ifbool{al@rlmode}% 894 \ifbool{al@rlmode}%
854 {\edef\note@contents{% 895 {\edef\note@contents{%
855 \hskip .75em 896 % \hskip .75em
856 \ifekd@mapps 897 \ifekd@mapps
857 \ifbool{subsq@unit@\ekdan@type}% 898 \ifbool{subsq@unit@\ekdan@type}%
858 {\expandafter\noexpand\ekd@munit@delim}{}% 899 {\ekd@munit@delim}{}%
859 \else% 900 \else%
860 \ifsubsq@unit\unexpanded\expandafter{\ekd@unit@delim}\fi% 901 \ifsubsq@unit\unexpanded\expandafter{\ekd@unit@delim}\fi%
861 \fi% 902 \fi%
862 \current@ref@arg{\ekdn@labelb}{\ekdn@labele}\hskip .25em 903 \current@ref@arg{\ekdn@labelb}{\ekdn@labele}%\hskip .25em
863 \ifdefined\ekdn@lem% 904 \ifdefined\ekdn@lem%
864 {\textdir TRT\unexpanded\expandafter{\ekdn@lem}}% 905 {\textdir TRT\unexpanded\expandafter{\ekdn@lem}}%
865 \unexpanded\expandafter{\ekdn@sep}\else\fi% 906 \unexpanded\expandafter{\ekdn@sep}\else\fi%
866 {\textdir TRT\unexpanded{#2}}}}% 907 {\textdir TRT\unexpanded{#2}}}}%
867 {\edef\note@contents{% 908 {\edef\note@contents{%
868 \hskip .75em 909 % \hskip .75em
869 \ifekd@mapps 910 \ifekd@mapps
870 \ifbool{subsq@unit@\ekdan@type}% 911 \ifbool{subsq@unit@\ekdan@type}%
871 {\expandafter\noexpand\ekd@munit@delim}{}% 912 {\ekd@munit@delim}{}%
872 \else% 913 \else%
873 \ifsubsq@unit\unexpanded\expandafter{\ekd@unit@delim}\fi% 914 \ifsubsq@unit\unexpanded\expandafter{\ekd@unit@delim}\fi%
874 \fi% 915 \fi%
875 \current@ref@arg{\ekdn@labelb}{\ekdn@labele}\hskip .25em 916 \current@ref@arg{\ekdn@labelb}{\ekdn@labele}%\hskip .25em
876 \ifdefined\ekdn@lem 917 \ifdefined\ekdn@lem
877 \ltx@ifpackageloaded{babel}% 918 \ltx@ifpackageloaded{babel}%
878 {\noexpand\selectlanguage{\languagename}% 919 {\noexpand\selectlanguage{\languagename}%
@@ -1794,6 +1835,7 @@ function ekdosis.appout()
1794 end 1835 end
1795 -- table.insert(output, "END") 1836 -- table.insert(output, "END")
1796 else 1837 else
1838 table.insert(output, "\\vskip -\\baselineskip")
1797 local n = 1 1839 local n = 1
1798 while apparatuses[n] 1840 while apparatuses[n]
1799 do 1841 do
@@ -1810,12 +1852,12 @@ function ekdosis.appout()
1810 end 1852 end
1811 if apparatuses[n].rule == "none" 1853 if apparatuses[n].rule == "none"
1812 then 1854 then
1813 table.insert(output, "\\par\\mbox{}\\newline{}") 1855 table.insert(output, "\\par\\noindent\\mbox{}\\newline{}")
1814 elseif apparatuses[n].rule ~= "" 1856 elseif apparatuses[n].rule ~= ""
1815 then 1857 then
1816 table.insert(output, "\\par\\mbox{}" .. apparatuses[n].rule .. "\\mbox{}\\newline{}") 1858 table.insert(output, "\\par\\noindent\\mbox{}" .. apparatuses[n].rule .. "\\mbox{}\\newline{}")
1817 else 1859 else
1818 table.insert(output, "\\par\\csname ekd@default@rule\\endcsname\\newline{}") 1860 table.insert(output, "\\par\\noindent\\csname ekd@default@rule\\endcsname\\newline{}")
1819 end 1861 end
1820 if apparatuses[n].bhook ~= "" 1862 if apparatuses[n].bhook ~= ""
1821 then 1863 then