summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/koma-script/scrlayer-notecolumn.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/koma-script/scrlayer-notecolumn.sty')
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/scrlayer-notecolumn.sty1635
1 files changed, 759 insertions, 876 deletions
diff --git a/Master/texmf-dist/tex/latex/koma-script/scrlayer-notecolumn.sty b/Master/texmf-dist/tex/latex/koma-script/scrlayer-notecolumn.sty
index 1dca8bd43c4..8aa7397c570 100644
--- a/Master/texmf-dist/tex/latex/koma-script/scrlayer-notecolumn.sty
+++ b/Master/texmf-dist/tex/latex/koma-script/scrlayer-notecolumn.sty
@@ -46,14 +46,14 @@
%% find a complete unmodified copy of LaTeX2e at
%% <http://mirror.ctan.org/tex-archive/macros/latex/base/>.
%%
-%%% From File: $Id: scrlayer-notecolumn.dtx 3426 2019-12-02 09:15:20Z kohm $
+%%% From File: $Id: scrlayer-notecolumn.dtx 3533 2020-09-11 13:32:10Z kohm $
%%% (run: identify)
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
\ProvidesPackage{scrlayer-notecolumn}[%
- 2019/12/02 v0.3.3426 KOMA-Script
+ 2020/09/11 v0.3.3533 KOMA-Script
package
(end user interface for scrlayer)]
-%%% From File: $Id: scrlayer.dtx 3411 2019-11-28 09:11:27Z kohm $
+%%% From File: $Id: scrlayer.dtx 3533 2020-09-11 13:32:10Z kohm $
%%% (run: init)
\RequirePackage{scrlayer}
\scr@ifundefinedorrelax{scrlayer@AtEndOfPackage}{%
@@ -64,8 +64,7 @@
\fi
}
\let\scrlayer@AtEndOfPackage\AtEndOfPackage
-\scrlayerInitInterface
-%%% From File: $Id: scrlayer-notecolumn.dtx 3426 2019-12-02 09:15:20Z kohm $
+%%% From File: $Id: scrlayer-notecolumn.dtx 3533 2020-09-11 13:32:10Z kohm $
%%% (run: init)
\@tempswatrue
\scr@ifundefinedorrelax{pdfsavepos}{%
@@ -98,7 +97,7 @@
}%
\batchmode\csname @@end\endcsname\end
\fi
-%%% From File: $Id: scrlayer.dtx 3411 2019-11-28 09:11:27Z kohm $
+%%% From File: $Id: scrlayer.dtx 3533 2020-09-11 13:32:10Z kohm $
%%% (run: options)
\KOMA@key{markcase}{%
\begingroup
@@ -237,16 +236,16 @@
\KOMA@kav@replacebool{.scrlayer.sty}{forceoverwrite}{scrlayer@forceoverwrite}%
}
\KOMA@key{autoremoveinterfaces}[true]{%
+ \scrlayer@report@deprecated{#1}{autoremoveinterface}%
\KOMA@set@ifkey{autoremoveinterfaces}{scrlayer@autoremoveinterfaces}{#1}%
\KOMA@kav@replacebool{.scrlayer.sty}{autoremoveinterfaces}
{scrlayer@autoremoveinterfaces}%
}
-%%% From File: $Id: scrlayer-notecolumn.dtx 3426 2019-12-02 09:15:20Z kohm $
+%%% From File: $Id: scrlayer-notecolumn.dtx 3533 2020-09-11 13:32:10Z kohm $
%%% (run: options)
-\KOMA@ifkey{autoclearnotecolumns}{slnc@autoclearnotecolumns}\slnc@autoclearnotecolumnstrue
-\scrlayer@AddCsToInterface{KV@KOMA.\@currname.\@currext @autoclearnotecolumns}
-\scrlayer@AddCsToInterface{KV@KOMA.\@currname.\@currext @autoclearnotecolumns@default}
-%%% From File: $Id: scrlayer.dtx 3411 2019-11-28 09:11:27Z kohm $
+\KOMA@ifkey{autoclearnotecolumns}{slnc@autoclearnotecolumns}
+\slnc@autoclearnotecolumnstrue
+%%% From File: $Id: scrlayer.dtx 3533 2020-09-11 13:32:10Z kohm $
%%% (run: body)
\KOMAProcessOptions\relax
\expandafter\let
@@ -318,153 +317,120 @@
\expandafter\let
\csname KV@KOMA.\@currname.\@currext @autoremoveinterfaces@default\endcsname
\relax
-%%% From File: $Id: scrlayer-notecolumn.dtx 3426 2019-12-02 09:15:20Z kohm $
+%%% From File: $Id: scrlayer-notecolumn.dtx 3533 2020-09-11 13:32:10Z kohm $
%%% (run: body)
-\scrlayerAddToInterface\DeclareNoteColumn{%
- \newcommand*{\DeclareNoteColumn}[2][]{%
- \@ifundefined{slnc@#2@box}{%
- \expandafter\newsavebox\csname slnc@#2@box\endcsname
- \scrlayerOnAutoRemoveInterface[scrlayer-notecolumn.sty]{%
- \expandafter\let\csname slnc@#2@box\endcsname\relax
- }%
- }{}%
- \@ifundefined{slnc@#2@unprocessed}{%
- \@namedef{slnc@#2@unprocessed}{}%
- \scrlayerOnAutoRemoveInterface[scrlayer-notecolumn.sty]{%
- \expandafter\let\csname slnc@#2@unprocessed\endcsname\relax
- }%
- }{}%
- \@ifundefined{slnc@#2@pos}{%
- \scrlayerOnAutoRemoveInterface[scrlayer-notecolumn.sty]{%
- \expandafter\let\csname slnc@#2@pos\endcsname\relax
- }%
- }{}%
- \@ifundefined{slnc@#2@width}{%
- \scrlayerOnAutoRemoveInterface[scrlayer-notecolumn.sty]{%
- \expandafter\let\csname slnc@#2@width\endcsname\relax
- }%
- }{}%
- \@ifundefined{slnc@#2@colorstack}{%
- \scr@ifundefinedorrelax{pdfcolorstackinit}{%
- \scr@ifundefinedorrelax{pdffeedback}{}{%
- \expandafter\chardef\csname slnc@#2@colorstack\endcsname=
- \pdffeedback colorstackinit direct {\slnc@initial@black}%
- \scrlayerOnAutoRemoveInterface[scrlayer-notecolumn.sty]{%
- \expandafter\let\csname slnc@#2@colorstack\endcsname\relax
- }%
- }%
- }{%
+\newcommand*{\DeclareNoteColumn}[2][]{%
+ \@ifundefined{slnc@#2@box}{%
+ \expandafter\newsavebox\csname slnc@#2@box\endcsname
+ }{}%
+ \@ifundefined{slnc@#2@unprocessed}{%
+ \@namedef{slnc@#2@unprocessed}{}%
+ }{}%
+ \@ifundefined{slnc@#2@colorstack}{%
+ \scr@ifundefinedorrelax{pdfcolorstackinit}{%
+ \scr@ifundefinedorrelax{pdffeedback}{}{%
\expandafter\chardef\csname slnc@#2@colorstack\endcsname=
- \pdfcolorstackinit direct {\slnc@initial@black}%
- \scrlayerOnAutoRemoveInterface[scrlayer-notecolumn.sty]{%
- \expandafter\let\csname slnc@#2@colorstack\endcsname\relax
- }%
- }%
- }{}%
- \@ifundefined{scr@fnt@notecolumn.#2}{%
- \@ifundefined{@notecolumn.#2font}{%
- \scrlayerOnAutoRemoveInterface[scrlayer-notecolumn.sty]{%
- \expandafter\let\csname @notecolumn.#2font\endcsname\relax
- }%
- }{%
- \PackageInfo{scrlayer-notecolumn}{using already defined
- macro\MessageBreak
- `\expandafter\string\csname @notecolumn.#2font\endcsname' for font
- element\MessageBreak
- `notecolumn.#2'%
- }%
- }%
- \newkomafont{notecolumn.#2}{}%
- \scrlayerOnAutoRemoveInterface[scrlayer-notecolumn.sty]{%
- \expandafter\let\csname scr@fnt@notecolumn.#2\endcsname\relax
+ \pdffeedback colorstackinit direct {\slnc@initial@black}%
}%
}{%
- \PackageInfo{scrlayer-notecolumn}{using already defined font
+ \expandafter\chardef\csname slnc@#2@colorstack\endcsname=
+ \pdfcolorstackinit direct {\slnc@initial@black}%
+ }%
+ }{}%
+ \@ifundefined{scr@fnt@notecolumn.#2}{%
+ \@ifundefined{@notecolumn.#2font}{}{%
+ \PackageInfo{scrlayer-notecolumn}{using already defined
+ macro\MessageBreak
+ `\expandafter\string\csname @notecolumn.#2font\endcsname' for font
element\MessageBreak
`notecolumn.#2'%
}%
}%
- \newcommand*{\slnc@name}{}%
- \edef\slnc@name{#2}%
- \FamilyExecuteOptions[.definenotecolumn]{KOMAarg}{marginpar,#1}%
- \let\slnc@name\relax
- \DeclareLayer[%
- foreground,%
- align=tl,%
- voffset=1in+\topmargin+\headheight+\headsep,%
- height=\dimexpr\textheight+\topskip\relax,%
- hoffset=\csname slnc@#2@pos\endcsname,%
- width=\csname slnc@#2@width\endcsname,%
- contents=\slnc@processnotes{#2}%
- ]{notecolumn.#2}
- \IfLayerAtPageStyle{@everystyle@}{notecolumn.#2}{}{%
- \AddLayersToPageStyle{@everystyle@}{notecolumn.#2}%
- }%
- \scrlayerOnAutoRemoveInterface[scrlayer-notecolumn.sty]{%
- \RemoveLayersFromPageStyle{@everystyle@}{notecolumn.#2}%
- \DestroyLayer{notecolumn.#2}%
+ \newkomafont{notecolumn.#2}{}%
+ }{%
+ \PackageInfo{scrlayer-notecolumn}{using already defined font
+ element\MessageBreak
+ `notecolumn.#2'%
}%
- \@cons\slnc@processnotecolumns{{#2}}%
- }%
-}
-\scrlayerAddToInterface\slnc@initial@black{%
- \newcommand*{\slnc@initial@black}{0 g 0 G}%
- \AfterPackage*{color}{%
- \let\slnc@initial@black\current@color
- \AtBeginDocument{\let\slnc@initial@black\default@color}%
}%
- \AfterPackage*{xcolor}{%
- \let\slnc@initial@black\current@color
- \AtBeginDocument{\let\slnc@initial@black\default@color}%
+ \newcommand*{\slnc@name}{}%
+ \edef\slnc@name{#2}%
+ \FamilyExecuteOptions[.definenotecolumn]{KOMAarg}{marginpar,#1}%
+ \let\slnc@name\relax
+ \DeclareLayer[%
+ foreground,%
+ align=tl,%
+ voffset=1in+\topmargin+\headheight+\headsep,%
+ height=\dimexpr\textheight+\topskip\relax,%
+ hoffset=\csname slnc@#2@pos\endcsname,%
+ width=\csname slnc@#2@width\endcsname,%
+ contents=\slnc@processnotes{#2}%
+ ]{notecolumn.#2}
+ \IfLayerAtPageStyle{@everystyle@}{notecolumn.#2}{}{%
+ \AddLayersToPageStyle{@everystyle@}{notecolumn.#2}%
}%
+ \@cons\slnc@processnotecolumns{{#2}}%
}
-\scrlayerAddToInterface\slnc@processnotecolumns{%
- \newcommand*{\slnc@processnotecolumns}{}%
-}
-\scrlayerAddToInterface\slnc@testforpagestylewarning{%
- \newcommand*{\slnc@testforpagestylewarning}{%
- \IfLayerPageStyleExists{\currentpagestyle}{}{%
- \PackageWarning{scrlayer-notecolumn}{%
- output of note columns delayed,\MessageBreak
- because with `\currentpagestyle'\MessageBreak
- a page style has been selected, that\MessageBreak
- isn't a layer page style,%
- }%
+\newcommand*{\slnc@initial@black}{0 g 0 G}%
+\AfterPackage*{color}{%
+ \let\slnc@initial@black\current@color
+ \AtBeginDocument{\let\slnc@initial@black\default@color}%
+}%
+\AfterPackage*{xcolor}{%
+ \let\slnc@initial@black\current@color
+ \AtBeginDocument{\let\slnc@initial@black\default@color}%
+}%
+\newcommand*{\slnc@processnotecolumns}{}%
+\newcommand*{\slnc@testforpagestylewarning}{%
+ \IfLayerPageStyleExists{\currentpagestyle}{}{%
+ \PackageWarning{scrlayer-notecolumn}{%
+ output of note columns delayed,\MessageBreak
+ because with `\currentpagestyle'\MessageBreak
+ a page style has been selected, that\MessageBreak
+ isn't a layer page style,%
}%
}%
-}
+}%
\AfterSelectAnyPageStyle{\slnc@testforpagestylewarning}
\DefineFamilyMember[.definenotecolumn]{KOMAarg}
\DefineFamilyKey[.definenotecolumn]{KOMAarg}{position}{%
\@namedef{slnc@\slnc@name @pos}{\dimexpr #1\relax}%
\FamilyKeyStateProcessed
}
-\scrlayer@AddCsToInterface{KV@KOMAarg.definenotecolumn@position}
-\scrlayer@AddCsToInterface{KV@KOMAarg.definenotecolumn@position@default}
\DefineFamilyKey[.definenotecolumn]{KOMAarg}{width}{%
\@namedef{slnc@\slnc@name @width}{\dimexpr #1\relax}%
\FamilyKeyStateProcessed
}
-\scrlayer@AddCsToInterface{KV@KOMAarg.definenotecolumn@width}
-\scrlayer@AddCsToInterface{KV@KOMAarg.definenotecolumn@width@default}
\DefineFamilyKey[.definenotecolumn]{KOMAarg}{font}{%
\setkomafont{notecolumn.\slnc@name}{#1}%
\FamilyKeyStateProcessed
}
-\scrlayer@AddCsToInterface{KV@KOMAarg.definenotecolumn@font}
-\scrlayer@AddCsToInterface{KV@KOMAarg.definenotecolumn@font@default}
\DefineFamilyKey[.definenotecolumn]{KOMAarg}{marginpar}[\relax]{%
\FamilyKeyStateProcessed
\scrlayer@testunexpectedarg{marginpar}{#1}%
\edef\reserved@a{\noexpand\slnc@defpos{\slnc@name}}\reserved@a
\@namedef{slnc@\slnc@name @width}{\marginparwidth}%
}
-\scrlayer@AddCsToInterface{KV@KOMAarg.definenotecolumn@marginpar}
-\scrlayer@AddCsToInterface{KV@KOMAarg.definenotecolumn@marginpar@default}
-\scrlayerAddToInterface\slnc@defpos{%
- \newcommand*\slnc@defpos[1]{%
- \@namedef{slnc@#1@pos}{%
- \ifodd\value{page}
+\newcommand*\slnc@defpos[1]{%
+ \@namedef{slnc@#1@pos}{%
+ \ifodd\value{page}
+ \if@reversemargin
+ \dimexpr \oddsidemargin+1in
+ -\marginparsep-\csname slnc@#1@width\endcsname\relax
+ \else
+ \dimexpr \oddsidemargin+1in
+ +\textwidth+\marginparsep\relax
+ \fi
+ \else
+ \if@twoside
+ \if@reversemargin
+ \dimexpr \evensidemargin+1in
+ +\textwidth+\marginparsep\relax
+ \else
+ \dimexpr \evensidemargin+1in
+ -\marginparsep-\csname slnc@#1@width\endcsname\relax
+ \fi
+ \else
\if@reversemargin
\dimexpr \oddsidemargin+1in
-\marginparsep-\csname slnc@#1@width\endcsname\relax
@@ -472,26 +438,8 @@
\dimexpr \oddsidemargin+1in
+\textwidth+\marginparsep\relax
\fi
- \else
- \if@twoside
- \if@reversemargin
- \dimexpr \evensidemargin+1in
- +\textwidth+\marginparsep\relax
- \else
- \dimexpr \evensidemargin+1in
- -\marginparsep-\csname slnc@#1@width\endcsname\relax
- \fi
- \else
- \if@reversemargin
- \dimexpr \oddsidemargin+1in
- -\marginparsep-\csname slnc@#1@width\endcsname\relax
- \else
- \dimexpr \oddsidemargin+1in
- +\textwidth+\marginparsep\relax
- \fi
- \fi
\fi
- }%
+ \fi
}%
}%
\DefineFamilyKey[.definenotecolumn]{KOMAarg}{normalmarginpar}[\relax]{%
@@ -500,24 +448,20 @@
\edef\reserved@a{\noexpand\slnc@defnormalpos{\slnc@name}}\reserved@a
\@namedef{slnc@\slnc@name @width}{\marginparwidth}%
}
-\scrlayer@AddCsToInterface{KV@KOMAarg.definenotecolumn@normalmarginpar}
-\scrlayer@AddCsToInterface{KV@KOMAarg.definenotecolumn@normalmarginpar@default}
-\scrlayerAddToInterface\slnc@defnormalpos{%
- \newcommand*\slnc@defnormalpos[1]{%
- \@namedef{slnc@#1@pos}{%
- \ifodd\value{page}
+\newcommand*\slnc@defnormalpos[1]{%
+ \@namedef{slnc@#1@pos}{%
+ \ifodd\value{page}
+ \dimexpr \oddsidemargin+1in
+ +\textwidth+\marginparsep\relax
+ \else
+ \if@twoside
+ \dimexpr \evensidemargin+1in
+ -\marginparsep-\csname slnc@#1@width\endcsname\relax
+ \else
\dimexpr \oddsidemargin+1in
+\textwidth+\marginparsep\relax
- \else
- \if@twoside
- \dimexpr \evensidemargin+1in
- -\marginparsep-\csname slnc@#1@width\endcsname\relax
- \else
- \dimexpr \oddsidemargin+1in
- +\textwidth+\marginparsep\relax
- \fi
\fi
- }%
+ \fi
}%
}%
\DefineFamilyKey[.definenotecolumn]{KOMAarg}{reversemarginpar}[\relax]{%
@@ -526,88 +470,74 @@
\edef\reserved@a{\noexpand\slnc@defreversepos{\slnc@name}}\reserved@a
\@namedef{slnc@\slnc@name @width}{\marginparwidth}%
}
-\scrlayer@AddCsToInterface{KV@KOMAarg.definenotecolumn@reversemarginpar}
-\scrlayer@AddCsToInterface{KV@KOMAarg.definenotecolumn@reversemarginpar@default}
-\scrlayerAddToInterface\slnc@defreversepos{%
- \newcommand*\slnc@defreversepos[1]{%
- \@namedef{slnc@#1@pos}{%
- \ifodd\value{page}
+\newcommand*\slnc@defreversepos[1]{%
+ \@namedef{slnc@#1@pos}{%
+ \ifodd\value{page}
+ \dimexpr \oddsidemargin+1in
+ -\marginparsep-\csname slnc@#1@width\endcsname\relax
+ \else
+ \if@twoside
+ \dimexpr \evensidemargin+1in
+ +\textwidth+\marginparsep\relax
+ \else
\dimexpr \oddsidemargin+1in
-\marginparsep-\csname slnc@#1@width\endcsname\relax
- \else
- \if@twoside
- \dimexpr \evensidemargin+1in
- +\textwidth+\marginparsep\relax
- \else
- \dimexpr \oddsidemargin+1in
- -\marginparsep-\csname slnc@#1@width\endcsname\relax
- \fi
\fi
- }%
+ \fi
}%
}%
-\scrlayerAddToInterface\DeclareNewNoteColumn{%
- \newcommand*{\DeclareNewNoteColumn}[2][]{%
- \scr@ifundefinedorrelax{slnc@#2@box}{}{%
- \PackageError{scrlayer-notecolumn}{note column `#2' already defined}{%
- You may declare only note columns, that haven't been declared
- previously using\MessageBreak
- \string\DeclareNewNoteColumn. See also the alternatives
- \string\RedeclareNoteColumn,\MessageBreak
- \string\ProvideNoteColumn, and \string\DeclareNoteColumn.\MessageBreak
- Nevertheless, if you'll continue, declaration will be done.%
- }%
- }%
- \DeclareNoteColumn[{#1}]{#2}%
- }%
-}
-\scrlayerAddToInterface\ProvideNoteColumn{%
- \newcommand*{\ProvideNoteColumn}[2][]{%
- \scr@ifundefinedorrelax{slnc@#2@box}{}{%
- \PackageInfo{scrlayer-notecolumn}{\string\ProvideNoteColumn{#2}
- ignored,\MessageBreak
- because of already defined\MessageBreak
- not column}%
- }{%
- \DeclareNoteColumn[{#1}]{#2}%
+\newcommand*{\DeclareNewNoteColumn}[2][]{%
+ \scr@ifundefinedorrelax{slnc@#2@box}{}{%
+ \PackageError{scrlayer-notecolumn}{note column `#2' already defined}{%
+ You may declare only note columns, that haven't been declared
+ previously using\MessageBreak
+ \string\DeclareNewNoteColumn. See also the alternatives
+ \string\RedeclareNoteColumn,\MessageBreak
+ \string\ProvideNoteColumn, and \string\DeclareNoteColumn.\MessageBreak
+ Nevertheless, if you'll continue, declaration will be done.%
}%
}%
-}
-\scrlayerAddToInterface\RedeclareNoteColumn{%
- \newcommand*{\RedeclareNoteColumn}[2][]{%
- \scr@ifundefinedorrelax{slnc@#2@box}{%
- \PackageError{scrlayer-notecolumn}{note column `#2' undefined}{%
- You may declare only note columns, that have been declared
- previously using\MessageBreak
- \string\RedeclareNoteColumn. See also the alternatives
- \string\DeclareNewNoteColumn,\MessageBreak
- \string\ProvideNoteColumn, and \string\DeclareNoteColumn.\MessageBreak
- Nevertheless, if you'll continue, declaration will be done.%
- }%
- }{}%
+ \DeclareNoteColumn[{#1}]{#2}%
+}%
+\newcommand*{\ProvideNoteColumn}[2][]{%
+ \scr@ifundefinedorrelax{slnc@#2@box}{}{%
+ \PackageInfo{scrlayer-notecolumn}{\string\ProvideNoteColumn{#2}
+ ignored,\MessageBreak
+ because of already defined\MessageBreak
+ not column}%
+ }{%
\DeclareNoteColumn[{#1}]{#2}%
}%
-}
-\scrlayerAddToInterface\tf@slnc{%
- \newwrite\tf@slnc
- \AtBeginDocument{%
- \if@filesw
- \immediate\write\@auxout{%
- \noexpand\csname slnc@initwrite\noexpand\endcsname
- }%
- \fi
- }%
- \AtEndDocument{\let\slnc@initwrite\slnc@openwrite}%
-}
-\scrlayerAddToInterface\slnc@initwrite{}%
-\scrlayerAddToInterface\slnc@openwrite{%
- \newcommand*{\slnc@openwrite}{%
- \immediate\closein\slnc@file
- \PackageInfo{scrlayer-notecolumn}{%
- Opening `\jobname.slnc'\MessageBreak
- for writing}%
- \immediate\openout\tf@slnc\jobname.slnc
- }%
+}%
+\newcommand*{\RedeclareNoteColumn}[2][]{%
+ \scr@ifundefinedorrelax{slnc@#2@box}{%
+ \PackageError{scrlayer-notecolumn}{note column `#2' undefined}{%
+ You may declare only note columns, that have been declared
+ previously using\MessageBreak
+ \string\RedeclareNoteColumn. See also the alternatives
+ \string\DeclareNewNoteColumn,\MessageBreak
+ \string\ProvideNoteColumn, and \string\DeclareNoteColumn.\MessageBreak
+ Nevertheless, if you'll continue, declaration will be done.%
+ }%
+ }{}%
+ \DeclareNoteColumn[{#1}]{#2}%
+}%
+\newwrite\tf@slnc
+\AtBeginDocument{%
+ \if@filesw
+ \immediate\write\@auxout{%
+ \noexpand\csname slnc@initwrite\noexpand\endcsname
+ }%
+ \fi
+}%
+\AtEndDocument{\let\slnc@initwrite\slnc@openwrite}%
+\newcommand*{\slnc@initwrite}{}%
+\newcommand*{\slnc@openwrite}{%
+ \immediate\closein\slnc@file
+ \PackageInfo{scrlayer-notecolumn}{%
+ Opening `\jobname.slnc'\MessageBreak
+ for writing}%
+ \immediate\openout\tf@slnc\jobname.slnc
}
\AfterReadingMainAux{%
\immediate\closeout\tf@slnc
@@ -653,258 +583,243 @@
\fi
\endgroup
}
-\scrlayerAddToInterface\slnc@unexpanded{%
- \let\slnc@unexpanded\detokenize
-}
-\scrlayerAddToInterface\makenote{%
- \newcommand*{\makenote}{%
- \kernel@ifstar{\let\slnc@unexpanded\detokenize\slnc@makenote}%
- {\let\slnc@unexpanded\@firstofone\slnc@makenote}%
- }%
-}
-\scrlayerAddToInterface\slnc@makenote{%
- \newcommand{\slnc@makenote}[2][marginpar]{%
- \@bsphack
- \scr@savepos
- \addtocontents{slnc}{%
- \string\slnc@note{#1}%
- {\noexpand\number\value{slncpage}}%
- {\noexpand\number\scr@lastypos}%
- {\slnc@unexpanded{#2}}%
- }%
- \@esphack
+\newcommand*{\slnc@unexpanded}{}
+\let\slnc@unexpanded\detokenize
+\newcommand*{\makenote}{%
+ \kernel@ifstar{\let\slnc@unexpanded\detokenize\slnc@makenote}%
+ {\let\slnc@unexpanded\@firstofone\slnc@makenote}%
+}%
+\newcommand{\slnc@makenote}[2][marginpar]{%
+ \@bsphack
+ \scr@savepos
+ \addtocontents{slnc}{%
+ \string\slnc@note{#1}%
+ {\noexpand\number\value{slncpage}}%
+ {\noexpand\number\scr@lastypos}%
+ {\slnc@unexpanded{#2}}%
}%
-}
+ \@esphack
+}%
\@ifundefined{c@slncpage}{%
\newcounter{slncpage}%
\AddToLayerPageStyleOptions{@everystyle@}{%
onbackground=\stepcounter{slncpage}%
}%
}{}
-\scrlayerAddToInterface\slnc@processnotes{%
- \newcommand*{\slnc@processnotes}[1]{%
- \begingroup
- \slnc@readnotes{\value{slncpage}}%
- \expandafter\let\expandafter\reserved@a
- \csname slnc@#1@unprocessed\endcsname
- \expandafter\global
- \expandafter\let\csname slnc@#1@unprocessed\endcsname\@empty
- \def\slnc@notesyncfonttest##1{%
- \ifhmode
- \PackageError{scrlayer-notecolumn}{%
- illegal font setting for `notecolumn.##1'%
- }{%
- Current setting of font for `notecolumn.##1' switches
- from\MessageBreak
- vertical mode to horizontal mode. This is
- illegal!\MessageBreak
- You have to change the font setting to fix
- this.\MessageBreak
- If you'll continue vertical alignment of notes may fail%
- }%
- \par\vskip-\dimexpr \baselineskip+\parskip\relax
- \fi
- }%
- \long\def\slnc@note##1##2##3##4{%
+\newcommand*{\slnc@processnotes}[1]{%
+ \begingroup
+ \slnc@readnotes{\value{slncpage}}%
+ \expandafter\let\expandafter\reserved@a
+ \csname slnc@#1@unprocessed\endcsname
+ \expandafter\global
+ \expandafter\let\csname slnc@#1@unprocessed\endcsname\@empty
+ \def\slnc@notesyncfonttest##1{%
+ \ifhmode
+ \PackageError{scrlayer-notecolumn}{%
+ illegal font setting for `notecolumn.##1'%
+ }{%
+ Current setting of font for `notecolumn.##1' switches
+ from\MessageBreak
+ vertical mode to horizontal mode. This is
+ illegal!\MessageBreak
+ You have to change the font setting to fix
+ this.\MessageBreak
+ If you'll continue vertical alignment of notes may fail%
+ }%
+ \par\vskip-\dimexpr \baselineskip+\parskip\relax
+ \fi
+ }%
+ \long\def\slnc@note##1##2##3##4{%
\typeout{TRACE (slnc): ##2<=\theslncpage?}%
- \ifnum ##2>\value{slncpage}\relax
+ \ifnum ##2>\value{slncpage}\relax
\typeout{TRACE (slnc): no: unprocess note}%
- \expandafter\g@addto@macro\csname slnc@#1@unprocessed\endcsname{%
- \slnc@note{##1}{##2}{##3}{##4}%
- }%
- \else
- \ifnum ##2<\value{slncpage}\relax
- \PackageWarning{scrlayer-notecolumn}{note of type `#1' delayed}%
- \fi
- \boxmaxdepth\maxdepth
- \expandafter\setbox\csname slnc@#1@box\endcsname\vbox{%
- \expandafter\hsize\csname slnc@#1@width\endcsname
- \normalfont\normalsize
- \slnc@switchcolorstack{#1}%
- {%
- \usekomafont{notecolumn.#1}{%
- \slnc@notesyncfonttest{#1}%
- \expandafter\ifvoid\csname slnc@#1@box\endcsname
- \expandafter\setbox\csname slnc@#1@box\endcsname\vbox{%
- \kern\dimexpr\topskip-\baselineskip\relax
- }%
- \fi
- \scr@ifundefinedorrelax{pdfpageheight}{%
- \scr@ifundefinedorrelax{pageheight}{%
- \@tempdima=\paperheight
- }{%
- \@tempdima=\pageheight
- }%
+ \expandafter\g@addto@macro\csname slnc@#1@unprocessed\endcsname{%
+ \slnc@note{##1}{##2}{##3}{##4}%
+ }%
+ \else
+ \ifnum ##2<\value{slncpage}\relax
+ \PackageWarning{scrlayer-notecolumn}{note of type `#1' delayed}%
+ \fi
+ \boxmaxdepth\maxdepth
+ \expandafter\setbox\csname slnc@#1@box\endcsname\vbox{%
+ \expandafter\hsize\csname slnc@#1@width\endcsname
+ \normalfont\normalsize
+ \slnc@switchcolorstack{#1}%
+ {%
+ \usekomafont{notecolumn.#1}{%
+ \slnc@notesyncfonttest{#1}%
+ \expandafter\ifvoid\csname slnc@#1@box\endcsname
+ \expandafter\setbox\csname slnc@#1@box\endcsname\vbox{%
+ \kern\dimexpr\topskip-\baselineskip\relax
+ }%
+ \fi
+ \scr@ifundefinedorrelax{pdfpageheight}{%
+ \scr@ifundefinedorrelax{pageheight}{%
+ \@tempdima=\paperheight
}{%
- \@tempdima=\pdfpageheight
+ \@tempdima=\pageheight
}%
- \@tempdima=\dimexpr \@tempdima-##3sp
- -1in-\topmargin
- -\headheight-\headsep
- -\baselineskip
- \relax
- \@tempdimb=\dimexpr \expandafter\ht\csname slnc@#1@box\endcsname
- +\expandafter\dp\csname slnc@#1@box\endcsname
- \relax
- \typeout{Soll: \the\@tempdima^^JIst: \space\the\@tempdimb}%
- \ifdim\@tempdima<\@tempdimb
+ }{%
+ \@tempdima=\pdfpageheight
+ }%
+ \@tempdima=\dimexpr \@tempdima-##3sp
+ -1in-\topmargin
+ -\headheight-\headsep
+ -\baselineskip
+ \relax
+ \@tempdimb=\dimexpr \expandafter\ht\csname slnc@#1@box\endcsname
+ +\expandafter\dp\csname slnc@#1@box\endcsname
+ \relax
+ \typeout{Soll: \the\@tempdima^^JIst: \space\the\@tempdimb}%
+ \ifdim\@tempdima<\@tempdimb
+ \PackageInfo{scrlayer-notecolumn}{%
+ Note moved down from\MessageBreak
+ \the\@tempdima\space to \the\@tempdimb\MessageBreak
+ at note box `#1'
+ }%
+ \else
+ \ifdim\@tempdima>\@tempdimb
\PackageInfo{scrlayer-notecolumn}{%
- Note moved down from\MessageBreak
- \the\@tempdima\space to \the\@tempdimb\MessageBreak
- at note box `#1'
+ Adding vertical white space from\MessageBreak
+ \the\@tempdimb\space to \the\@tempdima\MessageBreak
+ into note box `#1'
+ }%
+ \expandafter\setbox\csname slnc@#1@box\endcsname
+ \vbox {%
+ \expandafter\unvbox\csname slnc@#1@box\endcsname
+ \kern\dimexpr\@tempdima-\@tempdimb\relax
}%
- \else
- \ifdim\@tempdima>\@tempdimb
- \PackageInfo{scrlayer-notecolumn}{%
- Adding vertical white space from\MessageBreak
- \the\@tempdimb\space to \the\@tempdima\MessageBreak
- into note box `#1'
- }%
- \expandafter\setbox\csname slnc@#1@box\endcsname
- \vbox {%
- \expandafter\unvbox\csname slnc@#1@box\endcsname
- \kern\dimexpr\@tempdima-\@tempdimb\relax
- }%
- \fi
- \fi
- \expandafter\ifvoid\expandafter\csname slnc@#1@box\endcsname
- \else
- \@tempdima\dimexpr
- \dp\strutbox
- -\dp\csname slnc@#1@box\endcsname
- \relax
- \expandafter\unvbox\csname slnc@#1@box\endcsname
- \ifdim\@tempdima>\z@ \kern\@tempdima\fi
\fi
- \slnc@restoreinnote
- \strut\ignorespaces ##4\par
- }%
+ \fi
+ \expandafter\ifvoid\expandafter\csname slnc@#1@box\endcsname
+ \else
+ \@tempdima\dimexpr
+ \dp\strutbox
+ -\dp\csname slnc@#1@box\endcsname
+ \relax
+ \expandafter\unvbox\csname slnc@#1@box\endcsname
+ \ifdim\@tempdima>\z@ \kern\@tempdima\fi
+ \fi
+ \slnc@restoreinnote
+ \strut\ignorespaces ##4\par
}%
}%
- \fi
- }%
- \def\slnc@sync##1##2##3##4{%
- \ifnum ##2>\value{slncpage}\relax
- \expandafter\g@addto@macro\csname slnc@#1@unprocessed\endcsname{%
- \slnc@sync{##1}{##2}{##3}{}%
- }%
- \else
- \if@filesw
- \expandafter\setbox\csname slnc@#1@box\endcsname\vbox{%
- \expandafter\unvbox\csname slnc@#1@box\endcsname
- \scr@savepos
- \protected@write\@auxout{}{%
- \string\newlabel{notecolumn.##1.##3.syncnote.label}{%
- {%
- \noexpand\number\scr@lastypos
- }{\thepage}%
- }%
+ }%
+ \fi
+ }%
+ \def\slnc@sync##1##2##3##4{%
+ \ifnum ##2>\value{slncpage}\relax
+ \expandafter\g@addto@macro\csname slnc@#1@unprocessed\endcsname{%
+ \slnc@sync{##1}{##2}{##3}{}%
+ }%
+ \else
+ \if@filesw
+ \expandafter\setbox\csname slnc@#1@box\endcsname\vbox{%
+ \expandafter\unvbox\csname slnc@#1@box\endcsname
+ \scr@savepos
+ \protected@write\@auxout{}{%
+ \string\newlabel{notecolumn.##1.##3.syncnote.label}{%
+ {%
+ \noexpand\number\scr@lastypos
+ }{\thepage}%
}%
}%
- \fi
- \fi
- }%
- \reserved@a
- \expandafter\ifvoid\csname slnc@#1@box\endcsname
- \PackageInfo{scrlayer-notecolumn}{Note box `#1' empty}%
- \else
- \ifdim \dimexpr \expandafter\ht\csname slnc@#1@box\endcsname
- +\expandafter\dp\csname slnc@#1@box\endcsname
- \relax >\textheight\relax
- \PackageInfo{scrlayer-notecolumn}{Split note box `#1'}%
- \splittopskip\topskip
- \splitmaxdepth\baselineskip
- \usekomafont{notecolumn.#1}{%
- \expandafter\vsplit\csname slnc@#1@box\endcsname to
- \textheight\relax
}%
- \expandafter\ifvoid\csname slnc@#1@box\endcsname
- \else
- \expandafter\setbox\csname slnc@#1@box\endcsname\vbox{%
- \slnc@switchcolorstack{#1}%
- \expandafter\unvbox\csname slnc@#1@box\endcsname
- }%
- \fi
+ \fi
+ \fi
+ }%
+ \reserved@a
+ \expandafter\ifvoid\csname slnc@#1@box\endcsname
+ \PackageInfo{scrlayer-notecolumn}{Note box `#1' empty}%
+ \else
+ \ifdim \dimexpr \expandafter\ht\csname slnc@#1@box\endcsname
+ +\expandafter\dp\csname slnc@#1@box\endcsname
+ \relax >\textheight\relax
+ \PackageInfo{scrlayer-notecolumn}{Split note box `#1'}%
+ \splittopskip\topskip
+ \splitmaxdepth\baselineskip
+ \usekomafont{notecolumn.#1}{%
+ \expandafter\vsplit\csname slnc@#1@box\endcsname to
+ \textheight\relax
+ }%
+ \expandafter\ifvoid\csname slnc@#1@box\endcsname
\else
- \PackageInfo{scrlayer-notecolumn}{Flush note box `#1'}%
- \usekomafont{notecolumn.#1}{%
+ \expandafter\setbox\csname slnc@#1@box\endcsname\vbox{%
\slnc@switchcolorstack{#1}%
- \expandafter\box\csname slnc@#1@box\endcsname%
+ \expandafter\unvbox\csname slnc@#1@box\endcsname
}%
\fi
+ \else
+ \PackageInfo{scrlayer-notecolumn}{Flush note box `#1'}%
+ \usekomafont{notecolumn.#1}{%
+ \slnc@switchcolorstack{#1}%
+ \expandafter\box\csname slnc@#1@box\endcsname%
+ }%
\fi
- \expandafter\global
- \expandafter\setbox\csname slnc@#1@box\expandafter\endcsname
- \expandafter\box\csname slnc@#1@box\endcsname
- \endgroup
- }
+ \fi
+ \expandafter\global
+ \expandafter\setbox\csname slnc@#1@box\expandafter\endcsname
+ \expandafter\box\csname slnc@#1@box\endcsname
+ \endgroup
}
-\scrlayerAddToInterface{\slnc@switchcolorstack}{%
- \newcommand*{\slnc@switchcolorstack}[1]{%
- \scr@ifundefinedorrelax{slnc@#1@colorstack}{%
- \def\set@color{%
- \PackageWarningNoLine{scrlayer-notecolumn}{%
- unsupported change of colour!\MessageBreak
- It seems you are using a TeX engine,\MessageBreak
- that does not support switching the\MessageBreak
- colour stack like pdfTeX or luaTeX do.\MessageBreak
- Because of this, usage of \string\color,\MessageBreak
- \string\textcolor\space etc. inside a note
- column\MessageBreak
- is not supported%
- }%
+\newcommand*{\slnc@switchcolorstack}[1]{%
+ \scr@ifundefinedorrelax{slnc@#1@colorstack}{%
+ \def\set@color{%
+ \PackageWarningNoLine{scrlayer-notecolumn}{%
+ unsupported change of colour!\MessageBreak
+ It seems you are using a TeX engine,\MessageBreak
+ that does not support switching the\MessageBreak
+ colour stack like pdfTeX or luaTeX do.\MessageBreak
+ Because of this, usage of \string\color,\MessageBreak
+ \string\textcolor\space etc. inside a note
+ column\MessageBreak
+ is not supported%
}%
+ }%
+ }{%
+ \scr@ifundefinedorrelax{@pdfcolorstack}{%
}{%
- \scr@ifundefinedorrelax{@pdfcolorstack}{%
- }{%
- \expandafter\let\expandafter\@pdfcolorstack
- \csname slnc@#1@colorstack\endcsname
- }%
- \scr@ifundefinedorrelax{pdfcolorstack}{%
- \scr@ifundefinedorrelax{pdfextension}{%
- \PackageError{scrlayer-notecolumm}{%
- colour stack defined but not usable%
- }{%
- \expandafter\string
- \csname slnc@#1@colorstack\endcsname\space defined
- \MessageBreak
- but neither \string\pdfcolorstack\space nor
- \string\pdfextension.\MessageBreak
- This should never happen!%
- }%
+ \expandafter\let\expandafter\@pdfcolorstack
+ \csname slnc@#1@colorstack\endcsname
+ }%
+ \scr@ifundefinedorrelax{pdfcolorstack}{%
+ \scr@ifundefinedorrelax{pdfextension}{%
+ \PackageError{scrlayer-notecolumm}{%
+ colour stack defined but not usable%
}{%
- \pdfextension colorstack
- \csname slnc@#1@colorstack\endcsname current\relax
+ \expandafter\string
+ \csname slnc@#1@colorstack\endcsname\space defined
+ \MessageBreak
+ but neither \string\pdfcolorstack\space nor
+ \string\pdfextension.\MessageBreak
+ This should never happen!%
}%
}{%
- \pdfcolorstack
+ \pdfextension colorstack
\csname slnc@#1@colorstack\endcsname current\relax
}%
+ }{%
+ \pdfcolorstack
+ \csname slnc@#1@colorstack\endcsname current\relax
}%
}%
-}
-\scrlayerAddToInterface\slnc@restoreinnote{%
- \let\slnc@restoreinnote\@empty
-}
-\scrlayerAddToInterface\restoreinnote{%
- \newcommand*\restoreinnote[1]{%
- \AtBeginDocument{%
- \expandafter\scrlayerAddCsToInterface[scrlayer-notecolumn.sty]{slnc\string#1}{%
- \expandafter\let\csname slnc\string#1\endcsname#1%
- \g@addto@macro\slnc@restoreinnote{%
- \expandafter\let\expandafter#1\csname slnc\string#1\endcsname
- }%
- }%
+}%
+\newcommand*{\slnc@restoreinnote}{}
+\let\slnc@restoreinnote\@empty
+\newcommand*\restoreinnote[1]{%
+ \AtBeginDocument{%
+ \expandafter\newcommand\expandafter*\csname slnc\string#1\endcsname{}%
+ \expandafter\let\csname slnc\string#1\endcsname#1%
+ \g@addto@macro\slnc@restoreinnote{%
+ \expandafter\let\expandafter#1\csname slnc\string#1\endcsname
}%
}%
- \@onlypreamble\restoreinnote
- \restoreinnote\label
- \restoreinnote\index
- \restoreinnote\glossary
-}
-\scrlayerAddToInterface\slnc@catcodes{%
- \newcommand*{\slnc@catcodes}{}%
}
+\@onlypreamble\restoreinnote
+\restoreinnote\label
+\restoreinnote\index
+\restoreinnote\glossary
+\newcommand*{\slnc@catcodes}{}%
\AtBeginDocument{%
\begingroup
\def\do#1{%
@@ -917,170 +832,183 @@
\xdef\slnc@catcodes{\slnc@catcodes\catcode`\protect\@=11\relax}%
\endgroup
}
-\scrlayerAddToInterface\slnc@readnotes{%
- \newcommand*\slnc@readnotes[1]{%
- \ifeof\slnc@file\else
- \ifnum \number #1<\slnc@unprocessed\relax
- \@tempswafalse
- \else
- \@tempswatrue
- \fi
- \@whilesw\if@tempswa\fi{%
- \begingroup
- \slnc@catcodes
- \endlinechar\m@ne
- \read\slnc@file to\reserved@a
- \edef\reserved@a{%
- \endgroup
- \noexpand\def\noexpand\reserved@a{%
- \unexpanded\expandafter{\reserved@a}%
- }%
+\newcommand*\slnc@readnotes[1]{%
+ \ifeof\slnc@file\else
+ \ifnum \number #1<\slnc@unprocessed\relax
+ \@tempswafalse
+ \else
+ \@tempswatrue
+ \fi
+ \@whilesw\if@tempswa\fi{%
+ \begingroup
+ \slnc@catcodes
+ \endlinechar\m@ne
+ \read\slnc@file to\reserved@a
+ \edef\reserved@a{%
+ \endgroup
+ \noexpand\def\noexpand\reserved@a{%
+ \unexpanded\expandafter{\reserved@a}%
}%
- \reserved@a
- \expandafter\slnc@iofv\expandafter\reserved@b\reserved@a
- \@empty\@empty\@empty\@empty\@empty
- \@tempswafalse
- \@for\reserved@c :={\slnc@note },{\slnc@sync }\do{%
- \ifx\reserved@b\reserved@c \@tempswatrue\fi
}%
- \if@tempswa
- \@tempswafalse
- \expandafter\slnc@iiiofv\expandafter\reserved@b\reserved@a
+ \reserved@a
+ \expandafter\slnc@iofv\expandafter\reserved@b\reserved@a
+ \@empty\@empty\@empty\@empty\@empty
+ \@tempswafalse
+ \@for\reserved@c :={\slnc@note },{\slnc@sync }\do{%
+ \ifx\reserved@b\reserved@c \@tempswatrue\fi
+ }%
+ \if@tempswa
+ \@tempswafalse
+ \expandafter\slnc@iiiofv\expandafter\reserved@b\reserved@a
+ \@empty\@empty\@empty\@empty\@empty
+ \ifx\reserved@b\@empty
+ \PackageError{scrlayer-notecolumn}{internal syntax error}{%
+ Unexpected syntax of file `\jobname.slnc'.\MessageBreak
+ Second argument should be a number.\MessageBreak
+ I don't know what to do with\MessageBreak
+ \expandafter\detokenize\expandafter{\reserved@a}%
+ }%
+ \@tempswatrue
+ \else
+ \global\let\slnc@unprocessed\reserved@b
+ \expandafter\slnc@iiofv\expandafter\reserved@b\reserved@a
\@empty\@empty\@empty\@empty\@empty
- \ifx\reserved@b\@empty
- \PackageError{scrlayer-notecolumn}{internal syntax error}{%
- Unexpected syntax of file `\jobname.slnc'.\MessageBreak
- Second argument should be a number.\MessageBreak
- I don't know what to do with\MessageBreak
- \expandafter\detokenize\expandafter{\reserved@a}%
+ \@ifundefined{slnc@\reserved@b @unprocessed}{%
+ \PackageWarning{scrlayer-notecolumn}{%
+ column `\reserved@b' undefined.\MessageBreak
+ You should declare the column before the usage.\MessageBreak
+ Notes will be lost%
}%
- \@tempswatrue
- \else
- \global\let\slnc@unprocessed\reserved@b
- \expandafter\slnc@iiofv\expandafter\reserved@b\reserved@a
- \@empty\@empty\@empty\@empty\@empty
- \@ifundefined{slnc@\reserved@b @unprocessed}{%
- \PackageWarning{scrlayer-notecolumn}{%
- column `\reserved@b' undefined.\MessageBreak
- You should declare the column before the usage.\MessageBreak
- Notes will be lost%
- }%
- }{%
- \expandafter\g@addto@macro
- \csname slnc@\reserved@b @unprocessed\expandafter\endcsname
- \expandafter{%
- \reserved@a
- }%
+ }{%
+ \expandafter\g@addto@macro
+ \csname slnc@\reserved@b @unprocessed\expandafter\endcsname
+ \expandafter{%
+ \reserved@a
}%
- \ifnum \number #1<\slnc@unprocessed\relax
- \@tempswafalse
- \else
- \@tempswatrue
- \fi
+ }%
+ \ifnum \number #1<\slnc@unprocessed\relax
+ \@tempswafalse
+ \else
+ \@tempswatrue
\fi
- \else
- \PackageInfo{scrlayer-notecolumn}{%
- Ignoring `\expandafter\detokenize\expandafter{\reserved@a}'}%
- \@tempswatrue
\fi
- \ifeof\slnc@file\@tempswafalse\fi
- }%
- \fi
- }%
-}
-\scrlayerAddToInterface\slnc@iofv{%
- \newcommand\slnc@iofv[6]{\def#1{#2}}%
-}
-\scrlayerAddToInterface\slnc@iiofiv{%
- \newcommand\slnc@iiofv[6]{\def#1{#3}}%
-}
-\scrlayerAddToInterface\slnc@iiiofiv{%
- \newcommand\slnc@iiiofv[6]{\def#1{#4}}%
-}
-\scrlayerAddToInterface\slnc@unprocessed{%
- \newcommand*{\slnc@unprocessed}{0}%
-}
-\scrlayerAddToInterface\slnc@mdfivesum{%
- \let\slnc@mdfivesum\@empty
-}
-\scrlayerAddToInterface\slnc@file{%
- \scr@ifundefinedorrelax{pdfmdfivesum}{%
- \scr@ifundefinedorrelax{mdfivesum}{%
- \ifdefined\directlua
- \directlua{%
- function slncmdfivesum(filename)
- local fh = io.open(filename,"rb")
- if fh then
- local sum=md5.sumhexa(fh:read("*a"))
- tex.sprint(sum)
- fh:close()
- end
- end
- }%
- \xdef\slnc@mdfivesum{\directlua{slncmdfivesum("\jobname.slnc")}}%
+ \else
+ \PackageInfo{scrlayer-notecolumn}{%
+ Ignoring `\expandafter\detokenize\expandafter{\reserved@a}'}%
+ \@tempswatrue
\fi
- }{%
- \xdef\slnc@mdfivesum{\mdfivesum file {\jobname.slnc}}%
+ \ifeof\slnc@file\@tempswafalse\fi
}%
+ \fi
+}%
+\newcommand\slnc@iofv[6]{\def#1{#2}}%
+\newcommand\slnc@iiofv[6]{\def#1{#3}}%
+\newcommand\slnc@iiiofv[6]{\def#1{#4}}%
+\newcommand*{\slnc@unprocessed}{0}%
+\newcommand*{\slnc@mdfivesum}{}
+\let\slnc@mdfivesum\@empty
+\scr@ifundefinedorrelax{pdfmdfivesum}{%
+ \scr@ifundefinedorrelax{mdfivesum}{%
+ \ifdefined\directlua
+ \directlua{%
+ function slncmdfivesum(filename)
+ local fh = io.open(filename,"rb")
+ if fh then
+ local sum=md5.sumhexa(fh:read("*a"))
+ tex.sprint(sum)
+ fh:close()
+ end
+ end
+ }%
+ \xdef\slnc@mdfivesum{\directlua{slncmdfivesum("\jobname.slnc")}}%
+ \fi
}{%
- \xdef\slnc@mdfivesum{\pdfmdfivesum file {\jobname.slnc}}%
- }%
- \scr@ifundefinedorrelax{slnc@mdfivesum}{}{%
- \PackageInfo{scrlayer-notecolumn}{%
- MD5 of last `\jobname.slnc':\MessageBreak
- \slnc@mdfivesum}%
+ \xdef\slnc@mdfivesum{\mdfivesum file {\jobname.slnc}}%
}%
- \newread\slnc@file
- \immediate\openin\slnc@file \jobname.slnc
- \scrlayerOnAutoRemoveInterface{\immediate\closein\slnc@file}%
-}
-\scrlayerAddToInterface\c@slnc@clearnote@label{%
- \newcounter{slnc@clearnote@label}%
-}
-\scrlayerAddToInterface\clearnotecolumn{%
- \newcommand*\clearnotecolumn[1][marginpar]{%
- \begingroup
- \slnc@autoclearnotecolumnsfalse
- \stepcounter{slnc@clearnote@label}%
- \if@filesw
- \protected@write\@auxout{%
- \let\theslncpage\relax
- \let\slnc@voidtest\relax
- }{%
- \string\newlabel{notecolumn.\theslnc@clearnote@label}%
- {{\theslncpage}{\slnc@voidtest{#1}}}%
- }%
- \fi
- \scr@ifundefinedorrelax{r@notecolumn.\theslnc@clearnote@label}{%
- \PackageInfo{scrlayer-notecolumn}{%
- Using estimated to low value for clearing\MessageBreak
- note colum `#1'%
- }
- \edef\slnc@cmp@value{\the\value{slncpage}}%
- \let\reserved@a\z@
+}{%
+ \xdef\slnc@mdfivesum{\pdfmdfivesum file {\jobname.slnc}}%
+}%
+\scr@ifundefinedorrelax{slnc@mdfivesum}{}{%
+ \PackageInfo{scrlayer-notecolumn}{%
+ MD5 of last `\jobname.slnc':\MessageBreak
+ \slnc@mdfivesum}%
+}%
+\newread\slnc@file
+\immediate\openin\slnc@file \jobname.slnc
+\newcounter{slnc@clearnote@label}%
+\newcommand*\clearnotecolumn[1][marginpar]{%
+ \begingroup
+ \slnc@autoclearnotecolumnsfalse
+ \stepcounter{slnc@clearnote@label}%
+ \if@filesw
+ \protected@write\@auxout{%
+ \let\theslncpage\relax
+ \let\slnc@voidtest\relax
}{%
- \edef\reserved@a{%
- \@nameuse{r@notecolumn.\theslnc@clearnote@label}\@empty\@empty
- }%
- \edef\slnc@cmp@value{\expandafter\slnc@firstof\reserved@a\@nil}%
- \edef\reserved@a{\expandafter\slnc@secondof\reserved@a\@nil}%
+ \string\newlabel{notecolumn.\theslnc@clearnote@label}%
+ {{\theslncpage}{\slnc@voidtest{#1}}}%
}%
- \typeout{TRACE (slnc): clearnote=\@nameuse{theslnc@clearnote@label},
- abspage=\the\value{slncpage}, until page=\slnc@cmp@value,
- process=\reserved@a, pagetotal=\the\pagetotal, topskip=\the\topskip}%
- \ifvmode\ifdim \pagetotal<\topskip
- \edef\slnc@cmp@value{\the\numexpr\slnc@cmp@value-1}%
+ \fi
+ \scr@ifundefinedorrelax{r@notecolumn.\theslnc@clearnote@label}{%
+ \PackageInfo{scrlayer-notecolumn}{%
+ Using estimated to low value for clearing\MessageBreak
+ note colum `#1'%
+ }
+ \edef\slnc@cmp@value{\the\value{slncpage}}%
+ \let\reserved@a\z@
+ }{%
+ \edef\reserved@a{%
+ \@nameuse{r@notecolumn.\theslnc@clearnote@label}\@empty\@empty
+ }%
+ \edef\slnc@cmp@value{\expandafter\slnc@firstof\reserved@a\@nil}%
+ \edef\reserved@a{\expandafter\slnc@secondof\reserved@a\@nil}%
+ }%
+ \typeout{TRACE (slnc): clearnote=\@nameuse{theslnc@clearnote@label},
+ abspage=\the\value{slncpage}, until page=\slnc@cmp@value,
+ process=\reserved@a, pagetotal=\the\pagetotal, topskip=\the\topskip}%
+ \ifvmode\ifdim \pagetotal<\topskip
+ \edef\slnc@cmp@value{\the\numexpr\slnc@cmp@value-1}%
\typeout{TRACE (slnc): until page=\slnc@cmp@value}%
- \fi\fi
- \ifnum \reserved@a=\z@
- \ifvmode
- \ifdim \pagetotal<\topskip
- \else
- \slnc@readnotes{\slnc@cmp@value}%
- \fi
+ \fi\fi
+ \ifnum \reserved@a=\z@
+ \ifvmode
+ \ifdim \pagetotal<\topskip
\else
\slnc@readnotes{\slnc@cmp@value}%
\fi
+ \else
+ \slnc@readnotes{\slnc@cmp@value}%
+ \fi
+ \begingroup
+ \aftergroup\@tempswafalse
+ \long\def\slnc@note##1##2##3##4{%
+ \ifnum ##2>\slnc@cmp@value\relax \else \aftergroup\@tempswatrue\fi
+ }%
+ \let\slnc@sync\slnc@note
+ \csname slnc@#1@unprocessed\endcsname
+ \endgroup
+ \else
+ \PackageInfo{scrlayer-notecolumn}{%
+ box of note column `#1'\MessageBreak
+ not empty after page of \string\clearnotecolumn}%
+ \@tempswatrue
+ \fi
+ \if@tempswa
+ \IfLayerPageStyleExists{\currentpagestyle}{}{%
+ \PackageWarning{scrlayer-notecolumn}{%
+ \string\clearnotecolumn\space while active non-layer page
+ style.\MessageBreak
+ Activate empty page style until note column\MessageBreak
+ has been cleared%
+ }%
+ \pagestyle{empty}%
+ }%
+ \@tempswatrue
+ \fi
+ \@whilesw\if@tempswa\fi{%
+ \typeout{TRACE (slnc): add \string\clearpage}%
+ \clearpage
+ \expandafter\ifcase \slnc@voidtest{#1}%
\begingroup
\aftergroup\@tempswafalse
\long\def\slnc@note##1##2##3##4{%
@@ -1090,119 +1018,115 @@
\csname slnc@#1@unprocessed\endcsname
\endgroup
\else
- \PackageInfo{scrlayer-notecolumn}{%
- box of note column `#1'\MessageBreak
- not empty after page of \string\clearnotecolumn}%
\@tempswatrue
\fi
\if@tempswa
- \IfLayerPageStyleExists{\currentpagestyle}{}{%
- \PackageWarning{scrlayer-notecolumn}{%
- \string\clearnotecolumn\space while active non-layer page
- style.\MessageBreak
- Activate empty page style until note column\MessageBreak
- has been cleared%
- }%
- \pagestyle{empty}%
- }%
- \@tempswatrue
+ \null
\fi
- \@whilesw\if@tempswa\fi{%
- \typeout{TRACE (slnc): add \string\clearpage}%
- \clearpage
- \expandafter\ifcase \slnc@voidtest{#1}%
- \begingroup
- \aftergroup\@tempswafalse
- \long\def\slnc@note##1##2##3##4{%
- \ifnum ##2>\slnc@cmp@value\relax \else \aftergroup\@tempswatrue\fi
- }%
- \let\slnc@sync\slnc@note
- \csname slnc@#1@unprocessed\endcsname
- \endgroup
- \else
- \@tempswatrue
- \fi
- \if@tempswa
- \null
- \fi
- }%
- \endgroup
- }%
-}
-\scrlayerAddToInterface{\slnc@firstof}{%
- \def\slnc@firstof#1#2\@nil{#1}%
-}
-\scrlayerAddToInterface{slnc@secondof}{%
- \def\slnc@secondof#1#2#3\@nil{#2}%
+ }%
+ \endgroup
}
-\scrlayerAddToInterface\slnc@voidtest{%
- \newcommand*{\slnc@voidtest}[1]{%
- \expandafter\ifvoid \csname slnc@#1@box\endcsname \z@\else \@ne\fi
- }%
+\newcommand*{\slnc@firstof}{}
+\def\slnc@firstof#1#2\@nil{#1}%
+\newcommand*{\slnc@secondof}{}
+\def\slnc@secondof#1#2#3\@nil{#2}%
+\newcommand*{\slnc@voidtest}[1]{%
+ \expandafter\ifvoid \csname slnc@#1@box\endcsname \z@\else \@ne\fi
}
-\scrlayerAddToInterface\clearnotecolumns{%
- \newcommand*\clearnotecolumns[1][\relax]{%
- \begingroup
- \slnc@autoclearnotecolumnsfalse
- \ifx\relax#1\relax\else
- \let\slnc@processnotecolumns\@empty
- \edef\reserved@a{#1}%
- \@for\reserved@a:=\reserved@a\do {%
- \scr@trim@spaces\reserved@a
- \ifx\reserved@a\@empty\else
- \expandafter\l@addto@macro\expandafter\slnc@processnotecolumns
- \expandafter{\expandafter\@elt\expandafter{\reserved@a}}%
- \fi
+\newcommand*\clearnotecolumns[1][\relax]{%
+ \begingroup
+ \slnc@autoclearnotecolumnsfalse
+ \ifx\relax#1\relax\else
+ \let\slnc@processnotecolumns\@empty
+ \edef\reserved@a{#1}%
+ \@for\reserved@a:=\reserved@a\do {%
+ \scr@trim@spaces\reserved@a
+ \ifx\reserved@a\@empty\else
+ \expandafter\l@addto@macro\expandafter\slnc@processnotecolumns
+ \expandafter{\expandafter\@elt\expandafter{\reserved@a}}%
+ \fi
+ }%
+ \fi
+ \stepcounter{slnc@clearnote@label}%
+ \if@filesw
+ \begingroup
+ \def\@elt##1{+\slnc@voidtest{##1}}%
+ \protected@write\@auxout{%
+ \let\theslncpage\relax
+ \let\slnc@voidtest\relax
+ }{%
+ \string\newlabel{notecolumn.\theslnc@clearnote@label}%
+ {{\theslncpage}{\numexpr \slnc@processnotecolumns\relax}}%
}%
- \fi
- \stepcounter{slnc@clearnote@label}%
- \if@filesw
- \begingroup
- \def\@elt##1{+\slnc@voidtest{##1}}%
- \protected@write\@auxout{%
- \let\theslncpage\relax
- \let\slnc@voidtest\relax
- }{%
- \string\newlabel{notecolumn.\theslnc@clearnote@label}%
- {{\theslncpage}{\numexpr \slnc@processnotecolumns\relax}}%
- }%
- \endgroup
- \fi
- \scr@ifundefinedorrelax{r@notecolumn.\theslnc@clearnote@label}{%
- \begingroup
- \def\@elt##1{, `##1'}%
- \PackageInfo{scrlayer-notecolumn}{%
- Using estimated to low value for\MessageBreak
- clearing note colums\MessageBreak
- \expandafter\@gobble\slnc@processnotecolumns
- }%
- \endgroup
- \edef\slnc@cmp@value{\the\value{slncpage}}%
- \let\reserved@a\z@
- }{%
- \edef\reserved@a{%
- \@nameuse{r@notecolumn.\theslnc@clearnote@label}\@empty\@empty
+ \endgroup
+ \fi
+ \scr@ifundefinedorrelax{r@notecolumn.\theslnc@clearnote@label}{%
+ \begingroup
+ \def\@elt##1{, `##1'}%
+ \PackageInfo{scrlayer-notecolumn}{%
+ Using estimated to low value for\MessageBreak
+ clearing note colums\MessageBreak
+ \expandafter\@gobble\slnc@processnotecolumns
}%
- \edef\slnc@cmp@value{\expandafter\slnc@firstof\reserved@a\@nil}%
- \edef\reserved@a{\expandafter\slnc@secondof\reserved@a\@nil}%
+ \endgroup
+ \edef\slnc@cmp@value{\the\value{slncpage}}%
+ \let\reserved@a\z@
+ }{%
+ \edef\reserved@a{%
+ \@nameuse{r@notecolumn.\theslnc@clearnote@label}\@empty\@empty
}%
- \typeout{TRACE (slnc): clearnote=\@nameuse{theslnc@clearnote@label},
- abspage=\theslncpage, until page=\slnc@cmp@value,
- process=\reserved@a, pagetotal=\the\pagetotal, topskip=\the\topskip}%
- \ifvmode\ifdim \pagetotal<\topskip
- \edef\slnc@cmp@value{\the\numexpr\slnc@cmp@value-1}%
+ \edef\slnc@cmp@value{\expandafter\slnc@firstof\reserved@a\@nil}%
+ \edef\reserved@a{\expandafter\slnc@secondof\reserved@a\@nil}%
+ }%
+ \typeout{TRACE (slnc): clearnote=\@nameuse{theslnc@clearnote@label},
+ abspage=\theslncpage, until page=\slnc@cmp@value,
+ process=\reserved@a, pagetotal=\the\pagetotal, topskip=\the\topskip}%
+ \ifvmode\ifdim \pagetotal<\topskip
+ \edef\slnc@cmp@value{\the\numexpr\slnc@cmp@value-1}%
\typeout{TRACE (slnc): until page=\slnc@cmp@value}%
- \fi\fi
- \ifnum \reserved@a=\z@
- \ifvmode
- \ifdim \pagetotal<\topskip
- \else
- \slnc@readnotes{\slnc@cmp@value}%
- \fi
+ \fi\fi
+ \ifnum \reserved@a=\z@
+ \ifvmode
+ \ifdim \pagetotal<\topskip
\else
\slnc@readnotes{\slnc@cmp@value}%
\fi
- \begingroup
+ \else
+ \slnc@readnotes{\slnc@cmp@value}%
+ \fi
+ \begingroup
+ \aftergroup\@tempswafalse
+ \long\def\slnc@note##1##2##3##4{%
+ \ifnum ##2>\slnc@cmp@value\relax \else \aftergroup\@tempswatrue\fi
+ }%
+ \let\slnc@sync\slnc@note
+ \def\@elt##1{\csname slnc@##1@unprocessed\endcsname}%
+ \slnc@processnotecolumns
+ \endgroup
+ \else
+ \PackageInfo{scrlayer-notecolumn}{%
+ box of at least one note column\MessageBreak
+ not empty after page of \string\clearnotecolumns}%
+ \@tempswatrue
+ \fi
+ \if@tempswa
+ \IfLayerPageStyleExists{\currentpagestyle}{}{%
+ \PackageWarning{scrlayer-notecolumn}{%
+ \string\clearnotecolumns\space while active non-layer page
+ style.\MessageBreak
+ Activate empty page style until note column\MessageBreak
+ has been cleared%
+ }%
+ \pagestyle{empty}%
+ }%
+ \@tempswatrue
+ \fi
+ \@whilesw\if@tempswa\fi{%
+ \typeout{TRACE (slnc): add \string\clearpage}%
+ \clearpage
+ \begingroup
+ \def\@elt##1{+\slnc@voidtest{##1}}%
+ \ifcase \numexpr \slnc@processnotecolumns\relax
\aftergroup\@tempswafalse
\long\def\slnc@note##1##2##3##4{%
\ifnum ##2>\slnc@cmp@value\relax \else \aftergroup\@tempswatrue\fi
@@ -1210,210 +1134,169 @@
\let\slnc@sync\slnc@note
\def\@elt##1{\csname slnc@##1@unprocessed\endcsname}%
\slnc@processnotecolumns
- \endgroup
- \else
- \PackageInfo{scrlayer-notecolumn}{%
- box of at least one note column\MessageBreak
- not empty after page of \string\clearnotecolumns}%
- \@tempswatrue
- \fi
+ \else
+ \aftergroup\@tempswatrue
+ \fi
+ \endgroup
\if@tempswa
- \IfLayerPageStyleExists{\currentpagestyle}{}{%
- \PackageWarning{scrlayer-notecolumn}{%
- \string\clearnotecolumns\space while active non-layer page
- style.\MessageBreak
- Activate empty page style until note column\MessageBreak
- has been cleared%
- }%
- \pagestyle{empty}%
- }%
- \@tempswatrue
+ \null
\fi
- \@whilesw\if@tempswa\fi{%
- \typeout{TRACE (slnc): add \string\clearpage}%
- \clearpage
- \begingroup
- \def\@elt##1{+\slnc@voidtest{##1}}%
- \ifcase \numexpr \slnc@processnotecolumns\relax
- \aftergroup\@tempswafalse
- \long\def\slnc@note##1##2##3##4{%
- \ifnum ##2>\slnc@cmp@value\relax \else \aftergroup\@tempswatrue\fi
- }%
- \let\slnc@sync\slnc@note
- \def\@elt##1{\csname slnc@##1@unprocessed\endcsname}%
- \slnc@processnotecolumns
- \else
- \aftergroup\@tempswatrue
- \fi
- \endgroup
- \if@tempswa
- \null
- \fi
- }%
- \endgroup
- }%
-}
-\scrlayerAddToInterface{\c@slnc@syncpoint}{%
- \newcounter{slnc@syncpoint}%
+ }%
+ \endgroup
}
-\scrlayerAddToInterface{\syncwithnotecolumn}{%
- \newcommand*{\syncwithnotecolumn}[1][marginpar]{%
- \begingroup
- \edef\reserved@a{\endgroup\noexpand\syncwithnotecolumns[{#1}]}%
- \reserved@a
- }%
+\newcounter{slnc@syncpoint}%
+\newcommand*{\syncwithnotecolumn}[1][marginpar]{%
+ \begingroup
+ \edef\reserved@a{\endgroup\noexpand\syncwithnotecolumns[{#1}]}%
+ \reserved@a
}
-\scrlayerAddToInterface{\syncwithnotecolumns}{%
- \newcommand*{\syncwithnotecolumns}[1][\relax]{%
- \begingroup
- \ifx\relax#1\relax\else
- \let\slnc@processnotecolumns\@empty
- \edef\reserved@a{#1}%
- \@for\reserved@a:=\reserved@a\do {%
- \scr@trim@spaces\reserved@a
- \ifx\reserved@a\@empty\else
- \expandafter\l@addto@macro\expandafter\slnc@processnotecolumns
- \expandafter{\expandafter\@elt\expandafter{\reserved@a}}%
- \fi
- }%
- \fi
- \stepcounter{slnc@syncpoint}%
- \def\@elt##1{%
- \addtocontents{slnc}{%
- \string\slnc@sync{##1}%
- {\noexpand\number\value{slncpage}}%
- {\theslnc@syncpoint}%
- {}%
- }%
+\newcommand*{\syncwithnotecolumns}[1][\relax]{%
+ \begingroup
+ \ifx\relax#1\relax\else
+ \let\slnc@processnotecolumns\@empty
+ \edef\reserved@a{#1}%
+ \@for\reserved@a:=\reserved@a\do {%
+ \scr@trim@spaces\reserved@a
+ \ifx\reserved@a\@empty\else
+ \expandafter\l@addto@macro\expandafter\slnc@processnotecolumns
+ \expandafter{\expandafter\@elt\expandafter{\reserved@a}}%
+ \fi
}%
- \slnc@processnotecolumns
- \ifvmode
- \let\slnc@voffset\@empty%
- \expandafter\@firstofone
- \else
- \PackageWarning{scrlayer-notecolumn}{%
- \string\syncwithnotecolumn\space in hmode.\MessageBreak
- Using \string\syncwithnotecolumn\space in horizontal\MessageBreak
- mode may result in unwanted vertical\MessageBreak
- space inside paragraphs and may lost\MessageBreak
- colours of text of notes. \space So perhaps you\MessageBreak
- should move \string\syncwithnotecolumn\space before\MessageBreak
- or after the paragraph%
+ \fi
+ \stepcounter{slnc@syncpoint}%
+ \def\@elt##1{%
+ \addtocontents{slnc}{%
+ \string\slnc@sync{##1}%
+ {\noexpand\number\value{slncpage}}%
+ {\theslnc@syncpoint}%
+ {}%
+ }%
+ }%
+ \slnc@processnotecolumns
+ \ifvmode
+ \let\slnc@voffset\@empty%
+ \expandafter\@firstofone
+ \else
+ \PackageWarning{scrlayer-notecolumn}{%
+ \string\syncwithnotecolumn\space in hmode.\MessageBreak
+ Using \string\syncwithnotecolumn\space in horizontal\MessageBreak
+ mode may result in unwanted vertical\MessageBreak
+ space inside paragraphs and may lost\MessageBreak
+ colours of text of notes. \space So perhaps you\MessageBreak
+ should move \string\syncwithnotecolumn\space before\MessageBreak
+ or after the paragraph%
+ }%
+ \let\slnc@voffset\@empty%\def\slnc@voffset{-\number\baselineskip}%
+ \expandafter\slnc@vadjust
+ \fi
+ {%
+ \if@filesw
+ \scr@savepos
+ \protected@write\@auxout{}{%
+ \string\newlabel{notecolumn.\theslnc@syncpoint.synctext.label}{%
+ {%
+ \noexpand\number
+ \numexpr \scr@lastypos\slnc@voffset\relax
+ }{\thepage}%
+ }%
}%
- \let\slnc@voffset\@empty%\def\slnc@voffset{-\number\baselineskip}%
- \expandafter\slnc@vadjust
\fi
- {%
- \if@filesw
- \scr@savepos
- \protected@write\@auxout{}{%
- \string\newlabel{notecolumn.\theslnc@syncpoint.synctext.label}{%
- {%
- \noexpand\number
- \numexpr \scr@lastypos\slnc@voffset\relax
- }{\thepage}%
+ \@ifundefined{r@notecolumn.\theslnc@syncpoint.synctext.label}{%
+ \PackageInfo{scrlayer-notecolumn}{%
+ No text label for \string\syncwithnotecolumn.\MessageBreak
+ Need rerun to sync position}%
+ }{%
+ \edef\reserved@a{%
+ \@nameuse{r@notecolumn.\theslnc@syncpoint.synctext.label}%
+ \@empty\@empty
+ }%
+ \edef\slnc@textpos{\expandafter\slnc@firstof\reserved@a\@nil}%
+ \edef\slnc@textpage{\expandafter\slnc@secondof\reserved@a\@nil}%
+ \let\slnc@notepos\slnc@textpos
+ \let\slnc@notepage\slnc@textpage
+ \def\@elt##1{%
+ \@ifundefined{r@notecolumn.##1.\theslnc@syncpoint.syncnote.label}{%
+ \PackageInfo{scrlayer-notecolumn}{%
+ No note label for sync with note column\MessageBreak
+ `##1'.\MessageBreak
+ Need rerun to sync position}%
+ \G@refundefinedtrue
+ }{%
+ \edef\reserved@a{%
+ \@nameuse{r@notecolumn.##1.\theslnc@syncpoint.syncnote.label}%
+ \@empty\@empty
}%
+ \edef\reserved@b{\expandafter\slnc@firstof\reserved@a\@nil}%
+ \edef\reserved@c{\expandafter\slnc@secondof\reserved@a\@nil}%
+ \ifnum \slnc@notepage<\reserved@c\relax
+ \let\slnc@notepos=\reserved@b
+ \let\slnc@notepage=\reserved@c
+ \else
+ \ifnum \slnc@notepage=\reserved@c\relax
+ \ifnum \slnc@notepos>\reserved@b
+ \let\slnc@notepos=\reserved@b
+ \let\slnc@notepage=\reserved@c
+ \fi
+ \fi
+ \fi
}%
- \fi
- \@ifundefined{r@notecolumn.\theslnc@syncpoint.synctext.label}{%
+ }%
+ \slnc@processnotecolumns
+ \ifnum\slnc@textpage>\slnc@notepage\relax
\PackageInfo{scrlayer-notecolumn}{%
- No text label for \string\syncwithnotecolumn.\MessageBreak
+ Last note page before last text page.\MessageBreak
Need rerun to sync position}%
- }{%
- \edef\reserved@a{%
- \@nameuse{r@notecolumn.\theslnc@syncpoint.synctext.label}%
- \@empty\@empty
- }%
- \edef\slnc@textpos{\expandafter\slnc@firstof\reserved@a\@nil}%
- \edef\slnc@textpage{\expandafter\slnc@secondof\reserved@a\@nil}%
- \let\slnc@notepos\slnc@textpos
- \let\slnc@notepage\slnc@textpage
- \def\@elt##1{%
- \@ifundefined{r@notecolumn.##1.\theslnc@syncpoint.syncnote.label}{%
- \PackageInfo{scrlayer-notecolumn}{%
- No note label for sync with note column\MessageBreak
- `##1'.\MessageBreak
- Need rerun to sync position}%
- \G@refundefinedtrue
- }{%
- \edef\reserved@a{%
- \@nameuse{r@notecolumn.##1.\theslnc@syncpoint.syncnote.label}%
- \@empty\@empty
+ \else
+ \ifnum\slnc@textpage<\slnc@notepage\relax
+ \@whilenum \slnc@textpage<\slnc@notepage\do {%
+ \newpage\null\vskip-\dimexpr \baselineskip+\parskip\relax
+ \edef\slnc@textpage{\the\numexpr\slnc@textpage+1\relax}%
+ }%
+ \scr@ifundefinedorrelax{pdfpageheight}{%
+ \scr@ifundefinedorrelax{pageheight}{%
+ \@tempdima=\paperheight
+ }{%
+ \@tempdima=\pageheight
}%
- \edef\reserved@b{\expandafter\slnc@firstof\reserved@a\@nil}%
- \edef\reserved@c{\expandafter\slnc@secondof\reserved@a\@nil}%
- \ifnum \slnc@notepage<\reserved@c\relax
- \let\slnc@notepos=\reserved@b
- \let\slnc@notepage=\reserved@c
- \else
- \ifnum \slnc@notepage=\reserved@c\relax
- \ifnum \slnc@notepos>\reserved@b
- \let\slnc@notepos=\reserved@b
- \let\slnc@notepage=\reserved@c
- \fi
- \fi
- \fi
+ }{%
+ \@tempdima=\pdfpageheight
}%
- }%
- \slnc@processnotecolumns
- \ifnum\slnc@textpage>\slnc@notepage\relax
+ \@tempdima=\dimexpr \@tempdima
+ -\topmargin-1in
+ -\headheight-\headsep
+ -\topskip+\baselineskip
+ \relax
+ \edef\slnc@textpos{\number\@tempdima}%
\PackageInfo{scrlayer-notecolumn}{%
- Last note page before last text page.\MessageBreak
- Need rerun to sync position}%
+ Top position is \slnc@textpos%
+ }%
+ \fi
+ \ifnum\slnc@notepos>\slnc@textpos\relax
+ \PackageInfo{scrlayer-notecolumn}{%
+ Last note position before last text\MessageBreak
+ position.\MessageBreak
+ Need rerun to sync position%
+ }%
\else
- \ifnum\slnc@textpage<\slnc@notepage\relax
- \@whilenum \slnc@textpage<\slnc@notepage\do {%
- \newpage\null\vskip-\dimexpr \baselineskip+\parskip\relax
- \edef\slnc@textpage{\the\numexpr\slnc@textpage+1\relax}%
- }%
- \scr@ifundefinedorrelax{pdfpageheight}{%
- \scr@ifundefinedorrelax{pageheight}{%
- \@tempdima=\paperheight
- }{%
- \@tempdima=\pageheight
- }%
- }{%
- \@tempdima=\pdfpageheight
- }%
- \@tempdima=\dimexpr \@tempdima
- -\topmargin-1in
- -\headheight-\headsep
- -\topskip+\baselineskip
- \relax
- \edef\slnc@textpos{\number\@tempdima}%
+ \ifnum\slnc@notepos<\slnc@textpos\relax
+ \@tempdima=\numexpr \slnc@textpos-\slnc@notepos\relax sp
\PackageInfo{scrlayer-notecolumn}{%
- Top position is \slnc@textpos%
+ skipping \the\@tempdima\space to sync%
}%
- \fi
- \ifnum\slnc@notepos>\slnc@textpos\relax
- \PackageInfo{scrlayer-notecolumn}{%
- Last note position before last text\MessageBreak
- position.\MessageBreak
- Need rerun to sync position%
- }%
- \else
- \ifnum\slnc@notepos<\slnc@textpos\relax
- \@tempdima=\numexpr \slnc@textpos-\slnc@notepos\relax sp
- \PackageInfo{scrlayer-notecolumn}{%
- skipping \the\@tempdima\space to sync%
- }%
- \vskip\@tempdima
- \fi
+ \vskip\@tempdima
\fi
\fi
- }%
+ \fi
}%
- \endgroup
- }%
+ }%
+ \endgroup
}
-\scrlayerAddToInterface\slnc@vadjust{%
- \newcommand{\slnc@vadjust}[1]{%
- \@bsphack
- \vadjust{#1}%
- \@esphack
- }%
+\newcommand{\slnc@vadjust}[1]{%
+ \@bsphack
+ \vadjust{#1}%
+ \@esphack
}
-%%% From File: $Id: scrlayer-notecolumn.dtx 3426 2019-12-02 09:15:20Z kohm $
+%%% From File: $Id: scrlayer-notecolumn.dtx 3533 2020-09-11 13:32:10Z kohm $
%%% (run: final)
\DeclareNoteColumn{marginpar}
\let\reserved@a\clearpage
@@ -1421,7 +1304,7 @@
\ifslnc@autoclearnotecolumns\clearnotecolumns\relax\fi
}%
\expandafter\g@addto@macro\expandafter\clearpage\expandafter{\reserved@a}
-%%% From File: $Id: scrlogo.dtx 2640 2017-05-08 09:36:55Z kohm $
+%%% From File: $Id: scrlogo.dtx 3527 2020-09-11 09:44:32Z kohm $
\@ifundefined{KOMAScript}{%
\DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em%
M\kern.05em A\kern.1em-\kern.1em Script}}}{}