プレーンTeXで\settabsの下の垂直行間隔を制御するにはどうすればよいですか?

プレーンTeXで\settabsの下の垂直行間隔を制御するにはどうすればよいですか?

次の例を考えてみましょう。

\settabs \+ \hskip 4.5 in & \cr
\+ Silahkan masuk & Come in, please! \cr
\+ Silahkan duduk & Sit down, please! \cr
\+ Silahkan berdiri & Stand up, please! \cr
\bye

各行間の垂直スペースを増やすにはどうすればよいですか?

この質問はテックスそしてない ラテックス

試してみました\parskipが、この状況では効果はありませんでした。

答え1

テーブル全体のスペースを広げたい場合は、\openupタブの前にマクロを使用します。

\begingroup\openup 6pt
\settabs \+ \hskip 4.5 in & \cr
\+ Silahkan masuk & Come in, please! \cr
\+ Silahkan duduk & Sit down, please! \cr
\+ Silahkan berdiri & Stand up, please! \cr
\endgroup

おそらく、この変更をグループ内で分離したいと思われるので、begingroupと のendgroupペア内で表示しました。

特定の行の後にスペースが必要なだけの場合は、適切なスキップ コマンドを追加するだけです。

\settabs \+ \hskip 4.5 in & \cr
\+ Silahkan masuk & Come in, please! \cr
\medskip
\+ Silahkan duduk & Sit down, please! \cr
\+ Silahkan berdiri & Stand up, please! \cr

答え2

\+は1行として実装されています\halignが、\ialignをクリアする を介して呼び出されます。そのステップを実行せず、 または任意の長さを追加する の\everycr別のバージョンを定義すると、そのようなスキップが挿入されることになります。\ialign\everycr{\noalign{\vskip2pt}}2回したがって、\vskip下部にあるものとバランスをとるために、上部に 2 つのものが必要になります。

テーブルの周りに縦方向のスペースが必要ない場合は、ダブルネガティブ \vskip最後に追加することができます。

\catcode`@=11
\def\ialignx{\tabskip\z@skip\halign} % initialized \halign
\catcode`@=12

\input plipsum

\lipsum{2}

\begingroup
\par\vskip4pt\relax % compensate the bottom spacing
\let\ialign\ialignx % use locally \ialignx
\everycr{\noalign{\vskip2pt}}
\settabs \+ \hskip 2in & \cr
\+ Silahkan masuk & Come in, please! \cr
\+ Silahkan duduk & Sit down, please! \cr
\+ Silahkan berdiri & Stand up, please! \cr
\endgroup

\lipsum{3}

\begingroup
\let\ialign\ialignx % use locally \ialignx
\everycr{\noalign{\vskip2pt}}
\settabs \+ \hskip 2in & \cr
\+ Silahkan masuk & Come in, please! \cr
\+ Silahkan duduk & Sit down, please! \cr
\+ Silahkan berdiri & Stand up, please! \cr
\vskip-4pt\relax % compensate the top non spacing
\endgroup

\lipsum{4}

\bye

ここに画像の説明を入力してください

いずれにせよ、このような構造の周囲に垂直方向のスペースを追加することをお勧めします。2 番目の例でその理由がわかります。

関連情報