我正在使用 Platex(日语 Latex 编译器),并尝试更改列表和图表的标题系统。对于这两者,我希望编号基于章节,因此如果它是第 2 节中的图表或列表,我希望它采用 2.1 的样式
我还想将标签 Listing 更改为 list。
我使用的文档类型是 jarticle,因为它是我发现的唯一适用于日文字母的类型。
如有任何建议我将非常感激。
我当前代码的示例如下
\documentclass[a4paper]{jarticle}
\usepackage{listings}
\usepackage[dvipdfm]{graphicx}
\title{title}
\author{name}
\begin{document}
\begin{titlepage}
\maketitle
\vfill
\tableofcontents
\end{titlepage}
\section{Basics}
\normalsize
\begin{figure}[ht]
\centering
\includegraphics[width=200pt]{1.eps}
\caption{some caption}%
\end{figure}
\section{Bar}
\normalsize
\scriptsize
\lstset{numbers=left, stepnumber=5, caption={text}, escapeinside={\%*}{*)}, frame=single, tabsize=2}
\begin{lstlisting}
code here
\end{lstlisting}
\end{document}
答案1
您可以将该\@addtoreset{figure}{section}
命令与 结合使用\renewcommand{\thefigure}{\thesection.\arabic{figure}}
。请参阅这页。
要说一下更改列表名称,查看您使用哪个包来格式化它们会很有帮助。请创建一个最小工作示例 (MWE)。
这是我的,其中显示了我认为你需要的一切……
\documentclass{article}
\usepackage{listings}
\renewcommand{\lstlistingname}{List}% [1]
\makeatletter% [2]
\@addtoreset{lstlisting}{section}% [3]
\makeatother
\AtBeginDocument{% [4]
\renewcommand{\thelstlisting}{\thesection.\arabic{lstlisting}}%[5]
}
\begin{document}
\section{Section}
Content ...
\begin{lstlisting}[caption=Test]
Test ...
\end{lstlisting}
\end{document}
笔记:
[1] 更改列表名称
[2] 需要使用包含@
[3] 的命令,让列表计数器在新的部分中重置
[4] 因为\thelstlistings
在开始文档之前未定义,所以是必要的。
[5] 更新数字布局。
正如 egreg 所说,还有第二种包装方式chngcntr
,也许有人更喜欢这种方式……
\documentclass{article}
\usepackage{listings}
\usepackage{chngcntr}
\counterwithin{figure}{section}
\AtBeginDocument{\counterwithin{lstlisting}{section}}
\renewcommand{\lstlistingname}{List}
\begin{document}
\section{Section}
Content ...
\begin{lstlisting}[caption=Test]
Test ...
\end{lstlisting}
\begin{figure}
\rule{1cm}{1cm}
\caption{A example}
\end{figure}
\end{document}