
Я использую llncs
класс документа и мне нужно установить счетчик для среды «remark», чтобы при использовании \begin{remark} ... \end{remark}
я получалЗамечание 1где бы я ни находился в документе.
Как это сделать? Можно ли определить новый счетчик и потом принудительно remark
использовать его?
П.С. Яне должнаопределить новую среду
РЕДАКТИРОВАТЬ
Извините, но, возможно, я не очень хорошо объяснил: я не хочуисправитьсчетчик замечания всегда должен быть 1. Я просто хочу, чтобы он былначинатьот 1, а затем увеличивать нормально. Поэтому первое замечание будетЗамечание 1, второй будетЗамечание 2и т. д. В настоящее время, похоже, что среда замечаний делит счетчик с теоремами, следствиями и т. д., а я этого не хочу.
Вот MWE:
\documentclass[11pt,envcountsame,a4paper]{llncs}
\usepackage[english]{babel}
\usepackage{url}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
%\usepackage{amsthm}
\usepackage{graphicx}
\usepackage{hyperref}
\numberwithin{theorem}{section}
\numberwithin{lemma}{section}
\numberwithin{definition}{section}
\numberwithin{equation}{section}
\numberwithin{figure}{section}
\numberwithin{corollary}{section}
\linespread{1.2}
\begin{document}
\section{My first section}
\begin{theorem}
Here I state a very interesting theorem
\end{theorem}
\begin{lemma}
Here I state a very interesting lemma
\end{lemma}
\begin{definition}
Here I state a very interesting definition
\end{definition}
\begin{remark}
And here I would like to state a very interesting remark, numbered as Remark 1
\end{remark}
\end{document}
решение1
Обновлять
Если envcountsame
задана опция класса документа, все llncs
определенные теоремы используют theorem
счетчик в качестве общего счетчика.
Теперь, envcountsame
включает \newaliascnt
, определяя псевдоним счетчика, который в свою очередь проверяет (для этого вопроса релевантного) на то, \c@remark
существует ли он уже. Чтобы отделиться remark
от theorem
, \c@remark
необходимо \relax
ed и переопределить как новый счетчик.
\documentclass[envcountsame]{llncs}
\makeatletter
\if@envcntsame
\let\c@remark\relax
\newcounter{remark}
\fi
\makeatother
\begin{document}
\begin{remark}
A remark
\end{remark}
\begin{theorem}
Foo
\end{theorem}
\begin{theorem}
Another Foo
\end{theorem}
\begin{remark}
Another remark
\end{remark}
\begin{remark}
Yet another remark
\end{remark}
\begin{remark}
And now another counter value for remark after resuming
\end{remark}
\end{document}
Старые вещи...
Я сомневаюсь в целесообразности установки remark
счетчика на 1, но вот способ с\AtBeginEnvironment
\documentclass{llncs}
\usepackage{xpatch}
\AtBeginEnvironment{remark}{\setcounter{remark}{0}}
\begin{document}
\begin{remark}
A remark
\end{remark}
\section{Foo}
\begin{remark}
Another remark
\end{remark}
\begin{remark}
Yet Another remark
\end{remark}
\end{document}
Другая возможностьиспользование xassoccnt
и его Suspend
особенность
\documentclass{llncs}
\usepackage{xassoccnt}
\setcounter{remark}{1} % Set it to 1
\SuspendCounters{remark} % suspend it
\begin{document}
\begin{remark}
A remark
\end{remark}
\section{Foo}
\begin{remark}
Another remark
\end{remark}
\begin{remark}
Yet another remark
\end{remark}
\ResumeSuspendedCounters{remark}
\begin{remark}
And now another counter value for remark after resuming
\end{remark}
\end{document}
решение2
Это звучит как совершенно бессмысленное требование. Зачем тогда вообще использовать число? Но если вы хотите:
\documentclass{llncs}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage[T1]{fontenc}
\renewcommand\theremark{1}
\begin{document}
\begin{remark}
abc
\end{remark}
\begin{remark}
abc
\end{remark}
\end{document}