如何格式化 eledmac 的双栏脚注

如何格式化 eledmac 的双栏脚注

在 karlkoeller 想出解决方案之后使用 dblfnote 时,如何在脚注内允许分页符?我非常喜欢使用它,但不幸的是脚注的样式不够灵活。以下 MWE 展示了我想要的战争以及我目前所得到的……

\documentclass{scrbook}

% WHAT I WANT
%\deffootnotemark{\textsuperscript{\thefootnotemark}}
%\usepackage{dblfnote}% Setzt die Fußnoten zweispaltig
%   \DFNtrysingle
%   \renewcommand\footnoterule{\vspace*{-3pt}%
%        \vspace*{2.6pt}%
%   }
%   \setlength{\DFNcolumnsep}{1.5em}
%   \setlength{\skip\footins}{1\baselineskip plus 20pt minus 5pt}
%\deffootnote{1.4em}{1em}{%
%   \makebox[1.4em][l]{\thefootnotemark}%
%}
%\setkomafont{footnote}{\itshape}

% WHAT I GOT
\usepackage{eledmac,etoolbox}
   \patchcmd{\twocolfootfmtX}{\raggedright}{}{}{}
   \foottwocolX{C}

   \renewcommand\Cfootnoterule{\vspace*{-3pt}\vspace*{2.6pt}}
   \setlength{\skip\Cfootins}{1\baselineskip plus 20pt minus 5pt}

   \Xhangindent[C]{1.4em}
   \afternumberinfootnote[C]{0em}
   \boxlinenum[C]{1.4em}

   \notenumfontX[C]{\itshape}

   \newlength{\fncolwidth}
      \setlength{\fncolwidth}{0.5\textwidth}
      \addtolength{\fncolwidth}{-0.75em}
   \hsizetwocol[C]{\fncolwidth}

   \let\footnote\footnoteC


\usepackage{lipsum}
\setlength{\parskip}{0pt}

\begin{document}
   Lipsum\footnote{\lipsum[1]} \lipsum[1]
   Lipsum\footnote{\lipsum[2]} \lipsum[3]
   Lipsum\footnote{\lipsum[2-4]} \lipsum[2]
   Lipsum\footnote{\lipsum[2]} \lipsum[1]
\end{document}

在我的真实文档中,我还遇到了一个问题,即列间隙不起作用:

列间距问题

答案1

通过一些格式化,以下或多或少就是您想要实现的目标......

\documentclass{scrbook}

\usepackage{eledmac}

\notenumfontX[C]{\itshape}
\hsizetwocolX[C]{\dimexpr.5\columnwidth-.75em\relax}
\hangindentX[C]{1.4em}

\renewcommand\footnoteruleC{\relax}
\setlength{\skip\footinsC}{1\baselineskip plus 20pt minus 5pt}


\makeatletter
\renewcommand*{\twocolfootfmtX}[2]{%
   \protected@edef\@currentlabel{%
       \@nameuse{@thefnmark#1}%
   }%
  \normal@pars
  \everypar{\hangindent=\csuse{hangindentX@#1}}%
  \hsize \csuse{hsizetwocolX@#1}
  \parindent=\z@
%%%  \parfillskip=0pt \@plus 1fil
  \tolerance=5000\relax
  \leavevmode
  {\csuse{notenumfontX@#1}\@nameuse{footfootmark#1}\strut%\enspace
    #2\strut\par}\allowbreak}
\makeatother

\foottwocolX{C}

\let\footnote\footnoteC

\usepackage{lipsum}

\setlength{\parskip}{0pt}

\begin{document}
   Lipsum\footnote{\lipsum[1]} \lipsum[1]
   Lipsum\footnote{\lipsum[2]} \lipsum[3]
   Lipsum\footnote{\lipsum[2-4]} \lipsum[2]
   \lipsum[2-4]\footnote{\lipsum[2]} \lipsum[1]
\end{document} 

在此处输入图片描述

答案2

由于您没有设置,所以列间隙不起作用。

\hsizetwocol[C]{\fncolwidth}用于设置重要注释的列宽。

\hsizetwocolX[C]{\fncolwidth}用于设置熟悉笔记的列宽。

答案3

这是我根据 karl 的回答创建的格式:

\documentclass{scrbook}

\setlength{\parskip}{0pt}

\usepackage{eledmac}

\notenumfontX[C]{\itshape}% actually this will be
                          % a condenses upright font

\renewcommand\footnoteruleC{\relax}
\setlength{\skip\footinsC}{1\baselineskip plus 20pt minus 5pt}

\hsizetwocolX[C]{\dimexpr.5\columnwidth-.75em\relax}
\hangindentX[C]{1.4em}
\makeatletter
\renewcommand*{\twocolfootfmtX}[2]{%
   \protected@edef\@currentlabel{%
      \@nameuse{@thefnmark#1}%
   }%
   \normal@pars
   %\everypar{\hangindent=\csuse{hangindentX@#1}}%
   \hsize \csuse{hsizetwocolX@#1}
   \setlength{\parskip}{0pt}%
   %\addtolength{\parindent}{\csuse{hangindentX@#1}}
   %%%  \parfillskip=0pt \@plus 1fil
   \tolerance=5000\relax
   \leavevmode
   {%
      \hspace*{-\parindent}%
      \csuse{notenumfontX@#1}%
      \makebox[1.4em][l]{%
         \textbf{\@nameuse{@thefnmark#1}}%
         %\strut%\enspace
      }%
   #2\strut\par
   }%
   \allowbreak
}
\renewcommand*{\normalbodyfootmarkX}[1]{%
   \textsuperscript{\@nameuse{@thefnmark#1}}%
}
\makeatother

\foottwocolX{C}
\let\footnote\footnoteC

\usepackage{lipsum}

\begin{document}
   Lipsum\footnote{\lipsum[1]} \lipsum[1]
   Lipsum\footnote{\lipsum[2]} \lipsum[3]
   Lipsum\footnote{\lipsum[2-4]} \lipsum[2]
   \lipsum[2-4]\footnote{\lipsum[2]} \lipsum[1]
\end{document} 

结果

相关内容