を\mathsection
chapter
が、ゴンサロメディナが私のために考え出しました章内で\mathsectionを使用する。
しかし、彼の解決策を使用すると、目次が次のように間違ってしまいました。
私のテンプレートのコードは次のとおりです:
\documentclass[11pt,a4paper]{amsbook}
\usepackage{bbold,amscd,amsmath,amssymb,amsfonts,ifthen,amsthm}
\usepackage[utf8]{vietnam}
\usepackage{titlesec}
\usepackage[all]{xypic}
\usepackage{kpfonts}`
%%%%% FOR SEARCHING LABELS AND REFS %%%%%%%%%%%%%%%
\usepackage{color}
\usepackage[color,notref,notcite]{showkeys}
\definecolor{refkey}{rgb}{0,0,0}
\definecolor{labelkey}{rgb}{0,0,1}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{newcent}
%\usepackage[unicode]{hyperref}
\usepackage{cmap}
%%%%%MARGIN %%%%%%%%%%%%%%%%%%%
\oddsidemargin 2cm %0.3cm
\evensidemargin 2cm % 3cm
\topmargin2cm
\textwidth12cm %15
\textheight18.5cm %22
\headheight3ex
\headsep5ex
\topskip3ex
%% FOR TYPESETTING VIETNAMESE WITH AMSART %%%%%%
\def\firstofone#1{#1}
\let\uppercase\firstofone
\let\MakeUppercase\firstofone
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%STYLE%%%%%%%%%%%
\def\thepart{\Roman{part}}
\def\thechapter{\arabic{chapter}}
\def\thesection{\arabic{section}}
\def\labelenumi{\roman{enumi})}
%\numberwithin{thm}{section}
\numberwithin{equation}{section}
\titleformat{\chapter}[display]
{\normalfont\huge\filcenter\scshape}{\chaptertitlename\ \thechapter}{0.2pt}{}
\titleformat{\section}
{\normalfont\Large\bfseries}{\S\thesection.}{0.1em}{}
%THEOREM%%%%%%%%%%%%%%%%
\theoremstyle{plain}
\newtheorem{thm}{Theorem}[section]
\newtheorem{dl}[thm]{Định lý}
\newtheorem{bd}[thm]{Bổ đề}
\newtheorem{hq}[thm]{Hệ quả}
\newtheorem{md}[thm]{Mệnh đề}
\theoremstyle{definition}
\newtheorem{nx}[thm]{Nhận xét}
\newtheorem{chuy}[thm]{Chú ý}
\newtheorem{dn}[thm]{Định nghĩa}
\newtheorem{vidu}[thm]{Ví dụ}
\newtheorem{bt}{}[section]
% miscellaneous
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\pagestyle{myheadings}
\begin{document}
\parskip4pt
\renewcommand{\baselinestretch}{1.1}
\frontmatter
\tableofcontents
\normalsize
\chapter*{Lời nói đầu}
Thử xem thế nào.\\
Let's try it.\\
\chapter*{Các ký hiệu}
\markleft{\sc Các ký hiệu}
\markright{\sc Các ký hiệu}
Ta sẽ dùng các ký hiệu sau \\
We will use these following notations.\\
\mainmatter
\pagenumbering{arabic}
\markleft{\hfill \sc Nguyễn Minh Hà}
\chapter{Hướng của đoạn thẳng}
\markright{\sc Hướng của đoạn thẳng\hfill\ }
\section{Hình thang và hình bình hành}
We define the following figure.\\
\section{Đoạn thẳng}
We define the following arc.\\
\backmatter
\begin{thebibliography}{99}
\end{thebibliography}
\end{document}
\mathsection
では、、セクション数、セクション名、ページ数を含む正しいコンテンツを取得するには、テンプレートをどのように修正すればよいでしょうか?
答え1
ドキュメント クラスは でありamsbook
、標準のクラスではないため、 を使用しない方がよいでしょうtitlesec
。次のコードには、セクション単位に必要な再定義が含まれており、ToC の番号の前に 記号も追加されます。
\documentclass[11pt,a4paper]{amsbook}
\usepackage{bbold,amscd,amsmath,amssymb,amsfonts,ifthen,amsthm}
\usepackage[utf8]{vietnam}
\usepackage[all]{xypic}
\usepackage{kpfonts}
%%%%% FOR SEARCHING LABELS AND REFS %%%%%%%%%%%%%%%
\usepackage{color}
\usepackage[color,notref,notcite]{showkeys}
\definecolor{refkey}{rgb}{0,0,0}
\definecolor{labelkey}{rgb}{0,0,1}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{newcent}
%\usepackage[unicode]{hyperref}
\usepackage{cmap}
%%%%%MARGIN %%%%%%%%%%%%%%%%%%%
\oddsidemargin 2cm %0.3cm
\evensidemargin 2cm % 3cm
\topmargin2cm
\textwidth12cm %15
\textheight18.5cm %22
\headheight3ex
\headsep5ex
\topskip3ex
%% FOR TYPESETTING VIETNAMESE WITH AMSART %%%%%%
\def\firstofone#1{#1}
\let\uppercase\firstofone
\let\MakeUppercase\firstofone
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%STYLE%%%%%%%%%%%
\def\thepart{\Roman{part}}
\def\thechapter{\arabic{chapter}}
\def\thesection{\arabic{section}}
\def\labelenumi{\roman{enumi})}
%\numberwithin{thm}{section}
\numberwithin{equation}{section}
%THEOREM%%%%%%%%%%%%%%%%
\theoremstyle{plain}
\newtheorem{thm}{Theorem}[section]
\newtheorem{dl}[thm]{Định lý}
\newtheorem{bd}[thm]{Bổ đề}
\newtheorem{hq}[thm]{Hệ quả}
\newtheorem{md}[thm]{Mệnh đề}
\theoremstyle{definition}
\newtheorem{nx}[thm]{Nhận xét}
\newtheorem{chuy}[thm]{Chú ý}
\newtheorem{dn}[thm]{Định nghĩa}
\newtheorem{vidu}[thm]{Ví dụ}
\newtheorem{bt}{}[section]
% miscellaneous
% Chapter and section headings
\makeatletter
\def\@makechapterhead#1{\global\topskip 5.5pc\relax
\begingroup
\fontsize{\@xivpt}{18}\bfseries\centering
\ifnum\c@secnumdepth>\m@ne
\leavevmode \hskip-\leftskip
\rlap{\vbox to\z@{\vss
\centerline{\normalsize\mdseries
\@xp{\scshape{\chaptername}}\enspace\thechapter}
\vskip 2pc}}\hskip\leftskip\fi
\normalfont\scshape#1\par \endgroup
\skip@34\p@ \advance\skip@-\normalbaselineskip
\vskip\skip@ }
\def\@makeschapterhead#1{\global\topskip 7.5pc\relax
\begingroup
\fontsize{\@xivpt}{18}\normalfont\scshape\centering
#1\par \endgroup
\skip@34\p@ \advance\skip@-\normalbaselineskip
\vskip\skip@ }
\def\@sect#1#2#3#4#5#6[#7]#8{%
\edef\@toclevel{\ifnum#2=\@m 0\else\number#2\fi}%
\ifnum #2>\c@secnumdepth \let\@secnumber\@empty
\else \@xp\let\@xp\@secnumber\csname the#1\endcsname\fi
\ifnum#2=1 \def\@secnumber{\S\thesection}\fi
\ifnum #2>\c@secnumdepth
\let\@svsec\@empty
\else
\refstepcounter{#1}%
\edef\@svsec{\ifnum#2<\@m
\@ifundefined{#1name}{}{%
\ignorespaces\csname #1name\endcsname\space}\fi
\@nx\textup{%
\csname the#1\endcsname.}\enspace
}%
\fi
\@tempskipa #5\relax
\ifdim \@tempskipa>\z@ % then this is not a run-in section heading
\begingroup\ifnum#2=1\relax\noindent\textbf{\S}\fi #6\relax% NEW
\@hangfrom{\hskip #3\relax\@svsec}{\interlinepenalty\@M #8\par}%
\endgroup
\csname #1mark\endcsname{#7}%
\ifnum#2>\@m \else \@tocwrite{#1}{#8}\fi
\else
\def\@svsechd{#6\hskip #3\@svsec
\@ifnotempty{#8}{\ignorespaces#8\unskip
ñññ\@addpunct.}%
\ifnum#2>\@m \else \@tocwrite{#1}{#8}\fi
}%
\fi
\global\@nobreaktrue
\@xsect{#5}}
\def\section{\@startsection{section}{1}%
\z@{.7\linespacing\@plus\linespacing}{.5\linespacing}%
{\normalfont\bfseries}}
\makeatother
%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\pagestyle{myheadings}
\begin{document}
\parskip4pt
\renewcommand{\baselinestretch}{1.1}
\frontmatter
\tableofcontents
\normalsize
\chapter*{Lời nói đầu}
Thử xem thế nào.\\
Let's try it.\\
\chapter*{Các ký hiệu}
\markleft{\sc Các ký hiệu}
\markright{\sc Các ký hiệu}
Ta sẽ dùng các ký hiệu sau \\
We will use these following notations.\\
\mainmatter
\pagenumbering{arabic}
\markleft{\hfill \sc Nguyễn Minh Hà}
\chapter{Hướng của đoạn thẳng}
\markright{\sc Hướng của đoạn thẳng\hfill\ }
\section{Hình thang và hình bình hành}
We define the following figure.\\
\section{Đoạn thẳng}
We define the following arc.\\
\backmatter
\begin{thebibliography}{99}
\end{thebibliography}
\end{document}
\documentclass[11pt,a4paper]{amsbook}
\begin{document}
\chapter{Test Chapter}
\section{Test Numbered Section}
\section*{Test Unnumbered Section}
\end{document}
リンク先の質問の回答も、 を使用しないように変更しましたtitlesec
。
最後に、AMS ドキュメント クラスは AMS への送信用に設計されているため、非常に特殊な設定があり、前述のように、上書きするのが難しい場合があります。
AMS クラスの 1 つを使用する必要がない場合は、別のドキュメント クラスに切り替えることをお勧めします。既存のパッケージ (AMS クラスと互換性がありません) を使用して書式設定の変更を簡単に行うことができるため、切り替えは良いトレードオフになる可能性があります。例として、最小限の労力で書式設定 (ドキュメントと ToC の両方) を生成し、 のスタイリスト設定の一部も組み込んだ次のドキュメントを見てみましょうamsbook
。
\documentclass{book}
\usepackage[compact]{titlesec}
\usepackage[titles]{tocloft}
\usepackage{chngcntr}
\counterwithout{section}{chapter}
\newlength\mylen
\renewcommand\cftchappresnum{\chaptername~}
\renewcommand\cftchapaftersnum{.}
\renewcommand\cftchapfont{\normalfont}
\renewcommand\cftchappagefont{\normalfont}
\settowidth\mylen{\cftchappresnum\cftchapaftersnum} % extra space
\addtolength\cftchapnumwidth{\mylen}
\renewcommand\cftsecdotsep{\cftnodots}
\renewcommand\cftsecpresnum{\S}
\renewcommand\cftsecaftersnum{.}
\titleformat{\chapter}[display]
{\normalfont\LARGE\scshape\filcenter}{\chaptertitlename\ \thechapter}{15pt}{}
\titleformat{\section}
{\normalfont\Large\bfseries}{\S\thesection.}{0.5em}{}
\begin{document}
\tableofcontents
\frontmatter
\chapter{Test Chapter}
\chapter{Test Chapter}
\mainmatter
\chapter{Test Chapter}
\section{Test Section}
\section{Test Section}
\chapter{Test Chapter}
\section{Test Section}
\section{Test Section}
\end{document}