我有这样的事情:

Section 1
...
Section 2
...
Section 3
Subsection 3.1
...
Section 4
...

我想要这样的东西:
Section 1
...
Section 2
...
Section A
Subsection A.1
...
Section 4
...

换句话说-将段号之一更改为其他3 == A
在论文类中写的论文中,我需要这个,当我尝试添加附录时,hyperref包坏了,并且“链接”到指向附录A的第1节

编辑:
在描述问题时我犯了一个错误,我的意思是目录不起作用,因为LaTeX会生成代码(* .toc文件):
\contentsline {section}{\numberline {1}}{1}{section.1}
\contentsline {section}{\numberline {2}}{1}{section.2}
\contentsline {section}{\numberline {A}}{1}{section.1}

最佳答案

我创建了以下构造,现在对其进行了更新:

说明:

一个新的节计数器,将仅在\begin{alphasection} ... \end{alphasection}块中使用。不要嵌套该块,否则原始的段号将会丢失;在这种情况下会给出错误消息。每个块将从“A”开始重新计数。继续进行原始节计数,这是HyperRef所必需的。

将以下代码放入前言中:

\newcounter{alphasect}
\def\alphainsection{0}

\let\oldsection=\section
\def\section{%
  \ifnum\alphainsection=1%
    \addtocounter{alphasect}{1}
  \fi%
\oldsection}%

\renewcommand\thesection{%
  \ifnum\alphainsection=1%
    \Alph{alphasect}
  \else%
    \arabic{section}
  \fi%
}%

\newenvironment{alphasection}{%
  \ifnum\alphainsection=1%
    \errhelp={Let other blocks end at the beginning of the next block.}
    \errmessage{Nested Alpha section not allowed}
  \fi%
  \setcounter{alphasect}{0}
  \def\alphainsection{1}
}{%
  \setcounter{alphasect}{0}
  \def\alphainsection{0}
}%

文档中:
\section{First test}
First content
\section{Second test}
Second content
\begin{alphasection}
\section{Third test}
\subsection{Subsection test}
Content test
\section{Test Other section}
\end{alphasection}
\section{Fourth test}
Last content

产生:
1 First test
   First content

2 Second test
   Second content

A Third test
A.1 Subsection test
   Content test

B Test Other section

5 Fourth test
   Last content

经过测试,可与HyperRef一起使用。

关于LaTeX:如何将部分编号之一更改为自定义字母?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2839647/

10-10 05:22