opakovani mat. znamenek
Hans GINZEL
Hans at mail.kolej.mff.cuni.cz
Tue Apr 29 12:26:10 CEST 1997
Miroslav Dont wrote:
> Shrnuto jsou pozadavky zhruba nasledujici.
> Predefinovani znaku +, -, =, \leq, \geq, \in
> \subset, <, >, \to, \cup, \cap (a mozna nekterych
> dalsich) a prislusnych negovanych tak, aby se
> opakovaly na novem radku po lamani a aby bylo
> mozne lamani zabranit prikazem \nolinebreak.
Pokud Vam jde o to \nobreak, tak treba takhle pro =
{\catcode`\==13 \expandafter }\expandafter
\def\noexpand={\eq % rovnitko
\def\onnextline{=}% v pripade rozdeleni
\futurelet\next\zdalinobreak}% podivam se,
% co nasleduje
\def\zdalinobreak{\ifx\next\nobreak % neni-li
% to nolinebreak
\else \discretionary{}{\onnextline}{}\fi}
\mathchardef\eq=\mathcode`\=
\mathcode`\=="8000
\binoppenalty=10000
> Pokud udelame totez pro znameni =, bude clovek spokojeny
> az do okamziku, kdy se mu na konci radku objevi nerovnitko
> (\neq). Pokud bude rozdeleno za nerovnitkem, pak se na
> dalsim radku objevi rovnitko - v definici \neq je =.
Predefinujeme si \neq k obrazu nasemu.
\def\neq{\not\eq
\def\onnextline{\hbox{$\not\eq$}}
\futurelet\next\zdalinobreak}
% Demo (PlainTeX)
\hsize=1in \obeylines
ajkudiu $1=1$ hasd
ajkudiu $1=\nobreak 1$ hasd
ajkudiu $1= \nobreak 1$ hasd % Pozor na mezeru!
ajkud $1\neq 2$ hasd
ajkudiu $1\neq 2$ hasd
ajkudiu $1\neq\nobreak 2$ hasd
\end
Hans GINZEL
More information about the csTeX
mailing list