在 Plain TeX 中将括号放在多行文本中

在 Plain TeX 中将括号放在多行文本中

我正在更改用 Plain TeX 准备的文档,并尝试使用括号覆盖多行,例如:

S 是 P { 不能同时为真 (矛盾律)
S 不是 P { 不能同时为假 (排中律)

我知道如何在 LaTeX 中做到这一点,但我很难找到一个普通的 TeX 版本。到目前为止,我使用的是这个版本,它会导致过多的空白,并将 RHS 推离页面。

$ \vbox{ {\it S is P}\hfil\break
         {\it S is not P} } \left\{ \vbox{cannot both be true (L. of Contradiction)\hfil \break
                                         cannot both be false (L. of Excluded Middle).} \right. $

有人有什么建议吗?谢谢。

答案1

您可以使用预定义的结构:

$$
\matrix{
  \hbox{\it S is P}\hfill\cr
  \hbox{\it S is not P}
}\quad
\cases{
  \hbox{cannot both be true (L. of Contradiction)}\cr
  \hbox{cannot both be false (L. of Excluded Middle)}
}
$$

\bye

在此处输入图片描述

答案2

您的问题是您在两个\vboxes 中都启动了段落模式,因此它们的\hsize宽度没有减少。如果您想在\vbox不启动段落模式的情况下在 内添加文本,请将文本放入\hbox

此外,您想要垂直对齐的结果:\vcenter在数学模式中应该使用\vbox

$$ 
  \vcenter{ \hbox{\it S is P}
            \hbox{\it S is not P}
  } \quad \left\{
  \vcenter{ \hbox{cannot both be true (L. of Contradiction)}
            \hbox{cannot both be false (L. of Excluded Middle)}
  } \right.
$$

\bye

答案3

像这样?

\noindent
$$\left\{\vcenter{\halign{\it #\hfill &\quad #\hfill\cr
S is P & cannot both be true (L. of Contradiction)\cr
S is not P & cannot both be false (L. of Excluded Middle)\cr}}\right.$$
\bye

在此处输入图片描述

或者可能像这样?

\noindent
$$\vcenter{\halign{\it #\hfill\cr
S is P\cr
S is not P\cr}}\quad
\left\{\vcenter{\halign{#\hfill\cr
cannot both be true (L. of Contradiction)\cr
cannot both be false (L. of Excluded Middle)\cr}}\right.$$
\bye

在此处输入图片描述

相关内容