我正在尝试格式化课堂中的章节标题memoir
,因此其中没有章节编号,并且我不想使用该\section*
命令,因为它会使它在目录和标题中显示变得更加麻烦。
目前,我的序言的相关部分如下:
\usepackage{titlesec}
\setcounter{secnumdepth}{0}
\setcounter{tocdepth}{3}
% CHAPTER FORMAT
\titleformat{\chapter}[hang]
{\Huge\sffamily\bfseries}
{\thechapter}
{10pt}
{\Huge}
% SECTION FORMAT
\titleformat{\section}
{\sffamily\normalsize\bfseries}
{\thesection}
{1em}
{}
\titlespacing{\section}
{0pt}
{0\parskip}
{0\parskip}
[0pt]
% SUBSECTION FORMAT
\titleformat{\subsection}
{\itshape\normalsize}
{\thesubsection}
{}
{}
\titlespacing{\subsection}
{0pt}
{0\parskip}
{-1\parskip}
[0pt]
即使我已将 设置secnumdepth
为0
,但章节标题中的编号仍然存在。
这正是我想要的:
- 目录中的章节、节和小节
- 编号章节(文本和目录中)
- 未编号的章节和小节(包括正文和目录),但不使用
\section*
我唯一的问题是我似乎无法摆脱章节编号。
编辑:
根据要求,这里有一个工作示例:
\documentclass[a4paper, twoside]{memoir}
\usepackage{lipsum}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
% LANGUAGE/HYPHENATION
\usepackage[english, danish]{babel}
% INDENTS AND MORE
\setlength{\baselineskip}{12pt plus 0pt minus 0pt}
\setlength{\parskip}{12pt plus 0pt minus 0pt} % Skip size after paragraph
\setlength{\parindent}{0mm} % Indent size
\usepackage{indentfirst} %
% HEADER / PAGE STYLE
\setlength{\headwidth}{\textwidth}
\addtolength{\headwidth}{\marginparsep}
\addtolength{\headwidth}{\marginparwidth}
\copypagestyle{thesis}{myheadings}
\makerunningwidth{thesis}{\headwidth}
\makeheadrule{thesis}{\headwidth}{0.2pt}
\makeheadposition{thesis}{flushright}{flushleft}{}{}
\makepsmarks{thesis}{%
\nouppercaseheads
\createmark{chapter}{left}{nonumber}{\@chapapp\ }{. \ }
\createmark{section}{right}{nonumber}{}{}
\createplainmark{toc}{both}{\contentsname}
\createplainmark{lof}{both}{\listfigurename}
\createplainmark{lot}{both}{\listtablename}
\createplainmark{bib}{both}{\bibname}
\createplainmark{index}{both}{\indexname}
\createplainmark{glossary}{both}{\glossaryname}
}
\makeevenhead{thesis}%
{\sffamily\bfseries\small\thepage}{}{\sffamily\bfseries\small\leftmark}
\makeoddhead{thesis}%
{\sffamily\bfseries\small\rightmark}{}{\sffamily\bfseries\small\thepage}
\pagestyle{thesis}
\aliaspagestyle{chapter}{empty} % empty page style
% FORMAT TOC + LOF + LOT
\renewcommand\printtoctitle{\Huge\sffamily\bfseries}
\renewcommand\printloftitle{\Huge\sffamily\bfseries}
\renewcommand\printlottitle{\Huge\sffamily\bfseries}
% FONTS
\renewcommand{\rmdefault}{cmr}
\renewcommand{\sfdefault}{phv}
\renewcommand{\ttdefault}{pcr}
\renewcommand\familydefault{\rmdefault}
% FORMAT CHAP, SEC, SUBSEC
\usepackage{titlesec}
\setcounter{secnumdepth}{0}
\setcounter{tocdepth}{3}
% CHAPTER FORMAT
\titleformat{\chapter}[hang]
{\Huge\sffamily\bfseries}
{\thechapter}
{1em}
{\Huge}
% SECTION FORMAT
\titleformat{\section}
{\sffamily\normalsize\bfseries}
{\thesection}
{1em}
{}
\titlespacing{\section}
{0pt}
{0\parskip}
{0\parskip}
[0pt]
% SUBSECTION FORMAT
\titleformat{\subsection}
{\itshape\normalsize}
{\thesubsection}
{}
{} % Intet linieskift efter subsection
\titlespacing{\subsection}
{0pt}
{0\parskip}
{-1\parskip}
[0pt]
\begin{document}
\selectlanguage{english}
\frontmatter
\tableofcontents
\paragraph*{Abstract}
\lipsum[1]
\mainmatter
\chapter{Test Chapter}
\lipsum[1]
\section{Test Section}
\lipsum[1]
\subsection{Test Subsection}
\lipsum
\end{document}
答案1
这里没有太多理由使用 titlesec。只需使用回忆录自己的界面来格式化即可。
但是,当你想使用 frontmatter 和 mainmatter 并且想要改变 secnumdepth 时,记得使用
\setsecnumdepth{chapter}
\maxsecnumdepth{chapter}
maxsecnumdepth(坏名字)是 secnumdepth 在 mainmatter 开始时重置的值