使用 `informs3` 文档类中的 `showkeys` 或 `showlabels` 在边距中显示和包装长标签

使用 `informs3` 文档类中的 `showkeys` 或 `showlabels` 在边距中显示和包装长标签

我想在页边空白处显示章节、定理和方程的较长标签,并设置换行符,以免它们超出页边空白。我尝试了以下两个答案这个问题,但都不能与informs3文檔類別。

---------- 现有方法如何失败 - 请随意跳过 ----------

为了第一个答案给定此处,标签中的每个字符将显示在单独的行中: 第一个答案的结果

为了第二个答案,标签将延伸到页面的文本主体中: 第二个答案的结果

---------- 现有方法失败的结束 ----------

理想情况下,我希望每个标签都能够显示出来,以便

  1. 占据页边距的整个水平空间:从纸张边缘到正文边缘;
  2. 用“打开方框”(␣)符号替换每个空白处;并且
  3. 根据需要在任意字符处断行(包括单词的中间,这样就满足了目标 1)。

当然,标签显示不应该以其他方式改变文档的呈现方式。

以下是 MWE:

    \documentclass{informs3}
    
    %Existing methods to display the label
    
    %Method 1 (does not work)
    %\usepackage{seqsplit}
    %\usepackage{showkeys}
    %\usepackage{xstring}
    %\renewcommand*\showkeyslabelformat[1]{%
    %   \noexpandarg%
    %   % instead of \textvisiblespace you can also put in ~
    %   % if you want to keep a plain space at space characters
    %   \StrSubstitute{\(\{\)#1\(\}\)}{ }{\textvisiblespace}[\TEMP]%
    %   \parbox[t]{\marginparwidth}%
    %   {\raggedright\normalfont\small\ttfamily\expandafter\seqsplit\expandafter{\TEMP}}}
    
    %Method 2 (does not work)
    %\usepackage{showkeys}
    %\renewcommand*\showkeyslabelformat[1]{%
    %   \fbox{\parbox[t]{\marginparwidth}{\raggedright\normalfont\small\ttfamily#1}}}
    
    \TheoremsNumberedThrough %to define theorem-type environments
    
    \begin{document}
        
    \section{The Main Section} \label{sec:a really looooooooooooooooong label for a section}
    
    \begin{equation}
        a=b \label{eqn:a long label for an equation}
    \end{equation}
    
    \begin{theorem} \label{thm:a long label for a theorem}
        Example of a theorem with a long label.
    \end{theorem}
    
    \end{document}
    

答案1

那么类将 \marginparwidth 设置为零,然后您的代码会努力将标签放入这个空间。您可以尝试类似这样的操作。标签仍会重叠,但由于没有更多空间,因此对此无能为力:

\documentclass{informs3}
\usepackage[T1]{fontenc}
\usepackage{showkeys}
\ExplSyntaxOn
\renewcommand*\showkeyslabelformat[1]{%
 \fbox{\parbox[t]{1.5cm}{\SingleSpacedXI\raggedright\normalfont\small\ttfamily\str_map_inline:nn{#1}{##1\hspace{0pt}}}}}
\ExplSyntaxOff      
%    
\TheoremsNumberedThrough %to define theorem-type environments
    \def\blub{123}
    \begin{document}
        
    \section{The Main Section} \label{sec:a really_looooooooooooooooong label for a section}
    
    \begin{equation}
        a=b \label{eqn:a long label for an equation}
    \end{equation}
    
    \begin{theorem} \label{thm:a long label for a theorem}
        Example of a theorem with a long label.
    \end{theorem}
    
    \end{document}

在此处输入图片描述

相关内容