
Я работаю над статьей и не хочу нумеровать разделы. Однако я хочу, чтобы подразделы и подподразделы были пронумерованы. Сейчас в моем документе есть эта нумерация, но 0 в 0.XY там быть не должно. Как это исправить?
Currently:
Section
0.1 subsection
0.2 subsection
0.2.1 subsubsection
0.3 subsection
Should be:
Section
1. subsection
2. subsection
2.1 subsubsection
3. subsection
Вот мой код:
\documentclass{article}
\begin{document}
\section*{Section}
\subsection{subsection}
\subsection{subsection}
\subsubsection{subsubsection}
blah
\subsection{subsection}
\end{document}
P.S.: ЯделалПоискал в интернете и нашел много информации по этой теме, но не нашел решения этой конкретной проблемы.
решение1
Если вы заинтересованы в печати \section{<heading>}
таким же образом, как и при \section*{<heading>}
обычной печати (то есть, с выравниванием по левому краю и без отступа), тоtitlesec
обеспечивает простой интерфейс:
\documentclass{article}
\usepackage{titlesec}% http://ctan.org/pkg/titlesec
\titleformat{\section}%
[hang]% <shape>
{\normalfont\bfseries\Large}% <format>
{}% <label>
{0pt}% <sep>
{}% <before code>
\renewcommand{\thesection}{}% Remove section references...
\renewcommand{\thesubsection}{\arabic{subsection}}%... from subsections
\begin{document}
\section{First section}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam sollicitudin rutrum tellus,
eu luctus dolor commodo eu. Integer pellentesque mollis congue.
\subsection{First subsection}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam sollicitudin rutrum tellus,
eu luctus dolor commodo eu. Integer pellentesque mollis congue.
\subsection{Second subsection}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam sollicitudin rutrum tellus,
eu luctus dolor commodo eu. Integer pellentesque mollis congue.
\subsubsection{First subsubsection}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam sollicitudin rutrum tellus,
eu luctus dolor commodo eu. Integer pellentesque mollis congue.
\subsection{Last subsection}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam sollicitudin rutrum tellus,
eu luctus dolor commodo eu. Integer pellentesque mollis congue.
\section{Second section}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam sollicitudin rutrum tellus,
eu luctus dolor commodo eu. Integer pellentesque mollis congue.
\subsection{First subsection}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam sollicitudin rutrum tellus,
eu luctus dolor commodo eu. Integer pellentesque mollis congue.
\end{document}
Это просто устанавливает разделитель меток между номером раздела и заголовком на 0pt
, а также не печатает номер. \normalfont\bfseries\Large
Это форматирование по умолчанию дляarticle
.
решение2
Примечание: я значительно переписал этот ответ после того, как узнал о комментарии Ульрики Фишер к ответу @knut.
Необходимо выполнить два шага. Первый, простой шаг заключается в переопределении \thesubsection
макроса. Второй, менее очевидный шаг включает переопределение внутреннего макроса LaTeX \@seccntformat
, как объясняется в книгеКомпаньон LaTeX, 2-е изд. Следующий MWE применяет оба шага:
\documentclass{article}
\renewcommand{\thesubsection}{\arabic{subsection}}
\makeatletter
\def\@seccntformat#1{\@ifundefined{#1@cntformat}%
{\csname the#1\endcsname\quad}% default
{\csname #1@cntformat\endcsname}}% enable individual control
\newcommand\section@cntformat{} % section level
\makeatother
\begin{document}
\section{First Section}
\subsection{First subsection}
\subsection{Second subsection}
\subsubsection{First subsubsection}
\subsection{Third subsection}
\section{Second Section}
\subsection{A new subsection}
\end{document}
Приложениедля ответа на дополнительный вопрос @Adam: чтобы (a) добавить точки после номеров подразделов (и подподразделов) в заголовках секций и (b) заменить неявную \quad
директиву пробелов на \space
, вам необходимо указать следующие две директивы в преамбуле, непосредственно перед \makeatother
:
\newcommand\subsection@cntformat{\thesubsection.\space}
\newcommand\subsubsection@cntformat{\thesubsubsection.\space}
Пересмотренный MWE:
\documentclass{article}
\renewcommand{\thesubsection}{\arabic{subsection}}
\makeatletter
\def\@seccntformat#1{\@ifundefined{#1@cntformat}%
{\csname the#1\endcsname\quad}% default
{\csname #1@cntformat\endcsname}}% enable individual control
\newcommand\section@cntformat{} % section level
\newcommand\subsection@cntformat{\thesubsection.\space} % subsection level
\newcommand\subsubsection@cntformat{\thesubsubsection.\space} % subsubsection level
\makeatother
\begin{document}
\section{First Section}
\subsection{First subsection}
\subsection{Second subsection}
\subsubsection{First subsubsection}
\subsection{Third subsection}
\section{Second Section}
\subsection{A new subsection}
\end{document}
решение3
Подходит ли вам это:
\documentclass{article}
\begin{document}
\part*{Section}
\section{subsection}
\section{subsection}
\subsection{subsubsection}
blah
\section{subsection}
\end{document}
Или есть особая причина, по которой вам нужны разделы как разделы, а подразделы как подразделы?
Альтернатива:
\documentclass{article}
\renewcommand{\thesection}{}
\renewcommand{\thesubsection}{\arabic{subsection}}
\begin{document}
\section{Section}
\subsection{subsection}
\subsection{subsection}
\subsubsection{subsubsection}
blah
\subsection{subsection}
\section{Section 2}
\subsection{subsection 2}
This subsection starts again with 1.
\end{document}