В следующем примере, как я могу скрыть номер первого стиха (или стихов, таких как 1-2) главы Библии в тексте, не скрывая его в заголовках? (Это основано на материале, найденномздесь.)
\documentclass[12pt,openany,final]{memoir}
\usepackage{libertine}
\usepackage{xcolor}
\usepackage{lettrine}
\usepackage{lipsum}
%%% headers
\makeoddhead{headings}{\rightmark}{}{\thepage}
\makeevenhead{headings}{\thepage}{}{\leftmark}
%remove the marks set by \section.
\addtopsmarks{headings}{}{%
\renewcommand\sectionmark[1]{}
}
%%%%chapter format
\newcommand{\chaplabel}{}
\newcommand{\gnumChapters}{0}
\newcommand{\gChapter}[1]{\lettrine[lines=2,nindent=.5em,findent=0em]{{\textcolor{black}{#1}}}{}\markboth{\chaplabel\ #1:1}{\chaplabel\ #1:1}\renewcommand{\gnumChapters}{#1}}
%%%%verse format
\makeatletter
% define a 'smaller textsuperscript' macro
\DeclareRobustCommand*\textsmallsuperscript[1]{%
\@textsmallsuperscript{\selectfont#1}}
\def\@textsmallsuperscript#1{%
{\m@th\ensuremath{^{\mbox{\fontsize\ssf@size\z@#1}}}}}
\makeatletter
\newcommand{\gverse}[1]{{\textsmallsuperscript{#1}\hspace*{.1em}\ignorespaces\markboth{\chaplabel\ \gnumChapters:#1}{\chaplabel\gnumChapters:#1}}\ignorespaces}
\begin{document}
\gChapter{1}
\gverse{1-2}\lipsum[2]
\gverse{3}\lipsum[3]
\end{document}
решение1
Один из способов — установить флаг в \gchapter
макросе, а затем провести проверку для обнаружения первого использования \gverse
after \gchapter
.
Обратите внимание, сброс флага выполнен.снаруживаш дублирован {{...}}
, \gverse
в противном случае это влияет только на локальную копию флага, что не работает!
...
%%%%chapter format
\newcommand{\chaplabel}{}
\newcommand{\gnumChapters}{0}
\newif\ifshowverseno
\newcommand{\gChapter}[1]{\showversenofalse\lettrine[lines=2,nindent=.5em,findent=0em]{{\textcolor{black}{#1}}}{}\markboth{\chaplabel\ #1:1}{\chaplabel\ #1:1}\renewcommand{\gnumChapters}{#1}}
%%%%verse format
\makeatletter
% define a 'smaller textsuperscript' macro
\DeclareRobustCommand*\textsmallsuperscript[1]{%
\@textsmallsuperscript{\selectfont#1}}
\def\@textsmallsuperscript#1{%
{\m@th\ensuremath{^{\mbox{\fontsize\ssf@size\z@#1}}}}}
\makeatletter
\newcommand{\gverse}[1]{{\ifshowverseno\textsmallsuperscript{#1}\hspace*{.1em}\ignorespaces \fi%
\markboth{\chaplabel\ \gnumChapters:#1}{\chaplabel\gnumChapters:#1}}\showversenotrue\ignorespaces}
\begin{document}
...