防止定理环境后出现新段落

防止定理环境后出现新段落

使用定理样式(如下例所示),注释后会产生一个新段落。我可以避免这种情况吗?(amsthm同时使用该包)?

\documentclass[english]{scrartcl}  

\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}
\usepackage{babel}

 \usepackage{amsthm}

\usepackage{blindtext}

\newtheorem{rem}{Remark} 

\begin{document}


\begin{rem}
\blindtext
\end{rem}
\blindtext  % I want that the text begins aligned left, i.e. no new 
 % paragraph


\end{document} 

问题示例

答案1

不确定你到底在寻找什么,但这可以帮助你

\documentclass[english]{scrartcl}  

\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}
\usepackage{babel}

 \usepackage{amsthm}

\usepackage{blindtext}


\newtheoremstyle{mystyle}
  {\topsep} % Space above
  {0pt} % Space below
  {\itshape} % Body font
  {} % Indent amount
  {\bfseries} % Theorem head font
  {.} % Punctuation after theorem head
  {.5em} % Space after theorem head
  {} % Theorem head spec (can be left empty, meaning `normal')

\theoremstyle{mystyle}
\newtheorem{rem}{Remark} 

\begin{document}


\begin{rem}
\blindtext
\end{rem}
\noindent\blindtext


\end{document}

PS: 使用了来自的理论样式这里

答案2

这并不难做到,但你应该三思而后行。在rem环境中出现的言论一个段落(或多个段落)本身,因此其后的文本应该成为一个新段落。

\documentclass{article}

\usepackage{amsthm}

\newtheorem{reminner}{Remark}

\makeatletter
\newenvironment{rem}
  {\reminner}
  {\endreminner\@endpetrue}
\makeatother

\begin{document}

\begin{rem}
A remarkable text.
\end{rem}
Some text that shouldn't start a new paragraph. But why not?

\begin{rem}
Another remarkable text.
\end{rem}

Some text that will start a new paragraph.

\end{document}

在此处输入图片描述

答案3

行为发生是因为在其定义中amsthm.sty明确包括:它有。在 1996 年 5 月 7 日\@endpefalse\@endtheorem\def\@endtheorem{\endtrivlist\@endpefalse }邮政在 comp.text.tex 上,Mark Wooding 给出了一个解决方案,

\expandafter\let\csname @endtheorem\endcsname\endtrivlist

然后写道:“一个更可靠的方法是说

\makeatletter
\toks@\expandafter{\@endtheorem\@endpetrue}
\edef\@endtheorem{\the\toks@}
\makeatother

以防万一 [...] 其他人进一步更改原始宏。”这个解决方案对我来说是有效的(在 2023 年)。代码应该位于和之间\usepackage{amsthm},正如 Tom Scavo 在该线程后面引用 Young U. Ryu(他提出了一个解决方案)\newtheorem{...}{...}所指出的那样。\makeatletter\def\@endtheorem{\endtrivlist}\makeatother

相关内容