diff options
author | Hans Hagen <pragma@wxs.nl> | 2020-09-20 23:34:34 +0200 |
---|---|---|
committer | Context Git Mirror Bot <phg@phi-gamma.net> | 2020-09-20 23:34:34 +0200 |
commit | a0270f13065d116355a953c6f246cbba26289fc2 (patch) | |
tree | e13732abf981208d09516a932839def183c3f7c1 /tex/context/base/mkiv/strc-not.mkvi | |
parent | 1970df23942ba9c944ea62ff51012f4e46a32974 (diff) | |
download | context-a0270f13065d116355a953c6f246cbba26289fc2.tar.gz |
2020-09-20 23:02:00
Diffstat (limited to 'tex/context/base/mkiv/strc-not.mkvi')
-rw-r--r-- | tex/context/base/mkiv/strc-not.mkvi | 61 |
1 files changed, 26 insertions, 35 deletions
diff --git a/tex/context/base/mkiv/strc-not.mkvi b/tex/context/base/mkiv/strc-not.mkvi index b1b119dc1..f29cb38ba 100644 --- a/tex/context/base/mkiv/strc-not.mkvi +++ b/tex/context/base/mkiv/strc-not.mkvi @@ -929,31 +929,6 @@ \letvalue{\??notepenalty\v!verystrict}\notepenaltyverystrict \letvalue{\??notepenalty }\notepenaltytolerant -% \def\strc_notes_set_width -% {\edef\p_width{\noteparameter\c!width}% -% \ifx\p_width\empty -% \setnoteparameter\c!width{\hsize}% -% \fi} - -\setupnotes - [\c!width=\v!auto] - -\def\strc_notes_set_width - {\ifinsidemulticolumns - \setnoteparameter\c!width{\makeupwidth}% - \else - \edef\p_width{\noteparameter\c!width}% - \ifx\p_width\v!auto - \setnoteparameter\c!width{\ifdim\hsize<\makeupwidth\hsize\else\makeupwidth\fi}% - \else\ifx\p_width\empty - \setnoteparameter\c!width{\hsize}% - \fi\fi - \fi} - -\appendtoks - \strc_notes_set_width -\to \everysynchronizenote - %D The following switch can be used to disable limiting the height of the footnote %D area, something that is needed in multi column balancing. Use this switch with %D care. @@ -1216,12 +1191,6 @@ \kern\strutdepth \fi} -\ifdefined\setnotehsize \else - - \unexpanded\def\setnotehsize{\hsize\noteparameter\c!width\relax} % can be overloaded - -\fi - %D The formatting depends on the width of the table, so we have to set \type {n} to %D zero. %D @@ -1407,13 +1376,32 @@ % \setfalse\inhibitmargindata % \to \everyinsidenoteinsert +\setupnotes + [\c!width=\v!auto] + +\unexpanded\def\setnotehsize + {\ifinsidemulticolumns + \setnoteparameter\c!width{\makeupwidth}% + \else + \edef\p_width{\noteparameter\c!width}% + \ifx\p_width\v!auto + % \ifinsidecolumns + \setnoteparameter\c!width{\ifdim\hsize<\makeupwidth\hsize\else\makeupwidth\fi}% + % \else + % \setnoteparameter\c!width{\makeupwidth}% + % \fi + \else\ifx\p_width\empty + \setnoteparameter\c!width{\hsize}% + \fi\fi + \fi + \hsize\noteparameter\c!width\relax} + \appendtoks % only needed when columns (could be three \set...) + \setnotehsize \setsimplecolumnshsize[\c!distance=\noteparameter\c!columndistance,\c!n=\noteparameter\c!n,\c!width=\noteparameter\c!width]% \to \everyinsidenoteinsert -% not: \appendtoks \setnotehsize \to \everyinsidenoteinsert (spoils columns) - %D Normally footnotes are saved as inserts that are called upon as soon as the %D pagebody is constructed. The footnote insertion routine looks just like the %D \PLAIN\ \TEX\ one, except that we check for the end note state. @@ -1502,9 +1490,12 @@ \obeydepth} % (a) added , since split footnotes will not align properly \def\strc_notes_flush_inserts_columns - {\startsimplecolumns[\c!distance=\noteparameter\c!columndistance,\c!n=\noteparameter\c!n,\c!width=\noteparameter\c!width]% + {\begingroup + \setnotehsize % probably still not ok for columns + \startsimplecolumns[\c!distance=\noteparameter\c!columndistance,\c!n=\noteparameter\c!n,\c!width=\noteparameter\c!width]% \strc_notes_flush_global - \stopsimplecolumns} + \stopsimplecolumns + \endgroup} % idea: tag with attr and then just flush them again |