定理名称/页边编号

定理名称/页边编号

我之前曾看到过关于同一问题的讨论(见定理名称和编号在页边,正文中有注释),然而这并没有像我希望的那样清楚地解决任何问题。

基本上,我希望在页面左侧有一个可见的边距(即:一条垂直线)。在边距内,我希望显示章节编号(但不是名称)、方程编号、定理名称及其各自的编号,但我对 LaTeX 还不太熟悉,不知道该怎么做。

使用符号“|”表示边距位置的示例如下:

                3.1. | Continuous Groups
                     |
      Definition 3.1 | Lie Group:.....
             (3.1.1.)| [SOME EQUATION HERE]
      Definition 3.2 | Lie Algebra:....

先感谢您。

仅需澄清几点(根据评论更新)1. 文档是单面的,因此只有左侧边距相关。2. 欢迎提出有关哪个定理包更合适的建议。

答案1

我认为以下内容可以满足您的要求。

截屏

我使用过的软件包是

  • esopic在页边空白处添加灰色竖线
  • titlesec使用以下方式自定义章节编号\llap
  • ntheorem创建一个自定义定义环境-你可以等效地使用amsthm,但我更熟悉ntheorem

我借用了一些代码/想法

代码:

   % arara: pdflatex
% !arara: indent: {overwrite: on}
\documentclass{report}

\usepackage{xcolor}                 % to have colors 
\usepackage{eso-pic}                % put things into background 
\usepackage{lipsum}                 % for sample text
\usepackage{titlesec}     % for customizing sections
\usepackage[leqno]{amsmath}         % for mathematical content
\usepackage[amsmath]{ntheorem}      % for theorem-like environments

% customize the tag form of the equations
\makeatletter
\let\mytagform@=\tagform@
\def\tagform@#1{\maketag@@@{\hbox{\llap{(\ignorespaces#1\unskip\@@italiccorr)\hspace{1mm}}}}\kern1sp}
\renewcommand{\eqref}[1]{{\mytagform@{\ref{#1}}}}
\makeatother

% customize section
\titleformat{\section}%
{\Large\bfseries}% format
{\llap{% label
    \thesection\hskip 9pt}}%
{0pt}% horizontal sep
{}% before

% customize subsection
\titleformat{\subsection}%
{\bfseries}% format
{\llap{% label
    \thesubsection\hskip 9pt}}%
{0pt}% horizontal sep
{}% before

% add vertical bar- change colour and thickness as desired
\AddToShipoutPicture{% from package eso-pic: put something to the background
    % 3. Text area
    \AtTextLowerLeft{% put it at the left bottom of the text area
        \llap{\color{gray}\rule{.1cm}{\LenToUnit\textheight}% can put spacing here, e.g \hspace{.25cm}
        }%
    }%
}

% margin theorem
\makeatletter
\newtheoremstyle{mymargin}%
{\item[\theorem@headerfont \llap{##1 ##2}]}%
{\item[\theorem@headerfont \llap{##1 ##2}| ##3\theorem@separator\hskip\labelsep]}%
\makeatother

% my definition
\theoremstyle{mymargin}
\theorembodyfont{}      % customize these to suit your tastes
\theoremsymbol{}
\theoremprework{}
\theorempostwork{}
\theoremseparator{}
\newtheorem{mydefinition}{Definition}
\numberwithin{mydefinition}{section}

\begin{document}
\chapter{My chapter}
\section{First section}
\lipsum[1]
\begin{mydefinition}
\lipsum[2]
\begin{equation}\label{eq:myequation}
    f(x)=x^2
\end{equation}
Test reference: \eqref{eq:myequation}
\end{mydefinition}

\end{document}

相关内容