Как displaymath, но без математического режима

Как displaymath, но без математического режима

Я часто ловлю себя на том, что делаю что-то вроде:

\[
\begin{tabular}{cc}
foo & bar \\
baz & qux
\end{tabular}
\]

или

\[
\begin{verbatim}
code snippet
\end{verbatim}
\]

чтобы поместить таблицу или фрагмент кода в мой документ, не делая его плавающим. Я использую, \[...\]потому что мне нравится, как он центрирует его содержимое и оставляет немного свободного пространства сверху и снизу. Но, конечно, \[...\]также переводит меня в математический режим, а это не то, что мне нужно.

Какой эквивалент \[...\]этого не переводит меня в математический режим?


На самом деле (если мне будет позволено на мгновение углубиться в тему «мнения»), я придерживаюсь мнения, что \[...\]следуетнетвообще войти в режим математики. Рассмотрим что-то вроде:

Finally, our equation becomes
\[
x^2 = y^2 - z^2,
\]
which is easily proved.

Я часто хочу включить запятую (или точку, или что-то еще) в уравнение, чтобы заставить его гармонировать с остальным окружающим текстом. Но запятая должнанетбыть набрано в math-mode, потому что это не математическая запятая, это текстовая запятая. Так что я действительно хочу напечатать:

Finally, our equation becomes
\begin{some-suitable-environment}
$x^2 = y^2 - z^2$,
\end{some-suitable-environment}
which is easily proved.

так что я могу разграничить часть центрированного текста, который на самом деле является математикой. Это разумное предложение? Существует some-suitable-environment?

решение1

\begin{center}...\end{center}

Нецентрированная по математике среда отображения. (Но не используйте ее для $имитации центрированного математического отображения, интервалы будут неправильными).

решение2

Это может помочь вам найти способ

\documentclass[twocolumn]{article}

%  just for grid
\usepackage{tikz}
\usepackage{eso-pic}

\AddToShipoutPicture{%
\begin{tikzpicture}[overlay,remember picture]
  \draw[blue!20!white,thin]
       (current page.south west) grid [xstep=10mm,ystep=4mm] (current page.north east);
\end{tikzpicture}}

\makeatletter
\newenvironment{mtc}{%
\@@line\bgroup\hss}{\hss\egroup\vspace{\belowdisplayshortskip}}
\makeatother

\begin{document}
bla bla bla bla
\[x+y=z\]
bla bla bla bla

bla bla bla bla
\begin{equation}
 2x+2
\end{equation}
bla bla bla bla
\begin{center}
bla bla bla bla
\end{center} 
\newpage
bla bla bla bla

\begin{mtc}
$x+y=z$
\end{mtc}
bla bla bla bla

bla bla bla bla

\begin{mtc}
bla bla
\end{mtc}
bla bla bla bla

\begin{mtc}
bla bla bla bla
\end{mtc} 

\end{document}

введите описание изображения здесь

решение3

Вы можете легко создать новую среду, которая запускает отображение математических вычислений, но набирает их содержимое в текстовом режиме.

\newsavebox{\wickersondisplaybox}

\newenvironment{wickersondisplay}
 {\[\begin{lrbox}{\wickersondisplaybox}}
 {\end{lrbox}\usebox{\wickersondisplaybox}\]}

\newcommand{\<}{\begin{wickersondisplay}}
\renewcommand{\>}{\end{wickersondisplay}} % \> is preempted

Но это было бы неправильно: пользоваться centerи быть довольным.

Обратите внимание также, что вывод

\<
$\sum_{k=0}^n k=\frac{n(n+1}}{2}$,
\>

являетсяоченьотличается от

\[
\sum_{k=0}^n k=\frac{n(n+1}}{2}\text{,}
\]

Если вам нужна только «текстовая запятая», просто используйте \text{,}.

решение4

Следуя предложениям Барбары, Тухами и Дэвида, я придумал следующую реализацию:

% Define {center} environment with math-mode spacing (
\def\<{\begin{displaymath}\mbox\bgroup}
\def\>{\egroup\end{displaymath}}
% )

который используется так

Finally, our equation becomes
\<
$x^2 = y^2 - z^2$,
\>
which is easily proved.

и гарантирует, что запятая после уравнения будет установлена ​​правильным (текстовым) шрифтом.

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