Dva problemy s TeXem

Va'clav Studeny' studeny at ipm.cz
Mon Sep 23 12:47:07 CEST 1996


>    Vazeni TeXari!
>
>Chtel bych vas poprosit, zda byste mi mohli poradit s resenim
>nasledujiciho problemu: jak udelat v TeXu  p r o l o z e n e  pismo
>jednoduseji, nez
>
>    a) vkladanim mezer (resp. vlnek) mezi jednotlive hlasky
>    b) vytvorenim noveho fontu resp. TFM
>
>Zatim pouzivam variantu a), ale je tam pochopitelne problem s delenim
>slov.
>
>                                Dekuji za vsechny namety
>
>                                                    Tomas Rylek
>

Resil jsem podobny problem a na neci radu jsem si stahl nasledujici makra.
Jejich autor je jiste prihlasen do teto konference, ale ja si jiz
nepamatuji, kdo to je, takze se velice omlouvam, ze zde je ho autorstvi
zamlcuji.

Mel jsem s nimi nejake problemy, ktere jsem postupne vyresil a ted nevim,
jestli je toto ta puvodni verze, nebo ta verze  upravena. Rozhodne vas to
muze inspirovat k vlkastnim makrum. Kdybyste s t7im provedle neco
zasadnejsiho a ono to pak bylo lepsi, tak mi, prosim, dejte vedet.

                        Zdravim

                                                V. S.

% For more details see the end of file

\edef\atsign{\the\catcode64 }

\catcode`\@=11
\newif\ifj at mps
\def\1{\let\re at lspace= }\1 %
\def\spacedtext{\j at mpstrue\def\prevch at r{}\ifvmode\leavevmode\fi\t at stnextch}
\def\t at stnextch{\futurelet\next\t at stendspaced}
\def\t at stendspaced{\ifx\next\egroup
      \let\next\prevch at r
   \else
      \ifx\next\re at lspace
         \let\next\e at tspace
      \else
         \ifx\next\-%
           \j at mpsfalse \let\next\e at tnexttok
         \else
           \let\next\e at tnexttok
         \fi
      \fi
   \fi\next}
\def\e at tspace{\def\nextch at r{\space}\afterassignment\joinch at rs\let\next= }
\def\e at tnexttok#1{\def\nextch at r{#1}\joinch at rs}
\def\joinch at rs{{\setbox0=\hbox{\prevch at r}\setbox1=\hbox{\nextch at r}%
                \setbox2=\hbox{\prevch at r\nextch at r}%
   \dimen0=\wd0 \advance\dimen0 by\wd1 \advance\dimen0 by-\wd2
   \prevch at r
   \ifj at mps\kern-\dimen0\interchar at cterspace\fi}\j at mpstrue%
   \let\prevch at r=\nextch at r\t at stnextch}
\def\intercharspace#1{\def\interchar at cterspace{\kern#1}}
\catcode`\@=\atsign\relax

\endinput

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
%  \spacedtext         is must be used as font swith inside braces.
%
%  \intercharspace{<dimen>} sets the amount inserted between every two
%                      neighbour characters.
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%





More information about the csTeX mailing list