Предотвратить новый абзац после теоремы окружения

Предотвратить новый абзац после теоремы окружения

Используя стиль теоремы, как в примере ниже, после замечания создается новый абзац. Можно ли предотвратить это? (и 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явно включает \@endpefalseв свое определение \@endtheorem: оно имеет \def\@endtheorem{\endtrivlist\@endpefalse }. В 7 мая 1996 г.почтана comp.text.tex Марк Вудинг дал решение,

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

и затем написал: «Более надежным методом было бы сказать,

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

на случай, если [...] кто-то еще изменит исходный макрос». Это решение работает для меня (в 2023 году). Код должен находиться между \usepackage{amsthm}и \newtheorem{...}{...}, как указал позже в этой теме Том Скаво, цитируя Ён У. Рю (который предложил \makeatletter\def\@endtheorem{\endtrivlist}\makeatotherв качестве решения).

Связанный контент