%% CaesTest.tex, Sept 1992, L. Siebenmann %% A test file for CaesarCM.tex \def\Msg{\immediate\write16}% \Msg{ *************************************************** } \Msg{ CaesTest.tex, a test for hyphenation by CaesarCM requiring} \Msg{ (a) Use of a format which has been compiled} \Msg{ \space to include French hyphenation patterns and} \Msg{ \space CaesarCM.tex. The tool fe-format-dumper-cm} \Msg{ \space automaates the creation of many such formats.} \Msg{ (b) The test font tmr10 must be available. Any other marked} \Msg{ \space extended CM font can serve in its stead, } \Msg{ \space provided you replace tmr10 by that alternative in the} \Msg{ \space definition of \string\extCM\space in this test file.} \Msg{ *************************************************** } %% No double loading \let\this\relax \ifx\undefined\Caesar \Msg{}\Msg{Sorry CaesarCM not loaded. Exit.} \let\this \endinput \fi \this \bgroup \catcode`\@=11 %% LateX red tape \ifx\undefined\@comdblflelt %% defined for LateX only \toks0{\par \vfill \supereject \end} \else \documentstyle[art10]{article} \begin{document} %% for LateX only. \toks0{\csname end\endcsname{document}} \fi \outer\edef\bye{\the\toks0} \egroup \font\ft=xTimes %% or tmr10? %%%%%%%%%%%%%%%%%%%%%%%% \def\extCM{\ft \skewchar\font=\defaultskewchar \UpdateFontClassRegister} \def\CM{\ft \skewchar\font=\CaesarClassCM} %\CM\'e\extCM\'e\CM\'e\extCM\'e\CM\'e\extCM\'e\CM\'e\extCM\'e% \def\hytest{ars\'eniure audiofr\'equence biod\'egradable c\'er\'emonial chim\'erique d\'el\'egu\'e magn\'etique enr\'egimenter esth\'etisme fonci\`erement irr\'eparable litt\'eral num\'eration oblit\'erer ovog\'en\`ese privil\'egier rapi\'e\c cage r\'ep\'etition rousp\'eter surd\'evelopp\'e v\'en\'erer }%% alter this!! \def\Hytest{\hytest\hytest\hytest}%\hsize=.9\hsize \newdimen\mydim \mydim=3pt \def\ShapePar{ \parshape 75 0pt 93\mydim 0pt 78\mydim 0pt 65\mydim 0pt 54\mydim 0pt 45\mydim 0pt 38\mydim 0pt 33\mydim 0pt 30\mydim 0pt 33\mydim 0pt 38\mydim 0pt 45\mydim 0pt 54\mydim 0pt 65\mydim 0pt 78\mydim 0pt 93\mydim 0pt 93\mydim 0pt 78\mydim 0pt 65\mydim 0pt 54\mydim 0pt 45\mydim 0pt 38\mydim 0pt 33\mydim 0pt 30\mydim 0pt 33\mydim 0pt 38\mydim 0pt 45\mydim 0pt 54\mydim 0pt 65\mydim 0pt 78\mydim 0pt 93\mydim 0pt 93\mydim 0pt 78\mydim 0pt 65\mydim 0pt 54\mydim 0pt 45\mydim 0pt 38\mydim 0pt 33\mydim 0pt 30\mydim 0pt 33\mydim 0pt 38\mydim 0pt 45\mydim 0pt 54\mydim 0pt 65\mydim 0pt 78\mydim 0pt 93\mydim 0pt 93\mydim 0pt 78\mydim 0pt 65\mydim 0pt 54\mydim 0pt 45\mydim 0pt 38\mydim 0pt 33\mydim 0pt 30\mydim 0pt 33\mydim 0pt 38\mydim 0pt 45\mydim 0pt 54\mydim 0pt 65\mydim 0pt 78\mydim 0pt 93\mydim 0pt 93\mydim 0pt 78\mydim 0pt 65\mydim 0pt 54\mydim 0pt 45\mydim 0pt 38\mydim 0pt 33\mydim 0pt 30\mydim 0pt 33\mydim 0pt 38\mydim 0pt 45\mydim 0pt 54\mydim 0pt 65\mydim 0pt 78\mydim 0pt 93\mydim } \hsize=280pt \pretolerance=200 \tolerance=200 \hbadness=10000 \vbadness=10000 \parskip=3pt plus 1pt \overfullrule = 10pt \frenchspacing \def\Rule{\hrule\vskip3pt\hrule} \emergencystretch 30pt \parindent=0cm \def \AnnounceTest{\ufcr\par Our current font choice is ``\fontname\font'' and it is currently assigned coding class: \count255=-20\relax \ifnum \skewchar\font=\count255{\tt TM}% \else {\tt CM}\fi. Current {\tt \char`\\tolerance} value is \the\tolerance, and current {\tt \char`\\emergencystretch} value is \the\emergencystretch.\par} \Msg{}\Msg{ *** TEST FOR CaesarCM } \Msg{ *** Patience Please!!! } \centerline{\bf TEST FOR CaesarCM} \bigskip \extCM \AnnounceTest For values of {\tt \char`\\tolerance} at or near 10000, bad hyphenation shows up as excessive interword spaces --- provided \TeX's aritmetic does not break down (producing irrational linebreak choices). When {\tt \char`\\emergencystretch} is made positive, the result is similar even when {\tt \char`\\tolerance} is low, and arithmetic breakdown tends not to occur. When {\tt \char`\\emergencystretch} is zero (the Plain default) and {\tt \char`\\tolerance} is low one tends to get line overruns marked by by black boxes. The text shape involves parabolic scallops to provide a varied test of hyphenation. And the sample words are ones for which the presence of ready-made accented characters increases the number of available hyphenation points. \bigskip \Rule \bigskip \Caesar \Msg{}\Msg{ *** Hyphenation points for extended cm font encoding.} \showhyphens{\extCM\hytest} \goodbreak \extCM *** Hyphenation points for extended cm font encoding: \AnnounceTest \ShapePar\Hytest\Hytest\Hytest\Hytest\Hytest% \par \bigskip \Rule \bigskip \CM \Msg{}\Msg{ *** Hyphenation points for UNextended cm font encoding. } \showhyphens{\CM\hytest} \goodbreak \CM *** Hyphenation points for UNextended cm font encoding: \AnnounceTest \par\ShapePar\Hytest\Hytest\Hytest\Hytest\Hytest% \par \bigskip \Rule \bigskip \noCaesar\noJDaccents \Msg{}\Msg{ *** Hyphenation points offered by virgin Plain.} \showhyphens{\hytest} \goodbreak \CM *** Hyphenation points offered by virgin Plain: \AnnounceTest \par \ShapePar\Hytest\Hytest\Hytest\Hytest\Hytest% \par \bigskip \Rule \bigskip %%%% FOLLOWING TEST REQUIRES font dodo; see CaesarCM.bugs %%%% Decomment the immediately following lines %%%% when you have installed dodo. %%%% DSaccents refers to Double Strike accents. % \JDaccents\noDSaccents % \Msg{}\Msg{ *** Hyphenation points for unextended cm font} % \Msg{ *** if printer excludes double strike.} % \showhyphens{\hytest} % \CM *** Hyphenation for unextended font and low % resolution printer % \par \ShapePar\Hytest\Hytest\Hytest\Hytest\Hytest% % \par \bigskip \Rule \bigskip \goodbreak \Caesar \extCM *** Some accented characters: Minuscules : \`a \`e \`\i{} \`o \`u \'a \'e \'\i{} \'o \'u \^a \^e \^\i{} \^o \^u \"a \"e \"\i{} \"o \"u \"y \c c \~a \~n \~o \o{} \ae{} \oe{} \ss{} \aa{} \medskip \`a\`e\`\i{}\`o\`u \'a\'e\'\i{}\'o\'u \^a\^e\^\i{}\^o\^u \"a\"e\"\i{}\"o\"u\"y \c c\~a\~n\~o\o{}\ae{}\oe{}\ss{}\aa{} \bigbreak MAJUSCULES : \`A \`E \`I{} \`O \`U \'A \'E \'I{} \'O \'U \^A \^E \^I{} \^O \^U \"A \"E \"I{} \"O \"U \"Y \c C \~A \~N \~O \O{} \AE{} \OE{} SS{} \AA{} \medskip \`A\`E\`I{}\`O\`U \'A\'E\'I{}\'O\'U \^A\^E\^I{}\^O\^U \"A\"E\"I{}\"O\"U\"Y \c C\~A\~N\~O\O{}\AE{}\OE{}SS{}\AA{} \bigbreak \hsize=150pt \noCaesar%\noDSaccents Line breaks after accent: d\'ej\`a \'et\'e \'em\'ech\'e d\'ej\`a \'et\'e \'em\'ech\'e d\'ej\`a \'et\'e \'em\'ech\'e d\'ej\`a \'et\'e \'em\'ech\'e d\'ej\`a \'et\'e \'em\'ech\'e d\'ej\`a \'et\'e \'em\'ech\'e d\'ej\`a \'et\'e \'em\'ech\'e d\'ej\`a \'et\'e \'em\'ech\'e d\'ej\`a \'et\'e \'em\'ech\'e d\'ej\`a \'et\'e \'em\'ech\'e \bigskip \Caesar Remaining problem with case changes: \uppercase{ci-g\^it fran\c cais na\"if d\'es\oe{}uvr\'e b\^ete et adult\`ere} \bye %%%% Some alternate test material: \def\hytesti{ci-g\^\i{}t fran\c cais na\"\i{}f d\'es\oe{}uvr\'e b\^ete et adult\`ere} \def\hytestii{signal man\oe{}uvres \oe{}uvrer d\'es\oe{}uvrement l\ae{}ticia laticia laennec l\ae{}nnec d\'eculpabiliser r\'eactualisation \'education ex\'ecution inexp\'erience ma\c connerie maconnerie ma\c connerie fa\c con abandonn\'es distingu\'es abandonn\'e distingu\'e \'ethymologiquement syst\'ematiquement } \def\hytestiii{% d\'econtenanc\'ee, h\'eb\'et\'ee, d\'efaite de toute s\'er\'enit\'e devant cet ab\'ec\'edaire d\'ecapit\'e, \'et\^et\'e, \'evid\'e, \'emascul\'e, d\'esagr\'eg\'e, d\'ebilit\'e, d\'eg\'en\'er\'e, parce que priv\'e de lettres accentu\'ees et correctement orthographi\'ees, Th\'er\`ese-\'El\'eonore a d\'ecr\'et\'e avec sinc\'erit\'e et opini\^atret\'e l'immortalit\'e des \c c\`a\c c\^ac\'ec\`ec\^ec\"ec\^\i\ ainsi que des \c c\^o\c c\"o\c c\`u\c c\^u\c c\"u.}