diff options
Diffstat (limited to 'macros/inrstex/inrstex')
45 files changed, 14927 insertions, 0 deletions
diff --git a/macros/inrstex/inrstex/abstract.tex b/macros/inrstex/inrstex/abstract.tex new file mode 100644 index 0000000000..b20aa2a1f3 --- /dev/null +++ b/macros/inrstex/inrstex/abstract.tex @@ -0,0 +1,29 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +%========= ABSTRACT/TITLE FORMS ======= +% These generate a centered abstract in the \smallerfont of a family + +\newdimen\absindent +%\def\ABSTRACT{ABSTRACT} see English/French titles +\newtoks\everyabstract +\newtoks\e@veryabstract +\def\beginabstract{\begingroup + \par + \leftskip= .1\hsize \rightskip=.1\hsize + \noindent + \ABSTRACT\par\noindent \smallerfont + \the\e@veryabstract + \the\everyabstract} +\def\endabstract{\par\endgroup\vskip 2.8ex} + + +%\def\titlemessage{Title} % see english/french titles +%\def\titlefraction{0.9} % see inrsdef.tex +%\def\titlespacing{1.5} % see inrsdef.tex +\def\title #1{\titlepagestyle\toks0={#1} + \writeterm{<\titlemessage: \the\toks0>}{}{} + \centerline{\vbox{\hsize = \titlefraction\hsize + \titlefont\spacing{\titlespacing} + \paragraphcenterline #1}}} diff --git a/macros/inrstex/inrstex/appendix.tex b/macros/inrstex/inrstex/appendix.tex new file mode 100644 index 0000000000..9b32d1d886 --- /dev/null +++ b/macros/inrstex/inrstex/appendix.tex @@ -0,0 +1,33 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +% =========== Appendices ============== +% Appendices are defined by using \shead invocations. +% Appendices are assumed to be associated with chapters, if +% they exist hence the first appendix in Chapter 2 is Appendix A. +% These macros modify the numberforms of \shead to produce Apendices. + + + +% Appendix numbering (A, B, C, ...) is incremented +% at each appendix. The \beginappendices...\endappendices +% macros should bracket all of the appendices. +% Equations, figures and tables are numbered for each +% appendix separately. +\newif\ifa@ppendix +% \def\Appendix{Appendix } see English/French titles +\newtoks\everyappendices +\newtoks\e@veryappendices +\def\beginappendices{\begingroup \a@ppendixtrue + \numberbysection + \global\shnum=0 + \global\sshnum=0 + \global\ssshnum=0 + \def\shnumform{\Alphabetic{\the\shnum}} + \the\s@presetlist %resets all the special numbers + \def\shtagreplaceformat{\Appendix \shtagrefformat.} + \the\e@veryappendices + \the\everyappendices} + +\def\endappendices{\endgroup}
\ No newline at end of file diff --git a/macros/inrstex/inrstex/auto.tex b/macros/inrstex/inrstex/auto.tex new file mode 100644 index 0000000000..517b9db093 --- /dev/null +++ b/macros/inrstex/inrstex/auto.tex @@ -0,0 +1,90 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +%========= Autonumbering, Tagging and Autoreferencing ========= + +% These macros give the facility to symbolically refer to sections, equations, +% tables, and references and to automatically number them. +% Autonumber, automatically numbers sections, equations, .... +% Autoreferencing, causes \ref{tag} to drop the tag-value in the text. + +% Although it is possible to have only autonumbering, referring to +% sections or other parts is quite difficult without referencing + + + +% When autonumbering or autoreferencing is first turned on, +% a tag file is brought in. +% Tags are written to a new file as they are generated. + +\newif\ifautoreference +\newif\ifautonumber +\newif\ift@agfilein +\newwrite\t@agfile + +\newtoks\inputtagfiles \inputtagfiles={\inputwithcheck {\jobname.tag} } +%\newtoks\inputtagfiles \inputtagfiles={\inputwithcheck {@\jobname.tag} } +% MSDOS version with renaming +\def\g@ettagfile{\ift@agfilein + \else + \the\inputtagfiles + \immediate\openout\t@agfile=\jobname.tag + \t@agfileintrue + \fi} +\def\autonumberingon{\g@ettagfile\autonumbertrue} +\def\autonumberingoff{\autonumberfalse} +\def\autoreferencingon{\g@ettagfile\autoreferencetrue} +\def\autoreferencingoff{\autoreferencefalse} + +%-------- general tag setups --- new autonumbers +%#1 tagtype #2 pre +%tagrefformat will be called by \...tagrefformat and will be initially +% defined as \...tagrefformat --> \Prerefform\...numform\Postrefform +% and \...numform -->\the\...num +\def\Prerefform{} \def\Postrefform{} + +%---- makes the tex commands for tag refformats ----- +\def\m@aketagrefformat#1#2{\edef\nnxt{ + \noexpand\def\csname #1tagrefformat\endcsname{\noexpand\Prerefform #2\noexpand\Postrefform}} + \nnxt} + +% ----list of specials to be reset .... all are done together unless overidden +\newtoks\s@presetlist + + + +% ------ newautonum ------- +% This is used to produce the commands necessary to have a tag that can be +% associated with a counter and to have the format styles for printing the +% numbers. They are used for such things a figures, tables, equations. +% Three are actually defined. + +% #1 is the name of then new autonum --- 3 or less characters +% since it might be the needed for list files +% if #1=xy, makes an \xynum, \xynumform \xytagrefformat +% sets \xynumform to \the\xynum +\def\newautonum#1{ + \expandafter\n@ewcount\csname #1num\endcsname %allocates counter + \edef\n@ext{{\global\expandafter\csname #1num\endcsname = 0}} + \expandafter\toks0\n@ext + \appendtoks{\s@presetlist}{\toks0} + \expandafter\let \csname #1tagrefformat\endcsname = \relax + %inhibits expansion later on + \edef\n@ext##1{\noexpand\def\csname auto#1num\endcsname + ##1{\noexpand\a@utotag{##1}{\csname #1num\endcsname + }{\csname #1tagrefformat\endcsname + }{\csname #1tagrefformat\endcsname}{##1}}} + \n@ext{##1} %makes \auto#1num + \m@aketagrefformat{#1}{\csname #1numform\endcsname} + \edef\n@ext{ %initializes \#1numform + \noexpand\def\csname #1numform\endcsname + {\noexpand\the\csname #1num\endcsname}} + \n@ext + } + +%===== Allocates the autonums to eq, fig and tbl ======= +\newautonum{eq} +\newautonum{fig} +\newautonum{tbl} +%-------------------- diff --git a/macros/inrstex/inrstex/cite.tex b/macros/inrstex/inrstex/cite.tex new file mode 100644 index 0000000000..1101ba3726 --- /dev/null +++ b/macros/inrstex/inrstex/cite.tex @@ -0,0 +1,165 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +% ===== Citation generation ========== +% \cite is used with a journal/paper reference. +% The forms allow both random input order of cite forms or +% fixed order. At the moment it supports only IEEE form, ie +% a list in the order of their occurrence in a paper. +% A data base system using a mailbox would be much better. + + +% Invocation of \cite{Ferg84} will define a \tag{Ferg84}{<number>}, +% where the reference number is sequentially determined. At the site +% of the invocation <number> is dropped into the text (without [ or ]). +% If the reference has been previously invoked, the number is that of +% the first invocation. +% the \citenum is relative to an \i@nitcitenum. This allows for multiple +% reference lists in the same document. A new number is defined if the old +% one is undefined or less than or equal to the initcitenum + +% In addition, when the citation tag file is written out, the last \citenum +% is also written. This allows a citation tag file to be input for early +% reference and then to be effectively discarded by resetting the +% \i@nitcitenum + +\def\opencitationtagfile{\openlistfile{ctg}\resetcitationnumbers\immediate + \write\ctg@file{\noexpand\initcitetag{\the\citenum}}} + +\def\closecitationtagfile{\immediate + \write\ctg@file{\noexpand\lastcitetag{\the\citenum}}\closelistfile{ctg}} + +%--- citenum allocation ------ +\def\initcitetag#1{\xdef\i@nitcitenum{#1}} + \initcitetag{0} % initializes to 0 +\def\lastcitetag#1{\xdef\l@astcitenum{#1}} + \lastcitetag{0} % initializes to 0} + +\newcount\citenum \citenum = 0 +\def\resetcitationnumbers{\ifnum\citenum>\l@astcitenum + \lastcitetag{\the\citenum}\else + \global\citenum = \l@astcitenum \fi + \initcitetag{\l@astcitenum}} + +\def\w@ritecite#1{\ifctglist \immediate\write\ctg@file + {\string\tag{#1}{\the\citenum}}\fi} +\def\m@akecitetag#1{\global\advance\citenum by 1 \relax + \tag{#1}{\the\citenum}\w@ritecite{#1}} + +\def\cite#1{\ifctglist \else \opencitationtagfile \fi + \edef\c@itearrow{<--}\relax + \ifundefined{:@#1}\m@akecitetag{#1}\edef\c@itearrow + {==>}\fi + \ifnum \i@nitcitenum < \csname :@#1\endcsname \else + \m@akecitetag{#1}\edef\c@itearrow + {==>}\fi + \count255= \csname :@#1\endcsname + \advance\count255 by -\i@nitcitenum \relax + \proofmargin{#1 \c@itearrow\ \the\count255}\the\count255} + +% This will produce the correct value of a citation without +% causing it to be created if it does not exist + +\def\citeref#1{\ifundefined{:@#1}\count255=0\else + \count255=\csname :@#1\endcsname\fi + \advance\count255by-\i@nitcitenum\relax\the\count255} + + +% Citation/Reference list generation. An example setup using the list +% macros to generate a reference list is shown below. +% \opencitationtagfile +% <main text> +% \beginlist +% \makecitationlist %or \makelongcitationlist +% \endlist +% The reference list is generated from two files: +% <jobname>.ctg contains citation tags of the form \tag{Ferg84}{4} +% where the first argument is the tag, and the second +% is the reference number associated with that tag. +% <jobname>.cfm contains the text for the references. These can appear +% in any order and contain text of the form +% \citeform{<tag>}{\listitem{\citetagvalue} <reference text>} +% This example shows a preamble to the text which invokes +% a new list item with the appropriate reference number. +% The reference text is the author, journal etc. for the +% reference. +% Each \citeform entry will generate a new macro definition of the form +% \def\@Ferg84form{<reference text>}. +% Each \tag entry will define \citetagvalue as the citation/reference number +% and invoke \@Ferg84form + +%\makecitationlist does not require the .cfm file to have citations in the +%same order as .ctg file. \makelongcitationlist enters the citations in the +%in the document in the same order as in the file. It numbers with a counter +%and indicates if there is a difference between citetag and counter. + +\newif\ifctglist % so dont have to check if undefined +\newtoks\citetagfilename \citetagfilename = {\jobname.ctg} %compatible Ugh! +\newtoks\inputciteformfiles + \inputciteformfiles = {\inputwithcheck{\jobname.cfm}} +\newtoks\inputcitetagfiles + \inputcitetagfiles = {\inputwithcheck{\the\citetagfilename}} + + + +%\def\citetagfileclosedmessage{ << CITATION TAG FILE CLOSED >> } +%\def\nocitetagformmessage{ NO CITATION FORM FOR THIS TAG} +% see english/french titles + +\def\c@losectg{ + \ifctglist + \immediate\write\ctg@file{\noexpand\lastcitetag{\the\citenum}} + \immediate\closeout\ctg@file + \global\ctglistfalse + \writeterm{\citetagfileclosedmessage}{}{}\relax + \fi} + +% outside so that the cfm list may be included in the document. +\def\citeform#1#2{\expandafter + \def\csname @#1form\endcsname{#2}} + + +%cfm entries may be in any order +\long\def\makecitationlist{\par + \begingroup + \c@losectg + \def\citeform##1##2{\expandafter + \def\csname @##1form\endcsname{##2}} + \def\tag##1##2{\count255 = ##2\relax + \advance\count255 by -\i@nitcitenum + \edef\citetagvalue{\the\count255}\relax % locally redefine \tag + \ifundefined{@##1form}\relax + \writeterm{<<<\the\count255. \nocitetagformmessage: ##1}{}{}\relax + \vskip 2ex + \leftline{##2\ \nocitetagformmessage: ##1} + \vskip 2ex + \else + \csname @##1form\endcsname + \fi} + \the\inputciteformfiles + \the\inputcitetagfiles \par + \endgroup} + +%.cfm entries must be in the same order as the tags in the .ctg file +\newcount\c@fmcount %counter for citations +\long\def\makelongcitationlist{\par + \begingroup + \c@losectg + \c@fmcount=0 \relax + \def\citetagvalue{\the\c@fmcount} + \def\citeform##1##2{\advance\c@fmcount by 1 + \ifundefined{:@##1} + \expandafter \xdef \csname :@##1\endcsname{-1} \fi + \count 255 = \csname :@##1\endcsname + \advance\count 255 by -\i@nitcitenum + \ifnum \the\count255 = \the\c@fmcount + \relax \else + \writeterm{<<< Cite tag error -- Tag ##1 -- Citation \the\c@fmcount >>>}{}{} + \fi + ##2} + \the\inputcitetagfiles + \the\inputciteformfiles\par + \endgroup + } + diff --git a/macros/inrstex/inrstex/compat3.tex b/macros/inrstex/inrstex/compat3.tex new file mode 100644 index 0000000000..5e0d6ed8d5 --- /dev/null +++ b/macros/inrstex/inrstex/compat3.tex @@ -0,0 +1,14 @@ +% compatability macros for multilingual and extened TeX 2.992 plus +% assumes the existence of \charsublist + +% #1 -- extended character to be exchanged +% #2 -- accent macro invocation letter +% #3 -- base character for this code + +\def\csubinverse #1#2#3{\expandafter\def\csname #2#3\endcsname{#1}} + +\catcode`\@=11 +\def\i{^^P} +\def\j{^^Q} + + diff --git a/macros/inrstex/inrstex/compatib.tex b/macros/inrstex/inrstex/compatib.tex new file mode 100644 index 0000000000..c451240143 --- /dev/null +++ b/macros/inrstex/inrstex/compatib.tex @@ -0,0 +1,53 @@ +% compatability macros for multilingual and extened TeX 2.992 plus +% assumes the existence of \charsublist + +% #1 -- extended character to be exchanged +% #2 -- accent macro invocation letter +% #3 -- base character for this code + +\def\csubinverse #1#2#3{\expandafter\def\csname #2#3\endcsname{#1}} + +\catcode`\@=11 +\def\i{^^P} +\def\j{^^Q} + +% ... test case + +\def\'#1{{\expandafter\ifx\csname @ac@#1\endcsname\relax + {\accent19 #1}\else\csname @ac@#1\endcsname\fi}} +\def\`#1{{\expandafter\ifx\csname @gr@#1\endcsname\relax + {\accent18 #1}\else\csname @gr@#1\endcsname\fi}} +\def\v#1{{\expandafter\ifx\csname @v@#1\endcsname\relax + {\accent20 #1}\else\csname @v@#1\endcsname\fi}} +\let\^^_=\v + +\def\u#1{{\expandafter\ifx\csname @u@#1\endcsname\relax + {\accent21 #1}\else\csname @u@#1\endcsname\fi}} +\let\^^S=\u + +\def\=#1{{\expandafter\ifx\csname @eq@#1\endcsname\relax + {\accent22 #1}\else\csname @eq@#1\endcsname\fi}} +\def\^#1{{\expandafter\ifx\csname @hat@#1\endcsname\relax + {\accent94 #1}\else\csname @hat@#1\endcsname\fi}} +\let\^^D=\^ +\def\.#1{{\expandafter\ifx\csname @dot@#1\endcsname\relax + {\accent95 #1}\else\csname @dot@#1\endcsname\fi}} +\def\H#1{{\expandafter\ifx\csname @H@#1\endcsname\relax + {\accent'175 #1}\else\csname @H@#1\endcsname\fi}} +\def\~#1{{\expandafter\ifx\csname @til@#1\endcsname\relax + {\accent'176 #1}\else\csname @til@#1\endcsname\fi}} +\def\"#1{{\expandafter\ifx\csname @um@#1\endcsname\relax + {\accent'177 #1}\else\csname @um@#1\endcsname\fi}} + + +\let\c@@=\c +\def\c#1{{\expandafter\ifx\csname c@#1\endcsname\relax + \c@@\else\csname c@#1\endcsname\fi}} + + + + +% test form for accents ... +\def\aa{\accent23a} + + diff --git a/macros/inrstex/inrstex/english.tex b/macros/inrstex/inrstex/english.tex new file mode 100644 index 0000000000..f0690068dd --- /dev/null +++ b/macros/inrstex/inrstex/english.tex @@ -0,0 +1,17 @@ +\def\englishversion{\language=0 +\nonfrenchspacing % .... needs to reverse accent forms ... +\def\versionform{{\notefont Draft Version: \date}}% +\def\Chapter{Chapter }% +\def\Appendix{Appendix }% +\def\ABSTRACT{{\ssheadfont Abstract}}% +\def\figurelabel{Fig. }% +\def\tablelabel{Table }% +\def\bookstylemessage{ <<< BOOKSTYLE >>> }% +\def\endlistmessage##1{ <<< endlist mismatch >>> }% +\def\undeftagmessage##1{ <<<tag: ##1 = undefined>>> }% +\def\citetagfileclosedmessage{ << CITATION TAG FILE CLOSED >> }% +\def\nocitetagformmessage{ NO CITATION FOR THIS TAG }% +\def\titlemessage{Title}% +\lccode`\'=0 +}% +\englishversion
\ No newline at end of file diff --git a/macros/inrstex/inrstex/enhyph.tex b/macros/inrstex/inrstex/enhyph.tex new file mode 100644 index 0000000000..e40581f0d1 --- /dev/null +++ b/macros/inrstex/inrstex/enhyph.tex @@ -0,0 +1,4453 @@ +% ------- English hyphen patterns ----- +% defaults to language 1 +% The Plain TeX hyphenation tables [NOT TO BE CHANGED IN ANY WAY!] + +\patterns{ % just type <return> if you're not using INITEX +.ach4 +.ad4der +.af1t +.al3t +.am5at +.an5c +.ang4 +.ani5m +.ant4 +.an3te +.anti5s +.ar5s +.ar4tie +.ar4ty +.as3c +.as1p +.as1s +.aster5 +.atom5 +.au1d +.av4i +.awn4 +.ba4g +.ba5na +.bas4e +.ber4 +.be5ra +.be3sm +.be5sto +.bri2 +.but4ti +.cam4pe +.can5c +.capa5b +.car5ol +.ca4t +.ce4la +.ch4 +.chill5i +.ci2 +.cit5r +.co3e +.co4r +.cor5ner +.de4moi +.de3o +.de3ra +.de3ri +.des4c +.dictio5 +.do4t +.du4c +.dumb5 +.earth5 +.eas3i +.eb4 +.eer4 +.eg2 +.el5d +.el3em +.enam3 +.en3g +.en3s +.eq5ui5t +.er4ri +.es3 +.eu3 +.eye5 +.fes3 +.for5mer +.ga2 +.ge2 +.gen3t4 +.ge5og +.gi5a +.gi4b +.go4r +.hand5i +.han5k +.he2 +.hero5i +.hes3 +.het3 +.hi3b +.hi3er +.hon5ey +.hon3o +.hov5 +.id4l +.idol3 +.im3m +.im5pin +.in1 +.in3ci +.ine2 +.in2k +.in3s +.ir5r +.is4i +.ju3r +.la4cy +.la4m +.lat5er +.lath5 +.le2 +.leg5e +.len4 +.lep5 +.lev1 +.li4g +.lig5a +.li2n +.li3o +.li4t +.mag5a5 +.mal5o +.man5a +.mar5ti +.me2 +.mer3c +.me5ter +.mis1 +.mist5i +.mon3e +.mo3ro +.mu5ta +.muta5b +.ni4c +.od2 +.odd5 +.of5te +.or5ato +.or3c +.or1d +.or3t +.os3 +.os4tl +.oth3 +.out3 +.ped5al +.pe5te +.pe5tit +.pi4e +.pio5n +.pi2t +.pre3m +.ra4c +.ran4t +.ratio5na +.ree2 +.re5mit +.res2 +.re5stat +.ri4g +.rit5u +.ro4q +.ros5t +.row5d +.ru4d +.sci3e +.self5 +.sell5 +.se2n +.se5rie +.sh2 +.si2 +.sing4 +.st4 +.sta5bl +.sy2 +.ta4 +.te4 +.ten5an +.th2 +.ti2 +.til4 +.tim5o5 +.ting4 +.tin5k +.ton4a +.to4p +.top5i +.tou5s +.trib5ut +.un1a +.un3ce +.under5 +.un1e +.un5k +.un5o +.un3u +.up3 +.ure3 +.us5a +.ven4de +.ve5ra +.wil5i +.ye4 +4ab. +a5bal +a5ban +abe2 +ab5erd +abi5a +ab5it5ab +ab5lat +ab5o5liz +4abr +ab5rog +ab3ul +a4car +ac5ard +ac5aro +a5ceou +ac1er +a5chet +4a2ci +a3cie +ac1in +a3cio +ac5rob +act5if +ac3ul +ac4um +a2d +ad4din +ad5er. +2adi +a3dia +ad3ica +adi4er +a3dio +a3dit +a5diu +ad4le +ad3ow +ad5ran +ad4su +4adu +a3duc +ad5um +ae4r +aeri4e +a2f +aff4 +a4gab +aga4n +ag5ell +age4o +4ageu +ag1i +4ag4l +ag1n +a2go +3agog +ag3oni +a5guer +ag5ul +a4gy +a3ha +a3he +ah4l +a3ho +ai2 +a5ia +a3ic. +ai5ly +a4i4n +ain5in +ain5o +ait5en +a1j +ak1en +al5ab +al3ad +a4lar +4aldi +2ale +al3end +a4lenti +a5le5o +al1i +al4ia. +ali4e +al5lev +4allic +4alm +a5log. +a4ly. +4alys +5a5lyst +5alyt +3alyz +4ama +am5ab +am3ag +ama5ra +am5asc +a4matis +a4m5ato +am5era +am3ic +am5if +am5ily +am1in +ami4no +a2mo +a5mon +amor5i +amp5en +a2n +an3age +3analy +a3nar +an3arc +anar4i +a3nati +4and +ande4s +an3dis +an1dl +an4dow +a5nee +a3nen +an5est. +a3neu +2ang +ang5ie +an1gl +a4n1ic +a3nies +an3i3f +an4ime +a5nimi +a5nine +an3io +a3nip +an3ish +an3it +a3niu +an4kli +5anniz +ano4 +an5ot +anoth5 +an2sa +an4sco +an4sn +an2sp +ans3po +an4st +an4sur +antal4 +an4tie +4anto +an2tr +an4tw +an3ua +an3ul +a5nur +4ao +apar4 +ap5at +ap5ero +a3pher +4aphi +a4pilla +ap5illar +ap3in +ap3ita +a3pitu +a2pl +apoc5 +ap5ola +apor5i +apos3t +aps5es +a3pu +aque5 +2a2r +ar3act +a5rade +ar5adis +ar3al +a5ramete +aran4g +ara3p +ar4at +a5ratio +ar5ativ +a5rau +ar5av4 +araw4 +arbal4 +ar4chan +ar5dine +ar4dr +ar5eas +a3ree +ar3ent +a5ress +ar4fi +ar4fl +ar1i +ar5ial +ar3ian +a3riet +ar4im +ar5inat +ar3io +ar2iz +ar2mi +ar5o5d +a5roni +a3roo +ar2p +ar3q +arre4 +ar4sa +ar2sh +4as. +as4ab +as3ant +ashi4 +a5sia. +a3sib +a3sic +5a5si4t +ask3i +as4l +a4soc +as5ph +as4sh +as3ten +as1tr +asur5a +a2ta +at3abl +at5ac +at3alo +at5ap +ate5c +at5ech +at3ego +at3en. +at3era +ater5n +a5terna +at3est +at5ev +4ath +ath5em +a5then +at4ho +ath5om +4ati. +a5tia +at5i5b +at1ic +at3if +ation5ar +at3itu +a4tog +a2tom +at5omiz +a4top +a4tos +a1tr +at5rop +at4sk +at4tag +at5te +at4th +a2tu +at5ua +at5ue +at3ul +at3ura +a2ty +au4b +augh3 +au3gu +au4l2 +aun5d +au3r +au5sib +aut5en +au1th +a2va +av3ag +a5van +ave4no +av3era +av5ern +av5ery +av1i +avi4er +av3ig +av5oc +a1vor +3away +aw3i +aw4ly +aws4 +ax4ic +ax4id +ay5al +aye4 +ays4 +azi4er +azz5i +5ba. +bad5ger +ba4ge +bal1a +ban5dag +ban4e +ban3i +barbi5 +bari4a +bas4si +1bat +ba4z +2b1b +b2be +b3ber +bbi4na +4b1d +4be. +beak4 +beat3 +4be2d +be3da +be3de +be3di +be3gi +be5gu +1bel +be1li +be3lo +4be5m +be5nig +be5nu +4bes4 +be3sp +be5str +3bet +bet5iz +be5tr +be3tw +be3w +be5yo +2bf +4b3h +bi2b +bi4d +3bie +bi5en +bi4er +2b3if +1bil +bi3liz +bina5r4 +bin4d +bi5net +bi3ogr +bi5ou +bi2t +3bi3tio +bi3tr +3bit5ua +b5itz +b1j +bk4 +b2l2 +blath5 +b4le. +blen4 +5blesp +b3lis +b4lo +blun4t +4b1m +4b3n +bne5g +3bod +bod3i +bo4e +bol3ic +bom4bi +bon4a +bon5at +3boo +5bor. +4b1ora +bor5d +5bore +5bori +5bos4 +b5ota +both5 +bo4to +bound3 +4bp +4brit +broth3 +2b5s2 +bsor4 +2bt +bt4l +b4to +b3tr +buf4fer +bu4ga +bu3li +bumi4 +bu4n +bunt4i +bu3re +bus5ie +buss4e +5bust +4buta +3butio +b5uto +b1v +4b5w +5by. +bys4 +1ca +cab3in +ca1bl +cach4 +ca5den +4cag4 +2c5ah +ca3lat +cal4la +call5in +4calo +can5d +can4e +can4ic +can5is +can3iz +can4ty +cany4 +ca5per +car5om +cast5er +cas5tig +4casy +ca4th +4cativ +cav5al +c3c +ccha5 +cci4a +ccompa5 +ccon4 +ccou3t +2ce. +4ced. +4ceden +3cei +5cel. +3cell +1cen +3cenc +2cen4e +4ceni +3cent +3cep +ce5ram +4cesa +3cessi +ces5si5b +ces5t +cet4 +c5e4ta +cew4 +2ch +4ch. +4ch3ab +5chanic +ch5a5nis +che2 +cheap3 +4ched +che5lo +3chemi +ch5ene +ch3er. +ch3ers +4ch1in +5chine. +ch5iness +5chini +5chio +3chit +chi2z +3cho2 +ch4ti +1ci +3cia +ci2a5b +cia5r +ci5c +4cier +5cific. +4cii +ci4la +3cili +2cim +2cin +c4ina +3cinat +cin3em +c1ing +c5ing. +5cino +cion4 +4cipe +ci3ph +4cipic +4cista +4cisti +2c1it +cit3iz +5ciz +ck1 +ck3i +1c4l4 +4clar +c5laratio +5clare +cle4m +4clic +clim4 +cly4 +c5n +1co +co5ag +coe2 +2cog +co4gr +coi4 +co3inc +col5i +5colo +col3or +com5er +con4a +c4one +con3g +con5t +co3pa +cop3ic +co4pl +4corb +coro3n +cos4e +cov1 +cove4 +cow5a +coz5e +co5zi +c1q +cras5t +5crat. +5cratic +cre3at +5cred +4c3reta +cre4v +cri2 +cri5f +c4rin +cris4 +5criti +cro4pl +crop5o +cros4e +cru4d +4c3s2 +2c1t +cta4b +ct5ang +c5tant +c2te +c3ter +c4ticu +ctim3i +ctu4r +c4tw +cud5 +c4uf +c4ui +cu5ity +5culi +cul4tis +3cultu +cu2ma +c3ume +cu4mi +3cun +cu3pi +cu5py +cur5a4b +cu5ria +1cus +cuss4i +3c4ut +cu4tie +4c5utiv +4cutr +1cy +cze4 +1d2a +5da. +2d3a4b +dach4 +4daf +2dag +da2m2 +dan3g +dard5 +dark5 +4dary +3dat +4dativ +4dato +5dav4 +dav5e +5day +d1b +d5c +d1d4 +2de. +deaf5 +deb5it +de4bon +decan4 +de4cil +de5com +2d1ed +4dee. +de5if +deli4e +del5i5q +de5lo +d4em +5dem. +3demic +dem5ic. +de5mil +de4mons +demor5 +1den +de4nar +de3no +denti5f +de3nu +de1p +de3pa +depi4 +de2pu +d3eq +d4erh +5derm +dern5iz +der5s +des2 +d2es. +de1sc +de2s5o +des3ti +de3str +de4su +de1t +de2to +de1v +dev3il +4dey +4d1f +d4ga +d3ge4t +dg1i +d2gy +d1h2 +5di. +1d4i3a +dia5b +di4cam +d4ice +3dict +3did +5di3en +d1if +di3ge +di4lato +d1in +1dina +3dine. +5dini +di5niz +1dio +dio5g +di4pl +dir2 +di1re +dirt5i +dis1 +5disi +d4is3t +d2iti +1di1v +d1j +d5k2 +4d5la +3dle. +3dled +3dles. +4dless +2d3lo +4d5lu +2dly +d1m +4d1n4 +1do +3do. +do5de +5doe +2d5of +d4og +do4la +doli4 +do5lor +dom5iz +do3nat +doni4 +doo3d +dop4p +d4or +3dos +4d5out +do4v +3dox +d1p +1dr +drag5on +4drai +dre4 +drea5r +5dren +dri4b +dril4 +dro4p +4drow +5drupli +4dry +2d1s2 +ds4p +d4sw +d4sy +d2th +1du +d1u1a +du2c +d1uca +duc5er +4duct. +4ducts +du5el +du4g +d3ule +dum4be +du4n +4dup +du4pe +d1v +d1w +d2y +5dyn +dy4se +dys5p +e1a4b +e3act +ead1 +ead5ie +ea4ge +ea5ger +ea4l +eal5er +eal3ou +eam3er +e5and +ear3a +ear4c +ear5es +ear4ic +ear4il +ear5k +ear2t +eart3e +ea5sp +e3ass +east3 +ea2t +eat5en +eath3i +e5atif +e4a3tu +ea2v +eav3en +eav5i +eav5o +2e1b +e4bel. +e4bels +e4ben +e4bit +e3br +e4cad +ecan5c +ecca5 +e1ce +ec5essa +ec2i +e4cib +ec5ificat +ec5ifie +ec5ify +ec3im +eci4t +e5cite +e4clam +e4clus +e2col +e4comm +e4compe +e4conc +e2cor +ec3ora +eco5ro +e1cr +e4crem +ec4tan +ec4te +e1cu +e4cul +ec3ula +2e2da +4ed3d +e4d1er +ede4s +4edi +e3dia +ed3ib +ed3ica +ed3im +ed1it +edi5z +4edo +e4dol +edon2 +e4dri +e4dul +ed5ulo +ee2c +eed3i +ee2f +eel3i +ee4ly +ee2m +ee4na +ee4p1 +ee2s4 +eest4 +ee4ty +e5ex +e1f +e4f3ere +1eff +e4fic +5efici +efil4 +e3fine +ef5i5nite +3efit +efor5es +e4fuse. +4egal +eger4 +eg5ib +eg4ic +eg5ing +e5git5 +eg5n +e4go. +e4gos +eg1ul +e5gur +5egy +e1h4 +eher4 +ei2 +e5ic +ei5d +eig2 +ei5gl +e3imb +e3inf +e1ing +e5inst +eir4d +eit3e +ei3th +e5ity +e1j +e4jud +ej5udi +eki4n +ek4la +e1la +e4la. +e4lac +elan4d +el5ativ +e4law +elaxa4 +e3lea +el5ebra +5elec +e4led +el3ega +e5len +e4l1er +e1les +el2f +el2i +e3libe +e4l5ic. +el3ica +e3lier +el5igib +e5lim +e4l3ing +e3lio +e2lis +el5ish +e3liv3 +4ella +el4lab +ello4 +e5loc +el5og +el3op. +el2sh +el4ta +e5lud +el5ug +e4mac +e4mag +e5man +em5ana +em5b +e1me +e2mel +e4met +em3ica +emi4e +em5igra +em1in2 +em5ine +em3i3ni +e4mis +em5ish +e5miss +em3iz +5emniz +emo4g +emoni5o +em3pi +e4mul +em5ula +emu3n +e3my +en5amo +e4nant +ench4er +en3dic +e5nea +e5nee +en3em +en5ero +en5esi +en5est +en3etr +e3new +en5ics +e5nie +e5nil +e3nio +en3ish +en3it +e5niu +5eniz +4enn +4eno +eno4g +e4nos +en3ov +en4sw +ent5age +4enthes +en3ua +en5uf +e3ny. +4en3z +e5of +eo2g +e4oi4 +e3ol +eop3ar +e1or +eo3re +eo5rol +eos4 +e4ot +eo4to +e5out +e5ow +e2pa +e3pai +ep5anc +e5pel +e3pent +ep5etitio +ephe4 +e4pli +e1po +e4prec +ep5reca +e4pred +ep3reh +e3pro +e4prob +ep4sh +ep5ti5b +e4put +ep5uta +e1q +equi3l +e4q3ui3s +er1a +era4b +4erand +er3ar +4erati. +2erb +er4bl +er3ch +er4che +2ere. +e3real +ere5co +ere3in +er5el. +er3emo +er5ena +er5ence +4erene +er3ent +ere4q +er5ess +er3est +eret4 +er1h +er1i +e1ria4 +5erick +e3rien +eri4er +er3ine +e1rio +4erit +er4iu +eri4v +e4riva +er3m4 +er4nis +4ernit +5erniz +er3no +2ero +er5ob +e5roc +ero4r +er1ou +er1s +er3set +ert3er +4ertl +er3tw +4eru +eru4t +5erwau +e1s4a +e4sage. +e4sages +es2c +e2sca +es5can +e3scr +es5cu +e1s2e +e2sec +es5ecr +es5enc +e4sert. +e4serts +e4serva +4esh +e3sha +esh5en +e1si +e2sic +e2sid +es5iden +es5igna +e2s5im +es4i4n +esis4te +esi4u +e5skin +es4mi +e2sol +es3olu +e2son +es5ona +e1sp +es3per +es5pira +es4pre +2ess +es4si4b +estan4 +es3tig +es5tim +4es2to +e3ston +2estr +e5stro +estruc5 +e2sur +es5urr +es4w +eta4b +eten4d +e3teo +ethod3 +et1ic +e5tide +etin4 +eti4no +e5tir +e5titio +et5itiv +4etn +et5ona +e3tra +e3tre +et3ric +et5rif +et3rog +et5ros +et3ua +et5ym +et5z +4eu +e5un +e3up +eu3ro +eus4 +eute4 +euti5l +eu5tr +eva2p5 +e2vas +ev5ast +e5vea +ev3ell +evel3o +e5veng +even4i +ev1er +e5verb +e1vi +ev3id +evi4l +e4vin +evi4v +e5voc +e5vu +e1wa +e4wag +e5wee +e3wh +ewil5 +ew3ing +e3wit +1exp +5eyc +5eye. +eys4 +1fa +fa3bl +fab3r +fa4ce +4fag +fain4 +fall5e +4fa4ma +fam5is +5far +far5th +fa3ta +fa3the +4fato +fault5 +4f5b +4fd +4fe. +feas4 +feath3 +fe4b +4feca +5fect +2fed +fe3li +fe4mo +fen2d +fend5e +fer1 +5ferr +fev4 +4f1f +f4fes +f4fie +f5fin. +f2f5is +f4fly +f2fy +4fh +1fi +fi3a +2f3ic. +4f3ical +f3ican +4ficate +f3icen +fi3cer +fic4i +5ficia +5ficie +4fics +fi3cu +fi5del +fight5 +fil5i +fill5in +4fily +2fin +5fina +fin2d5 +fi2ne +f1in3g +fin4n +fis4ti +f4l2 +f5less +flin4 +flo3re +f2ly5 +4fm +4fn +1fo +5fon +fon4de +fon4t +fo2r +fo5rat +for5ay +fore5t +for4i +fort5a +fos5 +4f5p +fra4t +f5rea +fres5c +fri2 +fril4 +frol5 +2f3s +2ft +f4to +f2ty +3fu +fu5el +4fug +fu4min +fu5ne +fu3ri +fusi4 +fus4s +4futa +1fy +1ga +gaf4 +5gal. +3gali +ga3lo +2gam +ga5met +g5amo +gan5is +ga3niz +gani5za +4gano +gar5n4 +gass4 +gath3 +4gativ +4gaz +g3b +gd4 +2ge. +2ged +geez4 +gel4in +ge5lis +ge5liz +4gely +1gen +ge4nat +ge5niz +4geno +4geny +1geo +ge3om +g4ery +5gesi +geth5 +4geto +ge4ty +ge4v +4g1g2 +g2ge +g3ger +gglu5 +ggo4 +gh3in +gh5out +gh4to +5gi. +1gi4a +gia5r +g1ic +5gicia +g4ico +gien5 +5gies. +gil4 +g3imen +3g4in. +gin5ge +5g4ins +5gio +3gir +gir4l +g3isl +gi4u +5giv +3giz +gl2 +gla4 +glad5i +5glas +1gle +gli4b +g3lig +3glo +glo3r +g1m +g4my +gn4a +g4na. +gnet4t +g1ni +g2nin +g4nio +g1no +g4non +1go +3go. +gob5 +5goe +3g4o4g +go3is +gon2 +4g3o3na +gondo5 +go3ni +5goo +go5riz +gor5ou +5gos. +gov1 +g3p +1gr +4grada +g4rai +gran2 +5graph. +g5rapher +5graphic +4graphy +4gray +gre4n +4gress. +4grit +g4ro +gruf4 +gs2 +g5ste +gth3 +gu4a +3guard +2gue +5gui5t +3gun +3gus +4gu4t +g3w +1gy +2g5y3n +gy5ra +h3ab4l +hach4 +hae4m +hae4t +h5agu +ha3la +hala3m +ha4m +han4ci +han4cy +5hand. +han4g +hang5er +hang5o +h5a5niz +han4k +han4te +hap3l +hap5t +ha3ran +ha5ras +har2d +hard3e +har4le +harp5en +har5ter +has5s +haun4 +5haz +haz3a +h1b +1head +3hear +he4can +h5ecat +h4ed +he5do5 +he3l4i +hel4lis +hel4ly +h5elo +hem4p +he2n +hena4 +hen5at +heo5r +hep5 +h4era +hera3p +her4ba +here5a +h3ern +h5erou +h3ery +h1es +he2s5p +he4t +het4ed +heu4 +h1f +h1h +hi5an +hi4co +high5 +h4il2 +himer4 +h4ina +hion4e +hi4p +hir4l +hi3ro +hir4p +hir4r +his3el +his4s +hith5er +hi2v +4hk +4h1l4 +hlan4 +h2lo +hlo3ri +4h1m +hmet4 +2h1n +h5odiz +h5ods +ho4g +hoge4 +hol5ar +3hol4e +ho4ma +home3 +hon4a +ho5ny +3hood +hoon4 +hor5at +ho5ris +hort3e +ho5ru +hos4e +ho5sen +hos1p +1hous +house3 +hov5el +4h5p +4hr4 +hree5 +hro5niz +hro3po +4h1s2 +h4sh +h4tar +ht1en +ht5es +h4ty +hu4g +hu4min +hun5ke +hun4t +hus3t4 +hu4t +h1w +h4wart +hy3pe +hy3ph +hy2s +2i1a +i2al +iam4 +iam5ete +i2an +4ianc +ian3i +4ian4t +ia5pe +iass4 +i4ativ +ia4tric +i4atu +ibe4 +ib3era +ib5ert +ib5ia +ib3in +ib5it. +ib5ite +i1bl +ib3li +i5bo +i1br +i2b5ri +i5bun +4icam +5icap +4icar +i4car. +i4cara +icas5 +i4cay +iccu4 +4iceo +4ich +2ici +i5cid +ic5ina +i2cip +ic3ipa +i4cly +i2c5oc +4i1cr +5icra +i4cry +ic4te +ictu2 +ic4t3ua +ic3ula +ic4um +ic5uo +i3cur +2id +i4dai +id5anc +id5d +ide3al +ide4s +i2di +id5ian +idi4ar +i5die +id3io +idi5ou +id1it +id5iu +i3dle +i4dom +id3ow +i4dr +i2du +id5uo +2ie4 +ied4e +5ie5ga +ield3 +ien5a4 +ien4e +i5enn +i3enti +i1er. +i3esc +i1est +i3et +4if. +if5ero +iff5en +if4fr +4ific. +i3fie +i3fl +4ift +2ig +iga5b +ig3era +ight3i +4igi +i3gib +ig3il +ig3in +ig3it +i4g4l +i2go +ig3or +ig5ot +i5gre +igu5i +ig1ur +i3h +4i5i4 +i3j +4ik +i1la +il3a4b +i4lade +i2l5am +ila5ra +i3leg +il1er +ilev4 +il5f +il1i +il3ia +il2ib +il3io +il4ist +2ilit +il2iz +ill5ab +4iln +il3oq +il4ty +il5ur +il3v +i4mag +im3age +ima5ry +imenta5r +4imet +im1i +im5ida +imi5le +i5mini +4imit +im4ni +i3mon +i2mu +im3ula +2in. +i4n3au +4inav +incel4 +in3cer +4ind +in5dling +2ine +i3nee +iner4ar +i5ness +4inga +4inge +in5gen +4ingi +in5gling +4ingo +4ingu +2ini +i5ni. +i4nia +in3io +in1is +i5nite. +5initio +in3ity +4ink +4inl +2inn +2i1no +i4no4c +ino4s +i4not +2ins +in3se +insur5a +2int. +2in4th +in1u +i5nus +4iny +2io +4io. +ioge4 +io2gr +i1ol +io4m +ion3at +ion4ery +ion3i +io5ph +ior3i +i4os +io5th +i5oti +io4to +i4our +2ip +ipe4 +iphras4 +ip3i +ip4ic +ip4re4 +ip3ul +i3qua +iq5uef +iq3uid +iq3ui3t +4ir +i1ra +ira4b +i4rac +ird5e +ire4de +i4ref +i4rel4 +i4res +ir5gi +ir1i +iri5de +ir4is +iri3tu +5i5r2iz +ir4min +iro4g +5iron. +ir5ul +2is. +is5ag +is3ar +isas5 +2is1c +is3ch +4ise +is3er +3isf +is5han +is3hon +ish5op +is3ib +isi4d +i5sis +is5itiv +4is4k +islan4 +4isms +i2so +iso5mer +is1p +is2pi +is4py +4is1s +is4sal +issen4 +is4ses +is4ta. +is1te +is1ti +ist4ly +4istral +i2su +is5us +4ita. +ita4bi +i4tag +4ita5m +i3tan +i3tat +2ite +it3era +i5teri +it4es +2ith +i1ti +4itia +4i2tic +it3ica +5i5tick +it3ig +it5ill +i2tim +2itio +4itis +i4tism +i2t5o5m +4iton +i4tram +it5ry +4itt +it3uat +i5tud +it3ul +4itz. +i1u +2iv +iv3ell +iv3en. +i4v3er. +i4vers. +iv5il. +iv5io +iv1it +i5vore +iv3o3ro +i4v3ot +4i5w +ix4o +4iy +4izar +izi4 +5izont +5ja +jac4q +ja4p +1je +jer5s +4jestie +4jesty +jew3 +jo4p +5judg +3ka. +k3ab +k5ag +kais4 +kal4 +k1b +k2ed +1kee +ke4g +ke5li +k3en4d +k1er +kes4 +k3est. +ke4ty +k3f +kh4 +k1i +5ki. +5k2ic +k4ill +kilo5 +k4im +k4in. +kin4de +k5iness +kin4g +ki4p +kis4 +k5ish +kk4 +k1l +4kley +4kly +k1m +k5nes +1k2no +ko5r +kosh4 +k3ou +kro5n +4k1s2 +k4sc +ks4l +k4sy +k5t +k1w +lab3ic +l4abo +laci4 +l4ade +la3dy +lag4n +lam3o +3land +lan4dl +lan5et +lan4te +lar4g +lar3i +las4e +la5tan +4lateli +4lativ +4lav +la4v4a +2l1b +lbin4 +4l1c2 +lce4 +l3ci +2ld +l2de +ld4ere +ld4eri +ldi4 +ld5is +l3dr +l4dri +le2a +le4bi +left5 +5leg. +5legg +le4mat +lem5atic +4len. +3lenc +5lene. +1lent +le3ph +le4pr +lera5b +ler4e +3lerg +3l4eri +l4ero +les2 +le5sco +5lesq +3less +5less. +l3eva +lev4er. +lev4era +lev4ers +3ley +4leye +2lf +l5fr +4l1g4 +l5ga +lgar3 +l4ges +lgo3 +2l3h +li4ag +li2am +liar5iz +li4as +li4ato +li5bi +5licio +li4cor +4lics +4lict. +l4icu +l3icy +l3ida +lid5er +3lidi +lif3er +l4iff +li4fl +5ligate +3ligh +li4gra +3lik +4l4i4l +lim4bl +lim3i +li4mo +l4im4p +l4ina +1l4ine +lin3ea +lin3i +link5er +li5og +4l4iq +lis4p +l1it +l2it. +5litica +l5i5tics +liv3er +l1iz +4lj +lka3 +l3kal +lka4t +l1l +l4law +l2le +l5lea +l3lec +l3leg +l3lel +l3le4n +l3le4t +ll2i +l2lin4 +l5lina +ll4o +lloqui5 +ll5out +l5low +2lm +l5met +lm3ing +l4mod +lmon4 +2l1n2 +3lo. +lob5al +lo4ci +4lof +3logic +l5ogo +3logu +lom3er +5long +lon4i +l3o3niz +lood5 +5lope. +lop3i +l3opm +lora4 +lo4rato +lo5rie +lor5ou +5los. +los5et +5losophiz +5losophy +los4t +lo4ta +loun5d +2lout +4lov +2lp +lpa5b +l3pha +l5phi +lp5ing +l3pit +l4pl +l5pr +4l1r +2l1s2 +l4sc +l2se +l4sie +4lt +lt5ag +ltane5 +l1te +lten4 +ltera4 +lth3i +l5ties. +ltis4 +l1tr +ltu2 +ltur3a +lu5a +lu3br +luch4 +lu3ci +lu3en +luf4 +lu5id +lu4ma +5lumi +l5umn. +5lumnia +lu3o +luo3r +4lup +luss4 +lus3te +1lut +l5ven +l5vet4 +2l1w +1ly +4lya +4lyb +ly5me +ly3no +2lys4 +l5yse +1ma +2mab +ma2ca +ma5chine +ma4cl +mag5in +5magn +2mah +maid5 +4mald +ma3lig +ma5lin +mal4li +mal4ty +5mania +man5is +man3iz +4map +ma5rine. +ma5riz +mar4ly +mar3v +ma5sce +mas4e +mas1t +5mate +math3 +ma3tis +4matiza +4m1b +mba4t5 +m5bil +m4b3ing +mbi4v +4m5c +4me. +2med +4med. +5media +me3die +m5e5dy +me2g +mel5on +mel4t +me2m +mem1o3 +1men +men4a +men5ac +men4de +4mene +men4i +mens4 +mensu5 +3ment +men4te +me5on +m5ersa +2mes +3mesti +me4ta +met3al +me1te +me5thi +m4etr +5metric +me5trie +me3try +me4v +4m1f +2mh +5mi. +mi3a +mid4a +mid4g +mig4 +3milia +m5i5lie +m4ill +min4a +3mind +m5inee +m4ingl +min5gli +m5ingly +min4t +m4inu +miot4 +m2is +mis4er. +mis5l +mis4ti +m5istry +4mith +m2iz +4mk +4m1l +m1m +mma5ry +4m1n +mn4a +m4nin +mn4o +1mo +4mocr +5mocratiz +mo2d1 +mo4go +mois2 +moi5se +4mok +mo5lest +mo3me +mon5et +mon5ge +moni3a +mon4ism +mon4ist +mo3niz +monol4 +mo3ny. +mo2r +4mora. +mos2 +mo5sey +mo3sp +moth3 +m5ouf +3mous +mo2v +4m1p +mpara5 +mpa5rab +mpar5i +m3pet +mphas4 +m2pi +mpi4a +mp5ies +m4p1in +m5pir +mp5is +mpo3ri +mpos5ite +m4pous +mpov5 +mp4tr +m2py +4m3r +4m1s2 +m4sh +m5si +4mt +1mu +mula5r4 +5mult +multi3 +3mum +mun2 +4mup +mu4u +4mw +1na +2n1a2b +n4abu +4nac. +na4ca +n5act +nag5er. +nak4 +na4li +na5lia +4nalt +na5mit +n2an +nanci4 +nan4it +nank4 +nar3c +4nare +nar3i +nar4l +n5arm +n4as +nas4c +nas5ti +n2at +na3tal +nato5miz +n2au +nau3se +3naut +nav4e +4n1b4 +ncar5 +n4ces. +n3cha +n5cheo +n5chil +n3chis +nc1in +nc4it +ncour5a +n1cr +n1cu +n4dai +n5dan +n1de +nd5est. +ndi4b +n5d2if +n1dit +n3diz +n5duc +ndu4r +nd2we +2ne. +n3ear +ne2b +neb3u +ne2c +5neck +2ned +ne4gat +neg5ativ +5nege +ne4la +nel5iz +ne5mi +ne4mo +1nen +4nene +3neo +ne4po +ne2q +n1er +nera5b +n4erar +n2ere +n4er5i +ner4r +1nes +2nes. +4nesp +2nest +4nesw +3netic +ne4v +n5eve +ne4w +n3f +n4gab +n3gel +nge4n4e +n5gere +n3geri +ng5ha +n3gib +ng1in +n5git +n4gla +ngov4 +ng5sh +n1gu +n4gum +n2gy +4n1h4 +nha4 +nhab3 +nhe4 +3n4ia +ni3an +ni4ap +ni3ba +ni4bl +ni4d +ni5di +ni4er +ni2fi +ni5ficat +n5igr +nik4 +n1im +ni3miz +n1in +5nine. +nin4g +ni4o +5nis. +nis4ta +n2it +n4ith +3nitio +n3itor +ni3tr +n1j +4nk2 +n5kero +n3ket +nk3in +n1kl +4n1l +n5m +nme4 +nmet4 +4n1n2 +nne4 +nni3al +nni4v +nob4l +no3ble +n5ocl +4n3o2d +3noe +4nog +noge4 +nois5i +no5l4i +5nologis +3nomic +n5o5miz +no4mo +no3my +no4n +non4ag +non5i +n5oniz +4nop +5nop5o5li +nor5ab +no4rary +4nosc +nos4e +nos5t +no5ta +1nou +3noun +nov3el3 +nowl3 +n1p4 +npi4 +npre4c +n1q +n1r +nru4 +2n1s2 +ns5ab +nsati4 +ns4c +n2se +n4s3es +nsid1 +nsig4 +n2sl +ns3m +n4soc +ns4pe +n5spi +nsta5bl +n1t +nta4b +nter3s +nt2i +n5tib +nti4er +nti2f +n3tine +n4t3ing +nti4p +ntrol5li +nt4s +ntu3me +nu1a +nu4d +nu5en +nuf4fe +n3uin +3nu3it +n4um +nu1me +n5umi +3nu4n +n3uo +nu3tr +n1v2 +n1w4 +nym4 +nyp4 +4nz +n3za +4oa +oad3 +o5a5les +oard3 +oas4e +oast5e +oat5i +ob3a3b +o5bar +obe4l +o1bi +o2bin +ob5ing +o3br +ob3ul +o1ce +och4 +o3chet +ocif3 +o4cil +o4clam +o4cod +oc3rac +oc5ratiz +ocre3 +5ocrit +octor5a +oc3ula +o5cure +od5ded +od3ic +odi3o +o2do4 +odor3 +od5uct. +od5ucts +o4el +o5eng +o3er +oe4ta +o3ev +o2fi +of5ite +ofit4t +o2g5a5r +og5ativ +o4gato +o1ge +o5gene +o5geo +o4ger +o3gie +1o1gis +og3it +o4gl +o5g2ly +3ogniz +o4gro +ogu5i +1ogy +2ogyn +o1h2 +ohab5 +oi2 +oic3es +oi3der +oiff4 +oig4 +oi5let +o3ing +oint5er +o5ism +oi5son +oist5en +oi3ter +o5j +2ok +o3ken +ok5ie +o1la +o4lan +olass4 +ol2d +old1e +ol3er +o3lesc +o3let +ol4fi +ol2i +o3lia +o3lice +ol5id. +o3li4f +o5lil +ol3ing +o5lio +o5lis. +ol3ish +o5lite +o5litio +o5liv +olli4e +ol5ogiz +olo4r +ol5pl +ol2t +ol3ub +ol3ume +ol3un +o5lus +ol2v +o2ly +om5ah +oma5l +om5atiz +om2be +om4bl +o2me +om3ena +om5erse +o4met +om5etry +o3mia +om3ic. +om3ica +o5mid +om1in +o5mini +5ommend +omo4ge +o4mon +om3pi +ompro5 +o2n +on1a +on4ac +o3nan +on1c +3oncil +2ond +on5do +o3nen +on5est +on4gu +on1ic +o3nio +on1is +o5niu +on3key +on4odi +on3omy +on3s +onspi4 +onspir5a +onsu4 +onten4 +on3t4i +ontif5 +on5um +onva5 +oo2 +ood5e +ood5i +oo4k +oop3i +o3ord +oost5 +o2pa +ope5d +op1er +3opera +4operag +2oph +o5phan +o5pher +op3ing +o3pit +o5pon +o4posi +o1pr +op1u +opy5 +o1q +o1ra +o5ra. +o4r3ag +or5aliz +or5ange +ore5a +o5real +or3ei +ore5sh +or5est. +orew4 +or4gu +4o5ria +or3ica +o5ril +or1in +o1rio +or3ity +o3riu +or2mi +orn2e +o5rof +or3oug +or5pe +3orrh +or4se +ors5en +orst4 +or3thi +or3thy +or4ty +o5rum +o1ry +os3al +os2c +os4ce +o3scop +4oscopi +o5scr +os4i4e +os5itiv +os3ito +os3ity +osi4u +os4l +o2so +os4pa +os4po +os2ta +o5stati +os5til +os5tit +o4tan +otele4g +ot3er. +ot5ers +o4tes +4oth +oth5esi +oth3i4 +ot3ic. +ot5ica +o3tice +o3tif +o3tis +oto5s +ou2 +ou3bl +ouch5i +ou5et +ou4l +ounc5er +oun2d +ou5v +ov4en +over4ne +over3s +ov4ert +o3vis +oviti4 +o5v4ol +ow3der +ow3el +ow5est +ow1i +own5i +o4wo +oy1a +1pa +pa4ca +pa4ce +pac4t +p4ad +5pagan +p3agat +p4ai +pain4 +p4al +pan4a +pan3el +pan4ty +pa3ny +pa1p +pa4pu +para5bl +par5age +par5di +3pare +par5el +p4a4ri +par4is +pa2te +pa5ter +5pathic +pa5thy +pa4tric +pav4 +3pay +4p1b +pd4 +4pe. +3pe4a +pear4l +pe2c +2p2ed +3pede +3pedi +pedia4 +ped4ic +p4ee +pee4d +pek4 +pe4la +peli4e +pe4nan +p4enc +pen4th +pe5on +p4era. +pera5bl +p4erag +p4eri +peri5st +per4mal +perme5 +p4ern +per3o +per3ti +pe5ru +per1v +pe2t +pe5ten +pe5tiz +4pf +4pg +4ph. +phar5i +phe3no +ph4er +ph4es. +ph1ic +5phie +ph5ing +5phisti +3phiz +ph2l +3phob +3phone +5phoni +pho4r +4phs +ph3t +5phu +1phy +pi3a +pian4 +pi4cie +pi4cy +p4id +p5ida +pi3de +5pidi +3piec +pi3en +pi4grap +pi3lo +pi2n +p4in. +pind4 +p4ino +3pi1o +pion4 +p3ith +pi5tha +pi2tu +2p3k2 +1p2l2 +3plan +plas5t +pli3a +pli5er +4plig +pli4n +ploi4 +plu4m +plum4b +4p1m +2p3n +po4c +5pod. +po5em +po3et5 +5po4g +poin2 +5point +poly5t +po4ni +po4p +1p4or +po4ry +1pos +pos1s +p4ot +po4ta +5poun +4p1p +ppa5ra +p2pe +p4ped +p5pel +p3pen +p3per +p3pet +ppo5site +pr2 +pray4e +5preci +pre5co +pre3em +pref5ac +pre4la +pre3r +p3rese +3press +pre5ten +pre3v +5pri4e +prin4t3 +pri4s +pris3o +p3roca +prof5it +pro3l +pros3e +pro1t +2p1s2 +p2se +ps4h +p4sib +2p1t +pt5a4b +p2te +p2th +pti3m +ptu4r +p4tw +pub3 +pue4 +puf4 +pul3c +pu4m +pu2n +pur4r +5pus +pu2t +5pute +put3er +pu3tr +put4ted +put4tin +p3w +qu2 +qua5v +2que. +3quer +3quet +2rab +ra3bi +rach4e +r5acl +raf5fi +raf4t +r2ai +ra4lo +ram3et +r2ami +rane5o +ran4ge +r4ani +ra5no +rap3er +3raphy +rar5c +rare4 +rar5ef +4raril +r2as +ration4 +rau4t +ra5vai +rav3el +ra5zie +r1b +r4bab +r4bag +rbi2 +rbi4f +r2bin +r5bine +rb5ing. +rb4o +r1c +r2ce +rcen4 +r3cha +rch4er +r4ci4b +rc4it +rcum3 +r4dal +rd2i +rdi4a +rdi4er +rdin4 +rd3ing +2re. +re1al +re3an +re5arr +5reav +re4aw +r5ebrat +rec5oll +rec5ompe +re4cre +2r2ed +re1de +re3dis +red5it +re4fac +re2fe +re5fer. +re3fi +re4fy +reg3is +re5it +re1li +re5lu +r4en4ta +ren4te +re1o +re5pin +re4posi +re1pu +r1er4 +r4eri +rero4 +re5ru +r4es. +re4spi +ress5ib +res2t +re5stal +re3str +re4ter +re4ti4z +re3tri +reu2 +re5uti +rev2 +re4val +rev3el +r5ev5er. +re5vers +re5vert +re5vil +rev5olu +re4wh +r1f +rfu4 +r4fy +rg2 +rg3er +r3get +r3gic +rgi4n +rg3ing +r5gis +r5git +r1gl +rgo4n +r3gu +rh4 +4rh. +4rhal +ri3a +ria4b +ri4ag +r4ib +rib3a +ric5as +r4ice +4rici +5ricid +ri4cie +r4ico +rid5er +ri3enc +ri3ent +ri1er +ri5et +rig5an +5rigi +ril3iz +5riman +rim5i +3rimo +rim4pe +r2ina +5rina. +rin4d +rin4e +rin4g +ri1o +5riph +riph5e +ri2pl +rip5lic +r4iq +r2is +r4is. +ris4c +r3ish +ris4p +ri3ta3b +r5ited. +rit5er. +rit5ers +rit3ic +ri2tu +rit5ur +riv5el +riv3et +riv3i +r3j +r3ket +rk4le +rk4lin +r1l +rle4 +r2led +r4lig +r4lis +rl5ish +r3lo4 +r1m +rma5c +r2me +r3men +rm5ers +rm3ing +r4ming. +r4mio +r3mit +r4my +r4nar +r3nel +r4ner +r5net +r3ney +r5nic +r1nis4 +r3nit +r3niv +rno4 +r4nou +r3nu +rob3l +r2oc +ro3cr +ro4e +ro1fe +ro5fil +rok2 +ro5ker +5role. +rom5ete +rom4i +rom4p +ron4al +ron4e +ro5n4is +ron4ta +1room +5root +ro3pel +rop3ic +ror3i +ro5ro +ros5per +ros4s +ro4the +ro4ty +ro4va +rov5el +rox5 +r1p +r4pea +r5pent +rp5er. +r3pet +rp4h4 +rp3ing +r3po +r1r4 +rre4c +rre4f +r4reo +rre4st +rri4o +rri4v +rron4 +rros4 +rrys4 +4rs2 +r1sa +rsa5ti +rs4c +r2se +r3sec +rse4cr +rs5er. +rs3es +rse5v2 +r1sh +r5sha +r1si +r4si4b +rson3 +r1sp +r5sw +rtach4 +r4tag +r3teb +rten4d +rte5o +r1ti +rt5ib +rti4d +r4tier +r3tig +rtil3i +rtil4l +r4tily +r4tist +r4tiv +r3tri +rtroph4 +rt4sh +ru3a +ru3e4l +ru3en +ru4gl +ru3in +rum3pl +ru2n +runk5 +run4ty +r5usc +ruti5n +rv4e +rvel4i +r3ven +rv5er. +r5vest +r3vey +r3vic +rvi4v +r3vo +r1w +ry4c +5rynge +ry3t +sa2 +2s1ab +5sack +sac3ri +s3act +5sai +salar4 +sal4m +sa5lo +sal4t +3sanc +san4de +s1ap +sa5ta +5sa3tio +sat3u +sau4 +sa5vor +5saw +4s5b +scan4t5 +sca4p +scav5 +s4ced +4scei +s4ces +sch2 +s4cho +3s4cie +5scin4d +scle5 +s4cli +scof4 +4scopy +scour5a +s1cu +4s5d +4se. +se4a +seas4 +sea5w +se2c3o +3sect +4s4ed +se4d4e +s5edl +se2g +seg3r +5sei +se1le +5self +5selv +4seme +se4mol +sen5at +4senc +sen4d +s5ened +sen5g +s5enin +4sentd +4sentl +sep3a3 +4s1er. +s4erl +ser4o +4servo +s1e4s +se5sh +ses5t +5se5um +5sev +sev3en +sew4i +5sex +4s3f +2s3g +s2h +2sh. +sh1er +5shev +sh1in +sh3io +3ship +shiv5 +sho4 +sh5old +shon3 +shor4 +short5 +4shw +si1b +s5icc +3side. +5sides +5sidi +si5diz +4signa +sil4e +4sily +2s1in +s2ina +5sine. +s3ing +1sio +5sion +sion5a +si2r +sir5a +1sis +3sitio +5siu +1siv +5siz +sk2 +4ske +s3ket +sk5ine +sk5ing +s1l2 +s3lat +s2le +slith5 +2s1m +s3ma +small3 +sman3 +smel4 +s5men +5smith +smol5d4 +s1n4 +1so +so4ce +soft3 +so4lab +sol3d2 +so3lic +5solv +3som +3s4on. +sona4 +son4g +s4op +5sophic +s5ophiz +s5ophy +sor5c +sor5d +4sov +so5vi +2spa +5spai +spa4n +spen4d +2s5peo +2sper +s2phe +3spher +spho5 +spil4 +sp5ing +4spio +s4ply +s4pon +spor4 +4spot +squal4l +s1r +2ss +s1sa +ssas3 +s2s5c +s3sel +s5seng +s4ses. +s5set +s1si +s4sie +ssi4er +ss5ily +s4sl +ss4li +s4sn +sspend4 +ss2t +ssur5a +ss5w +2st. +s2tag +s2tal +stam4i +5stand +s4ta4p +5stat. +s4ted +stern5i +s5tero +ste2w +stew5a +s3the +st2i +s4ti. +s5tia +s1tic +5stick +s4tie +s3tif +st3ing +5stir +s1tle +5stock +stom3a +5stone +s4top +3store +st4r +s4trad +5stratu +s4tray +s4trid +4stry +4st3w +s2ty +1su +su1al +su4b3 +su2g3 +su5is +suit3 +s4ul +su2m +sum3i +su2n +su2r +4sv +sw2 +4swo +s4y +4syc +3syl +syn5o +sy5rin +1ta +3ta. +2tab +ta5bles +5taboliz +4taci +ta5do +4taf4 +tai5lo +ta2l +ta5la +tal5en +tal3i +4talk +tal4lis +ta5log +ta5mo +tan4de +tanta3 +ta5per +ta5pl +tar4a +4tarc +4tare +ta3riz +tas4e +ta5sy +4tatic +ta4tur +taun4 +tav4 +2taw +tax4is +2t1b +4tc +t4ch +tch5et +4t1d +4te. +tead4i +4teat +tece4 +5tect +2t1ed +te5di +1tee +teg4 +te5ger +te5gi +3tel. +teli4 +5tels +te2ma2 +tem3at +3tenan +3tenc +3tend +4tenes +1tent +ten4tag +1teo +te4p +te5pe +ter3c +5ter3d +1teri +ter5ies +ter3is +teri5za +5ternit +ter5v +4tes. +4tess +t3ess. +teth5e +3teu +3tex +4tey +2t1f +4t1g +2th. +than4 +th2e +4thea +th3eas +the5at +the3is +3thet +th5ic. +th5ica +4thil +5think +4thl +th5ode +5thodic +4thoo +thor5it +tho5riz +2ths +1tia +ti4ab +ti4ato +2ti2b +4tick +t4ico +t4ic1u +5tidi +3tien +tif2 +ti5fy +2tig +5tigu +till5in +1tim +4timp +tim5ul +2t1in +t2ina +3tine. +3tini +1tio +ti5oc +tion5ee +5tiq +ti3sa +3tise +tis4m +ti5so +tis4p +5tistica +ti3tl +ti4u +1tiv +tiv4a +1tiz +ti3za +ti3zen +2tl +t5la +tlan4 +3tle. +3tled +3tles. +t5let. +t5lo +4t1m +tme4 +2t1n2 +1to +to3b +to5crat +4todo +2tof +to2gr +to5ic +to2ma +tom4b +to3my +ton4ali +to3nat +4tono +4tony +to2ra +to3rie +tor5iz +tos2 +5tour +4tout +to3war +4t1p +1tra +tra3b +tra5ch +traci4 +trac4it +trac4te +tras4 +tra5ven +trav5es5 +tre5f +tre4m +trem5i +5tria +tri5ces +5tricia +4trics +2trim +tri4v +tro5mi +tron5i +4trony +tro5phe +tro3sp +tro3v +tru5i +trus4 +4t1s2 +t4sc +tsh4 +t4sw +4t3t2 +t4tes +t5to +ttu4 +1tu +tu1a +tu3ar +tu4bi +tud2 +4tue +4tuf4 +5tu3i +3tum +tu4nis +2t3up. +3ture +5turi +tur3is +tur5o +tu5ry +3tus +4tv +tw4 +4t1wa +twis4 +4two +1ty +4tya +2tyl +type3 +ty5ph +4tz +tz4e +4uab +uac4 +ua5na +uan4i +uar5ant +uar2d +uar3i +uar3t +u1at +uav4 +ub4e +u4bel +u3ber +u4bero +u1b4i +u4b5ing +u3ble. +u3ca +uci4b +uc4it +ucle3 +u3cr +u3cu +u4cy +ud5d +ud3er +ud5est +udev4 +u1dic +ud3ied +ud3ies +ud5is +u5dit +u4don +ud4si +u4du +u4ene +uens4 +uen4te +uer4il +3ufa +u3fl +ugh3en +ug5in +2ui2 +uil5iz +ui4n +u1ing +uir4m +uita4 +uiv3 +uiv4er. +u5j +4uk +u1la +ula5b +u5lati +ulch4 +5ulche +ul3der +ul4e +u1len +ul4gi +ul2i +u5lia +ul3ing +ul5ish +ul4lar +ul4li4b +ul4lis +4ul3m +u1l4o +4uls +uls5es +ul1ti +ultra3 +4ultu +u3lu +ul5ul +ul5v +um5ab +um4bi +um4bly +u1mi +u4m3ing +umor5o +um2p +unat4 +u2ne +un4er +u1ni +un4im +u2nin +un5ish +uni3v +un3s4 +un4sw +unt3ab +un4ter. +un4tes +unu4 +un5y +un5z +u4ors +u5os +u1ou +u1pe +uper5s +u5pia +up3ing +u3pl +up3p +upport5 +upt5ib +uptu4 +u1ra +4ura. +u4rag +u4ras +ur4be +urc4 +ur1d +ure5at +ur4fer +ur4fr +u3rif +uri4fic +ur1in +u3rio +u1rit +ur3iz +ur2l +url5ing. +ur4no +uros4 +ur4pe +ur4pi +urs5er +ur5tes +ur3the +urti4 +ur4tie +u3ru +2us +u5sad +u5san +us4ap +usc2 +us3ci +use5a +u5sia +u3sic +us4lin +us1p +us5sl +us5tere +us1tr +u2su +usur4 +uta4b +u3tat +4ute. +4utel +4uten +uten4i +4u1t2i +uti5liz +u3tine +ut3ing +ution5a +u4tis +5u5tiz +u4t1l +ut5of +uto5g +uto5matic +u5ton +u4tou +uts4 +u3u +uu4m +u1v2 +uxu3 +uz4e +1va +5va. +2v1a4b +vac5il +vac3u +vag4 +va4ge +va5lie +val5o +val1u +va5mo +va5niz +va5pi +var5ied +3vat +4ve. +4ved +veg3 +v3el. +vel3li +ve4lo +v4ely +ven3om +v5enue +v4erd +5vere. +v4erel +v3eren +ver5enc +v4eres +ver3ie +vermi4n +3verse +ver3th +v4e2s +4ves. +ves4te +ve4te +vet3er +ve4ty +vi5ali +5vian +5vide. +5vided +4v3iden +5vides +5vidi +v3if +vi5gn +vik4 +2vil +5vilit +v3i3liz +v1in +4vi4na +v2inc +vin5d +4ving +vio3l +v3io4r +vi1ou +vi4p +vi5ro +vis3it +vi3so +vi3su +4viti +vit3r +4vity +3viv +5vo. +voi4 +3vok +vo4la +v5ole +5volt +3volv +vom5i +vor5ab +vori4 +vo4ry +vo4ta +4votee +4vv4 +v4y +w5abl +2wac +wa5ger +wag5o +wait5 +w5al. +wam4 +war4t +was4t +wa1te +wa5ver +w1b +wea5rie +weath3 +wed4n +weet3 +wee5v +wel4l +w1er +west3 +w3ev +whi4 +wi2 +wil2 +will5in +win4de +win4g +wir4 +3wise +with3 +wiz5 +w4k +wl4es +wl3in +w4no +1wo2 +wom1 +wo5ven +w5p +wra4 +wri4 +writa4 +w3sh +ws4l +ws4pe +w5s4t +4wt +wy4 +x1a +xac5e +x4ago +xam3 +x4ap +xas5 +x3c2 +x1e +xe4cuto +x2ed +xer4i +xe5ro +x1h +xhi2 +xhil5 +xhu4 +x3i +xi5a +xi5c +xi5di +x4ime +xi5miz +x3o +x4ob +x3p +xpan4d +xpecto5 +xpe3d +x1t2 +x3ti +x1u +xu3a +xx4 +y5ac +3yar4 +y5at +y1b +y1c +y2ce +yc5er +y3ch +ych4e +ycom4 +ycot4 +y1d +y5ee +y1er +y4erf +yes4 +ye4t +y5gi +4y3h +y1i +y3la +ylla5bl +y3lo +y5lu +ymbol5 +yme4 +ympa3 +yn3chr +yn5d +yn5g +yn5ic +5ynx +y1o4 +yo5d +y4o5g +yom4 +yo5net +y4ons +y4os +y4ped +yper5 +yp3i +y3po +y4poc +yp2ta +y5pu +yra5m +yr5ia +y3ro +yr4r +ys4c +y3s2e +ys3ica +ys3io +3ysis +y4so +yss4 +ys1t +ys3ta +ysur4 +y3thin +yt3ic +y1w +za1 +z5a2b +zar2 +4zb +2ze +ze4n +ze4p +z1er +ze3ro +zet4 +2z1i +z4il +z4is +5zl +4zm +1zo +zo4m +zo5ol +zte4 +4z1z2 +z4zy +}
\ No newline at end of file diff --git a/macros/inrstex/inrstex/enhyphex.tex b/macros/inrstex/inrstex/enhyphex.tex new file mode 100644 index 0000000000..6f01330f1f --- /dev/null +++ b/macros/inrstex/inrstex/enhyphex.tex @@ -0,0 +1,23 @@ +\hyphenation{ % Do NOT make any alterations to this list! --- DEK +as-so-ciate +as-so-ciates +dec-li-na-tion +oblig-a-tory +phil-an-thropic +present +presents +project +projects +reci-procity +re-cog-ni-zance +ref-or-ma-tion +ret-ri-bu-tion +ta-ble +} + +% additional exceptions (mjf) +\hyphenation{ +man-u-script +man-u-scripts +equi-sp-a-ced +}
\ No newline at end of file diff --git a/macros/inrstex/inrstex/eqtag.tex b/macros/inrstex/inrstex/eqtag.tex new file mode 100644 index 0000000000..022e5afeb9 --- /dev/null +++ b/macros/inrstex/inrstex/eqtag.tex @@ -0,0 +1,45 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +% ========== Equation Tags =========== +% Since equation numbering plays a big part in scientific documentation +% a special set of tag generation forms were produced for this case. + + +% Special versions of autoeqnum to insert automatically insert +% parentheses around the equation number. +% \aneq no argument, no tag generated. This version +% does nothing if autonumbering is off. +% \aneqtag{<tag>} tag generated. This version inserts the argument +% inside parentheses if autoreferencing is off. + +% These special forms have a \eqnumfont ... as there is no other way +% to get the information inside. These are defined in the documentfonts. + +%\let\eqnumfont=\tenrm ... for tenpoint family + +\def\aneq{\a@utotag{}{\eqnum}{\eqtagrefformat + }{\e@qno \eqnumfont (\eqtagrefformat)}{}} +\def\aneqtag#1{\a@utotag{#1}{\eqnum}{\eqtagrefformat + }{\e@qno\eqnumfont (\eqtagrefformat)}{\e@qno\eqnumfont (#1)}} + +%===== for full left or right equation numbering and to allow ==== +% \aneq and \aneqtag to work + +\let\e@qql = \eqalignno +\let\l@eqql= \leqalignno +\def\e@qalignno{\let\e@qno=\relax \e@qql} +\def\l@eqalignno{\let\e@qno=\relax \l@eqql} +%redefines \eqalignno and \leqalignno --- normal unset mode +\let\eqalignno = \e@qalignno +\let\leqalignno = \l@eqalignno + +\let\e@qno = \eqno +%---- left/right equation numbering ---- +\def\leftequationnumbering{\let\eqalignno = \l@eqalignno + \let\leqalignno = \l@eqalignno + \let\e@qno = \leqno} +\def\rightequationnumbering{\let\leqalignno = \e@qalignno + \let\eqalignno = \e@qalignno + \let\e@qno = \eqno}
\ No newline at end of file diff --git a/macros/inrstex/inrstex/extdef.tex b/macros/inrstex/inrstex/extdef.tex new file mode 100644 index 0000000000..e77fc67007 --- /dev/null +++ b/macros/inrstex/inrstex/extdef.tex @@ -0,0 +1,134 @@ +% extdef.tex (MAR 1991) +% \uccodes added +\input compatible +% Michael J. Ferguson +% The codes used here convert the TeX \' ... accent sequences +% into the equivalent ISO - Latin 1 values and also provide +% their inverses. +% The ISO -Latin 1 code set is almost identical to the +% Digital (DEC) Multinational Character set. + +\catcode`\^^f6=11 \lccode`\^^f6= `\^^f6 \charsubdef `\^^f6 = '177 `\o +\csubinverse ^^f6{@um@}o \uccode`\^^f6= `\^^d6 +\catcode`\^^d6=11 \lccode`\^^d6= `\^^f6 \charsubdef `\^^d6 = '177 `\O +\csubinverse ^^d6{@um@}O \uccode`\^^d6= `\^^d6 +\catcode`\^^e1=11 \lccode`\^^e1= `\^^e1 \charsubdef `\^^e1 = '023 `\a +\csubinverse ^^e1{@ac@}a \uccode`\^^e1= `\^^c1 +\catcode`\^^c1=11 \lccode`\^^c1= `\^^e1 \charsubdef `\^^c1 = '023 `\A +\csubinverse ^^c1{@ac@}A \uccode`\^^c1= `\^^c1 +\catcode`\^^e0=11 \lccode`\^^e0= `\^^e0 \charsubdef `\^^e0 = '022 `\a +\csubinverse ^^e0{@gr@}a \uccode`\^^e0= `\^^c0 +\catcode`\^^c0=11 \lccode`\^^c0= `\^^e0 \charsubdef `\^^c0 = '022 `\A +\csubinverse ^^c0{@gr@}A \uccode`\^^c0= `\^^c0 +\catcode`\^^e2=11 \lccode`\^^e2= `\^^e2 \charsubdef `\^^e2 = '136 `\a +\csubinverse ^^e2{@hat@}a \uccode`\^^e2= `\^^c2 +\catcode`\^^c2=11 \lccode`\^^c2= `\^^e2 \charsubdef `\^^c2 = '136 `\A +\csubinverse ^^c2{@hat@}A \uccode`\^^c2= `\^^c2 +\catcode`\^^e3=11 \lccode`\^^e3= `\^^e3 \charsubdef `\^^e3 = '176 `\a +\csubinverse ^^e3{@til@}a \uccode`\^^e3= `\^^c3 +\catcode`\^^c3=11 \lccode`\^^c3= `\^^e3 \charsubdef `\^^c3 = '176 `\A +\csubinverse ^^c3{@til@}A \uccode`\^^c3= `\^^c3 +\catcode`\^^e4=11 \lccode`\^^e4= `\^^e4 \charsubdef `\^^e4 = '177 `\a +\csubinverse ^^e4{@um@}a \uccode`\^^e4= `\^^c4 +\catcode`\^^c4=11 \lccode`\^^c4= `\^^e4 \charsubdef `\^^c4 = '177 `\A +\csubinverse ^^c4{@um@}A \uccode`\^^c4= `\^^c4 +\catcode`\^^e7=11 \lccode`\^^e7= `\^^e7 \charsubdef `\^^e7 = '030 `\c +\csubinverse ^^e7{c@}c \uccode`\^^e7= `\^^c7 +\catcode`\^^c7=11 \lccode`\^^c7= `\^^e7 \charsubdef `\^^c7 = '030 `\C +\csubinverse ^^c7{c@}C \uccode`\^^c7= `\^^c7 +\catcode`\^^e8=11 \lccode`\^^e8= `\^^e8 \charsubdef `\^^e8 = '022 `\e +\csubinverse ^^e8{@gr@}e \uccode`\^^e8= `\^^c8 +\catcode`\^^c8=11 \lccode`\^^c8= `\^^e8 \charsubdef `\^^c8 = '022 `\E +\csubinverse ^^c8{@gr@}E \uccode`\^^c8= `\^^c8 +\catcode`\^^e9=11 \lccode`\^^e9= `\^^e9 \charsubdef `\^^e9 = '023 `\e +\csubinverse ^^e9{@ac@}e \uccode`\^^e9= `\^^c9 +\catcode`\^^c9=11 \lccode`\^^c9= `\^^e9 \charsubdef `\^^c9 = '023 `\E +\csubinverse ^^c9{@ac@}E \uccode`\^^c9= `\^^c9 +\catcode`\^^ea=11 \lccode`\^^ea= `\^^ea \charsubdef `\^^ea = '136 `\e +\csubinverse ^^ea{@hat@}e \uccode`\^^ea= `\^^ca +\catcode`\^^ca=11 \lccode`\^^ca= `\^^ea \charsubdef `\^^ca = '136 `\E +\csubinverse ^^ca{@hat@}E \uccode`\^^ca= `\^^ca +\catcode`\^^eb=11 \lccode`\^^eb= `\^^eb \charsubdef `\^^eb = '177 `\e +\csubinverse ^^eb{@um@}e \uccode`\^^eb= `\^^cb +\catcode`\^^cb=11 \lccode`\^^cb= `\^^eb \charsubdef `\^^cb = '177 `\E +\csubinverse ^^cb{@um@}E \uccode`\^^cb= `\^^cb +\catcode`\^^ec=11 \lccode`\^^ec= `\^^ec \charsubdef `\^^ec = '022 '020 +\csubinverse ^^ec{@gr@}{^^P} \uccode`\^^ec= `\^^cc +\catcode`\^^cc=11 \lccode`\^^cc= `\^^ec \charsubdef `\^^cc = '022 `\I +\csubinverse ^^cc{@gr@}I \uccode`\^^cc= `\^^cc +\catcode`\^^ed=11 \lccode`\^^ed= `\^^ed \charsubdef `\^^ed = '023 '020 +\csubinverse ^^ed{@ac@}{^^P} \uccode`\^^ed= `\^^cd +\catcode`\^^cd=11 \lccode`\^^cd= `\^^ed \charsubdef `\^^cd = '023 `\I +\csubinverse ^^cd{@ac@}I \uccode`\^^cd= `\^^cd +\catcode`\^^ee=11 \lccode`\^^ee= `\^^ee \charsubdef `\^^ee = '136 '020 +\csubinverse ^^ee{@hat@}{^^P} \uccode`\^^ee= `\^^ce +\catcode`\^^ce=11 \lccode`\^^ce= `\^^ee \charsubdef `\^^ce = '136 `\I +\csubinverse ^^ce{@hat@}I \uccode`\^^ce= `\^^ce +\catcode`\^^ef=11 \lccode`\^^ef= `\^^ef \charsubdef `\^^ef = '177 '020 +\csubinverse ^^ef{@um@}{^^P} \uccode`\^^ef= `\^^cf +\catcode`\^^cf=11 \lccode`\^^cf= `\^^ef \charsubdef `\^^cf = '177 `\I +\csubinverse ^^cf{@um@}I \uccode`\^^cf= `\^^cf +\catcode`\^^f1=11 \lccode`\^^f1= `\^^f1 \charsubdef `\^^f1 = '176 `\n +\csubinverse ^^f1{@til@}n \uccode`\^^f1= `\^^d1 +\catcode`\^^d1=11 \lccode`\^^d1= `\^^f1 \charsubdef `\^^d1 = '176 `\N +\csubinverse ^^d1{@til@}N \uccode`\^^d1= `\^^d1 +\catcode`\^^f2=11 \lccode`\^^f2= `\^^f2 \charsubdef `\^^f2 = '022 `\o +\csubinverse ^^f2{@gr@}o \uccode`\^^f2= `\^^d2 +\catcode`\^^d2=11 \lccode`\^^d2= `\^^f2 \charsubdef `\^^d2 = '022 `\O +\csubinverse ^^d2{@gr@}O \uccode`\^^d2= `\^^d2 +\catcode`\^^f3=11 \lccode`\^^f3= `\^^f3 \charsubdef `\^^f3 = '023 `\o +\csubinverse ^^f3{@ac@}o \uccode`\^^f3= `\^^d3 +\catcode`\^^d3=11 \lccode`\^^d3= `\^^f3 \charsubdef `\^^d3 = '023 `\O +\csubinverse ^^d3{@ac@}O \uccode`\^^d3= `\^^d3 +\catcode`\^^f4=11 \lccode`\^^f4= `\^^f4 \charsubdef `\^^f4 = '136 `\o +\csubinverse ^^f4{@hat@}o \uccode`\^^f4= `\^^d4 +\catcode`\^^d4=11 \lccode`\^^d4= `\^^f4 \charsubdef `\^^d4 = '136 `\O +\csubinverse ^^d4{@hat@}O \uccode`\^^d4= `\^^d4 +\catcode`\^^f5=11 \lccode`\^^f5= `\^^f5 \charsubdef `\^^f5 = '176 `\o +\csubinverse ^^f5{@til@}o \uccode`\^^f5= `\^^d5 +\catcode`\^^d5=11 \lccode`\^^d5= `\^^f5 \charsubdef `\^^d5 = '176 `\O +\csubinverse ^^d5{@til@}O \uccode`\^^d5= `\^^d5 +\catcode`\^^f9=11 \lccode`\^^f9= `\^^f9 \charsubdef `\^^f9 = '022 `\u +\csubinverse ^^f9{@gr@}u \uccode`\^^f9= `\^^d9 +\catcode`\^^d9=11 \lccode`\^^d9= `\^^d9 \charsubdef `\^^d9 = '022 `\U +\csubinverse ^^d9{@gr@}U \uccode`\^^d9= `\^^d9 +\catcode`\^^fb=11 \lccode`\^^fb= `\^^fb \charsubdef `\^^fb = '136 `\u +\csubinverse ^^fb{@hat@}u \uccode`\^^fb= `\^^db +\catcode`\^^db=11 \lccode`\^^db= `\^^fb \charsubdef `\^^db = '136 `\U +\csubinverse ^^db{@hat@}U \uccode`\^^db= `\^^db +\catcode`\^^fc=11 \lccode`\^^fc= `\^^fc \charsubdef `\^^fc = '177 `\u +\csubinverse ^^fc{@um@}u \uccode`\^^fc= `\^^dc +\catcode`\^^dc=11 \lccode`\^^dc= `\^^fc \charsubdef `\^^dc = '177 `\U +\csubinverse ^^dc{@um@}U \uccode`\^^dc= `\^^dc +% iso latin 1 -- next two codes -- y acute accent +\catcode`\^^fd=11 \lccode`\^^fd= `\^^fd \charsubdef `\^^fd = '023 `\y +\csubinverse ^^fd{@ac@}y \uccode`\^^fd= `\^^dd +\catcode`\^^dd=11 \lccode`\^^dd= `\^^fd \charsubdef `\^^dd = '023 `\Y +\csubinverse ^^dd{@ac@}Y \uccode`\^^dd= `\^^dd +\catcode`\^^e5=\active +\catcode`\^^c5=\active +\catcode`\^^e6=\active +\catcode`\^^c6=\active +\catcode`\^^f7=\active +\catcode`\^^d7=\active +\catcode`\^^f8=\active +\catcode`\^^d8=\active +\catcode`\^^df=\active +\catcode`\^^a7=\active +\catcode`\^^a9=\active +\catcode`\^^a3=\active + + \def ^^e5{\aa } + \def ^^c5{\AA } + \def ^^e6{\ae } + \def ^^c6{\AE } + \def ^^f7{^^[ } + \def ^^d7{\OE } + \def ^^f8{\o } + \def ^^d8{\O } + \def ^^df{\ss } + \def ^^a7{\S } + \def ^^a9{\copyright } + \def ^^a3{\it\$} + +\def\oe{^^[ } diff --git a/macros/inrstex/inrstex/extdef3.tex b/macros/inrstex/inrstex/extdef3.tex new file mode 100644 index 0000000000..026ea8b57e --- /dev/null +++ b/macros/inrstex/inrstex/extdef3.tex @@ -0,0 +1,137 @@ +% extdef.tex (MAR 1991) +% \uccodes added +\input compat3 % defines csubinverse only +% exlplicit accents should not be converted when using "cm" fonts. +% ... without charsubdef definitions +% Michael J. Ferguson +% The codes used here convert the TeX \' ... accent sequences +% into the equivalent ISO - Latin 1 values and also provide +% their inverses. +% The ISO -Latin 1 code set is almost identical to the +% Digital (DEC) Multinational Character set. + +\catcode`\^^f6=11 \lccode`\^^f6= `\^^f6 +\csubinverse ^^f6{@um@}o \uccode`\^^f6= `\^^d6 +\catcode`\^^d6=11 \lccode`\^^d6= `\^^f6 +\csubinverse ^^d6{@um@}O \uccode`\^^d6= `\^^d6 +\catcode`\^^e1=11 \lccode`\^^e1= `\^^e1 +\csubinverse ^^e1{@ac@}a \uccode`\^^e1= `\^^c1 +\catcode`\^^c1=11 \lccode`\^^c1= `\^^e1 +\csubinverse ^^c1{@ac@}A \uccode`\^^c1= `\^^c1 +\catcode`\^^e0=11 \lccode`\^^e0= `\^^e0 +\csubinverse ^^e0{@gr@}a \uccode`\^^e0= `\^^c0 +\catcode`\^^c0=11 \lccode`\^^c0= `\^^e0 +\csubinverse ^^c0{@gr@}A \uccode`\^^c0= `\^^c0 +\catcode`\^^e2=11 \lccode`\^^e2= `\^^e2 +\csubinverse ^^e2{@hat@}a \uccode`\^^e2= `\^^c2 +\catcode`\^^c2=11 \lccode`\^^c2= `\^^e2 +\csubinverse ^^c2{@hat@}A \uccode`\^^c2= `\^^c2 +\catcode`\^^e3=11 \lccode`\^^e3= `\^^e3 +\csubinverse ^^e3{@til@}a \uccode`\^^e3= `\^^c3 +\catcode`\^^c3=11 \lccode`\^^c3= `\^^e3 +\csubinverse ^^c3{@til@}A \uccode`\^^c3= `\^^c3 +\catcode`\^^e4=11 \lccode`\^^e4= `\^^e4 +\csubinverse ^^e4{@um@}a \uccode`\^^e4= `\^^c4 +\catcode`\^^c4=11 \lccode`\^^c4= `\^^e4 +\csubinverse ^^c4{@um@}A \uccode`\^^c4= `\^^c4 +\catcode`\^^e7=11 \lccode`\^^e7= `\^^e7 +\csubinverse ^^e7{c@}c \uccode`\^^e7= `\^^c7 +\catcode`\^^c7=11 \lccode`\^^c7= `\^^e7 +\csubinverse ^^c7{c@}C \uccode`\^^c7= `\^^c7 +\catcode`\^^e8=11 \lccode`\^^e8= `\^^e8 +\csubinverse ^^e8{@gr@}e \uccode`\^^e8= `\^^c8 +\catcode`\^^c8=11 \lccode`\^^c8= `\^^e8 +\csubinverse ^^c8{@gr@}E \uccode`\^^c8= `\^^c8 +\catcode`\^^e9=11 \lccode`\^^e9= `\^^e9 +\csubinverse ^^e9{@ac@}e \uccode`\^^e9= `\^^c9 +\catcode`\^^c9=11 \lccode`\^^c9= `\^^e9 +\csubinverse ^^c9{@ac@}E \uccode`\^^c9= `\^^c9 +\catcode`\^^ea=11 \lccode`\^^ea= `\^^ea +\csubinverse ^^ea{@hat@}e \uccode`\^^ea= `\^^ca +\catcode`\^^ca=11 \lccode`\^^ca= `\^^ea +\csubinverse ^^ca{@hat@}E \uccode`\^^ca= `\^^ca +\catcode`\^^eb=11 \lccode`\^^eb= `\^^eb +\csubinverse ^^eb{@um@}e \uccode`\^^eb= `\^^cb +\catcode`\^^cb=11 \lccode`\^^cb= `\^^eb +\csubinverse ^^cb{@um@}E \uccode`\^^cb= `\^^cb +\catcode`\^^ec=11 \lccode`\^^ec= `\^^ec +\csubinverse ^^ec{@gr@}{^^P} \uccode`\^^ec= `\^^cc +\catcode`\^^cc=11 \lccode`\^^cc= `\^^ec +\csubinverse ^^cc{@gr@}I \uccode`\^^cc= `\^^cc +\catcode`\^^ed=11 \lccode`\^^ed= `\^^ed +\csubinverse ^^ed{@ac@}{^^P} \uccode`\^^ed= `\^^cd +\catcode`\^^cd=11 \lccode`\^^cd= `\^^ed +\csubinverse ^^cd{@ac@}I \uccode`\^^cd= `\^^cd +\catcode`\^^ee=11 \lccode`\^^ee= `\^^ee +\csubinverse ^^ee{@hat@}{^^P} \uccode`\^^ee= `\^^ce +\catcode`\^^ce=11 \lccode`\^^ce= `\^^ee +\csubinverse ^^ce{@hat@}I \uccode`\^^ce= `\^^ce +\catcode`\^^ef=11 \lccode`\^^ef= `\^^ef +\csubinverse ^^ef{@um@}{^^P} \uccode`\^^ef= `\^^cf +\catcode`\^^cf=11 \lccode`\^^cf= `\^^ef +\csubinverse ^^cf{@um@}I \uccode`\^^cf= `\^^cf +\catcode`\^^f1=11 \lccode`\^^f1= `\^^f1 +\csubinverse ^^f1{@til@}n \uccode`\^^f1= `\^^d1 +\catcode`\^^d1=11 \lccode`\^^d1= `\^^f1 +\csubinverse ^^d1{@til@}N \uccode`\^^d1= `\^^d1 +\catcode`\^^f2=11 \lccode`\^^f2= `\^^f2 +\csubinverse ^^f2{@gr@}o \uccode`\^^f2= `\^^d2 +\catcode`\^^d2=11 \lccode`\^^d2= `\^^f2 +\csubinverse ^^d2{@gr@}O \uccode`\^^d2= `\^^d2 +\catcode`\^^f3=11 \lccode`\^^f3= `\^^f3 +\csubinverse ^^f3{@ac@}o \uccode`\^^f3= `\^^d3 +\catcode`\^^d3=11 \lccode`\^^d3= `\^^f3 +\csubinverse ^^d3{@ac@}O \uccode`\^^d3= `\^^d3 +\catcode`\^^f4=11 \lccode`\^^f4= `\^^f4 +\csubinverse ^^f4{@hat@}o \uccode`\^^f4= `\^^d4 +\catcode`\^^d4=11 \lccode`\^^d4= `\^^f4 +\csubinverse ^^d4{@hat@}O \uccode`\^^d4= `\^^d4 +\catcode`\^^f5=11 \lccode`\^^f5= `\^^f5 +\csubinverse ^^f5{@til@}o \uccode`\^^f5= `\^^d5 +\catcode`\^^d5=11 \lccode`\^^d5= `\^^f5 +\csubinverse ^^d5{@til@}O \uccode`\^^d5= `\^^d5 +\catcode`\^^f9=11 \lccode`\^^f9= `\^^f9 +\csubinverse ^^f9{@gr@}u \uccode`\^^f9= `\^^d9 +\catcode`\^^d9=11 \lccode`\^^d9= `\^^d9 +\csubinverse ^^d9{@gr@}U \uccode`\^^d9= `\^^d9 +\catcode`\^^fb=11 \lccode`\^^fb= `\^^fb +\csubinverse ^^fb{@hat@}u \uccode`\^^fb= `\^^db +\catcode`\^^db=11 \lccode`\^^db= `\^^fb +\csubinverse ^^db{@hat@}U \uccode`\^^db= `\^^db +\catcode`\^^fc=11 \lccode`\^^fc= `\^^fc +\csubinverse ^^fc{@um@}u \uccode`\^^fc= `\^^dc +\catcode`\^^dc=11 \lccode`\^^dc= `\^^fc +\csubinverse ^^dc{@um@}U \uccode`\^^dc= `\^^dc +% iso latin 1 -- next two codes -- y acute accent +\catcode`\^^fd=11 \lccode`\^^fd= `\^^fd +\csubinverse ^^fd{@ac@}y \uccode`\^^fd= `\^^dd +\catcode`\^^dd=11 \lccode`\^^dd= `\^^fd +\csubinverse ^^dd{@ac@}Y \uccode`\^^dd= `\^^dd +\catcode`\^^e5=\active +\catcode`\^^c5=\active +\catcode`\^^e6=\active +\catcode`\^^c6=\active +\catcode`\^^f7=\active +\catcode`\^^d7=\active +\catcode`\^^f8=\active +\catcode`\^^d8=\active +\catcode`\^^df=\active +\catcode`\^^a7=\active +\catcode`\^^a9=\active +\catcode`\^^a3=\active + + \def ^^e5{\aa } + \def ^^c5{\AA } + \def ^^e6{\ae } + \def ^^c6{\AE } + \def ^^f7{^^[ } + \def ^^d7{\OE } + \def ^^f8{\o } + \def ^^d8{\O } + \def ^^df{\ss } + \def ^^a7{\S } + \def ^^a9{\copyright } + \def ^^a3{\it\$} + +\def\oe{^^[ } + diff --git a/macros/inrstex/inrstex/footnote.tex b/macros/inrstex/inrstex/footnote.tex new file mode 100644 index 0000000000..1f5afd4538 --- /dev/null +++ b/macros/inrstex/inrstex/footnote.tex @@ -0,0 +1,22 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +%=========== Footnotes ---- similar to that in the texbook ====== + +%\newinsert\footins +\newtoks\everyfootnote % token list inserted before every footnote + % but after the parameters -- cannot affect \footins +\def\up#1{\nobreak$^{#1}\relax$} +\def\footnote#1{\let\@sf\empty + \ifhmode\edef\@sf{\spacefactor\the\spacefactor}\fi + \up{#1}\@sf\sfootnote{#1}} +\def\sfootnote#1{\insert\footins\bgroup\footnotefont + \interlinepenalty100 \let\par=\endgraf + \leftskip=\z@skip \rightskip=\z@skip + \splittopskip=3ex plus 1pt minus 1pt \floatingpenalty=20000 + \smallskip\the\everyfootnote\relax + \item{\up{#1}}\bgroup\strut\aftergroup\@foot\let\next} +\skip\footins=3ex plus 2pt minus 4pt % space added when footnote is present +%\count\footins=1000 % footnote magnification factor (1 to 1) +\dimen\footins=10in % maximum footnotes per page diff --git a/macros/inrstex/inrstex/frhyph.tex b/macros/inrstex/inrstex/frhyph.tex new file mode 100644 index 0000000000..1750388dc3 --- /dev/null +++ b/macros/inrstex/inrstex/frhyph.tex @@ -0,0 +1,823 @@ + + + +% hyphenation patterns for french ... for use with fonts that do not +% have the accented characters inside .... modifications +% for other fonts are obvious + +% Mods to \i and \oe form ... TeX eats up spaces and loses patterns. +% MJF 22 Jun 88 +% addition of .con2 to prevent embarrassment + +\begingroup +\accenthyphcodes\spechyphcodes % changes the \' ... etc +\lccode`\'=`\' +\lccode'33='33 %\oe ... both needed in +\lccode'20='20 % \i .. dotless i +\patterns{ +.con2 % mjf jun 88 +2'2 % mjf +'a2 % mjf +'\'e2 % mjf +'e2 % mjf +'o2 % mjf +'\"o2 % mjf +'u2 % mjf +'i2 % mjf +.\'e2 %mjf +1ba +1b\^a +1be +1b\'e +1b\`e +1b\^e +1biOP +1b\^\i0 % mjf jun88 +1bo +1b\^o +1bu +1b\^u +1by +4be. +4bes. +1b2l +4ble. +4bles. +1b2r +4bre. +4bres. +1ca +1c\^a +1ce +1c\'e +1c\`e +1c\^e +1ci +1c\^\i0 % mjf jun88 +1co +1c\^o +1cu +1c\^u +1cy +1c\oe0 % mjf jun88 +4ce. +4ces. +1c2h +4che. +4ches. +2chb +2chg +2chm +2chn +2chp +2chs +2cht +2chv +.ch4 +4ch. +ch2l +4chle. +4chles. +ch2r +4chre. +4chres. +1c2k +4cke. +4ckes. +4ck. +2ckb +2ckf +2ckg +2ck3h +2ckp +2cks +2ckt +1c2l +4cle. +4cles. +1c2r +4cre. +4cres. +1\c c +1da +1d\^a +1de +1d\'e +1d\`e +1d\^e +1di +1d\^\i0 % mjf jun88 +1do +1d\^o +1du +1d\^u +1dy +4de. +4des. +d1d2h +1d2r +4dre. +4dres. +1fa +1f\^a +1fe +1f\'e +1f\`e +1f\^e +1fi +1f\^\i0 % mjf jun88 +1fo +1f\^o +1fu +1f\^u +1fy +4fe. +4fes. +1f2l +4fle. +4fles. +1f2r +4fre. +4fres. +1ga +1g\^a +1ge +1g\'e +1g\`e +1g\^e +1gi +1g\^\i0 % mjf jun88 +1go +1g\^o +1gu +1g\^u +1gy +4ge. +4ges. +4gue. +4gues. +1g2ha +1g2he +1g2hi +1g2ho +1g2hy +1g2l +4gle. +4gles. +1g2n +4gne. +4gnes. +1g2r +4gre. +4gres. +1ha +1h\^a +1he +1h\'e +1h\`e +1h\^e +1hi +1h\^\i0 % mjf jun88 +1ho +1h\^o +1hu +1h\^u +1hy +4he. +4hes. +1j +2jk +4je. +4jes. +1ka +1k\^a +1ke +1k\'e +1k\`e +1k\^e +1ki +1k\^\i0 % mjf jun88 +1ko +1k\^o +1ku +1k\^u +1ky +4ke. +4kes. +1k2h +4kh. +.kh4 +1k2r +1la +1l\^a +1l\`a +1le +1l\'e +1l\`e +1l\^e +1li +1l\^\i0 % mjf jun88 +1lo +1l\^o +1lu +1l\^u +1ly +4le. +4les. +1ma +1m\^a +1me +1m\'e +1m\`e +1m\^e +1mi +1m\^\i0 % mjf jun88 +1mo +1m\^o +1mu +1m\^u +1my +1m\oe0 % mjf jun88 +4me. +4mes. +1na +1n\^a +1ne +1n\'e +1n\`e +1n\^e +1ni +1n\^\i0 % mjf jun88 +1no +1n\^o +1nu +1n\^u +1ny +n1x +1n\oe0 %mjf jun88 +4ne. +4nes. +1pa +1p\^a +1pe +1p\'e +1p\`e +1p\^e +1pi +1p\^\i0 % mjf jun88 +1po +1p\^o +1pu +1p\^u +1py +4pe. +4pes. +4ph. +1p2h +4phe. +4phes. +ph2l +4phle. +4phles. +2phn +ph2r +4phre. +4phres. +2phs +2pht +.ph4 +1p2l +4ple. +4ples. +1p2r +4pre. +4pres. +1q +4que. +4ques. +1ra +1r\^a +1re +1r\'e +1r\`e +1r\^e +1ri +1r\^\i0 % mjf jun88 +1ro +1r\^o +1ru +1r\^u +1ry +4re. +4res. +1r2h +4rhe. +4rhes. +1sa +1s\^a +1se +1s\'e +1s\`e +1s\^e +1si +1s\^\i0 % mjf jun88 +1so +1s\^o +1su +1s\^u +1sy +1s\oe0 % mjf jun88 +4se. +4ses. +1s2ch +4sch. +2schs +4sche. +4sches. +.sch4 +.sh4 +4sh. +1s2h +2shm +2shr +2shs +4she. +4shes. +1ta +1t\^a +1t\`a +1te +1t\'e +1t\`e +1t\^e +1ti +1t\^\i0 % mjf jun88 +1to +1t\^o +1tu +1t\^u +1ty +4te. +4tes. +1t2h +4th. +.th4 +4the. +4thes. +th2l +2thm +2thn +th2r +4thre. +4thres. +2ths +1t2r +4tre. +4tres. +1va +1v\^a +1ve +1v\'e +1v\`e +1v\^e +1vi +1v\^\i0 % mjf jun88 +1vo +1v\^o +1vu +1v\^u +1vy +4ve. +4ves. +1v2r +4vre. +4vres. +1wa +1we +1wi +1wo +1wu +4we. +4wes. +1w2r +1za +1ze +1z\'e +1z\`e +1zi +1zo +1zu +1zy +4ze. +4zes. +d1s2 +f1s2 +g1s2 +tung2s3 +l1s2t +m1s2 +e2s3ch +i2s3ch\'e +i2s3chia +i2s3chio +1alcool +i1algi +a2l1algi +y1algi +1a2nesth\'esi +i1arthr +y1asth +a1\`e2dre +i1\`e2dre +o1\`e2dre +1\'e2drie +1\'e2drique +1\'e2lectr +1\'e2l\'ement +1\'e2nerg +o1d2l +2t3heur +2r3heur +3d2hal +3d2houd +2s3hom +2r3hydr +o1ioni +1m2n\`es +1m2n\'esi +1m2n\'emo +i1oxy +io1a2ct +3ph2tal\'e +3ph2tis +1p2neu +1p2n\'e +1p2sych +1p2t\`er +1p2t\'er +1s2caph +1s2cl\'er +1s2cop +e2s3cop +\'epi2s3cop +\'epi3s4cope +di2s3cop +1s2lav +1s2lov +1s2patia +1s2perm +1s2por +1s2ph\`er +1s2ph\'er +1s2piel +1s2piros +1s2tandard +o1s2tas +eu1s2tat +o1s2tat +pro2s3tat +i1s2tat +1s2tein +o1s2t\'ero +1s2tigm +o1s2tim +1s2tock +1s2tomos +o1s2tom +y1s2tom +o1s2trad +o1s2tratu +o1s2triction +1s2troph +a2s3tro +apo2s3tr +u2s3tr +1s2tructu +1s2tyle +t1t2l +.ab3r\'ea +.ae3s4ch +.amino1a2c +.ana3s4tr +.anti1a2 +.anti1e2 +.anti2enne +.anti1\'e2 +.anti1s2 +.apo2s3ta +.as2ta +.bi1a2c +.bi1au +.bio1a2 +.bi1u2 +.bi2s1a2 +.ci2s1alp +co1acc +co1acq +co1a2d +co1ap +co1ar +co1assoc +co1assur +co1au +co1ax +co1ef +co1en +co1ex +co1\'e2 +.contre1s2c +co2n1urb +.co1o2 +.co2o3lie +.dacryo1a2 +.d\'e1a2 +.d\'e1io +.d\'e1o2 +.d\'e2s1a2 +.d\'e3s2a3cr +.d\'e3s2astr +.d\'e3s2a3tell +.d\'e2s1\'e2 +.d\'e3s2\'e3gr +.d\'e2s1e2 +.d\'e3s2ensib +.d\'e3s2ert +.d\'e3s2exu +.d\'e2s3h +.d\'e2s1i2 +.d\'e3s2i3d +.d\'e3s2i3gn +.d\'e3s2i3li +.d\'e3s2i3non +.d\'e3s2invo +.d\'e3s2i3r +.d\'e3s2ist +.d\'e2s1o2 +.d\'e3s2o3d\'e +.d\'e3s2o3l +.d\'e3s2o3pil +.d\'e3s2orm +.d\'e3s2orp +.d\'e3s2oufr +.d\'e2s1\oe0 % mjf jun88 +.d\'e1s2c +.d\'e1s2p +.d\'e1s2t +.d\'e2s1u2n +.di1a2c\'e +.di1a2cid +dia2g3n +.di1ald +.di1a2mi +.di1a2tom +.di1e2n +.di2s3h +.dy2s1a2 +.dy2s1i2 +.dy2s1u2 +.dy2s3 +.en1a2 +en1i2vr +.en1o2 +.eu2r1a2 +extra1 +extra2c +extra2i +h\'emi1\'e +h\'emo1p2t +hypera2 +hyper\'e2 +hyper\oe2 +hyperi2 +hypero2 +hypers2 +hyperu2 +hype4r1 +hypo1a2 +hypo1\'e2 +hypo1i2 +hypo1o2 +hypo1u2 +hypo1s2 +.in1a2 +.in2a3nit +.in2augur +.in1\'e2 +.in2e3lucta +.in2\'e3narra +.in1e2 +.in2ept +.in2er +.in1i2 +.in2i3miti +.in2i3q +.in2i3t +.in1o2 +.in2o3cul +.in2ond +.in1s2tab +.in1u2 +.in2uit +.in2u3l +.intera2 +.inter\'e2 +.intere2 +.interi2 +.intero2 +.interu2 +.inters2 +.inte4r3 +la2w3re +.ma2c3k +.macro1s2c +.ma2l1a2dres +.ma2l1a2dro +.ma2l1ais\'e +.ma2l1ap +.ma2l1a2v +.ma2l1en +.ma2l1int +.ma2l1oc +.ma2l1o2d +.ma2r1x +.m\'e2g1oh +.m\'e2s1es +.m\'e2s1i +.m\'e2s1u2s +.m\'eta1s2ta +.milli1am +.mono1a2 +.mono1\'e2 +.mono1e2 +.mono1i2 +.mono1\"\i2d\'e +.momo1o2 +.mono1u2 +.mono1s2 +.no2n1obs +o2b3long +ombud2s3 +omni1s2 +.oua1ou +.ovi1s2c +oxy1a2 +pal\'eo1\'e2 +.pa2n1a2f +.pa2n1a2m\'e +.pa2n1a2ra +.pa2n1is +.pa2n1o2ph +.pa2n1opt +.para1s2 +.pa2r1a2che +.pa2r1a2ch\`e +.pa2r3h\'e +.per1a2 +.per1\'e2 +.per1e2 +.per1i2 +.per1o2 +.per1u2 +per3h +.pe4r +p\'e2n1ul +p\'e2r1\'e2q +.p\'eri1os +.p\'eri1s2 +.p\'eri2s3s +.p\'eri2s3ta +.p\'eri1u2 +.phalan3s2t +photo1s2 +.phyto3ph2 +.pluri1a +poly1a2 +poly1\'e2 +poly1\`e2 +poly1e2 +poly1i2 +poly1o2 +poly1u2 +poly1s2 +.pos2t3hy +.pos2t1in +.pos2t1o2 +.pos2t3r +.post1s2 +.pr\'e1a2 +.pr\'e2au +.pr\'e1\'e2 +.pr\'e1e2 +.pr\'e1i2 +.pr\'e1o2 +.pr\'e1u2 +.pr\'e1s2 +.pro1\'e2 +.prou3d2h +.pro1s2c\'e +.psycho1a2n +.pud1d2l +.re1s2 +.re2s3cap +.re2s3cou +.re2s3cri +.re2s3pect +.re2s3pir +.re2s3plend +.re2s3pons +.re2s3quil +.re2s3s +.re2s3t +.re3s4tab +.re3s4tag +.re3s4tand +.re3s4tat +.re3s4t\'en +.re3s4t\'er +.re3s4tim +.re3s4tip +.re3s4toc +.re3s4top +.re3s4tr +.re4s5trein +.re4s5trict +.re4s5trin +.re3s4tu +.re3s4ty +.r\'e1a2 +.r\'e2a3le +.r\'e2a3lis +.r\'e2a3lit +.r\'e2aux +.r\'e1\'e2 +.r\'e1e2 +.r\'e2el +.r\'e2er +.r\'e2\`er +.r\'e1i2 +.r\'e2i3fi +.r\'e1o2 +.r\'e1u2 +.r\'e2uss +.r\'etro1a2 +sesqui1a2 +st\'er\'eo1s2 +.su2b1a2 +.su3b2alt +.su2b1\'e2 +.su3b2\'e3r +.su2b1in +.su2b3limin +.su2b3lin +.su2b3lu +sub1s2 +.su2b1ur +supero2 +supers2 +supe4r1 +.su2r1a2 +su3r2ah +.su3r2a3t +.su2r1e2 +.su3r2eau +.su3r2e1l +.su3r2et +.su2r1\'e2 +.su2r3h +.su2r1i2m +.su2r1inf +.su2r1int +.su2r1of +.su2r1ox +t\'el\'e1e2 +t\'el\'e1i2 +t\'el\'e1o2b +t\'el\'e1o2p +t\'el\'e1s2 +thermo1s2 +tran2s1a2 +tran3s2act +tran3s2ats +tran2s3h +tran2s1o2 +tran2s3p +tran2s1u2 +.tri1a2c +.tri1a2n +.tri1a2t +.tri1o2n +archi1\'e2pis +moye2n1\^a2g +po1astre +uni1o2v +uni1a2x +v\'elo1s2ki +vol2t1amp +tachy1a2 +tchin3t2 +chlo2r3a2c +chlo2r3\'e2t +n3s2at. +n3s2ats. +} +\endgroup
\ No newline at end of file diff --git a/macros/inrstex/inrstex/genins.tex b/macros/inrstex/inrstex/genins.tex new file mode 100644 index 0000000000..1584b764df --- /dev/null +++ b/macros/inrstex/inrstex/genins.tex @@ -0,0 +1,181 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +% Fixed page insert forms to work with pageinsert. ... 22 Sept 87 MJF + +% ========= Syntactic Forms ============ +% Each of these has a token list that is inserted before each +% particular insert ... and in a group. +% in \begin... \end.. pairs +\newtoks\everytopinsert +\newtoks\everymidinsert +\newtoks\everypageinsert +\def\begintopinsert{\begingroup\the\everytopinsert\topinsert} +\def\beginmidinsert{\begingroup\the\everymidinsert\midinsert} +\def\beginpageinsert{\begingroup\def\g@box{\vbox to + \vinnerpagesize}\def\g@ebox{\relax}\the + \everypageinsert\pageinsert} + +\def\e@ndinsert{\endinsert\endgroup} + +\let\endtopinsert = \e@ndinsert +\let\endmidinsert = \e@ndinsert +\let\endpageinsert = \e@ndinsert + +% ============= Figure, Table, etc inserts ========== + +% Assumptions +% The form is described by three letters, eg "fig" or "tbl" +% If the list file exists, the page info is written. +% \writelistfile must be defined +% \autonumber, \autoreference, \ref, \quietref, \veryraggedright +% If autonumbering is on, then +% \silenttrue, \autofignum .. +% An "fig" form and "tbl" form are defined. These need +% \figurelabel, and \tablelabel respectively. These are +% usually defined in the \englishversion and \versionfrancaise +% The insert forms use \beginmidinsert ... \endmidinsert. + + +% Defaults --- to be set. +% \captiontextfraction ... inrsdef.tex +% \captionskip ... inrsdef.tex +% \topcaptiontrue or \topcaptionfalse ... inrsdef.tex +% \figurelabel or \figlabel ... english.tex or francais.tex +% \tablelabel or \tbllabel ... english.tex or francais.tex +% \captionnumfont ... inrsfont.tex +% \captiontitlefont ... inrsfont.tex +% \captionbodyfont ... inrsfont.tex +% \captionbodyon <off> ... inrsdef.tex + + +% This is a general form for an insert with a caption, under it +% if \topcaptionfalse and over it if \topcaptiontrue +% The particular form is identified with a (usually) three letter sequence +% such as "fig" or "tbl". There can be an associated list file for +% automatic generation of the page list for the items. +% The basic form is a non-floating type, enclosed in $$ ... $$ to give +% correct spacing. This can be put in an insert to make it float. +% Full page forms require \vfill above and/or below for top, bottom, or center. + +% The caption box measures its size and centers the text if it is short +% or puts it in a \vbox which is \captiontextfraction of the \hsize +% if it is not. +% The \captionskip is the spacing between the caption and the actual +% item in the text. This may be a table or figure or .... + +% \let\captionnumfont = \bf +% \let\captiontextfont = \relax % defaults to "outside font" +% \def\captiontextfraction{0.8} + +\def\captionbox#1#2{\setbox0=\hbox{{\captionnumfont #1}\quad + \captiontitlefont #2} + \ifdim 1\wd0 < \captiontextfraction\hsize + \centerline{\unhbox0} + \else + \centerline{\vtop{\hsize=\captiontextfraction\hsize + \veryraggedright + \setbox0=\hbox{{\captionnumfont #1}\quad} + \hangindent=1\wd0 \hangafter=1 + \noindent\unhbox0 + \captiontitlefont #2}}% + \fi} + +% A caption is assumed to have both a <title> that will appear in the +% list, if any and a <caption body> that will appear only when the caption is +% printed. The default is to have \captionbody ... "active" and to turn it +% off when making lists. +% This is done with two commands \captionbodyon and \captionbodyoff +% associated with a <caption body> is a <caption body font> + +\def\captionbodyon{\def\captionbody##1{{\captionbodyfont ##1}}} +\def\captionbodyoff{\def\captionbody##1{}} + + +% \rect <hor dimen> by <vert dimen>} A centered rectangular box to act +% as a place holder if there is a figure to be pasted in later. +\def\r@ect{\centerline{\vbox{\hrule + \hbox{\vrule height \the\dimen2 + \hskip \dimen0 + \vrule height \the\dimen2} + \hrule + }}} +\def\rect #1by{\dimen0 #1\afterassignment\r@ect \dimen2} + +% ======= This is the general insert form ======= +% #1 is the name of the insert form, #2 is the tag or number, #3 is the title +% #4 is the actual insert form value ... ie figure or table or ... + +% This is the glue specification between the caption and the body of the +% insert + +\newskip\captionskip %\captionskip=2ex + +% This is a switch that controls whether the caption is above or below the +% the body of the insert + +\newif\iftopcaption %\topcaptionfalse % defaulted + +% This is the general form of the insert --- it requires both \autonumber +% and \autoreference to work. By selectively turning on/off these +% switches, multipart figures are possible. + +% \ifsilentfigure ... turns off the figure inserts so that tagging can +% occur with figures gracefully occuring at the end. This means that +% figure list file will refer to pages where the figures are sort of +% called out + +\def\multiinsert{\def\g@box{\vbox }\def\g@ebox{\relax}} + +\newif\ifsilentfigure % default is \silenfigurefalse + +\def\g@box{$$\vbox } \def\g@ebox{$$} + +\def\geninsertform #1#2#3#4{ + \ifautonumber + {\silenttrue\expandafter\csname auto#1num\endcsname{#2}}\relax + \edef\i@nsnum{\csname:@#2\endcsname}\else + \edef\i@nsnum{#2}\fi + \writelistfile{#1}{\csname #1tocout\endcsname}{\i@nsnum}{#3} + \ifsilentfigure \relax \else + \g@box{\normalbaselines + \iftopcaption + \captionbox{\csname #1label\endcsname\i@nsnum}{#3} + \vskip \captionskip + \centerline{\vbox{#4}} + \else + \centerline{\vbox{#4}} + \vskip \captionskip + \captionbox{\csname #1label\endcsname\i@nsnum}{#3} + \fi + \vss}\g@ebox\fi} + + +% ========== Special Cases ============ +% These define simple forms for standard midinserts. It uses +% \beginmidinsert ... \endmidinsert for consistency + +% For Figures +\def\figureform #1#2#3{\geninsertform {fig}{#1}{#2}{#3}} +\def\figlabel{\figurelabel } +\def\figureinsert #1#2#3{\beginmidinsert + \figureform{#1}{#2}{#3} + \endmidinsert } + +%\def\figtocout{\string\figtoc} % actually set in inrsdef.tex + + +% For Tables +\def\tableform #1#2#3{\geninsertform {tbl}{#1}{#2}{#3}} +\def\tbllabel{\tablelabel } +\def\tableinsert #1#2#3{\beginmidinsert + \tableform{#1}{#2}{#3} + \endmidinsert } +%\def\tbltocout{\string\tbltoc} % actually set in inrsdef.tex + + +% Comment ---- \endinsert in Plain has a pre and post \bigskip +% This should probably be removed and the spacing always controlled by +% the $$ ... $$. Instead, if the \everymidinsert form were used it +% would be possible to remove it with \everymidinsert = {\let\bigskip=\relax}
\ No newline at end of file diff --git a/macros/inrstex/inrstex/graph_ps.tex b/macros/inrstex/inrstex/graph_ps.tex new file mode 100644 index 0000000000..320fe7cc7d --- /dev/null +++ b/macros/inrstex/inrstex/graph_ps.tex @@ -0,0 +1,27 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +% ============ TeXGraphics Support ============= +% TeXGraphics uses \specials and needs a QMS (QUIC) Laser printer. +% A Second version produces POSTSCRIPT and assumes TEXTSET'S DVILASER. +% It should be easily modifiable to other POSTSCRIPT drivers. +% both \beginTeXGraphics and \btg are redefined in texgraph.tex +% TeXgraphics is not normally in the format file +% These commands are necessary to support TeXGraph. They are +% NOT the commands themselves but rather set up commands +% to bring them in if needed. + +\def\beginTeXGraphics{\silent{\input texgraph\relax}\btg} %postscript form +\def\begintexgraph{\silent{\input texgraph\relax}\btg} %postscript form +\let\btg=\beginTeXGraphics + + +% Since a \centergraph or \centerplotfile may be met before +% TeXgraph is loaded, they must be in the format file. +% \centergraph needs to be very \long +\long\def\centergraph#1{\hbox to + \hsize{\hss\vbox{#1\vgraphskip}\hgraphskip\hss}} +\def\centerplotfile#1{\centergraph{\btg\includefile {#1} \etg}} + +% ========= end TeXGraphics ========= diff --git a/macros/inrstex/inrstex/hyphen.tex b/macros/inrstex/inrstex/hyphen.tex new file mode 100644 index 0000000000..eb23d89cd5 --- /dev/null +++ b/macros/inrstex/inrstex/hyphen.tex @@ -0,0 +1,4466 @@ +% The Plain TeX hyphenation tables [NOT TO BE CHANGED IN ANY WAY!] +\patterns{ % just type <return> if you're not using INITEX +.ach4 +.ad4der +.af1t +.al3t +.am5at +.an5c +.ang4 +.ani5m +.ant4 +.an3te +.anti5s +.ar5s +.ar4tie +.ar4ty +.as3c +.as1p +.as1s +.aster5 +.atom5 +.au1d +.av4i +.awn4 +.ba4g +.ba5na +.bas4e +.ber4 +.be5ra +.be3sm +.be5sto +.bri2 +.but4ti +.cam4pe +.can5c +.capa5b +.car5ol +.ca4t +.ce4la +.ch4 +.chill5i +.ci2 +.cit5r +.co3e +.co4r +.cor5ner +.de4moi +.de3o +.de3ra +.de3ri +.des4c +.dictio5 +.do4t +.du4c +.dumb5 +.earth5 +.eas3i +.eb4 +.eer4 +.eg2 +.el5d +.el3em +.enam3 +.en3g +.en3s +.eq5ui5t +.er4ri +.es3 +.eu3 +.eye5 +.fes3 +.for5mer +.ga2 +.ge2 +.gen3t4 +.ge5og +.gi5a +.gi4b +.go4r +.hand5i +.han5k +.he2 +.hero5i +.hes3 +.het3 +.hi3b +.hi3er +.hon5ey +.hon3o +.hov5 +.id4l +.idol3 +.im3m +.im5pin +.in1 +.in3ci +.ine2 +.in2k +.in3s +.ir5r +.is4i +.ju3r +.la4cy +.la4m +.lat5er +.lath5 +.le2 +.leg5e +.len4 +.lep5 +.lev1 +.li4g +.lig5a +.li2n +.li3o +.li4t +.mag5a5 +.mal5o +.man5a +.mar5ti +.me2 +.mer3c +.me5ter +.mis1 +.mist5i +.mon3e +.mo3ro +.mu5ta +.muta5b +.ni4c +.od2 +.odd5 +.of5te +.or5ato +.or3c +.or1d +.or3t +.os3 +.os4tl +.oth3 +.out3 +.ped5al +.pe5te +.pe5tit +.pi4e +.pio5n +.pi2t +.pre3m +.ra4c +.ran4t +.ratio5na +.ree2 +.re5mit +.res2 +.re5stat +.ri4g +.rit5u +.ro4q +.ros5t +.row5d +.ru4d +.sci3e +.self5 +.sell5 +.se2n +.se5rie +.sh2 +.si2 +.sing4 +.st4 +.sta5bl +.sy2 +.ta4 +.te4 +.ten5an +.th2 +.ti2 +.til4 +.tim5o5 +.ting4 +.tin5k +.ton4a +.to4p +.top5i +.tou5s +.trib5ut +.un1a +.un3ce +.under5 +.un1e +.un5k +.un5o +.un3u +.up3 +.ure3 +.us5a +.ven4de +.ve5ra +.wil5i +.ye4 +4ab. +a5bal +a5ban +abe2 +ab5erd +abi5a +ab5it5ab +ab5lat +ab5o5liz +4abr +ab5rog +ab3ul +a4car +ac5ard +ac5aro +a5ceou +ac1er +a5chet +4a2ci +a3cie +ac1in +a3cio +ac5rob +act5if +ac3ul +ac4um +a2d +ad4din +ad5er. +2adi +a3dia +ad3ica +adi4er +a3dio +a3dit +a5diu +ad4le +ad3ow +ad5ran +ad4su +4adu +a3duc +ad5um +ae4r +aeri4e +a2f +aff4 +a4gab +aga4n +ag5ell +age4o +4ageu +ag1i +4ag4l +ag1n +a2go +3agog +ag3oni +a5guer +ag5ul +a4gy +a3ha +a3he +ah4l +a3ho +ai2 +a5ia +a3ic. +ai5ly +a4i4n +ain5in +ain5o +ait5en +a1j +ak1en +al5ab +al3ad +a4lar +4aldi +2ale +al3end +a4lenti +a5le5o +al1i +al4ia. +ali4e +al5lev +4allic +4alm +a5log. +a4ly. +4alys +5a5lyst +5alyt +3alyz +4ama +am5ab +am3ag +ama5ra +am5asc +a4matis +a4m5ato +am5era +am3ic +am5if +am5ily +am1in +ami4no +a2mo +a5mon +amor5i +amp5en +a2n +an3age +3analy +a3nar +an3arc +anar4i +a3nati +4and +ande4s +an3dis +an1dl +an4dow +a5nee +a3nen +an5est. +a3neu +2ang +ang5ie +an1gl +a4n1ic +a3nies +an3i3f +an4ime +a5nimi +a5nine +an3io +a3nip +an3ish +an3it +a3niu +an4kli +5anniz +ano4 +an5ot +anoth5 +an2sa +an4sco +an4sn +an2sp +ans3po +an4st +an4sur +antal4 +an4tie +4anto +an2tr +an4tw +an3ua +an3ul +a5nur +4ao +apar4 +ap5at +ap5ero +a3pher +4aphi +a4pilla +ap5illar +ap3in +ap3ita +a3pitu +a2pl +apoc5 +ap5ola +apor5i +apos3t +aps5es +a3pu +aque5 +2a2r +ar3act +a5rade +ar5adis +ar3al +a5ramete +aran4g +ara3p +ar4at +a5ratio +ar5ativ +a5rau +ar5av4 +araw4 +arbal4 +ar4chan +ar5dine +ar4dr +ar5eas +a3ree +ar3ent +a5ress +ar4fi +ar4fl +ar1i +ar5ial +ar3ian +a3riet +ar4im +ar5inat +ar3io +ar2iz +ar2mi +ar5o5d +a5roni +a3roo +ar2p +ar3q +arre4 +ar4sa +ar2sh +4as. +as4ab +as3ant +ashi4 +a5sia. +a3sib +a3sic +5a5si4t +ask3i +as4l +a4soc +as5ph +as4sh +as3ten +as1tr +asur5a +a2ta +at3abl +at5ac +at3alo +at5ap +ate5c +at5ech +at3ego +at3en. +at3era +ater5n +a5terna +at3est +at5ev +4ath +ath5em +a5then +at4ho +ath5om +4ati. +a5tia +at5i5b +at1ic +at3if +ation5ar +at3itu +a4tog +a2tom +at5omiz +a4top +a4tos +a1tr +at5rop +at4sk +at4tag +at5te +at4th +a2tu +at5ua +at5ue +at3ul +at3ura +a2ty +au4b +augh3 +au3gu +au4l2 +aun5d +au3r +au5sib +aut5en +au1th +a2va +av3ag +a5van +ave4no +av3era +av5ern +av5ery +av1i +avi4er +av3ig +av5oc +a1vor +3away +aw3i +aw4ly +aws4 +ax4ic +ax4id +ay5al +aye4 +ays4 +azi4er +azz5i +5ba. +bad5ger +ba4ge +bal1a +ban5dag +ban4e +ban3i +barbi5 +bari4a +bas4si +1bat +ba4z +2b1b +b2be +b3ber +bbi4na +4b1d +4be. +beak4 +beat3 +4be2d +be3da +be3de +be3di +be3gi +be5gu +1bel +be1li +be3lo +4be5m +be5nig +be5nu +4bes4 +be3sp +be5str +3bet +bet5iz +be5tr +be3tw +be3w +be5yo +2bf +4b3h +bi2b +bi4d +3bie +bi5en +bi4er +2b3if +1bil +bi3liz +bina5r4 +bin4d +bi5net +bi3ogr +bi5ou +bi2t +3bi3tio +bi3tr +3bit5ua +b5itz +b1j +bk4 +b2l2 +blath5 +b4le. +blen4 +5blesp +b3lis +b4lo +blun4t +4b1m +4b3n +bne5g +3bod +bod3i +bo4e +bol3ic +bom4bi +bon4a +bon5at +3boo +5bor. +4b1ora +bor5d +5bore +5bori +5bos4 +b5ota +both5 +bo4to +bound3 +4bp +4brit +broth3 +2b5s2 +bsor4 +2bt +bt4l +b4to +b3tr +buf4fer +bu4ga +bu3li +bumi4 +bu4n +bunt4i +bu3re +bus5ie +buss4e +5bust +4buta +3butio +b5uto +b1v +4b5w +5by. +bys4 +1ca +cab3in +ca1bl +cach4 +ca5den +4cag4 +2c5ah +ca3lat +cal4la +call5in +4calo +can5d +can4e +can4ic +can5is +can3iz +can4ty +cany4 +ca5per +car5om +cast5er +cas5tig +4casy +ca4th +4cativ +cav5al +c3c +ccha5 +cci4a +ccompa5 +ccon4 +ccou3t +2ce. +4ced. +4ceden +3cei +5cel. +3cell +1cen +3cenc +2cen4e +4ceni +3cent +3cep +ce5ram +4cesa +3cessi +ces5si5b +ces5t +cet4 +c5e4ta +cew4 +2ch +4ch. +4ch3ab +5chanic +ch5a5nis +che2 +cheap3 +4ched +che5lo +3chemi +ch5ene +ch3er. +ch3ers +4ch1in +5chine. +ch5iness +5chini +5chio +3chit +chi2z +3cho2 +ch4ti +1ci +3cia +ci2a5b +cia5r +ci5c +4cier +5cific. +4cii +ci4la +3cili +2cim +2cin +c4ina +3cinat +cin3em +c1ing +c5ing. +5cino +cion4 +4cipe +ci3ph +4cipic +4cista +4cisti +2c1it +cit3iz +5ciz +ck1 +ck3i +1c4l4 +4clar +c5laratio +5clare +cle4m +4clic +clim4 +cly4 +c5n +1co +co5ag +coe2 +2cog +co4gr +coi4 +co3inc +col5i +5colo +col3or +com5er +con4a +c4one +con3g +con5t +co3pa +cop3ic +co4pl +4corb +coro3n +cos4e +cov1 +cove4 +cow5a +coz5e +co5zi +c1q +cras5t +5crat. +5cratic +cre3at +5cred +4c3reta +cre4v +cri2 +cri5f +c4rin +cris4 +5criti +cro4pl +crop5o +cros4e +cru4d +4c3s2 +2c1t +cta4b +ct5ang +c5tant +c2te +c3ter +c4ticu +ctim3i +ctu4r +c4tw +cud5 +c4uf +c4ui +cu5ity +5culi +cul4tis +3cultu +cu2ma +c3ume +cu4mi +3cun +cu3pi +cu5py +cur5a4b +cu5ria +1cus +cuss4i +3c4ut +cu4tie +4c5utiv +4cutr +1cy +cze4 +1d2a +5da. +2d3a4b +dach4 +4daf +2dag +da2m2 +dan3g +dard5 +dark5 +4dary +3dat +4dativ +4dato +5dav4 +dav5e +5day +d1b +d5c +d1d4 +2de. +deaf5 +deb5it +de4bon +decan4 +de4cil +de5com +2d1ed +4dee. +de5if +deli4e +del5i5q +de5lo +d4em +5dem. +3demic +dem5ic. +de5mil +de4mons +demor5 +1den +de4nar +de3no +denti5f +de3nu +de1p +de3pa +depi4 +de2pu +d3eq +d4erh +5derm +dern5iz +der5s +des2 +d2es. +de1sc +de2s5o +des3ti +de3str +de4su +de1t +de2to +de1v +dev3il +4dey +4d1f +d4ga +d3ge4t +dg1i +d2gy +d1h2 +5di. +1d4i3a +dia5b +di4cam +d4ice +3dict +3did +5di3en +d1if +di3ge +di4lato +d1in +1dina +3dine. +5dini +di5niz +1dio +dio5g +di4pl +dir2 +di1re +dirt5i +dis1 +5disi +d4is3t +d2iti +1di1v +d1j +d5k2 +4d5la +3dle. +3dled +3dles. +4dless +2d3lo +4d5lu +2dly +d1m +4d1n4 +1do +3do. +do5de +5doe +2d5of +d4og +do4la +doli4 +do5lor +dom5iz +do3nat +doni4 +doo3d +dop4p +d4or +3dos +4d5out +do4v +3dox +d1p +1dr +drag5on +4drai +dre4 +drea5r +5dren +dri4b +dril4 +dro4p +4drow +5drupli +4dry +2d1s2 +ds4p +d4sw +d4sy +d2th +1du +d1u1a +du2c +d1uca +duc5er +4duct. +4ducts +du5el +du4g +d3ule +dum4be +du4n +4dup +du4pe +d1v +d1w +d2y +5dyn +dy4se +dys5p +e1a4b +e3act +ead1 +ead5ie +ea4ge +ea5ger +ea4l +eal5er +eal3ou +eam3er +e5and +ear3a +ear4c +ear5es +ear4ic +ear4il +ear5k +ear2t +eart3e +ea5sp +e3ass +east3 +ea2t +eat5en +eath3i +e5atif +e4a3tu +ea2v +eav3en +eav5i +eav5o +2e1b +e4bel. +e4bels +e4ben +e4bit +e3br +e4cad +ecan5c +ecca5 +e1ce +ec5essa +ec2i +e4cib +ec5ificat +ec5ifie +ec5ify +ec3im +eci4t +e5cite +e4clam +e4clus +e2col +e4comm +e4compe +e4conc +e2cor +ec3ora +eco5ro +e1cr +e4crem +ec4tan +ec4te +e1cu +e4cul +ec3ula +2e2da +4ed3d +e4d1er +ede4s +4edi +e3dia +ed3ib +ed3ica +ed3im +ed1it +edi5z +4edo +e4dol +edon2 +e4dri +e4dul +ed5ulo +ee2c +eed3i +ee2f +eel3i +ee4ly +ee2m +ee4na +ee4p1 +ee2s4 +eest4 +ee4ty +e5ex +e1f +e4f3ere +1eff +e4fic +5efici +efil4 +e3fine +ef5i5nite +3efit +efor5es +e4fuse. +4egal +eger4 +eg5ib +eg4ic +eg5ing +e5git5 +eg5n +e4go. +e4gos +eg1ul +e5gur +5egy +e1h4 +eher4 +ei2 +e5ic +ei5d +eig2 +ei5gl +e3imb +e3inf +e1ing +e5inst +eir4d +eit3e +ei3th +e5ity +e1j +e4jud +ej5udi +eki4n +ek4la +e1la +e4la. +e4lac +elan4d +el5ativ +e4law +elaxa4 +e3lea +el5ebra +5elec +e4led +el3ega +e5len +e4l1er +e1les +el2f +el2i +e3libe +e4l5ic. +el3ica +e3lier +el5igib +e5lim +e4l3ing +e3lio +e2lis +el5ish +e3liv3 +4ella +el4lab +ello4 +e5loc +el5og +el3op. +el2sh +el4ta +e5lud +el5ug +e4mac +e4mag +e5man +em5ana +em5b +e1me +e2mel +e4met +em3ica +emi4e +em5igra +em1in2 +em5ine +em3i3ni +e4mis +em5ish +e5miss +em3iz +5emniz +emo4g +emoni5o +em3pi +e4mul +em5ula +emu3n +e3my +en5amo +e4nant +ench4er +en3dic +e5nea +e5nee +en3em +en5ero +en5esi +en5est +en3etr +e3new +en5ics +e5nie +e5nil +e3nio +en3ish +en3it +e5niu +5eniz +4enn +4eno +eno4g +e4nos +en3ov +en4sw +ent5age +4enthes +en3ua +en5uf +e3ny. +4en3z +e5of +eo2g +e4oi4 +e3ol +eop3ar +e1or +eo3re +eo5rol +eos4 +e4ot +eo4to +e5out +e5ow +e2pa +e3pai +ep5anc +e5pel +e3pent +ep5etitio +ephe4 +e4pli +e1po +e4prec +ep5reca +e4pred +ep3reh +e3pro +e4prob +ep4sh +ep5ti5b +e4put +ep5uta +e1q +equi3l +e4q3ui3s +er1a +era4b +4erand +er3ar +4erati. +2erb +er4bl +er3ch +er4che +2ere. +e3real +ere5co +ere3in +er5el. +er3emo +er5ena +er5ence +4erene +er3ent +ere4q +er5ess +er3est +eret4 +er1h +er1i +e1ria4 +5erick +e3rien +eri4er +er3ine +e1rio +4erit +er4iu +eri4v +e4riva +er3m4 +er4nis +4ernit +5erniz +er3no +2ero +er5ob +e5roc +ero4r +er1ou +er1s +er3set +ert3er +4ertl +er3tw +4eru +eru4t +5erwau +e1s4a +e4sage. +e4sages +es2c +e2sca +es5can +e3scr +es5cu +e1s2e +e2sec +es5ecr +es5enc +e4sert. +e4serts +e4serva +4esh +e3sha +esh5en +e1si +e2sic +e2sid +es5iden +es5igna +e2s5im +es4i4n +esis4te +esi4u +e5skin +es4mi +e2sol +es3olu +e2son +es5ona +e1sp +es3per +es5pira +es4pre +2ess +es4si4b +estan4 +es3tig +es5tim +4es2to +e3ston +2estr +e5stro +estruc5 +e2sur +es5urr +es4w +eta4b +eten4d +e3teo +ethod3 +et1ic +e5tide +etin4 +eti4no +e5tir +e5titio +et5itiv +4etn +et5ona +e3tra +e3tre +et3ric +et5rif +et3rog +et5ros +et3ua +et5ym +et5z +4eu +e5un +e3up +eu3ro +eus4 +eute4 +euti5l +eu5tr +eva2p5 +e2vas +ev5ast +e5vea +ev3ell +evel3o +e5veng +even4i +ev1er +e5verb +e1vi +ev3id +evi4l +e4vin +evi4v +e5voc +e5vu +e1wa +e4wag +e5wee +e3wh +ewil5 +ew3ing +e3wit +1exp +5eyc +5eye. +eys4 +1fa +fa3bl +fab3r +fa4ce +4fag +fain4 +fall5e +4fa4ma +fam5is +5far +far5th +fa3ta +fa3the +4fato +fault5 +4f5b +4fd +4fe. +feas4 +feath3 +fe4b +4feca +5fect +2fed +fe3li +fe4mo +fen2d +fend5e +fer1 +5ferr +fev4 +4f1f +f4fes +f4fie +f5fin. +f2f5is +f4fly +f2fy +4fh +1fi +fi3a +2f3ic. +4f3ical +f3ican +4ficate +f3icen +fi3cer +fic4i +5ficia +5ficie +4fics +fi3cu +fi5del +fight5 +fil5i +fill5in +4fily +2fin +5fina +fin2d5 +fi2ne +f1in3g +fin4n +fis4ti +f4l2 +f5less +flin4 +flo3re +f2ly5 +4fm +4fn +1fo +5fon +fon4de +fon4t +fo2r +fo5rat +for5ay +fore5t +for4i +fort5a +fos5 +4f5p +fra4t +f5rea +fres5c +fri2 +fril4 +frol5 +2f3s +2ft +f4to +f2ty +3fu +fu5el +4fug +fu4min +fu5ne +fu3ri +fusi4 +fus4s +4futa +1fy +1ga +gaf4 +5gal. +3gali +ga3lo +2gam +ga5met +g5amo +gan5is +ga3niz +gani5za +4gano +gar5n4 +gass4 +gath3 +4gativ +4gaz +g3b +gd4 +2ge. +2ged +geez4 +gel4in +ge5lis +ge5liz +4gely +1gen +ge4nat +ge5niz +4geno +4geny +1geo +ge3om +g4ery +5gesi +geth5 +4geto +ge4ty +ge4v +4g1g2 +g2ge +g3ger +gglu5 +ggo4 +gh3in +gh5out +gh4to +5gi. +1gi4a +gia5r +g1ic +5gicia +g4ico +gien5 +5gies. +gil4 +g3imen +3g4in. +gin5ge +5g4ins +5gio +3gir +gir4l +g3isl +gi4u +5giv +3giz +gl2 +gla4 +glad5i +5glas +1gle +gli4b +g3lig +3glo +glo3r +g1m +g4my +gn4a +g4na. +gnet4t +g1ni +g2nin +g4nio +g1no +g4non +1go +3go. +gob5 +5goe +3g4o4g +go3is +gon2 +4g3o3na +gondo5 +go3ni +5goo +go5riz +gor5ou +5gos. +gov1 +g3p +1gr +4grada +g4rai +gran2 +5graph. +g5rapher +5graphic +4graphy +4gray +gre4n +4gress. +4grit +g4ro +gruf4 +gs2 +g5ste +gth3 +gu4a +3guard +2gue +5gui5t +3gun +3gus +4gu4t +g3w +1gy +2g5y3n +gy5ra +h3ab4l +hach4 +hae4m +hae4t +h5agu +ha3la +hala3m +ha4m +han4ci +han4cy +5hand. +han4g +hang5er +hang5o +h5a5niz +han4k +han4te +hap3l +hap5t +ha3ran +ha5ras +har2d +hard3e +har4le +harp5en +har5ter +has5s +haun4 +5haz +haz3a +h1b +1head +3hear +he4can +h5ecat +h4ed +he5do5 +he3l4i +hel4lis +hel4ly +h5elo +hem4p +he2n +hena4 +hen5at +heo5r +hep5 +h4era +hera3p +her4ba +here5a +h3ern +h5erou +h3ery +h1es +he2s5p +he4t +het4ed +heu4 +h1f +h1h +hi5an +hi4co +high5 +h4il2 +himer4 +h4ina +hion4e +hi4p +hir4l +hi3ro +hir4p +hir4r +his3el +his4s +hith5er +hi2v +4hk +4h1l4 +hlan4 +h2lo +hlo3ri +4h1m +hmet4 +2h1n +h5odiz +h5ods +ho4g +hoge4 +hol5ar +3hol4e +ho4ma +home3 +hon4a +ho5ny +3hood +hoon4 +hor5at +ho5ris +hort3e +ho5ru +hos4e +ho5sen +hos1p +1hous +house3 +hov5el +4h5p +4hr4 +hree5 +hro5niz +hro3po +4h1s2 +h4sh +h4tar +ht1en +ht5es +h4ty +hu4g +hu4min +hun5ke +hun4t +hus3t4 +hu4t +h1w +h4wart +hy3pe +hy3ph +hy2s +2i1a +i2al +iam4 +iam5ete +i2an +4ianc +ian3i +4ian4t +ia5pe +iass4 +i4ativ +ia4tric +i4atu +ibe4 +ib3era +ib5ert +ib5ia +ib3in +ib5it. +ib5ite +i1bl +ib3li +i5bo +i1br +i2b5ri +i5bun +4icam +5icap +4icar +i4car. +i4cara +icas5 +i4cay +iccu4 +4iceo +4ich +2ici +i5cid +ic5ina +i2cip +ic3ipa +i4cly +i2c5oc +4i1cr +5icra +i4cry +ic4te +ictu2 +ic4t3ua +ic3ula +ic4um +ic5uo +i3cur +2id +i4dai +id5anc +id5d +ide3al +ide4s +i2di +id5ian +idi4ar +i5die +id3io +idi5ou +id1it +id5iu +i3dle +i4dom +id3ow +i4dr +i2du +id5uo +2ie4 +ied4e +5ie5ga +ield3 +ien5a4 +ien4e +i5enn +i3enti +i1er. +i3esc +i1est +i3et +4if. +if5ero +iff5en +if4fr +4ific. +i3fie +i3fl +4ift +2ig +iga5b +ig3era +ight3i +4igi +i3gib +ig3il +ig3in +ig3it +i4g4l +i2go +ig3or +ig5ot +i5gre +igu5i +ig1ur +i3h +4i5i4 +i3j +4ik +i1la +il3a4b +i4lade +i2l5am +ila5ra +i3leg +il1er +ilev4 +il5f +il1i +il3ia +il2ib +il3io +il4ist +2ilit +il2iz +ill5ab +4iln +il3oq +il4ty +il5ur +il3v +i4mag +im3age +ima5ry +imenta5r +4imet +im1i +im5ida +imi5le +i5mini +4imit +im4ni +i3mon +i2mu +im3ula +2in. +i4n3au +4inav +incel4 +in3cer +4ind +in5dling +2ine +i3nee +iner4ar +i5ness +4inga +4inge +in5gen +4ingi +in5gling +4ingo +4ingu +2ini +i5ni. +i4nia +in3io +in1is +i5nite. +5initio +in3ity +4ink +4inl +2inn +2i1no +i4no4c +ino4s +i4not +2ins +in3se +insur5a +2int. +2in4th +in1u +i5nus +4iny +2io +4io. +ioge4 +io2gr +i1ol +io4m +ion3at +ion4ery +ion3i +io5ph +ior3i +i4os +io5th +i5oti +io4to +i4our +2ip +ipe4 +iphras4 +ip3i +ip4ic +ip4re4 +ip3ul +i3qua +iq5uef +iq3uid +iq3ui3t +4ir +i1ra +ira4b +i4rac +ird5e +ire4de +i4ref +i4rel4 +i4res +ir5gi +ir1i +iri5de +ir4is +iri3tu +5i5r2iz +ir4min +iro4g +5iron. +ir5ul +2is. +is5ag +is3ar +isas5 +2is1c +is3ch +4ise +is3er +3isf +is5han +is3hon +ish5op +is3ib +isi4d +i5sis +is5itiv +4is4k +islan4 +4isms +i2so +iso5mer +is1p +is2pi +is4py +4is1s +is4sal +issen4 +is4ses +is4ta. +is1te +is1ti +ist4ly +4istral +i2su +is5us +4ita. +ita4bi +i4tag +4ita5m +i3tan +i3tat +2ite +it3era +i5teri +it4es +2ith +i1ti +4itia +4i2tic +it3ica +5i5tick +it3ig +it5ill +i2tim +2itio +4itis +i4tism +i2t5o5m +4iton +i4tram +it5ry +4itt +it3uat +i5tud +it3ul +4itz. +i1u +2iv +iv3ell +iv3en. +i4v3er. +i4vers. +iv5il. +iv5io +iv1it +i5vore +iv3o3ro +i4v3ot +4i5w +ix4o +4iy +4izar +izi4 +5izont +5ja +jac4q +ja4p +1je +jer5s +4jestie +4jesty +jew3 +jo4p +5judg +3ka. +k3ab +k5ag +kais4 +kal4 +k1b +k2ed +1kee +ke4g +ke5li +k3en4d +k1er +kes4 +k3est. +ke4ty +k3f +kh4 +k1i +5ki. +5k2ic +k4ill +kilo5 +k4im +k4in. +kin4de +k5iness +kin4g +ki4p +kis4 +k5ish +kk4 +k1l +4kley +4kly +k1m +k5nes +1k2no +ko5r +kosh4 +k3ou +kro5n +4k1s2 +k4sc +ks4l +k4sy +k5t +k1w +lab3ic +l4abo +laci4 +l4ade +la3dy +lag4n +lam3o +3land +lan4dl +lan5et +lan4te +lar4g +lar3i +las4e +la5tan +4lateli +4lativ +4lav +la4v4a +2l1b +lbin4 +4l1c2 +lce4 +l3ci +2ld +l2de +ld4ere +ld4eri +ldi4 +ld5is +l3dr +l4dri +le2a +le4bi +left5 +5leg. +5legg +le4mat +lem5atic +4len. +3lenc +5lene. +1lent +le3ph +le4pr +lera5b +ler4e +3lerg +3l4eri +l4ero +les2 +le5sco +5lesq +3less +5less. +l3eva +lev4er. +lev4era +lev4ers +3ley +4leye +2lf +l5fr +4l1g4 +l5ga +lgar3 +l4ges +lgo3 +2l3h +li4ag +li2am +liar5iz +li4as +li4ato +li5bi +5licio +li4cor +4lics +4lict. +l4icu +l3icy +l3ida +lid5er +3lidi +lif3er +l4iff +li4fl +5ligate +3ligh +li4gra +3lik +4l4i4l +lim4bl +lim3i +li4mo +l4im4p +l4ina +1l4ine +lin3ea +lin3i +link5er +li5og +4l4iq +lis4p +l1it +l2it. +5litica +l5i5tics +liv3er +l1iz +4lj +lka3 +l3kal +lka4t +l1l +l4law +l2le +l5lea +l3lec +l3leg +l3lel +l3le4n +l3le4t +ll2i +l2lin4 +l5lina +ll4o +lloqui5 +ll5out +l5low +2lm +l5met +lm3ing +l4mod +lmon4 +2l1n2 +3lo. +lob5al +lo4ci +4lof +3logic +l5ogo +3logu +lom3er +5long +lon4i +l3o3niz +lood5 +5lope. +lop3i +l3opm +lora4 +lo4rato +lo5rie +lor5ou +5los. +los5et +5losophiz +5losophy +los4t +lo4ta +loun5d +2lout +4lov +2lp +lpa5b +l3pha +l5phi +lp5ing +l3pit +l4pl +l5pr +4l1r +2l1s2 +l4sc +l2se +l4sie +4lt +lt5ag +ltane5 +l1te +lten4 +ltera4 +lth3i +l5ties. +ltis4 +l1tr +ltu2 +ltur3a +lu5a +lu3br +luch4 +lu3ci +lu3en +luf4 +lu5id +lu4ma +5lumi +l5umn. +5lumnia +lu3o +luo3r +4lup +luss4 +lus3te +1lut +l5ven +l5vet4 +2l1w +1ly +4lya +4lyb +ly5me +ly3no +2lys4 +l5yse +1ma +2mab +ma2ca +ma5chine +ma4cl +mag5in +5magn +2mah +maid5 +4mald +ma3lig +ma5lin +mal4li +mal4ty +5mania +man5is +man3iz +4map +ma5rine. +ma5riz +mar4ly +mar3v +ma5sce +mas4e +mas1t +5mate +math3 +ma3tis +4matiza +4m1b +mba4t5 +m5bil +m4b3ing +mbi4v +4m5c +4me. +2med +4med. +5media +me3die +m5e5dy +me2g +mel5on +mel4t +me2m +mem1o3 +1men +men4a +men5ac +men4de +4mene +men4i +mens4 +mensu5 +3ment +men4te +me5on +m5ersa +2mes +3mesti +me4ta +met3al +me1te +me5thi +m4etr +5metric +me5trie +me3try +me4v +4m1f +2mh +5mi. +mi3a +mid4a +mid4g +mig4 +3milia +m5i5lie +m4ill +min4a +3mind +m5inee +m4ingl +min5gli +m5ingly +min4t +m4inu +miot4 +m2is +mis4er. +mis5l +mis4ti +m5istry +4mith +m2iz +4mk +4m1l +m1m +mma5ry +4m1n +mn4a +m4nin +mn4o +1mo +4mocr +5mocratiz +mo2d1 +mo4go +mois2 +moi5se +4mok +mo5lest +mo3me +mon5et +mon5ge +moni3a +mon4ism +mon4ist +mo3niz +monol4 +mo3ny. +mo2r +4mora. +mos2 +mo5sey +mo3sp +moth3 +m5ouf +3mous +mo2v +4m1p +mpara5 +mpa5rab +mpar5i +m3pet +mphas4 +m2pi +mpi4a +mp5ies +m4p1in +m5pir +mp5is +mpo3ri +mpos5ite +m4pous +mpov5 +mp4tr +m2py +4m3r +4m1s2 +m4sh +m5si +4mt +1mu +mula5r4 +5mult +multi3 +3mum +mun2 +4mup +mu4u +4mw +1na +2n1a2b +n4abu +4nac. +na4ca +n5act +nag5er. +nak4 +na4li +na5lia +4nalt +na5mit +n2an +nanci4 +nan4it +nank4 +nar3c +4nare +nar3i +nar4l +n5arm +n4as +nas4c +nas5ti +n2at +na3tal +nato5miz +n2au +nau3se +3naut +nav4e +4n1b4 +ncar5 +n4ces. +n3cha +n5cheo +n5chil +n3chis +nc1in +nc4it +ncour5a +n1cr +n1cu +n4dai +n5dan +n1de +nd5est. +ndi4b +n5d2if +n1dit +n3diz +n5duc +ndu4r +nd2we +2ne. +n3ear +ne2b +neb3u +ne2c +5neck +2ned +ne4gat +neg5ativ +5nege +ne4la +nel5iz +ne5mi +ne4mo +1nen +4nene +3neo +ne4po +ne2q +n1er +nera5b +n4erar +n2ere +n4er5i +ner4r +1nes +2nes. +4nesp +2nest +4nesw +3netic +ne4v +n5eve +ne4w +n3f +n4gab +n3gel +nge4n4e +n5gere +n3geri +ng5ha +n3gib +ng1in +n5git +n4gla +ngov4 +ng5sh +n1gu +n4gum +n2gy +4n1h4 +nha4 +nhab3 +nhe4 +3n4ia +ni3an +ni4ap +ni3ba +ni4bl +ni4d +ni5di +ni4er +ni2fi +ni5ficat +n5igr +nik4 +n1im +ni3miz +n1in +5nine. +nin4g +ni4o +5nis. +nis4ta +n2it +n4ith +3nitio +n3itor +ni3tr +n1j +4nk2 +n5kero +n3ket +nk3in +n1kl +4n1l +n5m +nme4 +nmet4 +4n1n2 +nne4 +nni3al +nni4v +nob4l +no3ble +n5ocl +4n3o2d +3noe +4nog +noge4 +nois5i +no5l4i +5nologis +3nomic +n5o5miz +no4mo +no3my +no4n +non4ag +non5i +n5oniz +4nop +5nop5o5li +nor5ab +no4rary +4nosc +nos4e +nos5t +no5ta +1nou +3noun +nov3el3 +nowl3 +n1p4 +npi4 +npre4c +n1q +n1r +nru4 +2n1s2 +ns5ab +nsati4 +ns4c +n2se +n4s3es +nsid1 +nsig4 +n2sl +ns3m +n4soc +ns4pe +n5spi +nsta5bl +n1t +nta4b +nter3s +nt2i +n5tib +nti4er +nti2f +n3tine +n4t3ing +nti4p +ntrol5li +nt4s +ntu3me +nu1a +nu4d +nu5en +nuf4fe +n3uin +3nu3it +n4um +nu1me +n5umi +3nu4n +n3uo +nu3tr +n1v2 +n1w4 +nym4 +nyp4 +4nz +n3za +4oa +oad3 +o5a5les +oard3 +oas4e +oast5e +oat5i +ob3a3b +o5bar +obe4l +o1bi +o2bin +ob5ing +o3br +ob3ul +o1ce +och4 +o3chet +ocif3 +o4cil +o4clam +o4cod +oc3rac +oc5ratiz +ocre3 +5ocrit +octor5a +oc3ula +o5cure +od5ded +od3ic +odi3o +o2do4 +odor3 +od5uct. +od5ucts +o4el +o5eng +o3er +oe4ta +o3ev +o2fi +of5ite +ofit4t +o2g5a5r +og5ativ +o4gato +o1ge +o5gene +o5geo +o4ger +o3gie +1o1gis +og3it +o4gl +o5g2ly +3ogniz +o4gro +ogu5i +1ogy +2ogyn +o1h2 +ohab5 +oi2 +oic3es +oi3der +oiff4 +oig4 +oi5let +o3ing +oint5er +o5ism +oi5son +oist5en +oi3ter +o5j +2ok +o3ken +ok5ie +o1la +o4lan +olass4 +ol2d +old1e +ol3er +o3lesc +o3let +ol4fi +ol2i +o3lia +o3lice +ol5id. +o3li4f +o5lil +ol3ing +o5lio +o5lis. +ol3ish +o5lite +o5litio +o5liv +olli4e +ol5ogiz +olo4r +ol5pl +ol2t +ol3ub +ol3ume +ol3un +o5lus +ol2v +o2ly +om5ah +oma5l +om5atiz +om2be +om4bl +o2me +om3ena +om5erse +o4met +om5etry +o3mia +om3ic. +om3ica +o5mid +om1in +o5mini +5ommend +omo4ge +o4mon +om3pi +ompro5 +o2n +on1a +on4ac +o3nan +on1c +3oncil +2ond +on5do +o3nen +on5est +on4gu +on1ic +o3nio +on1is +o5niu +on3key +on4odi +on3omy +on3s +onspi4 +onspir5a +onsu4 +onten4 +on3t4i +ontif5 +on5um +onva5 +oo2 +ood5e +ood5i +oo4k +oop3i +o3ord +oost5 +o2pa +ope5d +op1er +3opera +4operag +2oph +o5phan +o5pher +op3ing +o3pit +o5pon +o4posi +o1pr +op1u +opy5 +o1q +o1ra +o5ra. +o4r3ag +or5aliz +or5ange +ore5a +o5real +or3ei +ore5sh +or5est. +orew4 +or4gu +4o5ria +or3ica +o5ril +or1in +o1rio +or3ity +o3riu +or2mi +orn2e +o5rof +or3oug +or5pe +3orrh +or4se +ors5en +orst4 +or3thi +or3thy +or4ty +o5rum +o1ry +os3al +os2c +os4ce +o3scop +4oscopi +o5scr +os4i4e +os5itiv +os3ito +os3ity +osi4u +os4l +o2so +os4pa +os4po +os2ta +o5stati +os5til +os5tit +o4tan +otele4g +ot3er. +ot5ers +o4tes +4oth +oth5esi +oth3i4 +ot3ic. +ot5ica +o3tice +o3tif +o3tis +oto5s +ou2 +ou3bl +ouch5i +ou5et +ou4l +ounc5er +oun2d +ou5v +ov4en +over4ne +over3s +ov4ert +o3vis +oviti4 +o5v4ol +ow3der +ow3el +ow5est +ow1i +own5i +o4wo +oy1a +1pa +pa4ca +pa4ce +pac4t +p4ad +5pagan +p3agat +p4ai +pain4 +p4al +pan4a +pan3el +pan4ty +pa3ny +pa1p +pa4pu +para5bl +par5age +par5di +3pare +par5el +p4a4ri +par4is +pa2te +pa5ter +5pathic +pa5thy +pa4tric +pav4 +3pay +4p1b +pd4 +4pe. +3pe4a +pear4l +pe2c +2p2ed +3pede +3pedi +pedia4 +ped4ic +p4ee +pee4d +pek4 +pe4la +peli4e +pe4nan +p4enc +pen4th +pe5on +p4era. +pera5bl +p4erag +p4eri +peri5st +per4mal +perme5 +p4ern +per3o +per3ti +pe5ru +per1v +pe2t +pe5ten +pe5tiz +4pf +4pg +4ph. +phar5i +phe3no +ph4er +ph4es. +ph1ic +5phie +ph5ing +5phisti +3phiz +ph2l +3phob +3phone +5phoni +pho4r +4phs +ph3t +5phu +1phy +pi3a +pian4 +pi4cie +pi4cy +p4id +p5ida +pi3de +5pidi +3piec +pi3en +pi4grap +pi3lo +pi2n +p4in. +pind4 +p4ino +3pi1o +pion4 +p3ith +pi5tha +pi2tu +2p3k2 +1p2l2 +3plan +plas5t +pli3a +pli5er +4plig +pli4n +ploi4 +plu4m +plum4b +4p1m +2p3n +po4c +5pod. +po5em +po3et5 +5po4g +poin2 +5point +poly5t +po4ni +po4p +1p4or +po4ry +1pos +pos1s +p4ot +po4ta +5poun +4p1p +ppa5ra +p2pe +p4ped +p5pel +p3pen +p3per +p3pet +ppo5site +pr2 +pray4e +5preci +pre5co +pre3em +pref5ac +pre4la +pre3r +p3rese +3press +pre5ten +pre3v +5pri4e +prin4t3 +pri4s +pris3o +p3roca +prof5it +pro3l +pros3e +pro1t +2p1s2 +p2se +ps4h +p4sib +2p1t +pt5a4b +p2te +p2th +pti3m +ptu4r +p4tw +pub3 +pue4 +puf4 +pul3c +pu4m +pu2n +pur4r +5pus +pu2t +5pute +put3er +pu3tr +put4ted +put4tin +p3w +qu2 +qua5v +2que. +3quer +3quet +2rab +ra3bi +rach4e +r5acl +raf5fi +raf4t +r2ai +ra4lo +ram3et +r2ami +rane5o +ran4ge +r4ani +ra5no +rap3er +3raphy +rar5c +rare4 +rar5ef +4raril +r2as +ration4 +rau4t +ra5vai +rav3el +ra5zie +r1b +r4bab +r4bag +rbi2 +rbi4f +r2bin +r5bine +rb5ing. +rb4o +r1c +r2ce +rcen4 +r3cha +rch4er +r4ci4b +rc4it +rcum3 +r4dal +rd2i +rdi4a +rdi4er +rdin4 +rd3ing +2re. +re1al +re3an +re5arr +5reav +re4aw +r5ebrat +rec5oll +rec5ompe +re4cre +2r2ed +re1de +re3dis +red5it +re4fac +re2fe +re5fer. +re3fi +re4fy +reg3is +re5it +re1li +re5lu +r4en4ta +ren4te +re1o +re5pin +re4posi +re1pu +r1er4 +r4eri +rero4 +re5ru +r4es. +re4spi +ress5ib +res2t +re5stal +re3str +re4ter +re4ti4z +re3tri +reu2 +re5uti +rev2 +re4val +rev3el +r5ev5er. +re5vers +re5vert +re5vil +rev5olu +re4wh +r1f +rfu4 +r4fy +rg2 +rg3er +r3get +r3gic +rgi4n +rg3ing +r5gis +r5git +r1gl +rgo4n +r3gu +rh4 +4rh. +4rhal +ri3a +ria4b +ri4ag +r4ib +rib3a +ric5as +r4ice +4rici +5ricid +ri4cie +r4ico +rid5er +ri3enc +ri3ent +ri1er +ri5et +rig5an +5rigi +ril3iz +5riman +rim5i +3rimo +rim4pe +r2ina +5rina. +rin4d +rin4e +rin4g +ri1o +5riph +riph5e +ri2pl +rip5lic +r4iq +r2is +r4is. +ris4c +r3ish +ris4p +ri3ta3b +r5ited. +rit5er. +rit5ers +rit3ic +ri2tu +rit5ur +riv5el +riv3et +riv3i +r3j +r3ket +rk4le +rk4lin +r1l +rle4 +r2led +r4lig +r4lis +rl5ish +r3lo4 +r1m +rma5c +r2me +r3men +rm5ers +rm3ing +r4ming. +r4mio +r3mit +r4my +r4nar +r3nel +r4ner +r5net +r3ney +r5nic +r1nis4 +r3nit +r3niv +rno4 +r4nou +r3nu +rob3l +r2oc +ro3cr +ro4e +ro1fe +ro5fil +rok2 +ro5ker +5role. +rom5ete +rom4i +rom4p +ron4al +ron4e +ro5n4is +ron4ta +1room +5root +ro3pel +rop3ic +ror3i +ro5ro +ros5per +ros4s +ro4the +ro4ty +ro4va +rov5el +rox5 +r1p +r4pea +r5pent +rp5er. +r3pet +rp4h4 +rp3ing +r3po +r1r4 +rre4c +rre4f +r4reo +rre4st +rri4o +rri4v +rron4 +rros4 +rrys4 +4rs2 +r1sa +rsa5ti +rs4c +r2se +r3sec +rse4cr +rs5er. +rs3es +rse5v2 +r1sh +r5sha +r1si +r4si4b +rson3 +r1sp +r5sw +rtach4 +r4tag +r3teb +rten4d +rte5o +r1ti +rt5ib +rti4d +r4tier +r3tig +rtil3i +rtil4l +r4tily +r4tist +r4tiv +r3tri +rtroph4 +rt4sh +ru3a +ru3e4l +ru3en +ru4gl +ru3in +rum3pl +ru2n +runk5 +run4ty +r5usc +ruti5n +rv4e +rvel4i +r3ven +rv5er. +r5vest +r3vey +r3vic +rvi4v +r3vo +r1w +ry4c +5rynge +ry3t +sa2 +2s1ab +5sack +sac3ri +s3act +5sai +salar4 +sal4m +sa5lo +sal4t +3sanc +san4de +s1ap +sa5ta +5sa3tio +sat3u +sau4 +sa5vor +5saw +4s5b +scan4t5 +sca4p +scav5 +s4ced +4scei +s4ces +sch2 +s4cho +3s4cie +5scin4d +scle5 +s4cli +scof4 +4scopy +scour5a +s1cu +4s5d +4se. +se4a +seas4 +sea5w +se2c3o +3sect +4s4ed +se4d4e +s5edl +se2g +seg3r +5sei +se1le +5self +5selv +4seme +se4mol +sen5at +4senc +sen4d +s5ened +sen5g +s5enin +4sentd +4sentl +sep3a3 +4s1er. +s4erl +ser4o +4servo +s1e4s +se5sh +ses5t +5se5um +5sev +sev3en +sew4i +5sex +4s3f +2s3g +s2h +2sh. +sh1er +5shev +sh1in +sh3io +3ship +shiv5 +sho4 +sh5old +shon3 +shor4 +short5 +4shw +si1b +s5icc +3side. +5sides +5sidi +si5diz +4signa +sil4e +4sily +2s1in +s2ina +5sine. +s3ing +1sio +5sion +sion5a +si2r +sir5a +1sis +3sitio +5siu +1siv +5siz +sk2 +4ske +s3ket +sk5ine +sk5ing +s1l2 +s3lat +s2le +slith5 +2s1m +s3ma +small3 +sman3 +smel4 +s5men +5smith +smol5d4 +s1n4 +1so +so4ce +soft3 +so4lab +sol3d2 +so3lic +5solv +3som +3s4on. +sona4 +son4g +s4op +5sophic +s5ophiz +s5ophy +sor5c +sor5d +4sov +so5vi +2spa +5spai +spa4n +spen4d +2s5peo +2sper +s2phe +3spher +spho5 +spil4 +sp5ing +4spio +s4ply +s4pon +spor4 +4spot +squal4l +s1r +2ss +s1sa +ssas3 +s2s5c +s3sel +s5seng +s4ses. +s5set +s1si +s4sie +ssi4er +ss5ily +s4sl +ss4li +s4sn +sspend4 +ss2t +ssur5a +ss5w +2st. +s2tag +s2tal +stam4i +5stand +s4ta4p +5stat. +s4ted +stern5i +s5tero +ste2w +stew5a +s3the +st2i +s4ti. +s5tia +s1tic +5stick +s4tie +s3tif +st3ing +5stir +s1tle +5stock +stom3a +5stone +s4top +3store +st4r +s4trad +5stratu +s4tray +s4trid +4stry +4st3w +s2ty +1su +su1al +su4b3 +su2g3 +su5is +suit3 +s4ul +su2m +sum3i +su2n +su2r +4sv +sw2 +4swo +s4y +4syc +3syl +syn5o +sy5rin +1ta +3ta. +2tab +ta5bles +5taboliz +4taci +ta5do +4taf4 +tai5lo +ta2l +ta5la +tal5en +tal3i +4talk +tal4lis +ta5log +ta5mo +tan4de +tanta3 +ta5per +ta5pl +tar4a +4tarc +4tare +ta3riz +tas4e +ta5sy +4tatic +ta4tur +taun4 +tav4 +2taw +tax4is +2t1b +4tc +t4ch +tch5et +4t1d +4te. +tead4i +4teat +tece4 +5tect +2t1ed +te5di +1tee +teg4 +te5ger +te5gi +3tel. +teli4 +5tels +te2ma2 +tem3at +3tenan +3tenc +3tend +4tenes +1tent +ten4tag +1teo +te4p +te5pe +ter3c +5ter3d +1teri +ter5ies +ter3is +teri5za +5ternit +ter5v +4tes. +4tess +t3ess. +teth5e +3teu +3tex +4tey +2t1f +4t1g +2th. +than4 +th2e +4thea +th3eas +the5at +the3is +3thet +th5ic. +th5ica +4thil +5think +4thl +th5ode +5thodic +4thoo +thor5it +tho5riz +2ths +1tia +ti4ab +ti4ato +2ti2b +4tick +t4ico +t4ic1u +5tidi +3tien +tif2 +ti5fy +2tig +5tigu +till5in +1tim +4timp +tim5ul +2t1in +t2ina +3tine. +3tini +1tio +ti5oc +tion5ee +5tiq +ti3sa +3tise +tis4m +ti5so +tis4p +5tistica +ti3tl +ti4u +1tiv +tiv4a +1tiz +ti3za +ti3zen +2tl +t5la +tlan4 +3tle. +3tled +3tles. +t5let. +t5lo +4t1m +tme4 +2t1n2 +1to +to3b +to5crat +4todo +2tof +to2gr +to5ic +to2ma +tom4b +to3my +ton4ali +to3nat +4tono +4tony +to2ra +to3rie +tor5iz +tos2 +5tour +4tout +to3war +4t1p +1tra +tra3b +tra5ch +traci4 +trac4it +trac4te +tras4 +tra5ven +trav5es5 +tre5f +tre4m +trem5i +5tria +tri5ces +5tricia +4trics +2trim +tri4v +tro5mi +tron5i +4trony +tro5phe +tro3sp +tro3v +tru5i +trus4 +4t1s2 +t4sc +tsh4 +t4sw +4t3t2 +t4tes +t5to +ttu4 +1tu +tu1a +tu3ar +tu4bi +tud2 +4tue +4tuf4 +5tu3i +3tum +tu4nis +2t3up. +3ture +5turi +tur3is +tur5o +tu5ry +3tus +4tv +tw4 +4t1wa +twis4 +4two +1ty +4tya +2tyl +type3 +ty5ph +4tz +tz4e +4uab +uac4 +ua5na +uan4i +uar5ant +uar2d +uar3i +uar3t +u1at +uav4 +ub4e +u4bel +u3ber +u4bero +u1b4i +u4b5ing +u3ble. +u3ca +uci4b +uc4it +ucle3 +u3cr +u3cu +u4cy +ud5d +ud3er +ud5est +udev4 +u1dic +ud3ied +ud3ies +ud5is +u5dit +u4don +ud4si +u4du +u4ene +uens4 +uen4te +uer4il +3ufa +u3fl +ugh3en +ug5in +2ui2 +uil5iz +ui4n +u1ing +uir4m +uita4 +uiv3 +uiv4er. +u5j +4uk +u1la +ula5b +u5lati +ulch4 +5ulche +ul3der +ul4e +u1len +ul4gi +ul2i +u5lia +ul3ing +ul5ish +ul4lar +ul4li4b +ul4lis +4ul3m +u1l4o +4uls +uls5es +ul1ti +ultra3 +4ultu +u3lu +ul5ul +ul5v +um5ab +um4bi +um4bly +u1mi +u4m3ing +umor5o +um2p +unat4 +u2ne +un4er +u1ni +un4im +u2nin +un5ish +uni3v +un3s4 +un4sw +unt3ab +un4ter. +un4tes +unu4 +un5y +un5z +u4ors +u5os +u1ou +u1pe +uper5s +u5pia +up3ing +u3pl +up3p +upport5 +upt5ib +uptu4 +u1ra +4ura. +u4rag +u4ras +ur4be +urc4 +ur1d +ure5at +ur4fer +ur4fr +u3rif +uri4fic +ur1in +u3rio +u1rit +ur3iz +ur2l +url5ing. +ur4no +uros4 +ur4pe +ur4pi +urs5er +ur5tes +ur3the +urti4 +ur4tie +u3ru +2us +u5sad +u5san +us4ap +usc2 +us3ci +use5a +u5sia +u3sic +us4lin +us1p +us5sl +us5tere +us1tr +u2su +usur4 +uta4b +u3tat +4ute. +4utel +4uten +uten4i +4u1t2i +uti5liz +u3tine +ut3ing +ution5a +u4tis +5u5tiz +u4t1l +ut5of +uto5g +uto5matic +u5ton +u4tou +uts4 +u3u +uu4m +u1v2 +uxu3 +uz4e +1va +5va. +2v1a4b +vac5il +vac3u +vag4 +va4ge +va5lie +val5o +val1u +va5mo +va5niz +va5pi +var5ied +3vat +4ve. +4ved +veg3 +v3el. +vel3li +ve4lo +v4ely +ven3om +v5enue +v4erd +5vere. +v4erel +v3eren +ver5enc +v4eres +ver3ie +vermi4n +3verse +ver3th +v4e2s +4ves. +ves4te +ve4te +vet3er +ve4ty +vi5ali +5vian +5vide. +5vided +4v3iden +5vides +5vidi +v3if +vi5gn +vik4 +2vil +5vilit +v3i3liz +v1in +4vi4na +v2inc +vin5d +4ving +vio3l +v3io4r +vi1ou +vi4p +vi5ro +vis3it +vi3so +vi3su +4viti +vit3r +4vity +3viv +5vo. +voi4 +3vok +vo4la +v5ole +5volt +3volv +vom5i +vor5ab +vori4 +vo4ry +vo4ta +4votee +4vv4 +v4y +w5abl +2wac +wa5ger +wag5o +wait5 +w5al. +wam4 +war4t +was4t +wa1te +wa5ver +w1b +wea5rie +weath3 +wed4n +weet3 +wee5v +wel4l +w1er +west3 +w3ev +whi4 +wi2 +wil2 +will5in +win4de +win4g +wir4 +3wise +with3 +wiz5 +w4k +wl4es +wl3in +w4no +1wo2 +wom1 +wo5ven +w5p +wra4 +wri4 +writa4 +w3sh +ws4l +ws4pe +w5s4t +4wt +wy4 +x1a +xac5e +x4ago +xam3 +x4ap +xas5 +x3c2 +x1e +xe4cuto +x2ed +xer4i +xe5ro +x1h +xhi2 +xhil5 +xhu4 +x3i +xi5a +xi5c +xi5di +x4ime +xi5miz +x3o +x4ob +x3p +xpan4d +xpecto5 +xpe3d +x1t2 +x3ti +x1u +xu3a +xx4 +y5ac +3yar4 +y5at +y1b +y1c +y2ce +yc5er +y3ch +ych4e +ycom4 +ycot4 +y1d +y5ee +y1er +y4erf +yes4 +ye4t +y5gi +4y3h +y1i +y3la +ylla5bl +y3lo +y5lu +ymbol5 +yme4 +ympa3 +yn3chr +yn5d +yn5g +yn5ic +5ynx +y1o4 +yo5d +y4o5g +yom4 +yo5net +y4ons +y4os +y4ped +yper5 +yp3i +y3po +y4poc +yp2ta +y5pu +yra5m +yr5ia +y3ro +yr4r +ys4c +y3s2e +ys3ica +ys3io +3ysis +y4so +yss4 +ys1t +ys3ta +ysur4 +y3thin +yt3ic +y1w +za1 +z5a2b +zar2 +4zb +2ze +ze4n +ze4p +z1er +ze3ro +zet4 +2z1i +z4il +z4is +5zl +4zm +1zo +zo4m +zo5ol +zte4 +4z1z2 +z4zy +} +\hyphenation{ % Do NOT make any alterations to this list! --- DEK +as-so-ciate +as-so-ciates +dec-li-na-tion +oblig-a-tory +phil-an-thropic +present +presents +project +projects +reci-procity +re-cog-ni-zance +ref-or-ma-tion +ret-ri-bu-tion +ta-ble +}
\ No newline at end of file diff --git a/macros/inrstex/inrstex/inrs.scr b/macros/inrstex/inrstex/inrs.scr new file mode 100644 index 0000000000..c25ef7a79a --- /dev/null +++ b/macros/inrstex/inrstex/inrs.scr @@ -0,0 +1,13 @@ +#!/bin/sh +# +# INRSTeX +# +if [ $# = 1 ]; then + jobname=`/usr/bin/basename $1 .tex` + # rename auxiliary files -- see writunix.tex + /bin/mv $jobname.tag $jobname.tag~ 2>/dev/null + /bin/mv $jobname.toc $jobname.toc~ 2>/dev/null + /bin/mv $jobname.fig $jobname.fig~ 2>/dev/null + /bin/mv $jobname.tbl $jobname.tbl~ 2>/dev/null +fi +exec /usr/lib/tex/inrstex $* diff --git a/macros/inrstex/inrstex/inrsdef.tex b/macros/inrstex/inrstex/inrsdef.tex new file mode 100644 index 0000000000..db1e81346d --- /dev/null +++ b/macros/inrstex/inrstex/inrsdef.tex @@ -0,0 +1,256 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +% ======== Cautions ========= +% If some moduels of INRSTeX are not used, some of these defaults will +% NOT be defined. + +% This file has most of the default values in plain.tex and inrstex. +% The parameters that are not modified from plain are % -- out. + +% ======== Plain.tex parameters ... set in plain and initex ==== + +% All of TeX's numeric parameters are listed here, +% Most are untouched from plain.tex but some are indeed modified. +% The order is not the same as in plain.tex + +% These parameters are actually changed. + +\widowpenalty = 400 % needs to be more than 100 +\clubpenalty = 800 % needs to be more than 100 + +% None of the values below are actually changed. They are included for +% information ... and possibly future modifcations. + +% --- Penalties --- + +% \displaywidowpenalty=50 +% \brokenpenalty=100 +% \predisplaypenalty=10000 +% \postdisplaypenalty=0 +% \interlinepenalty=0 +% \interdisplaylinepenalty=100 +% \interfootnotelinepenalty=100 + +% \pretolerance=100 +% \tolerance=200 % INITEX sets this to 10000 +% \hbadness=1000 +% \vbadness=1000 +% \linepenalty=10 +% \hyphenpenalty=50 +% \exhyphenpenalty=50 +% \binoppenalty=700 +% \relpenalty=500 +% \floatingpenalty=0, set during \insert +% \outputpenalty=0, set before TeX enters \output +% \doublehyphendemerits=10000 +% \finalhyphendemerits=5000 +% \adjdemerits=10000 + +% ---- paragraph control ---- +% \looseness=0, cleared by TeX after each paragraph +% \uchyph=1 +% \parindent=20pt +% \hangindent=0pt, zeroed by TeX after each paragraph +% \baselineskip=0pt, changed by \normalbaselines +% \lineskip=0pt, changed by \normalbaselines +% \parskip=0pt plus 1pt +% \parfillskip=0pt plus 1fil +% \normalbaselineskip=12pt +% \normallineskip=1pt +% \normallineskiplimit=0pt + +% ----- Sizes/overfull boxes ---- +% \hfuzz=0.1pt % ... \finalversion mod +% \vfuzz=0.1pt % ... \finalversion mod +% \overfullrule=5pt % ... \finalversion mod +% \hsize=6.5in % ... pagsty.tex and inrsdef.tex +% \vsize=8.9in % ... pagsty.tex and inrsdef.tex +% \maxdepth=4pt +% \splitmaxdepth=\maxdimen +% \boxmaxdepth=\maxdimen +% \lineskiplimit=0pt, changed by \normalbaselines +% \leftskip=0pt +% \rightskip=0pt +% \topskip=10pt +% \splittopskip=10pt + + +% ------- Internal Math parms ----- +% \delimitershortfall=5pt +% \nulldelimiterspace=1.2pt +% \scriptspace=0.5pt +% \mathsurround=0pt +% \thinmuskip=3mu +% \medmuskip=4mu plus 2mu minus 4mu +% \thickmuskip=5mu plus 5mu +% \jot=3pt + +% ---- Display Math Spacing ---- +% \predisplaysize=0pt, set before TeX enters $$ +% \displaywidth=0pt, set before TeX enters $$ +% \displayindent=0pt, set before TeX enters $$ +% \abovedisplayskip=12pt plus 3pt minus 9pt +% \abovedisplayshortskip=0pt plus 3pt +% \belowdisplayskip=12pt plus 3pt minus 9pt +% \belowdisplayshortskip=7pt plus 3pt minus 4pt + + +% \hoffset=0pt % not used in INRSTeX +% \voffset=0pt % not used in INRSTeX + +% \tabskip=0pt +% \spaceskip=0pt +% \xspaceskip=0pt + +% ------ Vertical Spacing ----- +% \smallskipamount=3pt plus 1pt minus 1pt +% \medskipamount=6pt plus 2pt minus 2pt +% \bigskipamount=12pt plus 4pt minus 4pt + +% ------ Debugging/Misc ----- +% \pausing=0 +% \tracingonline=0 +% \tracingmacros=0 +% \tracingstats=0 +% \tracingparagraphs=0 +% \tracingpages=0 +% \tracingoutput=0 +% \tracinglostchars=1 +% \tracingcommands=0 +% \tracingrestores=0 +% \globaldefs=0 +% \maxdeadcycles=25 % INITEX does this +% \hangafter=1 % INITEX does this, also TeX after each paragraph +% \fam=0 +% \mag=1000 % INITEX does this +% \escapechar=`\\ % INITEX does this +% \defaulthyphenchar=`\- +% \defaultskewchar=-1 +% \endlinechar=`\^^M % INITEX does this +% \newlinechar=-1 +% \delimiterfactor=901 +% \time=now % TeX does this at beginning of job +% \day=now % TeX does this at beginning of job +% \month=now % TeX does this at beginning of job +% \year=now % TeX does this at beginning of job +% \showboxbreadth=5 +% \showboxdepth=3 + + +% ========= Defaults specific to INRSTeX ========== + +% ====== Baselineskip spacings ========= + +\def\normalbaselineskipsize{2.8ex \normalbaselineskipglue} +\def\normalbaselineskipglue{plus .07ex minus .07ex} +\def\normallineskipform{\lineskip 1pt \lineskiplimit 0pt} + + +% ====== Turns off slicing rules for Versatec ======= +\let\ptrule=\relax +\let\prule=\relax + +% ====== Paper Sizes and Margins ======== +\hpapersize= 8.5in +\vpapersize= 11in +\topmarginsize = 1in +\leftmarginsize= 1.25in + + +% ======== Chapter/Section default forms ===== +\nochaptertrue % defaults to not chapters +\chnum=0 \def\chnumform{\the\chnum} +\shnum=0 \def\shnumform{\the\shnum} +\sshnum=0 \def\sshnumform{\the\sshnum} +\ssshnum=0 \def\ssshnumform{\the\ssshnum} + +% the periods between the numbers and the orders are defined in +% \numberbychapter and \numberbysection + +% ======== Single/Multicolumn ======== +\numcolumns =1 +\firstcolumnoffset= 0pt +\intercolumnsep = {\hskip 2em} %intercolumn spacing default + +% ========= Set Default Spacings ========== +% The spacings in INRSTeX are all relative to a font. This means that a +% change in font family requires a change in these spacings. + +\newtoks\everysetspacings % this is a way to modify a few font dependent spacings + +\def\setspacings{% ==== section head spacing defaults ===== + \prsheadskip= 6ex plus 2ex minus 2ex + \posheadskip= 2ex + \prssheadskip= 5ex plus 1.8ex minus 1.8ex + \possheadskip= 2ex + \prsssheadskip= 3ex plus 1ex minus 1ex + \posssheadskip= 2ex + \prdsssheadskip= 3ex plus 1ex minus 1ex + \podsssheadskip= 2ex + \relax % interitem spacing in table of contents, figure list ... are + \relax % directly in the macros ... + \righttocindent = 5em % righthand indent for number in tocbox + \relax % =========== list spacing parameters ===== + \prlistskip= 2ex plus 3pt minus 2pt + \prsublistskip = 1ex plus 2pt minus 1pt + \prsubsublistskip = .5ex plus 1pt minus 1pt + \polistskip= 2ex plus 1pt minus 1pt + \posublistskip= 1ex plus 1pt minus 1pt + \posubsublistskip= .5ex plus 1pt minus 1pt + \listitemskip = 2ex plus 1pt minus 1pt + \sublistitemskip =1ex plus .75pt minus .75pt + \subsublistitemskip = .5ex plus .5pt minus .5pt + \listindent = 3em + \sublistindent = 6em + \subsublistindent = 9em + \listitemmarksize = 1.5em + \relax %======= Caption box spacing ======= + \captionskip = 2ex % spacing between a figure/table and caption + \the\everysetspacings + } +% note \setspacings is called when the style default sets a document font + + + +% ========== Toc Out Forms =========== +% These are the default forms for writing to a toc file. + +\def\shtocout{\string\shtoc} +\def\sshtocout{\string\sshtoc} +\def\ssshtocout{\string\ssshtoc} +\def\dssshtocout{\string\dssshtoc} +\def\chtocout{\string\chtoc} +\def\prtocout{\string\prtoc} +\def\figtocout{\string\figtoc} +\def\tbltocout{\string\tbltoc} + +% ========== Auto referencing default ======= +\autoreferencetrue % autonumbering is not default true ... no \refs .. no + % effect + +% ============ Captionbox Defaults ========= +\topcaptionfalse +\def\captiontextfraction{0.8} +\captionbodyon + +% ============ Title Spacing/Width ========== +\def\titlefraction{0.9} +\def\titlespacing{1.5} + +% ====== Plain \magnification change ====== +\let\magnification=\mag + +% ============ Tagging/Reference ======= +\pagetagsoff % default is the pagetags off -- more efficient. + +% =========== Allows Figures to be Silent ======== +\silentfigurefalse % defaults to non silent figures + +%======== style defaults +\paperstyle +\englishversion +\draftversion + + diff --git a/macros/inrstex/inrstex/inrsfncm.tex b/macros/inrstex/inrstex/inrsfncm.tex new file mode 100644 index 0000000000..ec91701a96 --- /dev/null +++ b/macros/inrstex/inrstex/inrsfncm.tex @@ -0,0 +1,350 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. +% This file now uses cm fonts where available. + + +% ======= INRS Fonts ======== +% This file adds the fonts used in INRSTeX. It also adds the spacing +% related to these fonts. The important section is the definitions of +% the font families. The intent is to produce a font family with all +% related fonts. In the same manner as the TeXbook, \tenpoint indicates +% the 10pt family and \rm would be a Roman font in that family. The +% additions here are the special fonts for section heads, footnotes, ... +% The section head fonts, for example \sheadfont is changed only if +% the font family is called within the command \documentstyle. This +% means that it is possible to change the font internal to a +% document without disturbing the appearance of the section heads or +% page numbering. + +% In addition to this file, there is an spfont.tex. This file allows for +% the scaling of a font family. The basic family is \tenpoint. It can be +% scaled to the extent that there exist scaled printable forms of the font. + +% ======= ADDITIONAL FONTS IN INRSTEX ========== + +% =====special fonts ======== +\font\tendu = cmdunh10 +%\font\inchhigh=cminch +%\font\fortysc=cmsc40 +%\font\fortypen=pen40 +%\font\fortypeni=peni40 +%\font\thirtysc=cmsc30 +%\font\twentysc=cmsc20 +%\font\twentyfourozub=ozub24 %OCR types +%\font\twentyfourozuh=ozuh24 % ocr hollow +%\font\twentynaro = cmnaro + +% ===== twenty one point ======= +\font\twentyonermsca = cmr10 scaled 2074 + + + +% ===== eighteen point ======= +\font\eighteenrm= cmr17 % no eighteen point font in cm +\font\eighteenrmsca = cmr10 scaled 1728 +%\font\eighteenark = ark18 % hands and pencils +%\font\eighteenbbb = bbb18 % ?????? +%\font\eighteenpen = pen18 % pen script like font +%\font\eighteenpeni = peni18 % pen script like font + +% ===== fourteenpoint fonts ===== +\font\fourteenrmsca = cmr10 scaled 1440 +\font\fourteenbfxsca = cmbx10 scaled 1440 + + +% ===== twelvepoint fonts +\font\twelverm= cmr12 +\font\twelvermsca = cmr10 scaled 1200 +\font\twelvebfxsca = cmbx10 scaled 1200 +\let\twelvebf=\twelvebfxsca +\font\twelvess = cmss12 +\font\twelvessb= cmssbx10 scaled 1200 +\font\twelveit = cmti12 +\font\twelvei = cmmi12 +\font\twelvesl = cmsl12 +\font\twelvesy = cmsy10 scaled 1200 % no 12point symbol +\font\twelvett = cmtt12 +\font\twelvesc = cmcsc10 scaled 1200 % no 12point form +\let\sanss = \twelvess +\let\sanssb= \tenss +\let\twelveex=\tenex + +% ======= tenpoint fonts not in plain.tex ======= +\font\tenss = cmss10 +\font\tenssb = cmssbx10 % +\font\tencsc = cmcsc10 % caps and small caps +\font\tenu=cmu10 % unslanted text italic +\font\tenbfx = cmbx10 +\font\tenbfy = cmbsy10 %bold math symbols? + + +% ======== smaller fonts not in plain.tex ======== +\font\ninerm=cmr9 +\font\eightrm=cmr8 +\font\sixrm=cmr6 + +\font\ninei=cmmi9 +\font\eighti=cmmi8 +\font\sixi=cmmi6 +\skewchar\ninei='177 \skewchar\eighti='177 \skewchar\sixi='177 + +\font\ninesy=cmsy9 +\font\eightsy=cmsy8 +\font\sixsy=cmsy6 +\skewchar\ninesy='60 \skewchar\eightsy='60 \skewchar\sixsy='60 + +\font\eightss=cmssq8 + +\font\eightssi=cmssqi8 + +\font\ninebfx=cmbx9 +\font\eightbfx=cmbx8 +\let\sevenbfx = \sevenbf % defined in plain as cmbx7 +\font\sixbfx=cmbx6 +\let\fivebfx = \fivebf % defined in plain as cmbx5 + +\font\ninett=cmtt9 +\font\eighttt=cmtt8 + +\hyphenchar\tentt=-1 % inhibit hyphenation in typewriter type +\hyphenchar\twelvett=-1 +\hyphenchar\ninett=-1 +\hyphenchar\eighttt=-1 + +\font\ninesl=cmsl9 +\font\eightsl=cmsl8 + +\font\nineit=cmti9 +\font\eightit=cmti8 +\font\sevenit= cmti7 + +% =========== margin note/version font =========== +\let\notefont = \eighttt + +% ============ THE FONT FAMILIES =========== + +% ============= <....>point families ============= +% \pointsize and \documentpointsize are the point sizes of the +% present and document point sizes. +% resets the default spacing + +\newskip\ttglue +\def\twelvepoint{\def\pointsize{twelve}% + \def\rm{\fam0\twelverm}% + \textfont0=\twelverm \scriptfont0=\tenrm \scriptscriptfont0=\sevenrm + \textfont1=\twelvei \scriptfont1=\teni \scriptscriptfont1=\seveni + \textfont2=\twelvesy \scriptfont2=\tensy \scriptscriptfont2=\sevensy + \textfont3=\twelveex \scriptfont3=\twelveex \scriptscriptfont3=\twelveex + \def\it{\fam\itfam\twelveit}% + \textfont\itfam=\twelveit + \def\sl{\fam\slfam\twelvesl}% + \textfont\slfam=\twelvesl + \def\bf{\fam\bffam\twelvebfxsca}% + \textfont\bffam=\twelvebfxsca \scriptfont\bffam=\tenbf + \scriptscriptfont\bffam=\sevenbfx + \def\tt{\fam\ttfam\twelvett}% + \textfont\ttfam=\twelvett \scriptfont\ttfam=\tentt + \tt \ttglue=.5em plus .25em minus .15em + \normalbaselines\rm % now so resets are ok. + \setstrut + \ifd@ocsty \def\documentpointsize{twelve}% + \let\footerfont =\twelveit + \let\headerfont=\twelveit + \let\footnotefont = \tenpoint + \let\smallerfont = \tenpoint + \let\cheadfont = \twentyonermsca + \let\sheadfont=\fourteenbfxsca + \let\ssheadfont=\twelvebfxsca + \let\sssheadfont=\twelvebfxsca + \let\dsssheadfont=\twelvebfxsca + \let\captionnumfont=\twelvebfxsca + \let\captiontitlefont=\relax + \let\captionbodyfont=\relax + \let\eqnumfont=\rm + \setspacings\fi + \let\bigfont = \fourteenrmsca + \let\biggfont = \eighteenrmsca + \let\bigggfont = \twentyonermsca + \let\titlefont = \bigggfont + \let\sc=\tenrm + } + + +% ======= elevenpoint fonts not in plain.tex ======= + +\font\elevenssb = cmssbx10 scaled 1095 % no ss bold +\font\elevencsc = cmcsc10 scaled 1095 % caps and small caps +\font\elevenbfx = cmbx10 scaled 1095 % bold wide +\font\elevenbfy = cmbsy10 scaled 1095 %bold math symbols? + +% ===== elevenpoint fonts +\font\elevenrm= cmr10 scaled 1095 +\font\elevenrmsca = cmr10 scaled 1095 +\font\elevenbf = cmb10 scaled 1095 +\font\elevenbfxsca = cmbx10 scaled 1095 +\font\elevenss = cmss10 scaled 1095 +\font\elevenit = cmti10 scaled 1095 +\font\eleveni = cmmi10 scaled 1095 +\font\elevensl = cmsl10 scaled 1095 +\font\elevensy = cmsy10 scaled 1095 +\font\eleventt = cmtt10 scaled 1095 +\font\elevensc = cmcsc10 scaled 1095 +\let\sanss = \elevenss + +\let\elevenex=\tenex + + +\def\elevenpoint{\def\pointsize{eleven}% + \def\rm{\fam0\elevenrm}% + \textfont0=\elevenrm \scriptfont0=\eightrm \scriptscriptfont0=\sixrm + \textfont1=\eleveni \scriptfont1=\eighti \scriptscriptfont1=\sixi + \textfont2=\elevensy \scriptfont2=\eightsy \scriptscriptfont2=\sixsy + \textfont3=\elevenex \scriptfont3=\elevenex \scriptscriptfont3=\elevenex + \def\it{\fam\itfam\elevenit}% + \textfont\itfam=\elevenit + \def\sl{\fam\slfam\elevensl}% + \textfont\slfam=\elevensl + \def\bf{\fam\bffam\elevenbf}% + \textfont\bffam=\elevenbf \scriptfont\bffam=\eightbfx + \scriptscriptfont\bffam=\sixbfx + \def\tt{\fam\ttfam\eleventt}% + \textfont\ttfam=\eleventt \scriptfont\ttfam=\tentt + \tt \ttglue=.5em plus .25em minus .15em + \normalbaselines\rm % now so resets are ok. + \setstrut + \ifd@ocsty \def\documentpointsize{eleven}% + \let\footerfont=\elevenit + \let\headerfont=\elevenit + \let\footnotefont = \ninepoint + \let\smallerfont = \ninepoint + \let\cheadfont = \eighteenrmsca + \let\sheadfont=\fourteenbfxsca + \let\ssheadfont=\elevenbfxsca + \let\sssheadfont=\elevenbfxsca + \let\dsssheadfont=\elevenbfxsca + \let\captionnumfont=\elevenbfxsca + \let\captiontitlefont=\relax + \let\captionbodyfont=\relax + \let\eqnumfont=\rm + \setspacings\fi + \let\bigfont = \twelvermsca + \let\biggfont = \fourteenrmsca + \let\bigggfont = \eighteenrmsca + \let\titlefont = \bigggfont + \let\sc=\ninerm + } + + +\def\tenpoint{\def\pointsize{ten}\def\rm{\fam0\tenrm}% + \textfont0=\tenrm \scriptfont0=\sevenrm \scriptscriptfont0=\fiverm + \textfont1=\teni \scriptfont1=\seveni \scriptscriptfont1=\fivei + \textfont2=\tensy \scriptfont2=\sevensy \scriptscriptfont2=\fivesy + \textfont3=\tenex \scriptfont3=\tenex \scriptscriptfont3=\tenex + \def\it{\fam\itfam\tenit}% + \textfont\itfam=\tenit + \def\sl{\fam\slfam\tensl}% + \textfont\slfam=\tensl + \def\bf{\fam\bffam\tenbfx}% + \textfont\bffam=\tenbfx \scriptfont\bffam=\sevenbfx + \scriptscriptfont\bffam=\fivebfx + \def\tt{\fam\ttfam\tentt}% + \textfont\ttfam=\tentt + \tt \ttglue=.5em plus .25em minus .15em + \normalbaselines\rm + \setstrut + \ifd@ocsty \def\documentpointsize{ten}\let\footerfont =\tenit + \let\headerfont=\tenit + \let\footnotefont = \eightpoint + \let\smallerfont = \eightpoint + \let\cheadfont = \eighteenrm + \let\sheadfont=\twelvebfxsca + \let\ssheadfont=\tenbfx + \let\sssheadfont=\tenbfx + \let\dsssheadfont=\tenbfx + \let\captionnumfont=\tenbfx + \let\captiontitlefont=\relax + \let\captionbodyfont=\relax + \let\eqnumfont=\rm + \setspacings\fi + \let\bigfont = \twelvermsca + \let\biggfont = \fourteenrmsca + \let\bigggfont = \eighteenrmsca + \let\titlefont = \bigggfont + \let\sc=\eightrm } + +\def\ninepoint{\def\pointsize{nine}\def\rm{\fam0\ninerm}% + \textfont0=\ninerm \scriptfont0=\sixrm \scriptscriptfont0=\fiverm + \textfont1=\ninei \scriptfont1=\sixi \scriptscriptfont1=\fivei + \textfont2=\ninesy \scriptfont2=\sixsy \scriptscriptfont2=\fivesy + \textfont3=\tenex \scriptfont3=\tenex \scriptscriptfont3=\tenex + \def\it{\fam\itfam\nineit}% + \textfont\itfam=\nineit + \def\sl{\fam\slfam\ninesl}% + \textfont\slfam=\ninesl + \def\bf{\fam\bffam\ninebfx}% + \textfont\bffam=\ninebfx \scriptfont\bffam=\sixbfx + \scriptscriptfont\bffam=\fivebfx + \def\tt{\fam\ttfam\ninett}% + \textfont\ttfam=\ninett + \tt \ttglue=.5em plus .25em minus .15em + \normalbaselines\rm + \setstrut + \ifd@ocsty \def\documentpointsize{nine}\let\footerfont =\nineit + \let\headerfont=\nineit + \let\footnotefont = \eightpoint + \let\smallerfont = \eightpoint + \let\cheadfont = \eighteenrm + \let\sheadfont=\tenbfx + \let\ssheadfont=\tenbfx + \let\sssheadfont=\tenbfx + \let\dsssheadfont=\tenbfx + \let\captionnumfont=\tenbfx + \let\captiontitlefont=\relax + \let\captionbodyfont=\relax + \let\eqnumfont=\rm + \setspacings\fi + \let\bigfont = \twelvermsca + \let\biggfont = \fourteenrmsca + \let\bigggfont = \eighteenrm + \let\titlefont = \bigggfont + \let\sc=\sevenrm } + + +\def\eightpoint{\def\pointsize{eight}\def\rm{\fam0\eightrm}% + \textfont0=\eightrm \scriptfont0=\fiverm \scriptscriptfont0=\fiverm + \textfont1=\eighti \scriptfont1=\fivei \scriptscriptfont1=\fivei + \textfont2=\eightsy \scriptfont2=\fivesy \scriptscriptfont2=\fivesy + \textfont3=\tenex \scriptfont3=\tenex \scriptscriptfont3=\tenex + \def\it{\fam\itfam\eightit}% + \textfont\itfam=\eightit + \def\sl{\fam\slfam\eightsl}% + \textfont\slfam=\eightsl + \def\bf{\fam\bffam\eightbfx}% + \textfont\bffam=\eightbfx \scriptfont\bffam=\fivebfx + \scriptscriptfont\bffam=\fivebfx + \def\tt{\fam\ttfam\eighttt}% + \textfont\ttfam=\eighttt + \tt \ttglue=.5em plus .25em minus .15em + \normalbaselines\rm + \setstrut + \ifd@ocsty \def\documentpointsize{eight}\let\footerfont =\eightit + \let\headerfont=\eightit + \let\footnotefont = \eightpoint + \let\smallerfont = \eightpoint + \let\cheadfont = \fourteenrmsca + \let\sheadfont=\eightbfx + \let\ssheadfont=\eightbfx + \let\sssheadfont=\eightbfx + \let\dsssheadfont=\eightbfx + \let\captionnumfont=\eightbfx + \let\captiontitlefont=\relax + \let\captionbodyfont=\relax + \let\eqnumfont=\rm + \setspacings\fi + \let\bigfont = \tenrm + \let\biggfont = \twelverm + \let\bigggfont = \fourteenrmsca + \let\titlefont = \bigggfont + \let\sc=\sevenrm } + diff --git a/macros/inrstex/inrstex/inrstex.tex b/macros/inrstex/inrstex/inrstex.tex new file mode 100644 index 0000000000..d3e0c1c8cc --- /dev/null +++ b/macros/inrstex/inrstex/inrstex.tex @@ -0,0 +1,560 @@ +% POSTSCRIPT VERSION --- AFFECTS GRAPHICS AND OUTPUT ROUTINE +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. +% Version Aug. 1991 +% ---- TeX 3 version ---- + +% Those items that are modified for different styles are indicated in +% each section. + + +\input plain_nh + +% for TeX 3.+, hyphenation tables can be inserted in a format file only +% once. This means that both plain.tex rather than an old plain.fmt file +% must be used to create a new format file. plain_nh.tex is plain.tex with +% No Hyphenation (NH). + +% This is a cm font version ... now. + +% COMMENT: INRSTeX has been designed to allow for considerable variation +% in the style of a document. This ranges from default spacing, fonts, +% formats of section heads, and headers and footers. The changes for +% a style involves the changes of the defaults in "inrsdef.tex", document +% "am" fonts in "inrsfont.tex" or "cm" fonts in inrsfncm.tex. +% The definitions of header and footer text is +% generally found in the various "xxsty.tex" files. These are incomplete +% in the sense that only those changes to the defaults in "inrsdef.tex" +% are actually done. Two examples are given, \paperstyle in "papersty.tex" +% and \bookstyle in "booksty.tex". +% + +% Those items that are modified for different styles are indicated in +% each section. + +\catcode`@= 11 % need to use some plain macros + +%======= Additional active Characters =========== +% ALL ACTIVE CHARACTERS MUST BE DECLARED AND DEFINED AT THE VERY +% BEGINNING OR THERE IS A DANGER OF INCORRECT TOKENIZATION +% ======== THESE ARE USED IN THE TABLE MACROS ========= +\message{<< Additional Active Characters >>} +\catcode`\|= \active +\def|{\ifmmode \vert\else \char`\|\fi} % effectively undoes activeness +\def\q@m{\string"} +\catcode`\"=\active \def"{\writeterm{<<< use `` or '' instead of \q@m >>>}{ + }{}\char`\"} +%=== these are redefined inside the table macros ===== + + +% ========= INRSTeX Utilities ========= +% These are generally needed for good health. They include +% Houskeeping Macros +% Single/Multicolumn Page Eject and Insert Control +% Miscellaneous Paragraph Shape Macros +% Year/Month/Day +% New Boxit +% Number Format Conversion Forms + + +%************************** +\input inrsutil.tex +%************************** + + +% ======== Extended Character Set(s) for Special Terminals ======= +% The proper catcodes for the extended characters need to go in before the +% patterns are loaded. + +% ************************* + \ifundefined{charsubdef} + \message{ << Loading Extended Character Set -- TeX 3.+ >>} + \input extdef3 + \else + \message{ << Loading Extended Character Set -- MLTeX 3.+ >>} + \input extdef + \fi + \message { << Setting Parameters for TeX 3.+ >> } + \emergencystretch =10pt + \lefthyphenmin=2 + \righthyphenmin=3 + \newcount\dischyph % to effectively disable dischyph in mltex +% ************************* + + + + +% ======= Input Hyphenation patterns ======= +% hyphenation for all languages are in the same file or accessed from it +% TeX 3 will not allow \patterns to be reopened once it has been closed. + + \input masthyph + + +% ====== Multiple Language Support ======== +% This may be done without bilingual TeX but is better done with it. +% These macros define an \englishversion and a \versionfrancaise. +% INRSTeX messages come in either English or French depending +% upon the value of \language. If \language is not yet defined, a +% \newcount is used to define it. +% THIS MUST NOT BE CALLED BEFORE THE HYPHENATION PATTERNS ARE LOADED. + +%************************** +\input multlang.tex +%************************** + + +% ====== Basic Line Spacing ========= +% The basic line spacing in a font is assumed to be scaled according to the +% ex height of the font. This is perhaps not the aesthetically best but +% does allow consistent line spacing commands. The four basic commands are +% \normalbaselines (redefined from plain), +% \normalbaselineskipsize, \spacing, and \setstrut. + +% ------- Defaults ... inrsdef.tex ----- +% \def\normalbaselineskipsize{2.8ex \normalbaselineskipglue} +% \def\normalbaselineskipglue{plus .07ex minus .07ex} +% \def\normallineskipform{\lineskip 1pt \lineskiplimit 0pt} + + +%************************** +\input linespac.tex +%************************** + + + +% ===== additional FONTS ========== +% The new fonts and font families are read in from the file "inrsfont.tex" +% These are read in by initex. +% This font list should define the font families. At the very least it must +% define fonts for the logical font names used in INRSTEX. These are + %\notefont {usually \eighttt} ... foor version and margin notes. + %\footerfont + %\headerfont + %\footnotefont {should be a font family} + %\smallerfont {should be a font family} + %\cheadfont + %\sheadfont + %\ssheadfont + %\sssheadfont + %\dsssheadfont + %\captionnumfont + %\captiontextfont + %\eqnumfont + %\bigfont + %\biggfont + %\bigggfont + %\titlefont + +% The various \..head.. fonts are used in the \shead etc +% The \footnotefont is used in footnotes and is a family +% \titlefont is used in \title +% The other fonts are for convenience. + +% INRSTeX has the notion of a Document font. This allows for local changes in +% the font without messing up the sizes of the sectionheads, headers, footers +% etc. A font change inside a \documentstyle will cause the document font +% to change. + +%************************** +%\input inrsfont.tex %am fonts +\input inrsfncm.tex % cm fonts +%************************** + + + +% ====== Marginnotes, Final and Draft Version ======= +% INRSTeX's output routine supports two main versions of a document, a +% "final version" and a "draft version". The "draft version" collects \refs +% and \cites in a margin box at the right of a page. In addition it puts on +% black marks for overfull lines and "Draft Version: <date> " at the +% bottom of the page. + +% If plain.tex output is to be used, "margform.tex" by "margform.pla" +% This will destroy all indications of \finalversion \draftversion + +%************************** +\input margform.tex +%************************** + + + + +% =========== Document Styles, Page Numbering and Page Sizes ====== +% These are the macros for setting page sizes and the various flags +% the header/footer styles. This is only used with "inrsout.tex" + +% ---- Defaults ... set in xxxsty.tex or inrsdef.tex ------- +% Examples from "booksty.tex" +% \vheadersize +% \vfootersize +% \headertext +% \specialheadertext +% \footertext +% \specialfootertext +% \hpapersize +% \vpapersize +% \vouterpagesize +% \houterpagesize +% \topmargin +% \leftmargin + + + +%************************** +\input pagsty.tex +%************************** + + + + +%======== Multicolumn format =========== +% These macros invoke multicolumnformat including balancing columns. + +% ---- Defaults ... set in inrsdef.tex +% \numcolumns +% \firstcolumnoffset +% \intercolumnsep + + +%************************** +\input multicol.tex +%************************** + + + +% ======== INRSTeX Single/Multi Column Output Routine ======== +% This is the entire output routine for INRSTeX. It does both single and +% Multicolumn since there is a rather large repetition to do otherwise. + +%************************** +\input out_ps.tex +%************************** + + + +%========= Autonumbering, Tagging and Autoreferencing ========= + +% These macros give the facility to symbolically refer to sections, equations, +% tables, and references and to automatically number them. +% Autonumber, automatically numbers sections, equations, .... +% Autoreferencing, causes \ref{tag} to drop the tag-value in the text. +% Autonumber and autoreference both true will cause tags to be generated. +% Although it is possible to have only autonumbering, referring to +% sections or other parts is quite difficult without referencing + +% ---- Defaults ... set in inrsdef.tex ----- +% \autoreferencetrue +% \autonumberfalse ... default when created +% \def\Prerefform{} \def\Postrefform ... in auto + +%************************** +\input auto.tex +%************************** + + +% ============ Tag Generation ========== +% These are the macros that generate the actual tags. They are used in +% automatic equation numbering, section heads and any \auto...num{tag} form. + +% ------ Defaults .... set in inrsdef.tex or xxxsty.tex --- +% \undeftagmessage ... set in "english.tex" or "francais.tex" + + +%************************** +\input tag.tex +%************************** + + +% ========== Equation Tags =========== +% Since equation numbering plays a big part in scientific documentation +% a special set of tag generation forms were produced for this case. + +% ------ Defaults .... set in inrsfont.tex ----- +% \eqnumfont + + +%************************** +\input eqtag.tex +%************************** + + + + +% ===== Citation generation ========== +% \cite is used with a journal/paper reference. +% The forms allow both random input order of cite forms or +% fixed order. At the moment it supports only IEEE form, ie +% a list in the order of therir occurrence in a paper. +% A data base system using a mailbox would be much better. + + + +%************************** +\input cite.tex +%************************** + + + +% ========== Section, Chapter Headings =========== +% These macros have several parts, +% -- Counter allocation and numbering styles for autonumber +% -- The format of the heading. +% -- The writing of a list file for automatic table of contents. +% -- The referencing in the text ... ie reference number styles. + +% -------- Defaults ... inrsdef.tex, inrsfont.tex, xxxsty.tex ---- +% +% \chnum=0 \def\chnumform{\the\chnum} ... inrsdef.tex +% \shnum=0 \def\shnumform{\the\shnum} ... inrsdef.tex +% \sshnum=0 \def\sshnumform{\the\sshnum} ... inrsdef.tex +% \ssshnum=0 \def\ssshnumform{\the\ssshnum} ... inrsdef.tex +% \def\chtagrefformat{\chnumform} ... secthead.tex +% \def\chtagreplaceformat{\Chapter \chtagrefformat} .. secthead.tex +% \prsheadskip= 6ex plus 2ex minus 2ex ... inrsdef.tex +% \posheadskip= 2ex ... inrsdef.tex +% \prssheadskip= 5ex plus 1.8ex minus 1.8ex ... inrsdef.tex +% \possheadskip= 2ex ... inrsdef.tex +% \prsssheadskip= 3ex plus 1ex minus 1ex ... inrsdef.tex +% \posssheadskip= 2ex ... inrsdef.tex +% \prdsssheadskip= 3ex plus 1ex minus 1ex ... inrsdef.tex +% \podsssheadskip= 2ex ... inrsdef.tex +% +% \gensheadformat#1#2#3#4 ... secthead.tex ... for major format +% surgery. +% +% \nochaptertrue ... inrsdef.tex +% \def\Chapter ... english.tex or francais.tex +% \cheadformat#1#2 ... secthead.tex +% \def\chapterstartform{} ... secthead.tex and xxxsty.tex + + +%************************** +\input secthead.tex +%************************** + + +%============ Preface/Prelude macros =========== +% this is the first of the environment macros. The problem, among others is +% that the headers, footers, pagenumbering, etc are different in preface of +% the document than elsewhere. + +% ---- Defaults ... prelhead.tex or xxxsty.tex +% \preludeheadformat#1 ... prelhead.tex + +%************************** +\input prelhead.tex +%************************** + + + +% =========== Appendices ============== +% Appendices are defined by using \shead invocations. +% Appendices are assumed to be associated with chapters, if +% they exist hence the first appendix in Chapter 2 is Appendix A. +% These macros modify the numberforms of \shead to produce Apendices. +% The "appendix head" is an \shead with a different numberform. + +% ------- Defaults ------ +% \def\Appendix ... english.tex or francais.tex + +%************************** +\input appendix.tex +%************************** + + + +% ========== List Files ========= +% General macros for making, open and closing "list' files. These are files +% where the form output includes a page reference. They are named with a +% three letter extension ... eg ".fig" ... to the \jobname form. + +%************************** +\input writfile.tex +%************************** + + + +% ======== Table of Contents, Figures, and Tables -- Examples ====== +% The "list" file is written using \writelistfile and the \shtoc ... +% are used to create the actual table of contents, figures, tables. +% Extensions to other forms should be obvious. + +% ----- Defaults ---- +% \righttocindent ... inrsdef.tex +% \tocfill ... tocform.tex ... dot form for toc list. +% tocfonts ... tocform.tex ... in actual \figtoc etc + +%************************** +\input tocform.tex +%************************** + + + + + +%======== List macros ========== +% there is only one kind of list in this system, namely on that is +% right justified in the particular box that the list appears +% extensions may be made to include a center + +% ----- Defaults ... inrsdef.tex ----- +% \prlistskip= 2ex plus 3pt minus 2pt +% \prsublistskip = 1ex plus 2pt minus 1pt +% \prsubsublistskip = .5ex plus 1pt minus 1pt +% \polistskip= 2ex plus 1pt minus 1pt +% \posublistskip= 1ex plus 1pt minus 1pt +% \posubsublistskip= .5ex plus 1pt minus 1pt + +% \listitemskip = 2ex plus 1pt minus 1pt +% \sublistitemskip =1ex plus .75pt minus .75pt +% \subsublistitemskip = .5ex plus .5pt minus .5pt + +% \listindent = 3em +% \sublistindent = 6em +% \subsublistindent = 9em +% \listitemmarksize = 1.5em + +%************************** +\input lists.tex +%************************** + + + +%=========== Footnotes ---- similar to that in the texbook ====== + +% ------ Defaults -------- +% \footnotefont ... family in inrsfont.tex +% \skip\footins ... footnote.tex +% \count\footins ... plain.tex +% \dimen\footins ... footnote.tex +% \footnoterule ... inrsout.tex + + +%************************** +\input footnote.tex +%************************** + + + +%========= ABSTRACT/TITLE ======= +% These generate a centered abstract in the \smallerfont of a family +% and define the \title macro + +% ------ Defaults ------ +% \absindent ... inrsdef.tex abstract indentation +% \ABSTRACT ... english.tex or francais.tex +% \titlemessage ... english.tex of francais.tex +% \titlefont ... inrsfont.tex +% \titlefraction ... inrsdef.tex +% \titlespacing ... inrsdef.tex + +%************************** +\input abstract.tex +%************************** + + +% ========== Captioned Table/Figure Forms and Inserts ========= +% Insert Forms + +% ----- Defaults ----- +% \captiontextfraction ... inrsdef.tex +% \captionskip ... inrsdef.tex +% \topcaptiontrue or \topcaptionfalse ... inrsdef.tex +% \figurelabel or \figlabel ... english.tex or francais.tex +% \tablelabel or \tbllabel ... english.tex or francais.tex +% \captionnumfont ... inrsfont.tex +% \captiontitlefont ... inrsfont.tex +% \captionbodyfont ... inrsfont.tex +% \captionbodyon <off> ... inrsdef.tex +% \silentfigurefalse + +%************************** +\input genins.tex +%************************** + + +% ============ Table Making Forms ============ + +%************************** +\input tables.tex +%************************** + + + +%========= Verbatim or NoFill Style ======== +% The verbatim form is not part of the INRSTeX format file. +% The following brings in the verbatim macros and redefines \beginttverbatim + +\def\beginttverbatim{\input verbatim\relax} + + +%========== Special styles =============== +%----- Special Document Styles/Forms ------- +% INRSTeX learns of the existence of special document styles or forms +% from specform.tex + +%************************** +\input specform.tex +%************************** + + + +%======== Multiple part documents -- subdocuments ======= +% documents may be broken down to the chapter or section level + +%************************** +\input subdoc.tex +%************************** + + + + + +% ============ TeXGraphics Support ============= +% TeXGraphics uses \specials, assumes POSTSCRIPT and assumes a driver +% equivalent to the INRS modified version of Beebe's dvialw. + +%************************** +\input graph_ps.tex +%************************** + + + + + + +% ======== Bugs/Modifications to Plain ===== + +%************************** +\input plainmod.tex +%************************** + + + +% ====== INRSTeX defaults .... in addition to Plain .... +%************************** +\input inrsdef.tex +%************************** + + +% =========== modifications for MSDOS usage ============ + +% for Unix systems replace the \input writdos by + + \message{Input Unix write.file form} + \input writunix + +% invoke inrstex with the shell script +% inrsunix.sh ... appropriately modified + + +%\message{Input DOS write/file form} + +%\input writdos + + +\catcode`@=12 % puts at back to a non letter + +\def\fmtname{INRSTeX-Bilingual-PostScript}\def\fmtversion{3.1} + diff --git a/macros/inrstex/inrstex/inrsunix.sh b/macros/inrstex/inrstex/inrsunix.sh new file mode 100644 index 0000000000..dd1f48d528 --- /dev/null +++ b/macros/inrstex/inrstex/inrsunix.sh @@ -0,0 +1,14 @@ +#!/bin/sh +# +# INRSTeX +# +if [ $# = 1 ]; then + jobname=`/usr/bin/basename $1 .tex` + # rename auxiliary files -- see writunix.tex + /bin/mv $jobname.tag $jobname.tag~ 2>/dev/null + /bin/mv $jobname.toc $jobname.toc~ 2>/dev/null + /bin/mv $jobname.fig $jobname.fig~ 2>/dev/null + /bin/mv $jobname.tbl $jobname.tbl~ 2>/dev/null +fi +exec /usr/users/u1/mike/inrstex/virtex_mlb '&/usr/users/u1/mike/inrstex/inrs3_mlb' $* +
\ No newline at end of file diff --git a/macros/inrstex/inrstex/inrsutil.tex b/macros/inrstex/inrstex/inrsutil.tex new file mode 100644 index 0000000000..d687ee7092 --- /dev/null +++ b/macros/inrstex/inrstex/inrsutil.tex @@ -0,0 +1,164 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +% ======== INRSTeX Utilities ====== + + +% ========= Houskeeping Utilities ========= + +% These are houskeeping utilities and should be kept. They will most likely +% not interfere with any other commands. + +\newif\ifsilent \silentfalse % defaults to not quiet ... used in \a@utonum + +\def\silent#1{\setbox0=\hbox{#1}} % causes #1 to be silently expanded + +% ----- #1 break penalty , #2 skip amount +\def\penaltybreak#1#2{\par\ifdim\lastskip<#2 + \removelastskip\penalty #1\vskip #2 \fi} + +% ------ advances only the dimension part of a glue statement +% must be of form \a@dvance #1 by #2 where #2 is a dimension + % coerces glue to be a dimen +\def\a@dvance #1#2{\dimen0 = #1\relax + \advance #1 by -\dimen0\relax + \advance #1 by #2\relax} + + +%------- appends a second token list onto a first one ---- +%#1 token list #2 token list #1 is resulting name +% used in creating autonumbers +\def\appendtoks#1#2{ \edef\next{\noexpand #1 = {\the#1 \the#2} } + \next} + +%---------- non outer allocations same as in plain --------- +\def\n@ewcount{\alloc@0\count\countdef\insc@unt} +\let\n@ewtoks=\relax % we do this to allow inrs.tex to be read in twice +\def\n@ewtoks{\alloc@5\toks\toksdef\@cclvi} +\def\n@ewwrite{\alloc@7\write\chardef\sixt@@n} +\def\n@ewswitch#1{\expandafter\let\csname if#1\endcsname\relax + \toks@{\iftrue}% + \expandafter\edef\csname#1true\endcsname + {\let\csname if#1\endcsname=\the\toks@}% + \toks@{\iffalse}% + \expandafter\edef\csname#1false\endcsname + {\let\csname if#1\endcsname=\the\toks@}% + \csname#1false\endcsname} % the switch starts out false + + +% --- undefined command check --- 7.7 from the texbook +\def\ifundefined#1{\expandafter\ifx\csname #1\endcsname\relax} % needs \fi to end + +% ------ Input a file. If it does not exist, treat it as a null file. +% #1 file name. +\def\inputwithcheck#1{\edef\i@wc{#1}\openin1=\i@wc\relax + \ifeof1 + \closein1 + \else + \closein1 + \input \i@wc \relax + \fi} + +% \writeterm +% ----------- Write to the terminal -------- +% Format is similar to \writelistfile. Its main claim is that +% it removes ugly \cr and ~ that might lead to problems. +% #1#2#3 the three arguments are concatenated in the output text. +\def\writeterm#1#2#3{{\def\cr{ }\def~{ }\immediate\write32{#1#2#3}}} + + +% ======= Single/Multicolumn Page Eject and Insert Control ====== +% "\end..." is only used in conjunction with a matched "\begin... +% However "\end" has not been redefined. + +\def\ejectcolumn{\par\vfill\eject} +\let\ejectpage=\ejectcolumn +\def\superejectpage{\par\vfill\supereject} +\def\done{\superejectpage\end} % to be modified +\def\ejectinsert{\ifnum\insertpenalties>0 \null\ejectcolumn\ejectinsert\fi} +\let\ejectinserts=\ejectinsert % historical error + + +% ========= Miscellaneous Paragraph Shape Macros ========= + +% ---- a symmetric narrowing of the page ---- +\newtoks\everynarrowtext + +\def\beginnarrowtext #1 {\par + \begingroup + \advance\leftskip by #1\relax + \advance\rightskip by #1\relax + \the\everynarrowtext} +\def\endnarrowtext {\par \endgroup} + + +% ----- centers lines in paragraph --------- +% This is used in Titles ... + +\def\paragraphcenterline{\advance\rightskip by 0pt plus 1fill + \advance\leftskip by + 0pt plus 1fill \def\cr{\par}\parindent = 0pt} + + +% --- a very ragged right ... will suppress all hyphenation for title/sections +\def\veryraggedright{\advance\rightskip by 0pt plus 1fil\relax} + +%----- linebreak in horizontal mode +\def\linebreak{\hfil\break} + +% ========= Half quad ========== +\def\hquad{\hskip .5em} + + +% ========= Year/Month/Day ========= +% This is used in the Output Routine +% --- form for version +\def\date{\the\year/\the\month/\the\day} +\def\version{Version: \date} + +% =========== New Boxit ============= + +% --- puts rules around the outside of a box +% #1 line thickness, #2 border separation #3 box +\long\def\boxit#1#2#3{\vbox{\dimen0=#1 \dimen2=#2 \hrule height \dimen0 + \hbox{\vrule width\dimen0 \hskip\dimen2\vbox{\vskip \dimen2 + \vbox{#3} + \vskip \dimen2}\hskip + \dimen2 \vrule width\dimen0} + \hrule height \dimen0}} + + +% ============== Number Format Conversion Forms ============= + +% ------ This gives an uppercase alphabetic form for a number ---- +% There should be an easier way! + +\def\Alphabetic#1{\ifcase #1\or A\or B\or C\or D\or E\or + F\or G\or H\or I\or J\or + K\or L\or M\or N\or O\or + P\or Q\or R\or S\or T\or + U\or V\or W\or X\or Y\or + Z\else #1\fi} + +\def\alphabetic#1{\ifcase #1\or a\or b\or c\or d\or e\or + f\or g\or h\or i\or j\or + k\or l\or m\or n\or o\or + p\or q\or r\or s\or t\or + u\or v\or w\or x\or y\or + z\else #1\fi} + +% ------ This does the same for roman numerals --- from TeXbook +\def\UpperRoman#1{\uppercase\expandafter{\romannumeral #1}} + + +% ========= These are dangerous macros that easily allow for loss of @ +% protection ========= + +% ======= general protect/unprotect ======= +\def\protect{\catcode`\@=12} +\def\unprotect{\catcode`@=11} + +% ======= Activate/deactivate ========= +\def\activate{\catcode`\"=\active \catcode`\|=\active} +\def\deactivate{\catcode`\"=12 \catcode`\|=12} diff --git a/macros/inrstex/inrstex/linespac.tex b/macros/inrstex/inrstex/linespac.tex new file mode 100644 index 0000000000..b8486bc456 --- /dev/null +++ b/macros/inrstex/inrstex/linespac.tex @@ -0,0 +1,33 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +% ====== Basic Line Spacing ========= +% The basic line spacing in a font is assumed to be scaled according to the +% ex height of the font. This is perhaps not the aesthetically best but +% does allow consistent line spacing commands. The four basic commands are +% \normalbaselines, \normalbaselineskipsize, \spacing, and \setstrut. + + +\def\normalbaselines{\baselineskip \normalbaselineskipsize + \normallineskipform} + +% ----- sets interline spacing in terms of normalbaselines ------ +% does not change baseline glue. +\def\spacing#1{\setbox0=\vbox{\vskip \normalbaselineskipsize}\baselineskip + #1\ht0 \normalbaselineskipglue + \normallineskipform} + + +% ----- a single line spacing strut ------- +% Set at current baselineskip size +\def\setstrut{\setbox0=\vbox{\vskip\normalbaselineskipsize}\setbox\strutbox= + \hbox{\vrule height .72\ht0 depth .28\ht0 width\z@}} + +% --- The default forms must also be set -- They are shown below but +% are actually set in inrsdef.tex + +% \def\normalbaselineskipsize{2.8ex \normalbaselineskipglue} +% \def\normalbaselineskipglue{plus .07ex minus .07ex} +% \def\normallineskipform{\lineskip 1pt \lineskiplimit 0pt} + diff --git a/macros/inrstex/inrstex/lists.tex b/macros/inrstex/inrstex/lists.tex new file mode 100644 index 0000000000..777d34793f --- /dev/null +++ b/macros/inrstex/inrstex/lists.tex @@ -0,0 +1,135 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +%======== List macros ========== +% there is only one kind of list in this system, namely on that is +% right justified in the particular box that the list appears +% extensions may be made to include a center +% These list macros work relative to \rightskip and \leftskip defined +% outside the lists. In addition, they preserve the glue that already +% exists in \rightskip and \leftskip + +% the actual skip values are set in inrsdef.tex + +\newskip\prlistskip %\prlistskip= 2ex plus 3pt minus 2pt +\newskip\prsublistskip %\prsublistskip = 1ex plus 2pt minus 1pt +\newskip\prsubsublistskip %\prsubsublistskip = .5ex plus 1pt minus 1pt + +\newskip\polistskip %\polistskip= 2ex plus 1pt minus 1pt +\newskip\posublistskip %\posublistskip= 1ex plus 1pt minus 1pt +\newskip\posubsublistskip %\posubsublistskip= .5ex plus 1pt minus 1pt + +\newskip\listitemskip %\listitemskip = 2ex plus 1pt minus 1pt +\newskip\sublistitemskip %\sublistitemskip =1ex plus .75pt minus .75pt +\newskip\subsublistitemskip %\subsublistitemskip = .5ex plus .5pt minus .5pt + +\newskip\l@istitemskip + +\newdimen\listindent %\listindent = 3em +\newdimen\sublistindent %\sublistindent = 6em +\newdimen\subsublistindent %\subsublistindent = 9em +\newdimen\listitemmarksize %\listitemmarksize = 1.5em + +\newtoks\everylist +\newtoks\everysublist +\newtoks\everysubsublist +\newtoks\e@verylist +\newtoks\e@verysublist +\newtoks\e@verysubsublist + +\newif\iff@irstli % allows first li to set list parameters + + +% t@ightenlist will cause the list item spacing to drop to #1 of its +% original value + +%------ scales a skip .... makes plus glue .1 of skip, minus .1 ---- +% #1 is the skip, #2 is the scale +\def\s@caleskip#1#2{\setbox0=\hbox{\hskip#1} + \dimen0=.1\wd0 \dimen2=.1\wd0 + #1 = #2\wd0 plus #2\dimen0 minus #2\dimen2} + + +\def\t@ightenlist#1{\s@caleskip{\listitemskip}{#1} + \s@caleskip{\sublistitemskip}{#1} + \s@caleskip{\subsublistitemskip}{#1}} +\def\tightenlist{\t@ightenlist{.5}} +\def\loosenlist{\t@ightenlist{2}} + +%sample list mark .... used for creating lists where the listitem +%mark size may be big or varied. +% This is one of the most useful features of this list package. + +\def\samplemark#1{\setbox0 = \hbox{#1\enspace} + \advance \listindent by -\listitemmarksize + \advance \sublistindent by -\listitemmarksize + \advance \subsublistindent by -\listitemmarksize + \listitemmarksize=\wd0 + \advance \listindent by \listitemmarksize + \advance \sublistindent by \listitemmarksize + \advance \subsublistindent by \listitemmarksize} + +%beginlist takes arbitrary parameters that affect the whole list such +% as font changes ... they are local to the list and will be undone by +% the endlist +\newcount\l@iststate \l@iststate=0 % 0 -- outside lists , 1 in list, 2 sublist ... + +%#1 - liststate, #2 - break value, #3 - listskip +\newif\ifo@utsidelist \o@utsidelisttrue +\newdimen\leftlistoffset +\newdimen\rightlistoffset +\def\b@eginlist #1#2#3{\par\penaltybreak{#2}{#3}\begingroup\parskip=0pt + \normalbaselines + \f@irstlitrue + \ifo@utsidelist \rightlistoffset =\rightskip + \leftlistoffset=\leftskip \o@utsidelistfalse\fi + \the\b@@el\the\b@el\l@iststate=#1} + +%\def\endlistmessage#1{<< endlist mismatch --- expected \the\l@iststate : +% actual #1 >> } see english/french titles ... #2 .. skip #3= penalty +\def\e@ndlist #1#2#3{\par \removelastskip + \ifnum \l@iststate = #1 \else \message{\endlistmessage{#1}} \fi + \endgroup \penaltybreak{#3}{#2}} +% The first list item actually sets the list parameters. This allows for +% changes in at the beginning of a list in listitem indent and spacing. +\def\s@etlistparms{\iff@irstli \n@ewlistparms + \advance\l@istindent by \leftlistoffset + \a@dvance{\leftskip}{\l@istindent}\f@irstlifalse + \fi} +\def\n@ewlistparms{\ifcase\l@iststate + \or \let\l@istindent =\listindent + \let\l@istitemskip = \listitemskip + \or \let\l@istindent =\sublistindent + \let\l@istitemskip = \sublistitemskip + \or \let\l@istindent =\subsublistindent + \let\l@istitemskip = \subsublistitemskip \fi} + +% #1 = itemskip #2 = leftindent #3= item flag +\def\listitem#1 {\par + \penaltybreak{-50}{\l@istitemskip}\s@etlistparms + \setbox0=\hbox{#1\enspace\hss} + \ifdim\wd0 < \listitemmarksize \wd0= \listitemmarksize \fi + \noindent\hskip -\listitemmarksize + \box0\relax} +\def\beginlist {\let\b@@el=\e@verylist\let\b@el=\everylist + \b@eginlist{1}{0}{\prlistskip}} +\def\beginsublist {\let\b@@el=\e@verysublist\let\b@el=\everysublist + \b@eginlist{2}{100}{\prsublistskip}} +\def\beginsubsublist {\let\b@@el=\e@verysubsublist\let\b@el=\everysubsublist + \b@eginlist{3}{200}{\prsubsublistskip}} + + +\def\endlist {\e@ndlist{1}{\polistskip}{-200}} +\def\endsublist {\e@ndlist{2}{\posublistskip}{-100}} +\def\endsubsublist {\e@ndlist{3}{\posubsublistskip}{-50}} + +% ----- These are official short forms for the various items ----- + +\let\li =\listitem +\let\bl =\beginlist +\let\bsl=\beginsublist +\let\bssl=\beginsubsublist +\let\el=\endlist +\let\esl = \endsublist +\let\essl = \endsubsublist diff --git a/macros/inrstex/inrstex/margform.tex b/macros/inrstex/inrstex/margform.tex new file mode 100644 index 0000000000..8205fd7597 --- /dev/null +++ b/macros/inrstex/inrstex/margform.tex @@ -0,0 +1,35 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +% ========= Margin Box ========= +% A margin insert (box) is used to collect reference/citation values +% If a non INRSTeX output routine is used, it is necessary to remove +% the \newinsert\m@arginbox, \dimen\m@arginbox and \count\m@arginbox. +% In addition a \def\proofmargin#1{} should be inserted. +% This information could be written out to a file rather than +% printing it on the page. + + +% ----- margin notes ------ + +\newinsert\m@arginbox +\dimen\m@arginbox = 8in +\count\m@arginbox = 0 + +\newdimen\h@marginboxsize \h@marginboxsize = 1.5in +\def\margin#1{\gdef\m@ext{\insert\m@arginbox{\vskip + 1ex\hbox{\notefont\quad#1}}}\ifinner + \aftergroup\m@ext \else \m@ext \fi} +% --- margin notes will completely disappear if \marginnotesfalse, +% \proofmargin is redefined or \finalversion is in force. + +\newif\ifmarginnotes +\def\proofmargin#1{\xdef\p@ff{#1}\ifmarginnotes\margin{\p@ff}\fi} + +%------ General Style switches -------- + +\newif\ifproofmode \proofmodetrue % defaults to proofmode +\def\draftversion{\proofmodetrue \marginnotestrue \overfullrule = 5pt} +\def\finalversion{\proofmodefalse \marginnotesfalse \overfullrule = 0pt} + diff --git a/macros/inrstex/inrstex/masthyph.tex b/macros/inrstex/inrstex/masthyph.tex new file mode 100644 index 0000000000..c5139c037a --- /dev/null +++ b/macros/inrstex/inrstex/masthyph.tex @@ -0,0 +1,59 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +% ======== Master Multilingual Pattern Inputs ====== + +% This file defines the changes in the \lccodes needed for Multilingual TeX +% and then inputs the patterns for English and French. + +% =========== Special lccodes and hyphenation for Bilingual Version ==== + + +\gdef\accenthyphcodes{ +\def\oe{^^[} % \oe +\def\i{^^P} +\def\'##1{\csname @ac@##1\endcsname} +\def\`##1{\csname @gr@##1\endcsname} +\def\v##1{\csname @v@##1\endcsname} +\let\^^_=\v +\def\u##1{\csname @u@##1\endcsname} +\let\^^S=\u +\def\=##1{\csname @eq@##1\endcsname} +\def\^##1{\csname @hat@##1\endcsname} +\let\^^D=\^ +\def\.##1{\csname @dot@##1\endcsname} +\def\H##1{\csname @H@##1\endcsname} +\def\~##1{\csname @til@##1\endcsname} +\def\"##1{\csname @um@##1\endcsname} +\let\c@@=\c +\def\c##1{\csname c@##1\endcsname} +} + +\gdef\spechyphcodes{} + + + +% ======== Pattern Input / English and French ====== + +% english hyphenation patterns +\begingroup +\language=0 +\input enhyph \relax +\endgroup + +% french hyphenation patterns +\begingroup +\language=1 +\input frhyph \relax +\endgroup + +% english hyphenation exceptions +\begingroup +\language=0 +\input enhyphex \relax +\endgroup + +% ======= definitions for fast eng/fr hyphenation ===== +\def\ehyph{\language=0 \lccode`\'=0 \nonfrenchspacing} +\def\fhyph{\language=1 \lccode`\'=`\'\frenchspacing}
\ No newline at end of file diff --git a/macros/inrstex/inrstex/multicol.tex b/macros/inrstex/inrstex/multicol.tex new file mode 100644 index 0000000000..1d4e9d96ed --- /dev/null +++ b/macros/inrstex/inrstex/multicol.tex @@ -0,0 +1,62 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +%======== Multicolumn format =========== +% These macros invoke multicolumnformat including balancing columns. + + + +\newcount\numcolumns %\numcolumns =1 +\newdimen\firstcolumnoffset %\firstcolumnoffset= 0pt +\newtoks\intercolumnsep %\intercolumnsep = {\hskip 2em} + + +%--- check the remaining page height and set switch +\newbox\m@ulticolumnbox % accumulates multicolumn pages +\newbox\t@opmultibox \newbox\testtop +\newbox\topmulticolumnbox % user available box --- spans entire page +\newbox\botmulticolumnbox % user available box --- spans entire page +\newbox\b@otmultibox \newbox\testbot +\newdimen\multicolpageshortfall \multicolpageshortfall = 1cm +\newcount\m@ultistate \m@ultistate = 0 % 1 is just into multicolumn + % 2 is just out of multicolumn +\newcount\c@urrentcolumn \c@urrentcolumn = 1 +\def\currentcolumnnum{\the\c@urrentcolumn } + +\def\numberofcolumns{\c@urrentcolumn = 1 \afterassignment\c@omputehsize \numcolumns } +\newtoks\everymulticolumnformat +\newtoks\e@verymulticolumnformat +\def\beginmulticolumnformat{\global\m@ultistate = 1 + \hrule height 0pt depth0pt % to force eject + \eject \begingroup + \def\ejectpage{\ejectcolumn\null + \loop \relax + \ifnum \c@urrentcolumn < \numcolumns + \ejectcolumn\null + \advance\c@urrentcolumn by 1 \relax + \repeat } + \the\e@verymulticolumnformat + \the\everymulticolumnformat } + +\newdimen\b@alancevsize \b@alancevsize=\vinnerpagesize +\newif\ifb@alance +\def\balancecolumnsize {\global\b@alancetrue \global\b@alancevsize} + +\def\a@ddbalcomp{\dimen0=\pagetotal %natural residual + \count255=\c@urrentcolumn \advance\count255 by -1 \relax + \dimen2 = \vcolumnsize + \multiply\dimen2 by \count255 + \advance\dimen0 by \dimen2 + \divide\dimen0 by \numcolumns + \message{ <<Estimated Balanced Column Size : \the\dimen0 >> } + \advance\dimen0 by -\b@alancevsize + \message{ <<Estimated Addition: \the\dimen0 >> } + } +\def\endmulticolumnformat{\global\m@ultistate =2 \relax + \a@ddbalcomp \ifb@alance\par\eject\else\ejectcolumn \fi + \endgroup \numberofcolumns =1 + \ifdim\vsize<\vinnerpagesize\relax + \hrule height0ptdepth0pt\fi } + % checks to see if new page + diff --git a/macros/inrstex/inrstex/multlang.tex b/macros/inrstex/inrstex/multlang.tex new file mode 100644 index 0000000000..d392568de3 --- /dev/null +++ b/macros/inrstex/inrstex/multlang.tex @@ -0,0 +1,26 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +% ====== Multiple Language Support ========= +% This is done via an internal change to TeX itself or through the +% introduction of a counter called \language. If Bilingual TeX exists, +% then \language has been defined. + +\ifundefined{language} \n@ewcount\language \language=0 \fi + +\def\englishversion{\input english \relax} +\def\versionfrancaise{\input francais \relax} + + + +%======= are some commands for << and >> in French ====== +% ======== can be made neater when we modify fonts +% \newcount\language % ..... this is necessary if NOT running Multilingual TeX +\language = 0 % 0-english 1-french ... +\def\d@qf{\raise .5ex\hbox{$\scriptscriptstyle{\langle\!\langle}$}\kern.25em} +\def\g@qf{\kern.25em\raise .5ex\hbox{$\scriptscriptstyle{\rangle\!\rangle}$}} +\def\ldq{\ifcase\language + \lq\lq \else\d@qf\fi} %changes < into `` in english +\def\rdq{\ifcase\language + \rq\rq\else\g@qf\fi} %changes > into '' in english
\ No newline at end of file diff --git a/macros/inrstex/inrstex/out_ps.tex b/macros/inrstex/inrstex/out_ps.tex new file mode 100644 index 0000000000..7bb12e215d --- /dev/null +++ b/macros/inrstex/inrstex/out_ps.tex @@ -0,0 +1,169 @@ +\catcode`@=11 +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +% Fix on \firstcolumnoffset 11 May 87 ... MJF + + +% Compensate for 1 inch standard print offsets Sept. 1991 ... ugh! +\newdimen \hprintoffset +\newdimen \vprintoffset +\hprintoffset=1in +\vprintoffset=1in + + +% Postscript version with arbitrary page scaling/rotation + +% ======== INRSTeX Single/Multi Column Output Routine ======== +% This is the entire output routine for INRSTeX. It does both single and +% Multicolumn since there is a rather large repetition to do otherwise. + + + +%====== Debugging rules ======= +% These can be turned on to outline the page +%\def\testhrule{\hrule} +\let\testhrule = \relax +%\def\testvrule{\vrule} +\let\testvrule =\relax + + +% ====== single/multicolumn output routine + + + + +\def\tmessage#1{} +\output{\m@ultipleoutput} +\def\m@ultipleoutput{\tmessage{Multiout - ms:\the\m@ultistate- cc:\the\c@urrentcolumn - nc:\the\numcolumns} + \ifcase\m@ultistate % 0 - only state where shipout allowed + \addcolumn{\pagecontents}\relax + \global\advance\c@urrentcolumn by 1 \relax + \ifnum\c@urrentcolumn > \numcolumns + \finaloutput % in normal state + \fi + \or \s@etuprempage % 1 - into - always go this way + \or + \addcolumn{\pagecontents}\relax + \s@etuprempage % 2 - outof - clean up the current col and store + \fi + } + + +\def\s@etuprempage{ \global\setbox\t@opmultibox = + \vbox{\boxmaxdepth 0pt \offinterlineskip + \ifvoid\t@opmultibox \else \unvbox\t@opmultibox \fi + \ifvoid\topmulticolumnbox \else \unvbox\topmulticolumnbox\fi + \ifvoid\topins \else \unvbox\topins \fi + \ifcase\m@ultistate + \tmessage{TeX System Error - misplaced multistate -- \the\pageno} + \or \ifvoid255 \else \unvbox255 \fi % top of pag + \or \ifvoid\m@ulticolumnbox + \else \box\m@ulticolumnbox + \fi % multicol part page + \fi} + \global\setbox\b@otmultibox = + \vbox{ \boxmaxdepth \maxdepth \offinterlineskip + \ifvoid\footins + \else \vskip\skip\footins + \footnoterule + \unvbox\footins + \fi + \ifvoid\botmulticolumnbox + \else \unvbox\botmulticolumnbox + \fi} + \ifb@alance \advance\parskip by 0pt plus 0pt minus 0pt \fi + \ifnum\m@ultistate=2 + \global\b@alancevsize=\vinnerpagesize + \global\numcolumns = 1 + \global\b@alancefalse + \fi + \c@omputevsize + \tmessage{Rempage: ms:\the\m@ultistate- ip:\the\vinnerpagesize- hc:\the\vcolumnsize- + cc:\the\c@urrentcolumn- nc:\the\numcolumns} + \global\c@urrentcolumn= 1\global\m@ultistate=0 + \ifnum\vcolumnsize<\multicolpageshortfall \finaloutput \fi + } + + +\def\twoperpage{\xdef\l@page{0}\def\topPS{\ifnum\l@page=0 + \special{ps:: /EOP {} bdf gsave 576 0 translate 90 + rotate .7 .7 scale }\else + \special{ps:: /EOP {} bdf gsave 576 396 translate 90 + rotate .7 .7 scale }\fi } +\def\botPS{\ifnum\l@page=0 + \special{ps:: grestore }\xdef\l@page{1} + \else + \special{ps:: grestore showpage }\xdef\l@page{0}\fi } +\let\d@one=\done \def\done{\ejectpage\ifnum\l@page=1 \finalversion + \fullpagestyle \line{} \fi + \d@one}} + + +\newif\ifpageps \pagepsfalse + +\def\topPS{\ifpageps \t@opsc \fi} +\def\botPS{\ifpageps \b@otsc \fi} + +\def\showpage{showpage } +\def\pagescale htr:#1 vtr:#2 d:#3 hsc:#4 vsc:#5 { + \xdef\t@opsc{\special{ps:: /EOP {} bdf + gsave #1 #2 translate #3 rotate #4 #5 scale }} + \xdef\b@otsc{\special{ps:: grestore \showpage }}\global\pagepstrue } +\def\finaloutput{\shipout + \hbox{\topPS\leftmarginskip \hskip -\hprintoffset + \vbox to \vpapersize{\offinterlineskip % but boxes together + \vskip -\vprintoffset + \topmarginskip\testhrule + \m@akeheadertext\testhrule + \hbox{\hskip \firstcolumnoffset \relax \pagebody}\testhrule + \m@akefootertext\testhrule + \vfill + \ifproofmode \vbox to 0pt{\boxmaxdepth 0pt \vss + \hbox{\qquad \versionform}} \fi + \vfill + \vss}\botPS} + \tmessage{Final Out: ms:\the\m@ultistate- cc:\the\c@urrentcolumn- nc:\the\numcolumns} + \ifp@agenoadv \advancepageno \fi + \global\p@agenoadvtrue + \global\h@eadertype=\d@ocumentheader % default header style + \global\f@ootertype=\d@ocumentfooter % default footer style + \c@omputevsize + \ifb@alance \advance\parskip by 0pt plus 0pt minus 0pt \fi + \ifnum\outputpenalty>-\@MM \else\dosupereject\fi + \global\c@urrentcolumn = 1 \global\m@ultistate=0} + +\def\addcolumn#1{\tmessage{addcol: ms:\the\m@ultistate- cc:\the\c@urrentcolumn- + nc:\the\numcolumns} + \global\setbox\m@ulticolumnbox = + \hbox{\ifvoid\m@ulticolumnbox + \else\unhbox\m@ulticolumnbox\the\intercolumnsep \fi + \testvrule\hbox to \hcolumnsize{\vbox to + \vcolumnsize{\boxmaxdepth\maxdepth #1}\hss}\testvrule} + } + +\newbox\i@nnerpagebox +\def\pagebody{\setbox\i@nnerpagebox = \vbox to\vinnerpagesize{\boxmaxdepth\maxdepth\offinterlineskip + \ifvoid\t@opmultibox \else\unvbox\t@opmultibox \fi + \ifvoid\m@ulticolumnbox \else\box\m@ulticolumnbox \fi + \ifvoid\b@otmultibox\else\unvbox\b@otmultibox \fi}\relax + \setbox2= \vbox to + \vinnerpagesize{\hsize\h@marginboxsize + \vskip 1cm + \unvbox\m@arginbox + \vss}\relax + \hbox{\box\i@nnerpagebox\box2}} + + +\def\pagecontents{\ifvoid\topins\else\unvbox\topins\fi + \unvbox\@cclv % open up \box255 + \ifvoid\footins\else % footnote info is present + \vfill + \vskip\skip\footins + \footnoterule + \unvbox\footins\fi + \ifr@ggedbottom\vfil\fi} + +\def\footnoterule{\kern-3\p@ + \hrule width .2\hcolumnsize \kern 2.6\p@} % the \hrule is .4pt high diff --git a/macros/inrstex/inrstex/pagsty.tex b/macros/inrstex/inrstex/pagsty.tex new file mode 100644 index 0000000000..6eb11e719e --- /dev/null +++ b/macros/inrstex/inrstex/pagsty.tex @@ -0,0 +1,177 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +% =========== Document Styles, Page Numbering and Page Sizes ====== +% These are the macros for setting page sizes nad the various flags +% the header/footer styles + + + +% ============== Document Style ============= +% Such things as page sizes, header/footer fonts headers and footers should +% be active for an entire document. \documentstyle is defined so that the +% correct switches are in force to control the document. In addition +% a \setpagesizes causes any page size changes to be made. + +\newif\ifd@ocsty % switch for document style + +\def\documentstyle#1{\d@ocstytrue + #1\setpagesizes\d@ocstyfalse} +% this is not done inside a group because the various assignments cannot be +% defined global + +% The switch \d@ocsty is used in to control the locality of the +% various page styles. + + + + + +%====== page numbering ========== +\newif\ifp@agenoadv % determines whether to advance the page number +\def\nopagenumberadvance{\p@agenoadvfalse} % lasts for one page +\p@agenoadvtrue % defaults to advanceing on first page +\def\n@egpagno{\global\multiply\pageno by -1 \relax} +\def\romanpagenumber{\afterassignment\n@egpagno \global\pageno } +\def\pagenumber{\global\pageno } + + + + + + +% ===== Macros for setting page sizes ====== +% Pages involve margins, headers, footers, and column sizes. +% These set the styles and flags for single and multicolumn. + +% ======= dimensions for pages headers etc ====== +% the simple output fixes the header and footer size but allows +% for the header and footer to be killed as required. +\newdimen\hpapersize %\hpapersize= 8.5in +\newdimen\vpapersize %\vpapersize= 11.5in +\newdimen\vouterpagesize +\newdimen\houterpagesize +\newdimen\vinnerpagesize +\newdimen\hinnerpagesize +\newdimen\hcolumnsize +\newdimen\vcolumnsize +\newdimen\topmarginsize +\newdimen\leftmarginsize +\newdimen\vheadersize +\newdimen\vfootersize + +% ===== Historical compatibilities ===== +\let\leftmargin=\leftmarginsize +\let\topmargin=\topmarginsize + +% ===== Margin Macros ====== +\def\leftmarginskip{\hskip \leftmarginsize} +\def\topmarginskip{\vskip \topmarginsize} + +%======= page style forms ====== + +\newcount\p@agetype \p@agetype=2 %normal ... not used +\newcount\h@eadertype \h@eadertype=2 %normal +\newcount\f@ootertype \f@ootertype=2 %normal + + +% ----- General forms for multicolumn ------- +\def\c@ompvinnersize{\dimen0 = \vouterpagesize + \ifcase\h@eadertype \relax % delete header + \else \advance \dimen0 by -\vheadersize \fi + \ifcase\f@ootertype \relax % delete footer + \else \advance\dimen0 by -\vfootersize \fi + \global\vinnerpagesize = \dimen0 + \ifb@alance \global\vcolumnsize = \b@alancevsize + \else + \advance\dimen0 by -\ht\t@opmultibox + \advance\dimen0 by -\ht\b@otmultibox \relax +\tmessage{Vcolsize - vc:\the\dimen0 - vt:\the\ht\t@opmultibox - vb:\the\ht\b@otmultibox - bs:\the\b@alancevsize - } + \global\vcolumnsize=\dimen0 + \fi} + +\def\s@etvsize{\global\vsize=\vcolumnsize} + +% columnsize = (hinnerpagsize - (numcols-1)intercol)/numcol + +\def\c@omphinnersize{\dimen0 = \houterpagesize + \advance\dimen0 by -\firstcolumnoffset + \advance\dimen0 by -\firstcolumnoffset \relax + \global\hinnerpagesize = \dimen0} + +\def\s@ethsize{\setbox0=\hbox{\the\intercolumnsep} + \dimen0= \numcolumns\wd0 %\the\dimen0 + \advance\dimen0 by -\wd0 %\the\dimen0 + \dimen2 = \hinnerpagesize %\the\dimen2 + \advance\dimen2 by -\dimen0 %\the\dimen0 + \divide\dimen2 by \numcolumns \relax + \global\hcolumnsize = \dimen2 + \global\hsize = \hcolumnsize} +\def\c@omputevsize{\c@ompvinnersize\s@etvsize} +\def\c@omputehsize{\c@omphinnersize\s@ethsize} +\def\setpagesizes{\c@omputevsize \c@omputehsize} + + + +% ==== headers, footers, pagestyles ======== + + +\newtoks\h@eaderline \newtoks\headertext \newtoks\specialheadertext +\long\def\h@eaderform {\vbox to \vheadersize + {\hsize\houterpagesize \headerfont + \testhrule + \the\h@eaderline\par\vfil\testhrule}\relax} + +\newtoks\f@ooterline \newtoks\footertext \newtoks\specialfootertext +\long\def\f@ooterform{ \vbox to \vfootersize + {\hsize\houterpagesize \footerfont + \testhrule + \vfil + \the\f@ooterline\par\testhrule}\relax} +\def\m@akeheadertext{\ifcase\h@eadertype \relax % deleted + \or \vskip \vheadersize % blanked + \or \let\h@eaderline = \headertext \h@eaderform + \or \let\h@eaderline = \specialheadertext + \h@eaderform \fi + } +\def\m@akefootertext{\ifcase\f@ootertype \relax % deleted + \or \vskip \vfootersize % blanked + \or \let\f@ooterline=\footertext \f@ooterform + \or \let\f@ooterline=\specialfootertext + \f@ooterform \fi + } + +%=== these last only for one page and are reset by output routine ==== +\def\blankheaderstyle{\global\h@eadertype = 1 + \ifd@ocsty \global\d@ocumentheader = 1 \fi\c@omputevsize} +\def\normalheaderstyle{\global\h@eadertype= 2 + \ifd@ocsty \global\d@ocumentheader = 2 \fi\c@omputevsize} +\def\noheaderstyle{\global\h@eadertype =0 + \ifd@ocsty \global\d@ocumentheader = 0 \fi\c@omputevsize} +\def\blankfooterstyle{\global\f@ootertype = 1 + \ifd@ocsty \global\d@ocumentfooter = 1 \fi\c@omputevsize} +\def\normalfooterstyle{\global\f@ootertype =2 + \ifd@ocsty \global\d@ocumentfooter = 2 \fi\c@omputevsize} +\def\nofooterstyle{\global\f@ootertype =0 + \ifd@ocsty \global\d@ocumentfooter = 0 \fi\c@omputevsize} +\let\specialheaderstyle=\normalheaderstyle % default +\let\specialfooterstyle=\normalfooterstyle % default + +% ----- some convenient combinations ----- +\def\titlepagestyle{\global\p@agetype=1 \blankheaderstyle + \blankfooterstyle} +\def\normalpagestyle{\global\p@agetype =2 \normalheaderstyle + \normalfooterstyle} + +\def\specialpagestyle{\global\p@agetype =2 \specialheaderstyle + \specialfooterstyle} +\def\fullpagestyle{\global\p@agetype =0 \noheaderstyle + \nofooterstyle} + + + + +% ======== #1 is one of \<...>style --- reset values for output routine +\newcount\d@ocumentheader +\newcount\d@ocumentfooter diff --git a/macros/inrstex/inrstex/papersty.tex b/macros/inrstex/inrstex/papersty.tex new file mode 100644 index 0000000000..417aafcdad --- /dev/null +++ b/macros/inrstex/inrstex/papersty.tex @@ -0,0 +1,19 @@ +% see english.tex and francais.tex for messages +\def\paperstyle{\documentstyle{\vouterpagesize = 9.25in + \houterpagesize = 6.0in + \topmargin = 1in + \leftmargin = 1.25in + \vheadersize = 0pt + \vfootersize = .35in + \headertext{} \specialheadertext{} + \footertext{\centerline{- \folio\ -}} + \let\specialfootertext = \footertext + \leftskip=0pt + \rightskip=0pt + \tenpoint + \noheaderstyle + \normalfooterstyle + \numberbysection + \specialnumberscontinuous}} + +\paperstyle
\ No newline at end of file diff --git a/macros/inrstex/inrstex/plain_nh.tex b/macros/inrstex/inrstex/plain_nh.tex new file mode 100644 index 0000000000..c56ad4a3b0 --- /dev/null +++ b/macros/inrstex/inrstex/plain_nh.tex @@ -0,0 +1,1220 @@ +% This is the plain TeX format that's described in The TeXbook. +% N.B.: A version number is defined at the very end of this file; +% please change that number whenever the file is modified! +% And don't modify the file under any circumstances. + +\catcode`\{=1 % left brace is begin-group character +\catcode`\}=2 % right brace is end-group character +\catcode`\$=3 % dollar sign is math shift +\catcode`\&=4 % ampersand is alignment tab +\catcode`\#=6 % hash mark is macro parameter character +\catcode`\^=7 \catcode`\^^K=7 % circumflex and uparrow are for superscripts +\catcode`\_=8 \catcode`\^^A=8 % underline and downarrow are for subscripts +\catcode`\^^I=10 % ascii tab is a blank space +\chardef\active=13 \catcode`\~=\active % tilde is active +\catcode`\^^L=\active \outer\def^^L{\par} % ascii form-feed is "\outer\par" + +\message{Preloading the plain format: codes,} + +% We had to define the \catcodes right away, before the message line, +% since \message uses the { and } characters. +% When INITEX (the TeX initializer) starts up, +% it has defined the following \catcode values: +% \catcode`\^^@=9 % ascii null is ignored +% \catcode`\^^M=5 % ascii return is end-line +% \catcode`\\=0 % backslash is TeX escape character +% \catcode`\%=14 % percent sign is comment character +% \catcode`\ =10 % ascii space is blank space +% \catcode`\^^?=15 % ascii delete is invalid +% \catcode`\A=11 ... \catcode`\Z=11 % uppercase letters +% \catcode`\a=11 ... \catcode`\z=11 % lowercase letters +% all others are type 12 (other) + +% Here is a list of the characters that have been specially catcoded: +\def\dospecials{\do\ \do\\\do\{\do\}\do\$\do\&% + \do\#\do\^\do\^^K\do\_\do\^^A\do\%\do\~} +% (not counting ascii null, tab, linefeed, formfeed, return, delete) +% Each symbol in the list is preceded by \do, which can be defined +% if you want to do something to every item in the list. + +% We make @ signs act like letters, temporarily, to avoid conflict +% between user names and internal control sequences of plain format. +\catcode`@=11 + +% INITEX sets up \mathcode x=x, for x=0..127, except that +% \mathcode x=x+"7100, for x = `A to `Z and `a to `z; +% \mathcode x=x+"7000, for x = `0 to `9. +% The following changes define internal codes as recommended +% in Appendix C of The TeXbook: +\mathcode`\^^@="2201 % \cdot +\mathcode`\^^A="3223 % \downarrow +\mathcode`\^^B="010B % \alpha +\mathcode`\^^C="010C % \beta +\mathcode`\^^D="225E % \land +\mathcode`\^^E="023A % \lnot +\mathcode`\^^F="3232 % \in +\mathcode`\^^G="0119 % \pi +\mathcode`\^^H="0115 % \lambda +\mathcode`\^^I="010D % \gamma +\mathcode`\^^J="010E % \delta +\mathcode`\^^K="3222 % \uparrow +\mathcode`\^^L="2206 % \pm +\mathcode`\^^M="2208 % \oplus +\mathcode`\^^N="0231 % \infty +\mathcode`\^^O="0140 % \partial +\mathcode`\^^P="321A % \subset +\mathcode`\^^Q="321B % \supset +\mathcode`\^^R="225C % \cap +\mathcode`\^^S="225B % \cup +\mathcode`\^^T="0238 % \forall +\mathcode`\^^U="0239 % \exists +\mathcode`\^^V="220A % \otimes +\mathcode`\^^W="3224 % \leftrightarrow +\mathcode`\^^X="3220 % \leftarrow +\mathcode`\^^Y="3221 % \rightarrow +\mathcode`\^^Z="8000 % \ne +\mathcode`\^^[="2205 % \diamond +\mathcode`\^^\="3214 % \le +\mathcode`\^^]="3215 % \ge +\mathcode`\^^^="3211 % \equiv +\mathcode`\^^_="225F % \lor +\mathcode`\ ="8000 % \space +\mathcode`\!="5021 +\mathcode`\'="8000 % ^\prime +\mathcode`\(="4028 +\mathcode`\)="5029 +\mathcode`\*="2203 % \ast +\mathcode`\+="202B +\mathcode`\,="613B +\mathcode`\-="2200 +\mathcode`\.="013A +\mathcode`\/="013D +\mathcode`\:="303A +\mathcode`\;="603B +\mathcode`\<="313C +\mathcode`\=="303D +\mathcode`\>="313E +\mathcode`\?="503F +\mathcode`\[="405B +\mathcode`\\="026E % \backslash +\mathcode`\]="505D +\mathcode`\_="8000 % \_ +\mathcode`\{="4266 +\mathcode`\|="026A +\mathcode`\}="5267 +\mathcode`\^^?="1273 % \smallint + +% INITEX sets \uccode`x=`X and \uccode `X=`X for all letters x, +% and \lccode`x=`x, \lccode`X=`x; all other values are zero. +% No changes to those tables are needed in plain TeX format. + +% INITEX sets \sfcode x=1000 for all x, except that \sfcode`X=999 +% for uppercase letters. The following changes are needed: +\sfcode`\)=0 \sfcode`\'=0 \sfcode`\]=0 +% The \nonfrenchspacing macro will make further changes to \sfcode values. + +% Finally, INITEX sets all \delcode values to -1, except \delcode`.=0 +\delcode`\(="028300 +\delcode`\)="029301 +\delcode`\[="05B302 +\delcode`\]="05D303 +\delcode`\<="26830A +\delcode`\>="26930B +\delcode`\/="02F30E +\delcode`\|="26A30C +\delcode`\\="26E30F +% N.B. { and } should NOT get delcodes; otherwise parameter grouping fails! + +% To make the plain macros more efficient in time and space, +% several constant values are declared here as control sequences. +% If they were changed, anything could happen; so they are private symbols. +\chardef\@ne=1 +\chardef\tw@=2 +\chardef\thr@@=3 +\chardef\sixt@@n=16 +\chardef\@cclv=255 +\mathchardef\@cclvi=256 +\mathchardef\@m=1000 +\mathchardef\@M=10000 +\mathchardef\@MM=20000 + +% Allocation of registers + +% Here are macros for the automatic allocation of \count, \box, \dimen, +% \skip, \muskip, and \toks registers, as well as \read and \write +% stream numbers, \fam codes, and \insert numbers. + +\message{registers,} + +% When a register is used only temporarily, it need not be allocated; +% grouping can be used, making the value previously in the register return +% after the close of the group. The main use of these macros is for +% registers that are defined by one macro and used by others, possibly at +% different nesting levels. All such registers should be defined through +% these macros; otherwise conflicts may occur, especially when two or more +% more macro packages are being used at once. + +% The following counters are reserved: +% 0 to 9 page numbering +% 10 count allocation +% 11 dimen allocation +% 12 skip allocation +% 13 muskip allocation +% 14 box allocation +% 15 toks allocation +% 16 read file allocation +% 17 write file allocation +% 18 math family allocation +% 19 insert allocation +% 20 the most recently allocated number +% 21 constant -1 +% New counters are allocated starting with 22, 23, etc. Other registers are +% allocated starting with 10. This leaves 0 through 9 for the user to play +% with safely, except that counts 0 to 9 are considered to be the page and +% subpage numbers (since they are displayed during output). In this scheme, +% \count 10 always contains the number of the highest-numbered counter that +% has been allocated, \count 14 the highest-numbered box, etc. +% Inserts are given numbers 254, 253, etc., since they require a \count, +% \dimen, \skip, and \box all with the same number; \count 19 contains the +% lowest-numbered insert that has been allocated. Of course, \box255 is +% reserved for \output; \count255, \dimen255, and \skip255 can be used freely. + +% It is recommends that macro designers always use +% \global assignments with respect to registers numbered 1, 3, 5, 7, 9, and +% always non-\global assignments with respect to registers 0, 2, 4, 6, 8, 255. +% This will prevent ``save stack buildup'' that might otherwise occur. + +\count10=21 % allocates \count registers 22, 23, ... +\count11=9 % allocates \dimen registers 10, 11, ... +\count12=9 % allocates \skip registers 10, 11, ... +\count13=9 % allocates \muskip registers 10, 11, ... +\count14=9 % allocates \box registers 10, 11, ... +\count15=9 % allocates \toks registers 10, 11, ... +\count16=-1 % allocates input streams 0, 1, ... +\count17=-1 % allocates output streams 0, 1, ... +\count18=3 % allocates math families 4, 5, ... +\count19=255 % allocates insertions 254, 253, ... +\countdef\insc@unt=19 % the insertion counter +\countdef\allocationnumber=20 % the most recent allocation +\countdef\m@ne=21 \m@ne=-1 % a handy constant +\def\wlog{\immediate\write\m@ne} % write on log file (only) + +% Here are abbreviations for the names of scratch registers +% that don't need to be allocated. + +\countdef\count@=255 +\dimendef\dimen@=0 +\dimendef\dimen@i=1 % global only +\dimendef\dimen@ii=2 +\skipdef\skip@=0 +\toksdef\toks@=0 + +% Now, we define \newcount, \newbox, etc. so that you can say \newcount\foo +% and \foo will be defined (with \countdef) to be the next counter. +% To find out which counter \foo is, you can look at \allocationnumber. +% Since there's no \boxdef command, \chardef is used to define a \newbox, +% \newinsert, \newfam, and so on. + +\outer\def\newcount{\alloc@0\count\countdef\insc@unt} +\outer\def\newdimen{\alloc@1\dimen\dimendef\insc@unt} +\outer\def\newskip{\alloc@2\skip\skipdef\insc@unt} +\outer\def\newmuskip{\alloc@3\muskip\muskipdef\@cclvi} +\outer\def\newbox{\alloc@4\box\chardef\insc@unt} +\let\newtoks=\relax % we do this to allow plain.tex to be read in twice +\outer\def\newhelp#1#2{\newtoks#1#1\expandafter{\csname#2\endcsname}} +\outer\def\newtoks{\alloc@5\toks\toksdef\@cclvi} +\outer\def\newread{\alloc@6\read\chardef\sixt@@n} +\outer\def\newwrite{\alloc@7\write\chardef\sixt@@n} +\outer\def\newfam{\alloc@8\fam\chardef\sixt@@n} +\def\alloc@#1#2#3#4#5{\global\advance\count1#1by\@ne + \ch@ck#1#4#2% make sure there's still room + \allocationnumber=\count1#1% + \global#3#5=\allocationnumber + \wlog{\string#5=\string#2\the\allocationnumber}} +\outer\def\newinsert#1{\global\advance\insc@unt by\m@ne + \ch@ck0\insc@unt\count + \ch@ck1\insc@unt\dimen + \ch@ck2\insc@unt\skip + \ch@ck4\insc@unt\box + \allocationnumber=\insc@unt + \global\chardef#1=\allocationnumber + \wlog{\string#1=\string\insert\the\allocationnumber}} +\def\ch@ck#1#2#3{\ifnum\count1#1<#2% + \else\errmessage{No room for a new #3}\fi} + +% Here are some examples of allocation. +\newdimen\maxdimen \maxdimen=16383.99999pt % the largest legal <dimen> +\newskip\hideskip \hideskip=-1000pt plus 1fill % negative but can grow +\newskip\centering \centering=0pt plus 1000pt minus 1000pt +\newdimen\p@ \p@=1pt % this saves macro space and time +\newdimen\z@ \z@=0pt % can be used both for 0pt and 0 +\newskip\z@skip \z@skip=0pt plus0pt minus0pt +\newbox\voidb@x % permanently void box register + +% And here's a different sort of allocation: +% For example, \newif\iffoo creates \footrue, \foofalse to go with \iffoo. +\outer\def\newif#1{\count@\escapechar \escapechar\m@ne + \expandafter\expandafter\expandafter + \edef\@if#1{true}{\let\noexpand#1=\noexpand\iftrue}% + \expandafter\expandafter\expandafter + \edef\@if#1{false}{\let\noexpand#1=\noexpand\iffalse}% + \@if#1{false}\escapechar\count@} % the condition starts out false +\def\@if#1#2{\csname\expandafter\if@\string#1#2\endcsname} +{\uccode`1=`i \uccode`2=`f \uppercase{\gdef\if@12{}}} % `if' is required + +% Assign initial values to TeX's parameters + +\message{parameters,} + +% All of TeX's numeric parameters are listed here, +% but the code is commented out if no special value needs to be set. +% INITEX makes all parameters zero except where noted. + +\pretolerance=100 +\tolerance=200 % INITEX sets this to 10000 +\hbadness=1000 +\vbadness=1000 +\linepenalty=10 +\hyphenpenalty=50 +\exhyphenpenalty=50 +\binoppenalty=700 +\relpenalty=500 +\clubpenalty=150 +\widowpenalty=150 +\displaywidowpenalty=50 +\brokenpenalty=100 +\predisplaypenalty=10000 +% \postdisplaypenalty=0 +% \interlinepenalty=0 +% \floatingpenalty=0, set during \insert +% \outputpenalty=0, set before TeX enters \output +\doublehyphendemerits=10000 +\finalhyphendemerits=5000 +\adjdemerits=10000 +% \looseness=0, cleared by TeX after each paragraph +% \pausing=0 +% \tracingonline=0 +% \tracingmacros=0 +% \tracingstats=0 +% \tracingparagraphs=0 +% \tracingpages=0 +% \tracingoutput=0 +\tracinglostchars=1 +% \tracingcommands=0 +% \tracingrestores=0 +\uchyph=1 +% \globaldefs=0 +% \maxdeadcycles=25 % INITEX does this +% \hangafter=1 % INITEX does this, also TeX after each paragraph +% \fam=0 +% \mag=1000 % INITEX does this +% \escapechar=`\\ % INITEX does this +\defaulthyphenchar=`\- +\defaultskewchar=-1 +% \endlinechar=`\^^M % INITEX does this +\newlinechar=-1 +\delimiterfactor=901 +% \time=now % TeX does this at beginning of job +% \day=now % TeX does this at beginning of job +% \month=now % TeX does this at beginning of job +% \year=now % TeX does this at beginning of job +\showboxbreadth=5 +\showboxdepth=3 + +\hfuzz=0.1pt +\vfuzz=0.1pt +\overfullrule=5pt +\hsize=6.5in +\vsize=8.9in +\maxdepth=4pt +\splitmaxdepth=\maxdimen +\boxmaxdepth=\maxdimen +% \lineskiplimit=0pt, changed by \normalbaselines +\delimitershortfall=5pt +\nulldelimiterspace=1.2pt +\scriptspace=0.5pt +% \mathsurround=0pt +% \predisplaysize=0pt, set before TeX enters $$ +% \displaywidth=0pt, set before TeX enters $$ +% \displayindent=0pt, set before TeX enters $$ +\parindent=20pt +% \hangindent=0pt, zeroed by TeX after each paragraph +% \hoffset=0pt +% \voffset=0pt + +% \baselineskip=0pt, changed by \normalbaselines +% \lineskip=0pt, changed by \normalbaselines +\parskip=0pt plus 1pt +\abovedisplayskip=12pt plus 3pt minus 9pt +\abovedisplayshortskip=0pt plus 3pt +\belowdisplayskip=12pt plus 3pt minus 9pt +\belowdisplayshortskip=7pt plus 3pt minus 4pt +% \leftskip=0pt +% \rightskip=0pt +\topskip=10pt +\splittopskip=10pt +% \tabskip=0pt +% \spaceskip=0pt +% \xspaceskip=0pt +\parfillskip=0pt plus 1fil + +\thinmuskip=3mu +\medmuskip=4mu plus 2mu minus 4mu +\thickmuskip=5mu plus 5mu + +% We also define special registers that function like parameters: +\newskip\smallskipamount \smallskipamount=3pt plus 1pt minus 1pt +\newskip\medskipamount \medskipamount=6pt plus 2pt minus 2pt +\newskip\bigskipamount \bigskipamount=12pt plus 4pt minus 4pt +\newskip\normalbaselineskip \normalbaselineskip=12pt +\newskip\normallineskip \normallineskip=1pt +\newdimen\normallineskiplimit \normallineskiplimit=0pt +\newdimen\jot \jot=3pt +\newcount\interdisplaylinepenalty \interdisplaylinepenalty=100 +\newcount\interfootnotelinepenalty \interfootnotelinepenalty=100 + +% Definitions for preloaded fonts + +\def\magstephalf{1095 } +\def\magstep#1{\ifcase#1 \@m\or 1200\or 1440\or 1728\or 2074\or 2488\fi\relax} + +% Fonts assigned to \preloaded are not part of "plain TeX", +% but they are preloaded so that other format packages can use them. +% For example, if another set of macros says "\font\ninerm=cmr9", +% TeX will not have to reload the font metric information for cmr9. + +\message{fonts,} + +\font\tenrm=cmr10 % roman text +\font\preloaded=cmr9 +\font\preloaded=cmr8 +\font\sevenrm=cmr7 +\font\preloaded=cmr6 +\font\fiverm=cmr5 + +\font\teni=cmmi10 % math italic +\font\preloaded=cmmi9 +\font\preloaded=cmmi8 +\font\seveni=cmmi7 +\font\preloaded=cmmi6 +\font\fivei=cmmi5 + +\font\tensy=cmsy10 % math symbols +\font\preloaded=cmsy9 +\font\preloaded=cmsy8 +\font\sevensy=cmsy7 +\font\preloaded=cmsy6 +\font\fivesy=cmsy5 + +\font\tenex=cmex10 % math extension + +\font\preloaded=cmss10 % sans serif +\font\preloaded=cmssq8 + +\font\preloaded=cmssi10 % sans serif italic +\font\preloaded=cmssqi8 + +\font\tenbf=cmbx10 % boldface extended +\font\preloaded=cmbx9 +\font\preloaded=cmbx8 +\font\sevenbf=cmbx7 +\font\preloaded=cmbx6 +\font\fivebf=cmbx5 + +\font\tentt=cmtt10 % typewriter +\font\preloaded=cmtt9 +\font\preloaded=cmtt8 + +\font\preloaded=cmsltt10 % slanted typewriter + +\font\tensl=cmsl10 % slanted roman +\font\preloaded=cmsl9 +\font\preloaded=cmsl8 + +\font\tenit=cmti10 % text italic +\font\preloaded=cmti9 +\font\preloaded=cmti8 +\font\preloaded=cmti7 + +\message{more fonts,} +\font\preloaded=cmu10 % unslanted text italic + +\font\preloaded=cmmib10 % bold math italic +\font\preloaded=cmbsy10 % bold math symbols + +\font\preloaded=cmcsc10 % caps and small caps + +\font\preloaded=cmssbx10 % sans serif bold extended + +\font\preloaded=cmdunh10 % Dunhill style + +\font\preloaded=cmr7 scaled \magstep4 % for titles +\font\preloaded=cmtt10 scaled \magstep2 +\font\preloaded=cmssbx10 scaled \magstep2 + +% \font\preloaded=manfnt % METAFONT logo and dragon curve and special symbols +\font\preloaded=logo10 % METAFONT logo and dragon curve and special symbols ?? + +% Additional \preloaded fonts can be specified here. +% (And those that were \preloaded above can be eliminated.) + +\let\preloaded=\undefined % preloaded fonts must be declared anew later. + +\skewchar\teni='177 \skewchar\seveni='177 \skewchar\fivei='177 +\skewchar\tensy='60 \skewchar\sevensy='60 \skewchar\fivesy='60 + +\textfont0=\tenrm \scriptfont0=\sevenrm \scriptscriptfont0=\fiverm +\def\rm{\fam\z@\tenrm} +\textfont1=\teni \scriptfont1=\seveni \scriptscriptfont1=\fivei +\def\mit{\fam\@ne} \def\oldstyle{\fam\@ne\teni} +\textfont2=\tensy \scriptfont2=\sevensy \scriptscriptfont2=\fivesy +\def\cal{\fam\tw@} +\textfont3=\tenex \scriptfont3=\tenex \scriptscriptfont3=\tenex +\newfam\itfam \def\it{\fam\itfam\tenit} % \it is family 4 +\textfont\itfam=\tenit +\newfam\slfam \def\sl{\fam\slfam\tensl} % \sl is family 5 +\textfont\slfam=\tensl +\newfam\bffam \def\bf{\fam\bffam\tenbf} % \bf is family 6 +\textfont\bffam=\tenbf \scriptfont\bffam=\sevenbf +\scriptscriptfont\bffam=\fivebf +\newfam\ttfam \def\tt{\fam\ttfam\tentt} % \tt is family 7 +\textfont\ttfam=\tentt + +% Macros for setting ordinary text +\message{macros,} + +\def\frenchspacing{\sfcode`\.\@m \sfcode`\?\@m \sfcode`\!\@m + \sfcode`\:\@m \sfcode`\;\@m \sfcode`\,\@m} +\def\nonfrenchspacing{\sfcode`\.3000\sfcode`\?3000\sfcode`\!3000% + \sfcode`\:2000\sfcode`\;1500\sfcode`\,1250 } + +\def\normalbaselines{\lineskip\normallineskip + \baselineskip\normalbaselineskip \lineskiplimit\normallineskiplimit} + +\def\^^M{\ } % control <return> = control <space> +\def\^^I{\ } % same for <tab> + +\def\lq{`} \def\rq{'} +\def\lbrack{[} \def\rbrack{]} + +\let\endgraf=\par \let\endline=\cr + +\def\space{ } +\def\empty{} +\def\null{\hbox{}} + +\let\bgroup={ \let\egroup=} + +% In \obeylines, we say `\let^^M=\par' instead of `\def^^M{\par}' +% since this allows, for example, `\let\par=\cr \obeylines \halign{...' +{\catcode`\^^M=\active % these lines must end with % + \gdef\obeylines{\catcode`\^^M\active \let^^M\par}% + \global\let^^M\par} % this is in case ^^M appears in a \write +\def\obeyspaces{\catcode`\ \active} +{\obeyspaces\global\let =\space} + +\def\loop#1\repeat{\def\body{#1}\iterate} +\def\iterate{\body \let\next\iterate \else\let\next\relax\fi \next} +\let\repeat=\fi % this makes \loop...\if...\repeat skippable + +\def\thinspace{\kern .16667em } +\def\negthinspace{\kern-.16667em } +\def\enspace{\kern.5em } + +\def\enskip{\hskip.5em\relax} +\def\quad{\hskip1em\relax} +\def\qquad{\hskip2em\relax} + +\def\smallskip{\vskip\smallskipamount} +\def\medskip{\vskip\medskipamount} +\def\bigskip{\vskip\bigskipamount} + +\def\nointerlineskip{\prevdepth-1000\p@} +\def\offinterlineskip{\baselineskip-1000\p@ + \lineskip\z@ \lineskiplimit\maxdimen} + +\def\vglue{\afterassignment\vgl@\skip@=} +\def\vgl@{\par \dimen@\prevdepth \hrule height\z@ + \nobreak\vskip\skip@ \prevdepth\dimen@} +\def\hglue{\afterassignment\hgl@\skip@=} +\def\hgl@{\leavevmode \count@\spacefactor \vrule width\z@ + \nobreak\hskip\skip@ \spacefactor\count@} + +\def~{\penalty\@M \ } % tie +\def\slash{/\penalty\exhyphenpenalty} % a `/' that acts like a `-' + +\def\break{\penalty-\@M} +\def\nobreak{\penalty \@M} +\def\allowbreak{\penalty \z@} + +\def\filbreak{\par\vfil\penalty-200\vfilneg} +\def\goodbreak{\par\penalty-500 } +\def\eject{\par\break} +\def\supereject{\par\penalty-\@MM} + +\def\removelastskip{\ifdim\lastskip=\z@\else\vskip-\lastskip\fi} +\def\smallbreak{\par\ifdim\lastskip<\smallskipamount + \removelastskip\penalty-50\smallskip\fi} +\def\medbreak{\par\ifdim\lastskip<\medskipamount + \removelastskip\penalty-100\medskip\fi} +\def\bigbreak{\par\ifdim\lastskip<\bigskipamount + \removelastskip\penalty-200\bigskip\fi} + +\def\line{\hbox to\hsize} +\def\leftline#1{\line{#1\hss}} +\def\rightline#1{\line{\hss#1}} +\def\centerline#1{\line{\hss#1\hss}} + +\def\rlap#1{\hbox to\z@{#1\hss}} +\def\llap#1{\hbox to\z@{\hss#1}} + +\def\m@th{\mathsurround=\z@} +\def\underbar#1{$\setbox\z@\hbox{#1}\dp\z@\z@ + \m@th \underline{\box\z@}$} + +\newbox\strutbox +\setbox\strutbox=\hbox{\vrule height8.5pt depth3.5pt width\z@} +\def\strut{\relax\ifmmode\copy\strutbox\else\unhcopy\strutbox\fi} + +\def\hidewidth{\hskip\hideskip} % for alignment entries that can stick out +\def\ialign{\everycr{}\tabskip\z@skip\halign} % initialized \halign +\newcount\mscount +\def\multispan#1{\omit \mscount#1 + \loop\ifnum\mscount>\@ne \sp@n\repeat} +\def\sp@n{\span\omit\advance\mscount\m@ne} + +\newif\ifus@ \newif\if@cr +\newbox\tabs \newbox\tabsyet \newbox\tabsdone + +\def\cleartabs{\global\setbox\tabsyet\null \setbox\tabs\null} +\def\settabs{\setbox\tabs\null \futurelet\next\sett@b} +\let\+=\relax % in case this file is being read in twice +\def\sett@b{\ifx\next\+\let\next\relax + \def\next{\afterassignment\s@tt@b\let\next}% + \else\let\next\s@tcols\fi\next} +\def\s@tt@b{\let\next\relax\us@false\m@ketabbox} +\def\tabalign{\us@true\m@ketabbox} % non-\outer version of \+ +\outer\def\+{\tabalign} +\def\s@tcols#1\columns{\count@#1 \dimen@\hsize + \loop\ifnum\count@>\z@ \@nother \repeat} +\def\@nother{\dimen@ii\dimen@ \divide\dimen@ii\count@ + \setbox\tabs\hbox{\hbox to\dimen@ii{}\unhbox\tabs}% + \advance\dimen@-\dimen@ii \advance\count@\m@ne} + +\def\m@ketabbox{\begingroup + \global\setbox\tabsyet\copy\tabs + \global\setbox\tabsdone\null + \def\cr{\@crtrue\crcr\egroup\egroup + \ifus@\unvbox\z@\lastbox\fi\endgroup + \setbox\tabs\hbox{\unhbox\tabsyet\unhbox\tabsdone}}% + \setbox\z@\vbox\bgroup\@crfalse + \ialign\bgroup&\t@bbox##\t@bb@x\crcr} + +\def\t@bbox{\setbox\z@\hbox\bgroup} +\def\t@bb@x{\if@cr\egroup % now \box\z@ holds the column + \else\hss\egroup \global\setbox\tabsyet\hbox{\unhbox\tabsyet + \global\setbox\@ne\lastbox}% now \box\@ne holds its size + \ifvoid\@ne\global\setbox\@ne\hbox to\wd\z@{}% + \else\setbox\z@\hbox to\wd\@ne{\unhbox\z@}\fi + \global\setbox\tabsdone\hbox{\box\@ne\unhbox\tabsdone}\fi + \box\z@} + +\def\hang{\hangindent\parindent} +\def\textindent#1{\indent\llap{#1\enspace}\ignorespaces} +\def\item{\par\hang\textindent} +\def\itemitem{\par\indent \hangindent2\parindent \textindent} +\def\narrower{\advance\leftskip\parindent + \advance\rightskip\parindent} + +\outer\def\beginsection#1\par{\vskip\z@ plus.3\vsize\penalty-250 + \vskip\z@ plus-.3\vsize\bigskip\vskip\parskip + \message{#1}\leftline{\bf#1}\nobreak\smallskip\noindent} +\outer\def\proclaim #1. #2\par{\medbreak + \noindent{\bf#1.\enspace}{\sl#2}\par + \ifdim\lastskip<\medskipamount \removelastskip\penalty55\medskip\fi} + +\def\raggedright{\rightskip\z@ plus2em \spaceskip.3333em \xspaceskip.5em } +\def\ttraggedright{\tt\rightskip\z@ plus2em } % for use with \tt only + +\chardef\%=`\% +\chardef\&=`\& +\chardef\#=`\# +\chardef\$=`\$ +\chardef\ss="19 +\chardef\ae="1A +\chardef\oe="1B +\chardef\o="1C +\chardef\AE="1D +\chardef\OE="1E +\chardef\O="1F +\chardef\i="10 \chardef\j="11 % dotless letters +\def\aa{\accent23a} +\def\l{\char32l} +\def\L{\leavevmode\setbox0\hbox{L}\hbox to\wd0{\hss\char32L}} + +\def\leavevmode{\unhbox\voidb@x} % begins a paragraph, if necessary +\def\_{\leavevmode \kern.06em \vbox{\hrule width.3em}} +\def\AA{\leavevmode\setbox0\hbox{h}\dimen@\ht0\advance\dimen@-1ex% + \rlap{\raise.67\dimen@\hbox{\char'27}}A} + +\def\mathhexbox#1#2#3{\leavevmode + \hbox{$\m@th \mathchar"#1#2#3$}} +\def\dag{\mathhexbox279} +\def\ddag{\mathhexbox27A} +\def\S{\mathhexbox278} +\def\P{\mathhexbox27B} + +\def\oalign#1{\leavevmode\vtop{\baselineskip\z@skip \lineskip.25ex% + \ialign{##\crcr#1\crcr}}} % put characters over each other +\def\ooalign{\lineskiplimit-\maxdimen \oalign} +\def\d#1{\oalign{#1\crcr\hidewidth.\hidewidth}} +\def\b#1{\oalign{#1\crcr\hidewidth + \vbox to.2ex{\hbox{\char22}\vss}\hidewidth}} +\def\c#1{\setbox\z@\hbox{#1}\ifdim\ht\z@=1ex\accent24 #1% + \else{\ooalign{\hidewidth\char24\hidewidth\crcr\unhbox\z@}}\fi} +\def\copyright{{\ooalign{\hfil\raise.07ex\hbox{c}\hfil\crcr\mathhexbox20D}}} + +\def\dots{\relax\ifmmode\ldots\else$\m@th\ldots\,$\fi} +\def\TeX{T\kern-.1667em\lower.5ex\hbox{E}\kern-.125emX} + +\def\`#1{{\accent18 #1}} +\def\'#1{{\accent19 #1}} +\def\v#1{{\accent20 #1}} \let\^^_=\v +\def\u#1{{\accent21 #1}} \let\^^S=\u +\def\=#1{{\accent22 #1}} +\def\^#1{{\accent94 #1}} \let\^^D=\^ +\def\.#1{{\accent95 #1}} +\def\H#1{{\accent"7D #1}} +\def\~#1{{\accent"7E #1}} +\def\"#1{{\accent"7F #1}} +\def\t#1{{\edef\next{\the\font}\the\textfont1\accent"7F\next#1}} + +\def\hrulefill{\leaders\hrule\hfill} +\def\dotfill{\cleaders\hbox{$\m@th \mkern1.5mu.\mkern1.5mu$}\hfill} +\def\rightarrowfill{$\m@th\mathord-\mkern-6mu% + \cleaders\hbox{$\mkern-2mu\mathord-\mkern-2mu$}\hfill + \mkern-6mu\mathord\rightarrow$} +\def\leftarrowfill{$\m@th\mathord\leftarrow\mkern-6mu% + \cleaders\hbox{$\mkern-2mu\mathord-\mkern-2mu$}\hfill + \mkern-6mu\mathord-$} +\mathchardef\braceld="37A \mathchardef\bracerd="37B +\mathchardef\bracelu="37C \mathchardef\braceru="37D +\def\downbracefill{$\m@th\braceld\leaders\vrule\hfill\braceru + \bracelu\leaders\vrule\hfill\bracerd$} +\def\upbracefill{$\m@th\bracelu\leaders\vrule\hfill\bracerd + \braceld\leaders\vrule\hfill\braceru$} + +\outer\def\bye{\par\vfill\supereject\end} + +% Macros for math setting +\message{math definitions,} + +\let\sp=^ \let\sb=_ +\def\,{\mskip\thinmuskip} +\def\>{\mskip\medmuskip} +\def\;{\mskip\thickmuskip} +\def\!{\mskip-\thinmuskip} +\def\*{\discretionary{\thinspace\the\textfont2\char2}{}{}} +{\catcode`\'=\active \gdef'{^\bgroup\prim@s}} +\def\prim@s{\prime\futurelet\next\pr@m@s} +\def\pr@m@s{\ifx'\next\let\next\pr@@@s \else\ifx^\next\let\next\pr@@@t + \else\let\next\egroup\fi\fi \next} +\def\pr@@@s#1{\prim@s} \def\pr@@@t#1#2{#2\egroup} +{\catcode`\^^Z=\active \gdef^^Z{\not=}} % ^^Z is like \ne in math +{\catcode`\_=\active \let_=\_} % _ is like \_ if not used for subscripts + +\mathchardef\alpha="010B +\mathchardef\beta="010C +\mathchardef\gamma="010D +\mathchardef\delta="010E +\mathchardef\epsilon="010F +\mathchardef\zeta="0110 +\mathchardef\eta="0111 +\mathchardef\theta="0112 +\mathchardef\iota="0113 +\mathchardef\kappa="0114 +\mathchardef\lambda="0115 +\mathchardef\mu="0116 +\mathchardef\nu="0117 +\mathchardef\xi="0118 +\mathchardef\pi="0119 +\mathchardef\rho="011A +\mathchardef\sigma="011B +\mathchardef\tau="011C +\mathchardef\upsilon="011D +\mathchardef\phi="011E +\mathchardef\chi="011F +\mathchardef\psi="0120 +\mathchardef\omega="0121 +\mathchardef\varepsilon="0122 +\mathchardef\vartheta="0123 +\mathchardef\varpi="0124 +\mathchardef\varrho="0125 +\mathchardef\varsigma="0126 +\mathchardef\varphi="0127 +\mathchardef\Gamma="7000 +\mathchardef\Delta="7001 +\mathchardef\Theta="7002 +\mathchardef\Lambda="7003 +\mathchardef\Xi="7004 +\mathchardef\Pi="7005 +\mathchardef\Sigma="7006 +\mathchardef\Upsilon="7007 +\mathchardef\Phi="7008 +\mathchardef\Psi="7009 +\mathchardef\Omega="700A + +\mathchardef\aleph="0240 +\def\hbar{{\mathchar'26\mkern-9muh}} +\mathchardef\imath="017B +\mathchardef\jmath="017C +\mathchardef\ell="0160 +\mathchardef\wp="017D +\mathchardef\Re="023C +\mathchardef\Im="023D +\mathchardef\partial="0140 +\mathchardef\infty="0231 +\mathchardef\prime="0230 +\mathchardef\emptyset="023B +\mathchardef\nabla="0272 +\def\surd{{\mathchar"1270}} +\mathchardef\top="023E +\mathchardef\bot="023F +\def\angle{{\vbox{\ialign{$\m@th\scriptstyle##$\crcr + \not\mathrel{\mkern14mu}\crcr + \noalign{\nointerlineskip} + \mkern2.5mu\leaders\hrule height.34pt\hfill\mkern2.5mu\crcr}}}} +\mathchardef\triangle="0234 +\mathchardef\forall="0238 +\mathchardef\exists="0239 +\mathchardef\neg="023A \let\lnot=\neg +\mathchardef\flat="015B +\mathchardef\natural="015C +\mathchardef\sharp="015D +\mathchardef\clubsuit="027C +\mathchardef\diamondsuit="027D +\mathchardef\heartsuit="027E +\mathchardef\spadesuit="027F + +\mathchardef\coprod="1360 +\mathchardef\bigvee="1357 +\mathchardef\bigwedge="1356 +\mathchardef\biguplus="1355 +\mathchardef\bigcap="1354 +\mathchardef\bigcup="1353 +\mathchardef\intop="1352 \def\int{\intop\nolimits} +\mathchardef\prod="1351 +\mathchardef\sum="1350 +\mathchardef\bigotimes="134E +\mathchardef\bigoplus="134C +\mathchardef\bigodot="134A +\mathchardef\ointop="1348 \def\oint{\ointop\nolimits} +\mathchardef\bigsqcup="1346 +\mathchardef\smallint="1273 + +\mathchardef\triangleleft="212F +\mathchardef\triangleright="212E +\mathchardef\bigtriangleup="2234 +\mathchardef\bigtriangledown="2235 +\mathchardef\wedge="225E \let\land=\wedge +\mathchardef\vee="225F \let\lor=\vee +\mathchardef\cap="225C +\mathchardef\cup="225B +\mathchardef\ddagger="227A +\mathchardef\dagger="2279 +\mathchardef\sqcap="2275 +\mathchardef\sqcup="2274 +\mathchardef\uplus="225D +\mathchardef\amalg="2271 +\mathchardef\diamond="2205 +\mathchardef\bullet="220F +\mathchardef\wr="226F +\mathchardef\div="2204 +\mathchardef\odot="220C +\mathchardef\oslash="220B +\mathchardef\otimes="220A +\mathchardef\ominus="2209 +\mathchardef\oplus="2208 +\mathchardef\mp="2207 +\mathchardef\pm="2206 +\mathchardef\circ="220E +\mathchardef\bigcirc="220D +\mathchardef\setminus="226E % for set difference A\setminus B +\mathchardef\cdot="2201 +\mathchardef\ast="2203 +\mathchardef\times="2202 +\mathchardef\star="213F + +\mathchardef\propto="322F +\mathchardef\sqsubseteq="3276 +\mathchardef\sqsupseteq="3277 +\mathchardef\parallel="326B +\mathchardef\mid="326A +\mathchardef\dashv="3261 +\mathchardef\vdash="3260 +\mathchardef\nearrow="3225 +\mathchardef\searrow="3226 +\mathchardef\nwarrow="322D +\mathchardef\swarrow="322E +\mathchardef\Leftrightarrow="322C +\mathchardef\Leftarrow="3228 +\mathchardef\Rightarrow="3229 +\def\neq{\not=} \let\ne=\neq +\mathchardef\leq="3214 \let\le=\leq +\mathchardef\geq="3215 \let\ge=\geq +\mathchardef\succ="321F +\mathchardef\prec="321E +\mathchardef\approx="3219 +\mathchardef\succeq="3217 +\mathchardef\preceq="3216 +\mathchardef\supset="321B +\mathchardef\subset="321A +\mathchardef\supseteq="3213 +\mathchardef\subseteq="3212 +\mathchardef\in="3232 +\mathchardef\ni="3233 \let\owns=\ni +\mathchardef\gg="321D +\mathchardef\ll="321C +\mathchardef\not="3236 +\mathchardef\leftrightarrow="3224 +\mathchardef\leftarrow="3220 \let\gets=\leftarrow +\mathchardef\rightarrow="3221 \let\to=\rightarrow +\mathchardef\mapstochar="3237 \def\mapsto{\mapstochar\rightarrow} +\mathchardef\sim="3218 +\mathchardef\simeq="3227 +\mathchardef\perp="323F +\mathchardef\equiv="3211 +\mathchardef\asymp="3210 +\mathchardef\smile="315E +\mathchardef\frown="315F +\mathchardef\leftharpoonup="3128 +\mathchardef\leftharpoondown="3129 +\mathchardef\rightharpoonup="312A +\mathchardef\rightharpoondown="312B + +\def\joinrel{\mathrel{\mkern-3mu}} +\def\relbar{\mathrel{\smash-}} % \smash, because - has the same height as + +\def\Relbar{\mathrel=} +\mathchardef\lhook="312C \def\hookrightarrow{\lhook\joinrel\rightarrow} +\mathchardef\rhook="312D \def\hookleftarrow{\leftarrow\joinrel\rhook} +\def\bowtie{\mathrel\triangleright\joinrel\mathrel\triangleleft} +\def\models{\mathrel|\joinrel=} +\def\Longrightarrow{\Relbar\joinrel\Rightarrow} +\def\longrightarrow{\relbar\joinrel\rightarrow} +\def\longleftarrow{\leftarrow\joinrel\relbar} +\def\Longleftarrow{\Leftarrow\joinrel\Relbar} +\def\longmapsto{\mapstochar\longrightarrow} +\def\longleftrightarrow{\leftarrow\joinrel\rightarrow} +\def\Longleftrightarrow{\Leftarrow\joinrel\Rightarrow} +\def\iff{\;\Longleftrightarrow\;} + +\mathchardef\ldotp="602E % ldot as a punctuation mark +\mathchardef\cdotp="6201 % cdot as a punctuation mark +\mathchardef\colon="603A % colon as a punctuation mark +\def\ldots{\mathinner{\ldotp\ldotp\ldotp}} +\def\cdots{\mathinner{\cdotp\cdotp\cdotp}} +\def\vdots{\vbox{\baselineskip4\p@ \lineskiplimit\z@ + \kern6\p@\hbox{.}\hbox{.}\hbox{.}}} +\def\ddots{\mathinner{\mkern1mu\raise7\p@\vbox{\kern7\p@\hbox{.}}\mkern2mu + \raise4\p@\hbox{.}\mkern2mu\raise\p@\hbox{.}\mkern1mu}} + +\def\acute{\mathaccent"7013 } +\def\grave{\mathaccent"7012 } +\def\ddot{\mathaccent"707F } +\def\tilde{\mathaccent"707E } +\def\bar{\mathaccent"7016 } +\def\breve{\mathaccent"7015 } +\def\check{\mathaccent"7014 } +\def\hat{\mathaccent"705E } +\def\vec{\mathaccent"017E } +\def\dot{\mathaccent"705F } +\def\widetilde{\mathaccent"0365 } +\def\widehat{\mathaccent"0362 } +\def\overrightarrow#1{\vbox{\ialign{##\crcr + \rightarrowfill\crcr\noalign{\kern-\p@\nointerlineskip} + $\hfil\displaystyle{#1}\hfil$\crcr}}} +\def\overleftarrow#1{\vbox{\ialign{##\crcr + \leftarrowfill\crcr\noalign{\kern-\p@\nointerlineskip} + $\hfil\displaystyle{#1}\hfil$\crcr}}} +\def\overbrace#1{\mathop{\vbox{\ialign{##\crcr\noalign{\kern3\p@} + \downbracefill\crcr\noalign{\kern3\p@\nointerlineskip} + $\hfil\displaystyle{#1}\hfil$\crcr}}}\limits} +\def\underbrace#1{\mathop{\vtop{\ialign{##\crcr + $\hfil\displaystyle{#1}\hfil$\crcr\noalign{\kern3\p@\nointerlineskip} + \upbracefill\crcr\noalign{\kern3\p@}}}}\limits} +\def\skew#1#2#3{{#2{#3\mkern#1mu}\mkern-#1mu}{}} + +\def\lmoustache{\delimiter"4000340 } % top from (, bottom from ) +\def\rmoustache{\delimiter"5000341 } % top from ), bottom from ( +\def\lgroup{\delimiter"400033A } % extensible ( with sharper tips +\def\rgroup{\delimiter"500033B } % extensible ) with sharper tips +\def\arrowvert{\delimiter"33C } % arrow without arrowheads +\def\Arrowvert{\delimiter"33D } % double arrow without arrowheads +\def\bracevert{\delimiter"33E } % the vertical bar that extends braces +\def\Vert{\delimiter"26B30D } \let\|=\Vert +\def\vert{\delimiter"26A30C } +\def\uparrow{\delimiter"3222378 } +\def\downarrow{\delimiter"3223379 } +\def\updownarrow{\delimiter"326C33F } +\def\Uparrow{\delimiter"322A37E } +\def\Downarrow{\delimiter"322B37F } +\def\Updownarrow{\delimiter"326D377 } +\def\backslash{\delimiter"26E30F } % for double coset G\backslash H +\def\rangle{\delimiter"526930B } +\def\langle{\delimiter"426830A } +\def\rbrace{\delimiter"5267309 } \let\}=\rbrace +\def\lbrace{\delimiter"4266308 } \let\{=\lbrace +\def\rceil{\delimiter"5265307 } +\def\lceil{\delimiter"4264306 } +\def\rfloor{\delimiter"5263305 } +\def\lfloor{\delimiter"4262304 } + +\def\bigl{\mathopen\big} +\def\bigm{\mathrel\big} +\def\bigr{\mathclose\big} +\def\Bigl{\mathopen\Big} +\def\Bigm{\mathrel\Big} +\def\Bigr{\mathclose\Big} +\def\biggl{\mathopen\bigg} +\def\biggm{\mathrel\bigg} +\def\biggr{\mathclose\bigg} +\def\Biggl{\mathopen\Bigg} +\def\Biggm{\mathrel\Bigg} +\def\Biggr{\mathclose\Bigg} +\def\big#1{{\hbox{$\left#1\vbox to8.5\p@{}\right.\n@space$}}} +\def\Big#1{{\hbox{$\left#1\vbox to11.5\p@{}\right.\n@space$}}} +\def\bigg#1{{\hbox{$\left#1\vbox to14.5\p@{}\right.\n@space$}}} +\def\Bigg#1{{\hbox{$\left#1\vbox to17.5\p@{}\right.\n@space$}}} +\def\n@space{\nulldelimiterspace\z@ \m@th} + +\def\choose{\atopwithdelims()} +\def\brack{\atopwithdelims[]} +\def\brace{\atopwithdelims\{\}} + +\def\sqrt{\radical"270370 } + +\def\mathpalette#1#2{\mathchoice{#1\displaystyle{#2}}% + {#1\textstyle{#2}}{#1\scriptstyle{#2}}{#1\scriptscriptstyle{#2}}} +\newbox\rootbox +\def\root#1\of{\setbox\rootbox\hbox{$\m@th\scriptscriptstyle{#1}$} + \mathpalette\r@@t} +\def\r@@t#1#2{\setbox\z@\hbox{$\m@th#1\sqrt{#2}$} + \dimen@\ht\z@ \advance\dimen@-\dp\z@ + \mkern5mu\raise.6\dimen@\copy\rootbox \mkern-10mu \box\z@} +\newif\ifv@ \newif\ifh@ +\def\vphantom{\v@true\h@false\ph@nt} +\def\hphantom{\v@false\h@true\ph@nt} +\def\phantom{\v@true\h@true\ph@nt} +\def\ph@nt{\ifmmode\def\next{\mathpalette\mathph@nt}% + \else\let\next\makeph@nt\fi\next} +\def\makeph@nt#1{\setbox\z@\hbox{#1}\finph@nt} +\def\mathph@nt#1#2{\setbox\z@\hbox{$\m@th#1{#2}$}\finph@nt} +\def\finph@nt{\setbox\tw@\null + \ifv@ \ht\tw@\ht\z@ \dp\tw@\dp\z@\fi + \ifh@ \wd\tw@\wd\z@\fi \box\tw@} +\def\mathstrut{\vphantom(} +\def\smash{\relax % \relax, in case this comes first in \halign + \ifmmode\def\next{\mathpalette\mathsm@sh}\else\let\next\makesm@sh + \fi\next} +\def\makesm@sh#1{\setbox\z@\hbox{#1}\finsm@sh} +\def\mathsm@sh#1#2{\setbox\z@\hbox{$\m@th#1{#2}$}\finsm@sh} +\def\finsm@sh{\ht\z@\z@ \dp\z@\z@ \box\z@} + +\def\cong{\mathrel{\mathpalette\@vereq\sim}} % congruence sign +\def\@vereq#1#2{\lower.5\p@\vbox{\baselineskip\z@skip\lineskip-.5\p@ + \ialign{$\m@th#1\hfil##\hfil$\crcr#2\crcr=\crcr}}} +\def\notin{\mathrel{\mathpalette\c@ncel\in}} +\def\c@ncel#1#2{\ooalign{$\hfil#1\mkern1mu/\hfil$\crcr$#1#2$}} +\def\rightleftharpoons{\mathrel{\mathpalette\rlh@{}}} +\def\rlh@#1{\vcenter{\hbox{\ooalign{\raise2pt + \hbox{$#1\rightharpoonup$}\crcr + $#1\leftharpoondown$}}}} +\def\buildrel#1\over#2{\mathrel{\mathop{\kern\z@#2}\limits^{#1}}} +\def\doteq{\buildrel\textstyle.\over=} + +\def\log{\mathop{\rm log}\nolimits} +\def\lg{\mathop{\rm lg}\nolimits} +\def\ln{\mathop{\rm ln}\nolimits} +\def\lim{\mathop{\rm lim}} +\def\limsup{\mathop{\rm lim\,sup}} +\def\liminf{\mathop{\rm lim\,inf}} +\def\sin{\mathop{\rm sin}\nolimits} +\def\arcsin{\mathop{\rm arcsin}\nolimits} +\def\sinh{\mathop{\rm sinh}\nolimits} +\def\cos{\mathop{\rm cos}\nolimits} +\def\arccos{\mathop{\rm arccos}\nolimits} +\def\cosh{\mathop{\rm cosh}\nolimits} +\def\tan{\mathop{\rm tan}\nolimits} +\def\arctan{\mathop{\rm arctan}\nolimits} +\def\tanh{\mathop{\rm tanh}\nolimits} +\def\cot{\mathop{\rm cot}\nolimits} +\def\coth{\mathop{\rm coth}\nolimits} +\def\sec{\mathop{\rm sec}\nolimits} +\def\csc{\mathop{\rm csc}\nolimits} +\def\max{\mathop{\rm max}} +\def\min{\mathop{\rm min}} +\def\sup{\mathop{\rm sup}} +\def\inf{\mathop{\rm inf}} +\def\arg{\mathop{\rm arg}\nolimits} +\def\ker{\mathop{\rm ker}\nolimits} +\def\dim{\mathop{\rm dim}\nolimits} +\def\hom{\mathop{\rm hom}\nolimits} +\def\det{\mathop{\rm det}} +\def\exp{\mathop{\rm exp}\nolimits} +\def\Pr{\mathop{\rm Pr}} +\def\gcd{\mathop{\rm gcd}} +\def\deg{\mathop{\rm deg}\nolimits} + +\def\bmod{\mskip-\medmuskip\mkern5mu + \mathbin{\rm mod}\penalty900\mkern5mu\mskip-\medmuskip} +\def\pmod#1{\allowbreak\mkern18mu({\rm mod}\,\,#1)} + +\def\cases#1{\left\{\,\vcenter{\normalbaselines\m@th + \ialign{$##\hfil$&\quad##\hfil\crcr#1\crcr}}\right.} +\def\matrix#1{\null\,\vcenter{\normalbaselines\m@th + \ialign{\hfil$##$\hfil&&\quad\hfil$##$\hfil\crcr + \mathstrut\crcr\noalign{\kern-\baselineskip} + #1\crcr\mathstrut\crcr\noalign{\kern-\baselineskip}}}\,} +\def\pmatrix#1{\left(\matrix{#1}\right)} +\newdimen\p@renwd +\setbox0=\hbox{\tenex B} \p@renwd=\wd0 % width of the big left ( +\def\bordermatrix#1{\begingroup \m@th + \setbox\z@\vbox{\def\cr{\crcr\noalign{\kern2\p@\global\let\cr\endline}}% + \ialign{$##$\hfil\kern2\p@\kern\p@renwd&\thinspace\hfil$##$\hfil + &&\quad\hfil$##$\hfil\crcr + \omit\strut\hfil\crcr\noalign{\kern-\baselineskip}% + #1\crcr\omit\strut\cr}}% + \setbox\tw@\vbox{\unvcopy\z@\global\setbox\@ne\lastbox}% + \setbox\tw@\hbox{\unhbox\@ne\unskip\global\setbox\@ne\lastbox}% + \setbox\tw@\hbox{$\kern\wd\@ne\kern-\p@renwd\left(\kern-\wd\@ne + \global\setbox\@ne\vbox{\box\@ne\kern2\p@}% + \vcenter{\kern-\ht\@ne\unvbox\z@\kern-\baselineskip}\,\right)$}% + \null\;\vbox{\kern\ht\@ne\box\tw@}\endgroup} + +\def\openup{\afterassignment\@penup\dimen@=} +\def\@penup{\advance\lineskip\dimen@ + \advance\baselineskip\dimen@ + \advance\lineskiplimit\dimen@} +\def\eqalign#1{\null\,\vcenter{\openup\jot\m@th + \ialign{\strut\hfil$\displaystyle{##}$&$\displaystyle{{}##}$\hfil + \crcr#1\crcr}}\,} +\newif\ifdt@p +\def\displ@y{\global\dt@ptrue\openup\jot\m@th + \everycr{\noalign{\ifdt@p \global\dt@pfalse + \vskip-\lineskiplimit \vskip\normallineskiplimit + \else \penalty\interdisplaylinepenalty \fi}}} +\def\@lign{\tabskip\z@skip\everycr{}} % restore inside \displ@y +\def\displaylines#1{\displ@y + \halign{\hbox to\displaywidth{$\@lign\hfil\displaystyle##\hfil$}\crcr + #1\crcr}} +\def\eqalignno#1{\displ@y \tabskip\centering + \halign to\displaywidth{\hfil$\@lign\displaystyle{##}$\tabskip\z@skip + &$\@lign\displaystyle{{}##}$\hfil\tabskip\centering + &\llap{$\@lign##$}\tabskip\z@skip\crcr + #1\crcr}} +\def\leqalignno#1{\displ@y \tabskip\centering + \halign to\displaywidth{\hfil$\@lign\displaystyle{##}$\tabskip\z@skip + &$\@lign\displaystyle{{}##}$\hfil\tabskip\centering + &\kern-\displaywidth\rlap{$\@lign##$}\tabskip\displaywidth\crcr + #1\crcr}} + +% Definitions related to output + +\message{output routines,} + +\countdef\pageno=0 \pageno=1 % first page is number 1 +\newtoks\headline \headline={\hfil} % headline is normally blank +\newtoks\footline \footline={\hss\tenrm\folio\hss} + % footline is normally a centered page number in font \tenrm +\newif\ifr@ggedbottom +\def\raggedbottom{\topskip 10\p@ plus60\p@ \r@ggedbottomtrue} +\def\normalbottom{\topskip 10\p@ \r@ggedbottomfalse} % undoes \raggedbottom +\def\folio{\ifnum\pageno<\z@ \romannumeral-\pageno \else\number\pageno \fi} +\def\nopagenumbers{\footline{\hfil}} % blank out the footline +\def\advancepageno{\ifnum\pageno<\z@ \global\advance\pageno\m@ne + \else\global\advance\pageno\@ne \fi} % increase |pageno| + +\newinsert\footins +\def\footnote#1{\let\@sf\empty % parameter #2 (the text) is read later + \ifhmode\edef\@sf{\spacefactor\the\spacefactor}\/\fi + #1\@sf\vfootnote{#1}} +\def\vfootnote#1{\insert\footins\bgroup + \interlinepenalty\interfootnotelinepenalty + \splittopskip\ht\strutbox % top baseline for broken footnotes + \splitmaxdepth\dp\strutbox \floatingpenalty\@MM + \leftskip\z@skip \rightskip\z@skip \spaceskip\z@skip \xspaceskip\z@skip + \textindent{#1}\footstrut\futurelet\next\fo@t} +\def\fo@t{\ifcat\bgroup\noexpand\next \let\next\f@@t + \else\let\next\f@t\fi \next} +\def\f@@t{\bgroup\aftergroup\@foot\let\next} +\def\f@t#1{#1\@foot} +\def\@foot{\strut\egroup} +\def\footstrut{\vbox to\splittopskip{}} +\skip\footins=\bigskipamount % space added when footnote is present +\count\footins=1000 % footnote magnification factor (1 to 1) +\dimen\footins=8in % maximum footnotes per page + +\newinsert\topins +\newif\ifp@ge \newif\if@mid +\def\topinsert{\@midfalse\p@gefalse\@ins} +\def\midinsert{\@midtrue\@ins} +\def\pageinsert{\@midfalse\p@getrue\@ins} +\skip\topins=\z@skip % no space added when a topinsert is present +\count\topins=1000 % magnification factor (1 to 1) +\dimen\topins=\maxdimen % no limit per page +\def\@ins{\par\begingroup\setbox\z@\vbox\bgroup} % start a \vbox +\def\endinsert{\egroup % finish the \vbox + \if@mid \dimen@\ht\z@ \advance\dimen@\dp\z@ + \advance\dimen@12\p@ \advance\dimen@\pagetotal + \ifdim\dimen@>\pagegoal\@midfalse\p@gefalse\fi\fi + \if@mid \bigskip\box\z@\bigbreak + \else\insert\topins{\penalty100 % floating insertion + \splittopskip\z@skip + \splitmaxdepth\maxdimen \floatingpenalty\z@ + \ifp@ge \dimen@\dp\z@ + \vbox to\vsize{\unvbox\z@\kern-\dimen@}% depth is zero + \else \box\z@\nobreak\bigskip\fi}\fi\endgroup} + +\output{\plainoutput} +\def\plainoutput{\shipout\vbox{\makeheadline\pagebody\makefootline}% + \advancepageno + \ifnum\outputpenalty>-\@MM \else\dosupereject\fi} +\def\pagebody{\vbox to\vsize{\boxmaxdepth\maxdepth \pagecontents}} +\def\makeheadline{\vbox to\z@{\vskip-22.5\p@ + \line{\vbox to8.5\p@{}\the\headline}\vss}\nointerlineskip} +\def\makefootline{\baselineskip24\p@\line{\the\footline}} +\def\dosupereject{\ifnum\insertpenalties>\z@ % something is being held over + \line{}\kern-\topskip\nobreak\vfill\supereject\fi} + +\def\pagecontents{\ifvoid\topins\else\unvbox\topins\fi + \dimen@=\dp\@cclv \unvbox\@cclv % open up \box255 + \ifvoid\footins\else % footnote info is present + \vskip\skip\footins + \footnoterule + \unvbox\footins\fi + \ifr@ggedbottom \kern-\dimen@ \vfil \fi} +\def\footnoterule{\kern-3\p@ + \hrule width 2truein \kern 2.6\p@} % the \hrule is .4pt high + +% Hyphenation, miscellaneous macros, and initial values for standard layout +%\message{hyphenation} + +%\input hyphen + +\def\magnification{\afterassignment\m@g\count@} +\def\m@g{\mag\count@ + \hsize6.5truein\vsize8.9truein\dimen\footins8truein} + +\def\tracingall{\tracingonline\@ne\tracingcommands\tw@\tracingstats\tw@ + \tracingpages\@ne\tracingoutput\@ne\tracinglostchars\@ne + \tracingmacros\tw@\tracingparagraphs\@ne\tracingrestores\@ne + \showboxbreadth\maxdimen\showboxdepth\maxdimen\errorstopmode} + +\def\showhyphens#1{\setbox0\vbox{\parfillskip\z@skip\hsize\maxdimen\tenrm + \pretolerance\m@ne\tolerance\m@ne\hbadness0\showboxdepth0\ #1}} + +\normalbaselines\rm % select roman font +\nonfrenchspacing % punctuation affects the spacing +\catcode`@=12 % at signs are no longer letters + +\def\fmtname{plain}\def\fmtversion{1.5CM} % identifies the current format
\ No newline at end of file diff --git a/macros/inrstex/inrstex/plainmod.tex b/macros/inrstex/inrstex/plainmod.tex new file mode 100644 index 0000000000..feeb7cf682 --- /dev/null +++ b/macros/inrstex/inrstex/plainmod.tex @@ -0,0 +1,8 @@ +%====== bugs in plain +\catcode`\ =10 % version in plain does not stick + +%======= modifications to plain ======= +\let\newcount=\n@ewcount + % needs to be inner for assigning counts to such things as problems + % when part of subdocuments +
\ No newline at end of file diff --git a/macros/inrstex/inrstex/plaipars.tex b/macros/inrstex/inrstex/plaipars.tex new file mode 100644 index 0000000000..ab0309716b --- /dev/null +++ b/macros/inrstex/inrstex/plaipars.tex @@ -0,0 +1,127 @@ +% ======== Plain.tex parameters ... set in plain and initex ==== + +% All of TeX's numeric parameters are listed here, +% Most are untouched from plain.tex but some are indeed modified. +% The order is not the same as in plain.tex + +% These parameters are actually changed. + +\widowpenalty = 400 % needs to be more than 100 +\clubpenalty = 800 % needs to be more than 100 + +% --- Penalties --- + +% \displaywidowpenalty=50 +% \brokenpenalty=100 +% \predisplaypenalty=10000 +% \postdisplaypenalty=0 +% \interlinepenalty=0 +% \interdisplaylinepenalty=100 +% \interfootnotelinepenalty=100 + +% \pretolerance=100 +% \tolerance=200 % INITEX sets this to 10000 +% \hbadness=1000 +% \vbadness=1000 +% \linepenalty=10 +% \hyphenpenalty=50 +% \exhyphenpenalty=50 +% \binoppenalty=700 +% \relpenalty=500 +% \floatingpenalty=0, set during \insert +% \outputpenalty=0, set before TeX enters \output +% \doublehyphendemerits=10000 +% \finalhyphendemerits=5000 +% \adjdemerits=10000 + +% ---- paragraph control ---- +% \looseness=0, cleared by TeX after each paragraph +% \uchyph=1 +% \parindent=20pt +% \hangindent=0pt, zeroed by TeX after each paragraph +% \baselineskip=0pt, changed by \normalbaselines +% \lineskip=0pt, changed by \normalbaselines +% \parskip=0pt plus 1pt +% \parfillskip=0pt plus 1fil +% \normalbaselineskip=12pt +% \normallineskip=1pt +% \normallineskiplimit=0pt + +% ----- Sizes/overfull boxes ---- +% \hfuzz=0.1pt % ... \finalversion mod +% \vfuzz=0.1pt % ... \finalversion mod +% \overfullrule=5pt % ... \finalversion mod +% \hsize=6.5in % ... pagsty.tex and inrsdef.tex +% \vsize=8.9in % ... pagsty.tex and inrsdef.tex +% \maxdepth=4pt +% \splitmaxdepth=\maxdimen +% \boxmaxdepth=\maxdimen +% \lineskiplimit=0pt, changed by \normalbaselines +% \leftskip=0pt +% \rightskip=0pt +% \topskip=10pt +% \splittopskip=10pt + + +% ------- Internal Math parms ----- +% \delimitershortfall=5pt +% \nulldelimiterspace=1.2pt +% \scriptspace=0.5pt +% \mathsurround=0pt +% \thinmuskip=3mu +% \medmuskip=4mu plus 2mu minus 4mu +% \thickmuskip=5mu plus 5mu +% \jot=3pt + +% ---- Display Math Spacing ---- +% \predisplaysize=0pt, set before TeX enters $$ +% \displaywidth=0pt, set before TeX enters $$ +% \displayindent=0pt, set before TeX enters $$ +% \abovedisplayskip=12pt plus 3pt minus 9pt +% \abovedisplayshortskip=0pt plus 3pt +% \belowdisplayskip=12pt plus 3pt minus 9pt +% \belowdisplayshortskip=7pt plus 3pt minus 4pt + + +% \hoffset=0pt % modified by \leftmargin +% \voffset=0pt % not used in INRSTeX + +% \tabskip=0pt +% \spaceskip=0pt +% \xspaceskip=0pt + +% ------ Vertical Spacing ----- +% \smallskipamount=3pt plus 1pt minus 1pt +% \medskipamount=6pt plus 2pt minus 2pt +% \bigskipamount=12pt plus 4pt minus 4pt + +% ------ Debugging/Misc ----- +% \pausing=0 +% \tracingonline=0 +% \tracingmacros=0 +% \tracingstats=0 +% \tracingparagraphs=0 +% \tracingpages=0 +% \tracingoutput=0 +% \tracinglostchars=1 +% \tracingcommands=0 +% \tracingrestores=0 +% \globaldefs=0 +% \maxdeadcycles=25 % INITEX does this +% \hangafter=1 % INITEX does this, also TeX after each paragraph +% \fam=0 +% \mag=1000 % INITEX does this +% \escapechar=`\\ % INITEX does this +% \defaulthyphenchar=`\- +% \defaultskewchar=-1 +% \endlinechar=`\^^M % INITEX does this +% \newlinechar=-1 +% \delimiterfactor=901 +% \time=now % TeX does this at beginning of job +% \day=now % TeX does this at beginning of job +% \month=now % TeX does this at beginning of job +% \year=now % TeX does this at beginning of job +% \showboxbreadth=5 +% \showboxdepth=3 + + diff --git a/macros/inrstex/inrstex/prelhead.tex b/macros/inrstex/inrstex/prelhead.tex new file mode 100644 index 0000000000..e14d1850f8 --- /dev/null +++ b/macros/inrstex/inrstex/prelhead.tex @@ -0,0 +1,31 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +%============ Preface/Prelude macros =========== +% this is the first of the environment macros. The problem, among others is +% that the headers, footers, pagenumbering, etc are different in preface of +% the document than elsewhere. + +% These attempt to set this up in such a way +% that they will work with books and reports .... it may not be possible and +% perhaps they should be parchuted in as a complete package for reports +% and books ... There will be more put in these as time goes on +% these are the paperstyle/report style macros +\newtoks\everyprelude +\newtoks\e@veryprelude +\def\beginprelude{\begingroup\the\e@veryprelude\the\everyprelude} + +\def\preludeheadformat#1{\centerline{\sheadfont #1}\vskip 1cm} +\newtoks\preludetitle +\def\preludeheadmark{\mark{\hfill \the\preludetitle\hfill}} +\def\preludehead#1{ \preludetitle = {#1} + \writeterm{< }{\the\preludetitle}{ >} + \preludeheadformat{#1} + \preludeheadmark + \writelistfile{toc}{\prtocout}{}{#1} + } + +\def\endprelude{\endgroup\ejectpage} + +% \def\prtocout{\string\prtoc} % actually set in inrsdef.tex diff --git a/macros/inrstex/inrstex/secthead.tex b/macros/inrstex/inrstex/secthead.tex new file mode 100644 index 0000000000..9a8a7de40d --- /dev/null +++ b/macros/inrstex/inrstex/secthead.tex @@ -0,0 +1,228 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + + +% ========== Section, Chapter Headings =========== +% These macros have several parts, +% -- The format of the heading. +% -- The automatic numbering. +% -- The writing of a list file for automatic table of contents. +% -- The referencing in the text ... ie reference number styles. + + +% ======== Counter allocation and Number styles ========= +%========= Autonumbering allocations and styles for sections ... ==== +% Allocate the counters for the chapters, sections, figures, etc. +% These counters are updated globally. +\newcount\chnum %\chnum=0 \def\chnumform{\the\chnum} +\newcount\shnum %\shnum=0 \def\shnumform{\the\shnum} +\newcount\sshnum %\sshnum=0 \def\sshnumform{\the\sshnum} +\newcount\ssshnum %\ssshnum=0 \def\ssshnumform{\the\ssshnum} + +% ======== autonumbering options and styles ========== +% The following stay unchanged for different numbering options +\def\chtagrefformat{\chnumform} +\def\chtagreplaceformat{\Chapter \chtagrefformat} + +\def\numberbychapter{\s@pecialnumberresetlevel=2 + \def\shtagreplaceformat{\shtagrefformat} + \def\sshtagreplaceformat{\sshtagrefformat} + \def\ssshtagreplaceformat{\ssshtagrefformat} + \def\shtagrefformat{\chnumform.\shnumform} %section + \def\sshtagrefformat{\chnumform.\shnumform.\sshnumform} %subsection + \def\ssshtagrefformat{\chnumform.\shnumform.\sshnumform %subsubsection + .\ssshnumform} + \def\Prerefform{\chnumform.} + \def\Postrefform{}} + +\def\numberbysection{\s@pecialnumberresetlevel=3 + \def\shtagreplaceformat{\shtagrefformat.} + \def\sshtagreplaceformat{\sshtagrefformat} + \def\ssshtagreplaceformat{\ssshtagrefformat} + \def\shtagrefformat{\shnumform} %section + \def\sshtagrefformat{\shnumform.\sshnumform} %subsection + \def\ssshtagrefformat{\shnumform.\sshnumform %subsubsection + .\ssshnumform} + \def\Prerefform{\shnumform.} + \def\Postrefform{}} + +\def\specialnumberscontinuous{\def\Prerefform{} + \def\Postrefform{} + \s@pecialnumberresetlevel=1} + + +% This macro resets the counters for equations, figures, etc. +% depending on the header level. +% #1 - header level 1=chapter +% 2=section +% 3=subsection +% 4=subsubsection +% \a@utonumberresetlevel = 1 sequential numbering +% 2 chapter numbering +% 3 section numbering +% 4 subsection numbering, etc. +\newcount\s@pecialnumberresetlevel \s@pecialnumberresetlevel=1 +\def\updatespecialnumbers#1{ + \ifnum #1 < \s@pecialnumberresetlevel + \the\s@presetlist + \fi} + + +% ============ Section head format styles and List generation ======= +% +% The calling format is +% \s<ss>head{<number>}{<Title>} +% Subsequent lines are indented one quad more than the size of the <number> +% There is an autonumbering/autoreferencing feature in these macros. +% If the autonumber switch +% is true, then the first argument represents a tag instead of a number. + +% \nosheadbreak is used when multiple heads start a section +\newif\ifs@headbreak \s@headbreaktrue +\def\nosheadbreak{\s@headbreakfalse} + + +% ========= Section heading command forms ======== +% #1 top skip +% #2 bottom skip +% #3 font +% #4 <number> +% #5 <text> +% #6 table of contents command form +% #7 <item>, placed between <number> and <text> + +\newskip\prsheadskip %\prsheadskip= 6ex plus 2ex minus 2ex +\newskip\posheadskip %\posheadskip= 2ex +\newskip\prssheadskip % \prssheadskip= 5ex plus 1.8ex minus 1.8ex +\newskip\possheadskip %\possheadskip= 2ex +\newskip\prsssheadskip %\prsssheadskip= 3ex plus 1ex minus 1ex +\newskip\posssheadskip %\posssheadskip= 2ex +\newskip\prdsssheadskip %\prdsssheadskip= 3ex plus 1ex minus 1ex +\newskip\podsssheadskip %\podsssheadskip= 2ex + +%this is the format form for those that want to perform radical surgery +%the parameters must be as shown and will have that meaning +% #1 font (=#3); #2 number (=#4) ; #3 <text> (=#5); #4 number/text sep (=#7) +% check on \t@agtext suppresses space when there is no number +\def\gensheadformat#1#2#3#4{\ifx\t@agtext\empty\setbox0=\hbox{}\else + \setbox0=\hbox{#1#2#4}\fi + \vbox{\veryraggedright \normalbaselines + \hangindent 1\wd0 \hangafter 1\noindent #1\unhbox0 #3}} + + +\def\g@head#1#2#3#4#5#6#7{\ifs@headbreak \goodbreak \vskip #1\else + \removelastskip\fi + \s@headbreaktrue + \toks0={#5}%prevents expansion inside title + \writeterm{<#4}{ }{\the\toks0>} + \gensheadformat{#3}{#4}{#5}{#7} + \nobreak + \w@ritetag\nobreak + \writelistfile{toc}{#6}{#4}{#5} + \vskip #2 \vskip -\parskip} + +\newtoks\sectionname \newtoks\sectionnumtag +\def\sheadmark{\mark{\the\sectionname}} % defaults to title +\def\innershead #1#2{\sectionnumtag = {#1} \sectionname = {#2} + \ifautonumber + \global\advance \shnum by 1 + \global\sshnum=0 + \global\ssshnum=0 + \updatespecialnumbers{2} + \xdef\w@ritetag{\noexpand\newtag{#1}{\shtagrefformat}} + \edef\t@agtext{\shtagreplaceformat} + \else + \edef\t@agtext{#1} + \xdef\w@ritetag{\relax} + \fi + \sheadmark %sections are marked for header titles + \g@head{\prsheadskip}{\posheadskip + }{\sheadfont}{\t@agtext}{#2}{\shtocout + }{\quad}} +\def\innersshead #1#2{\ifautonumber + \global\advance \sshnum by 1 + \global\ssshnum=0 + \updatespecialnumbers{3} + \xdef\w@ritetag{\noexpand\newtag{#1}{\sshtagrefformat}} + \edef\t@agtext{\sshtagreplaceformat} + \else + \edef\t@agtext{#1} + \xdef\w@ritetag{\relax} + \fi + \g@head{\prssheadskip}{\possheadskip + }{\ssheadfont}{\t@agtext}{#2}{\sshtocout + }{\quad}} +\def\innerssshead #1#2{\ifautonumber + \global\advance \ssshnum by 1 + \updatespecialnumbers{4} + \xdef\w@ritetag{\noexpand\newtag{#1}{\ssshtagrefformat}} + \edef\t@agtext{\ssshtagreplaceformat} + \else + \edef\t@agtext{#1} + \xdef\w@ritetag{\relax} + \fi + \g@head{\prsssheadskip}{\posssheadskip + }{\sssheadfont}{\t@agtext}{#2}{\ssshtocout + }{\quad}} +\def\innerdssshead #1{\xdef\w@ritetag{\relax}\g@head{\prdsssheadskip}{\podsssheadskip + }{\dsssheadfont}{}{#1}{\dssshtocout}{}} +\outer\def\shead#1#2{\innershead{#1}{#2}} +\outer\def\sshead#1#2{\innersshead{#1}{#2}} +\outer\def\ssshead#1#2{\innerssshead{#1}{#2}} +\outer\def\dssshead#1{\innerdssshead{#1}} + +% ======== chead ========== +% The chapter head has a different format entirely +\newtoks\chaptername + +%this is the form of the present chapter head +%parameters are #1 is the title text \cheadfont, \chtagreplaceformat + +%\def\Chapter{Chapter } see English/french titles + +% indicates if chapters exist ... default is that they do not +% the first call to a \chead sets it true ... or it may be done in the style. +\newif\ifnochapter %\nochaptertrue + + +\def\cheadformat#1#2{\vglue 2.5cm + \line{$\vcenter{\hbox{\cheadfont + #1 + \vrule height 3ex depth 1ex width 0pt + }}\hss + \vcenter{\halign{&\cheadfont\hss + ##\vrule height 3ex depth 1ex width 0pt\cr + #2\crcr}}$} + \vskip 2.5cm} +\def\chapterstartform{} +\def\chead#1#2{\numberbychapter\nochapterfalse + \ifautonumber + \global\advance\chnum by 1 + \global\shnum=0 + \global\sshnum=0 + \global\ssshnum=0 + \xdef\w@ritetag{\noexpand\newtag{#1}{\chtagrefformat}} + \updatespecialnumbers{1} + \edef\t@agtext{\chtagreplaceformat} + \else + \edef\t@agtext{#1} + \xdef\w@ritetag{\relax} + \fi + \chaptername={#2} % for term write only ... includes \cr + \writeterm{<\t@agtext}{ }{\the\chaptername>} + \chaptername={\def\cr{ }#2} + \chapterstartform % here so both the number and title set + \cheadformat{\t@agtext}{#2} % format of chead + \w@ritetag + \writelistfile{toc}{\chtocout}{\t@agtext}{#2} + } + +% ========== Toc Out Forms =========== +% actually set in inrsdef.tex + +%\def\shtocout{\string\shtoc} +%\def\sshtocout{\string\sshtoc} +%\def\ssshtocout{\string\ssshtoc} +%\def\dssshtocout{\string\dssshtoc} +%\def\chtocout{\string\chtoc}
\ No newline at end of file diff --git a/macros/inrstex/inrstex/specform.tex b/macros/inrstex/inrstex/specform.tex new file mode 100644 index 0000000000..c735d87d7b --- /dev/null +++ b/macros/inrstex/inrstex/specform.tex @@ -0,0 +1,37 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +% added PostScript forms of BNR Reports + +%========== Special styles =============== + +%----- Special Document Styles ------- +% INRSTeX learns of the existence of special document styles +% from spformats.tex +% and the actual code is in the particular name given +% The general form of a call for a specific style is \<...>style +% This call should translate into \input <filename> which should then +% redefine \<...>style and finally call it. +% Two special styles available through INRSTeX are a \bookstyle and a +% \bnrreportstyle. The latter is an example of a rather complex report +% style. Care should be taken that the appropriate messages are generated in +% the two languages. This means that the messages must be put in the +% english.tex and francais.tex files. These should be placed in inputs. They +% are read when \englishversion or \versionfrancaise are executed. + +% This is list of the special formats in INRSTeX. It is assumed that +% there is an actual format file for each of them. Paperstyle is the default +% for INRSTeX and this is actually embedded in the inrs.fmt file +% extra \relax forces the input before it expands the next token + +\def\paperstyle{\input papersty \relax} +\def\bookstyle {\input booksty \relax} +\def\bnrreportstyle{\input bnrsty \relax} % special local form +\def\bnrreportstyleps{\input bnrsty_ps \relax} % special local form +\def\inrsreportstyle{\input inrssty \relax} +\let\formatjournal=\paperstyle +\let\formatlivre=\bookstyle +\let\formatbnr = \bnrreportstyle % special local form +\let\formatbnrps = \bnrreportstyleps % special local form +\let\formatinrs =\inrsreportstyle diff --git a/macros/inrstex/inrstex/subdoc.tex b/macros/inrstex/inrstex/subdoc.tex new file mode 100644 index 0000000000..80ca49abf6 --- /dev/null +++ b/macros/inrstex/inrstex/subdoc.tex @@ -0,0 +1,43 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +%======== macros for handling multiple part documents ======= +% documents may be broken down to the chapter or section level + + +% each part of the document will start with the command +% \subdocument +% it simply allows for the insertion of special macros or other stuff +% that normally would be brought in only once. In addition, the page numbering +% can be modified at this point to make sense at this point. + +% parameters should be entered to tell whether the sub document is just a +% section, chapter, or a section in a chapter. +% anything can be set inside the command +% For a chapter (or series) \following\chnum = <chapter number> +% \the\chaptername = {<Chapter name>} +% \nochaptersfalse +% \pagenumber [=] <pagenumber> + +%For a section in a document without chapters +% \following\shnum = <section number> +% \pagenumber [=] <pagenumber> + +% for a section in a document with chapters put both together +% it is assumed that the subdocument will start with a section or +% chead. The toplevel will set \subdocumentfalse immediately + +% this is here because it is most useful in sub document context +% multiple documents basically, \following\chnum =2 will set \chnum =1 + +\def\following#1{\def\a@df{\global\advance #1 by -1\relax} + \afterassignment \a@df \global#1 } + +\newif\ifs@ubdocument \s@ubdocumenttrue +\def\subdocumentmacros#1{\ifs@ubdocument #1 \fi\s@ubdocumentfalse} +\outer\def\inputsubdocument #1{\begingroup + \s@ubdocumentfalse + \let\done=\relax + \input #1 \relax + \endgroup} diff --git a/macros/inrstex/inrstex/tables.tex b/macros/inrstex/inrstex/tables.tex new file mode 100644 index 0000000000..144169e9a2 --- /dev/null +++ b/macros/inrstex/inrstex/tables.tex @@ -0,0 +1,106 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. +% \left and \right redefined to remove primitive conflict MJF Oct 87 + + +%============= Table making macros ============ +% the basic format is +% \begintable +% <special definitions for this table> +% \table format <format as in halign except it needs ## instead of #> +% \br{<struts>} .... | .... | .... " ..... | .... \er{<stuff>} +% \- +% ....etc + +% these macros require that | and " be active during the entire +% document to work correctly. ... although some definitions specifically +% set them active +\newcount\a@lignstate \a@lignstate=0 %0 -- between lines after \cr + %1 -- beginning of line in \bl + %2 -- midline + %3 -- endline in \el +\def\hssf{\hskip 0pt plus 1fill minus 1fill\relax} +\def\n@ewaligndefs{\def\center##1{\hssf ##1\hssf\null} + \def\left##1{\ifmmode\l@f##1\else##1\hssf\null\fi} + \def\right##1{\ifmmode\r@t##1\else\hssf ##1\null\fi}} +\def\s@avelr{\let\l@f=\left\let\r@t=\right} +\newdimen\trulesize +\let\tr=\trulesize +\trulesize = .4pt +\def\zerocenteredbox#1{\ifmmode \ifinner \setbox2 =\hbox{$#1$}\else + \setbox2 =\hbox{$\displaystyle#1$}\fi + \else \setbox2 =\hbox{#1}\fi + \setbox0=\hbox{\lower.5ex\hbox{$\vcenter{\box2}$}}\ht0=0pt\dp0 =0pt\box0} +\let\zb=\zerocenteredbox + +%this macro creates a strut with the that is higher by #2 and deeper than #3 +% than the natural size of #1 ... the sizes may be negative +\def\modifystrut#1#2#3{\setbox4=\hbox{#1}\dimen0=\ht4 + \advance \dimen0 by #2 \dimen2 = \dp4 + \advance \dimen2 by #3 + \vrule width 0pt height \dimen0 depth \dimen2} +\let\mst=\modifystrut +%general math form +\def\math#1{\relax $\relax#1\relax$} +\def\displaymath #1{\relax$\displaystyle #1\relax$} + + +% +\newskip\tcs +\newtoks\tablespread +\newskip\midtabglue \midtabglue = 0pt plus 1fill +\newtoks\everytable \everytable = {\relax} + +{\catcode`\|=\active \catcode`\" = \active + \gdef\begintable{\vbox\bgroup \s@avelr \tcs=.5em % uses font in force when entering + \catcode`\|=\active + \catcode`\"=\active + \def\:{\relax \vrule height 2.5ex depth .9ex width 0pt} + \def\-{\ifcase\a@lignstate \fulltablerule{\tr} + \else + \thrule{\tr}\fi} + \let\t@xx =\relax % for premature expansions + \everycr={\noalign{\global\a@lignstate=0}} + \def\fulltablerule##1{\noalign{\hrule height + ##1}} + \def\thrule##1{\omit\leaders\hrule height ##1\hfill} + \def\center{\hskip\tcs\hss ########\hss\hskip\tcs} + \def\left{\hskip\tcs ########\hss\hskip\tcs} + \def\right{\hskip\tcs\hss ########\hskip\tcs} + \def\sprule{\tvrule{2.5\tr}} + \def|{\ifcase\a@lignstate \def\t@xx{\tvrule{\tr}}\or + \def\t@xx{\tvrule{\tr}}\or + \def\t@xx{\unskip&\tvrule{\tr}&}\else + \def\t@xx{\tvrule{\tr}}\fi\t@xx} + \def\|{\ifcase\a@lignstate \def\t@xx{\sprule}\or + \def\t@xx{\sprule}\or + \def\t@xx{\unskip&\sprule&}\else + \def\t@xx{\sprule}\fi\t@xx} + \def"{&########&} % for table format + \def\br##1{\global\a@lignstate=1 ##1\unskip\global\a@lignstate=2&} + \def\er##1{\global\a@lignstate=3\unskip&##1\unskip + \global\a@lignstate=0\cr} + \def\tvrule##1{\hss\vrule width ##1\hss} + \def~{\penalty\@M \hphantom{0}} % changes ~ to be phantom of width .5em + \tablespread = {} + \the\everytable + } + \gdef\begintableformat #1\endtableformat{\offinterlineskip \tabskip = 0pt + \edef\t@blform{####\tabskip =\midtabglue &####\tabskip=0pt\cr} %adds rules front and back + \n@ewaligndefs + \def"{\ifcase\a@lignstate \def\t@xx{\relax}\or + \def\t@xx{\relax}\or + \def\t@xx{\unskip&&}\else + \def\t@xx{\relax}\fi\t@xx} + \edef\h@align{\halign \the\tablespread} + \h@align\bgroup\span\t@blform} + }% " and | are always active in INRSTEX + +\def\use#1{\omit\mscount=#1 \advance\mscount by -1\multiply\mscount by2 + \loop\ifnum\mscount>1 \sp@n\repeat + \ifnum\mscount>0 \span \else \relax \fi} +\let\sp=\span +\let\om = \omit +\def\sa#1{\setbox0=\hbox{#1}\hbox to \wd0{}} +\def\endtable{\crcr\egroup\egroup} diff --git a/macros/inrstex/inrstex/tag.tex b/macros/inrstex/inrstex/tag.tex new file mode 100644 index 0000000000..dc16574388 --- /dev/null +++ b/macros/inrstex/inrstex/tag.tex @@ -0,0 +1,93 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +% ============ Tag Generation ========== +% These are the macros that generate the actual tags. They are used in +% automatic equation numbering, section heads and any \auto...num{tag} form. + + +% ============== Symbol that is dropped in when a tag is undefined ====== +\def\undefsymbol{\hbox{\vrule width 1em height .7em}} + +% ========== Tag types ============ +% Two types of tags are now supported. They differ in that one form is +% immediate, and hence can refer only to things that have been defined while +% the other is delayed until the page is printed. These latter sometimes do +% migrate all the way out of internal boxes. +% \ptag is the delayed form and \tag is the immediate form + +% page tags may turn out to be rather expensive. They are turned on through +% the following form +\newif\ifp@tag +\def\pagetagson{\p@tagtrue} % this may require more work later +\def\pagetagsoff{\p@tagfalse} % this is the default + + +% ============ Tag macros ========= +% #1 is tag string +% #2 is tag value (defined as the macro ":@#1") + +\def\tag#1#2{\expandafter\xdef\csname :@#1\endcsname{#2}} + +% #1 is tag string +% #2 is tag value (defined as the macro ";@#1") + +\def\ptag#1#2{\expandafter\xdef\csname ;@#1\endcsname{#2}} + +% \newttag makes an immediate \tag and writes it out immediately + +\def\newttag#1#2{\def\next{#1}\ifx \next\empty\tag{#1}{#2}\else + \tag{#1}{#2}\ift@agfilein \immediate\write\t@agfile + {\string\tag{#1}{#2}}\fi\proofmargin{#1 ==> #2}\fi} + +% \newptag makes a page tag by writing it out to a file .. it is +% not made immediately + + +\def\newptag#1{\def\next{#1}\ifx \next\empty\relax\else + \ift@agfilein + {\let\folio=\relax\xdef\next{\write\t@agfile + {\string\ptag{#1}{\folio}}}}\else\xdef\next{\relax}\fi + \fi\next} + +\def\newtag#1#2{\newttag{#1}{#2}\ifp@tag\newptag{#1}\fi} + + +%undefined tag message + +%\def\undeftagmessage#1{ <<<tag:#1 = undefined>>> } see english/french titles + +% Tag reference macro +% #1 is the string that was originally used in the tag +\def\r@ef#1#2{\def\doit{\ifundefined{#2#1}\writeterm{\undeftagmessage{#1}}{}{}\proofmargin + {tag: #1 <-- undefined}\undefsymbol\else + \proofmargin{ #1 <-- \csname #2#1\endcsname + }\csname #2#1\endcsname + \fi}\relax + \ifautoreference \doit \else#1\fi} +\def\q@ref#1#2{\ifautoreference \csname #2#1\endcsname\else#1\fi} + +% ========= Normal Section Tag References =========== +\def\ref#1{\r@ef{#1}{:@}} +\def\quietref#1{\q@ref{#1}{:@}} + +% ======== Page References ========== +\def\pageref#1{\r@ef{#1}{;@}} +\def\pagequietref#1{\q@ref{#1}{;@}} +\let\pref=\pageref +\let\qref=\quietref +\let\pqref=\pagequietref + + +% General autotag generation, used for equation numbers, figure numbers etc. +% #1 = tag +% #2 = counter +% #3 = tag format +% #4 = auto text +% #5 = noauto text +% does not generate text if \silenttrue +\def\a@utotag#1#2#3#4#5{\ifautonumber + \global\advance #2 by 1 \relax + \newtag{#1}{#3}\edef\t@ext{#4}\else \edef\t@ext{#5}\fi + \ifsilent\else\t@ext\fi} diff --git a/macros/inrstex/inrstex/tocform.tex b/macros/inrstex/inrstex/tocform.tex new file mode 100644 index 0000000000..86999ba0d1 --- /dev/null +++ b/macros/inrstex/inrstex/tocform.tex @@ -0,0 +1,108 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +% ======== Table of Contents, Figures, and Tables -- Examples ====== +% The "list" file is written using \writelistfile and the \shtoc ... +% are used to create the actual table of contents, figures, tables. +% Extensions to other forms should be obvious. + + + +%====== general structure for making table of contents, tables, etc. +% ------ table of contents is slightly different because it refers to itself + +% file names (defaults) \jobname.toc --- table of contents +% \jobname.fig --- list of figures +% \jobname.tbl --- list of tables + +% to initiate a build of any of these it is only necessary to +% \openlistfile{<...>} --- This should be only done once +% when this is done a <..>list flag or switch is also created + +% To print any of these lists it is only necessary to +% use the following format +% \begingroup +% \def\sshtoc#1#2#3{} % omits or specially defines . and any other +% \preludehead{<name list>} % .... or what you wish +% \maketoclist % This is for toc files only ... self referential +% \input \jobname.<extension> +% \ejectpage % if desired +% \endgroup + +% a few special macros are defined for toc/list file management (VAX/VMS) + +\newif\ifnotdefined % \ifundefined is sensitive if it fails +\def\checklistopen#1{\notdefinedfalse\ifundefined{if#1list}\notdefinedtrue\relax + \fi} +\def\c@k#1{\csname if#1list\endcsname \jobname.#1;-1 \else \jobname.#1 \fi} +\def\newlistfilename#1{\ifnotdefined \jobname.#1 \else \c@k{#1} \fi} + % \c@k is necessary because of the way TeX expands + +\newtoks\inputtocfiles +\inputtocfiles = {\checklistopen{toc}\inputwithcheck{\newlistfilename{toc}}} +\def\maketoclist{\begingroup\captionbodyoff\the\inputtocfiles\endgroup} + +\newtoks\inputfigfiles +\inputfigfiles = {\checklistopen{fig}\inputwithcheck{\newlistfilename{fig}}} +\def\makefiglist{\begingroup\captionbodyoff\the\inputfigfiles\endgroup} + +\newtoks\inputtblfiles +\inputtblfiles = {\checklistopen{tbl}\inputwithcheck{\newlistfilename{tbl}}} +\def\maketbllist{\begingroup\captionbodyoff\the\inputtblfiles\endgroup} + + +% ======== macro forms for toc, fig, tbl ========= +% Some of these are defined as null to suppress printing of the +% corresponding entries. +% #1 Number +% #2 Text +% #3 Page number +% ========== toc macro forms ========== +% special forms that allow for multiple line titles ... auto line breaking +% only +%#1--indent #2 --section number #3--title +% #4-- pagenumber +\newdimen\t@ocsize +\newdimen\righttocindent %\righttocindent = 5em + +\def\tocfill{\leaders\hbox to .5em{\hss.\hss}\hfill\hskip .5em} + +% default font is \rm ... may be changed in the actual \figtoc ...etc +% macros as given below. + +\def\tocbox#1#2#3#4{\line{\rm \t@ocsize=\hsize + \setbox2=\hbox {\hskip#1\relax#2\quad} + \advance\t@ocsize by -\righttocindent + \vbox{\hsize \t@ocsize \normalbaselines + \setstrut + \hangindent 1\wd2 + \hangafter 1 \def\cr{\linebreak}\frenchspacing + \veryraggedright \parindent=0pt\leavevmode + \box2\relax#3\strut\null\nobreak\rm\tocfill + #4\hskip -\righttocindent\strut}\hss}} + +% ---------- figure forms ------- +\def\figtoc#1#2#3{ \vskip 1ex plus 1pt minus 1pt + \tocbox{2em}{#1}{#2}{#3}} +% ---------- table forms ------- +\let\tbltoc=\figtoc + +\def\prtoc#1#2#3{ \vskip 1ex plus 1pt minus 1pt + \tocbox{0em}{\it#1}{\it#2}{\it#3}} + +\def\chtoc#1#2#3{ \goodbreak\vskip 2ex plus 1pt minus 1pt + \tocbox{0em}{\sheadfont#1}{\sheadfont\def\cr{ }#2}{#3}} +\def\shtoc#1#2#3{ \vskip 1ex plus 1pt minus 1pt + \tocbox{2em}{#1}{#2}{#3}} +\def\sshtoc#1#2#3{ \vskip .5ex plus 1pt minus 1pt + \tocbox{4em}{#1}{#2}{#3}} +\def\intssshtoc#1#2#3{ \vskip .3ex plus 1pt minus 1pt + \tocbox{6em}{#1}{#2}{#3}} +\def\intdssshtoc#1#2#3{ \vskip 1pt plus 1pt minus 1pt + \tocbox{8em}{#1}{#2}{#3}} +\def\ssshtoc#1#2#3{} +\def\dssshtoc#1#2#3{} + +% the upper two forms are defaulted to be omitted. They are easily included +% with a \let\ssshtoc = \intssshtoc ... etc .
\ No newline at end of file diff --git a/macros/inrstex/inrstex/writdos.tex b/macros/inrstex/inrstex/writdos.tex new file mode 100644 index 0000000000..124ef3b99c --- /dev/null +++ b/macros/inrstex/inrstex/writdos.tex @@ -0,0 +1,39 @@ +% This is a file that modifies the file nameing conventions in INRSTeX +% for IBM DOS 3.0 ... It works in conjunction with a command file that +% renames old versions of files produced by INRSTeX. The convention is +% to add "@" to the beginning of the filename. This has the advantage of +% leaving the extensions intact but has the disadvantage of +% truncating 8 letter filenames. The "@" is not sacrosanct. + +% if a job is aborted, the old files may be made current with +% rename @<jobname>.* <jobname>.* + +% There are several places in INRSTeX that require changes. + +\catcode`\@=11 + +% ------ auto.tex ----- + +% \inputtagfiles={\inputwithcheck {\jobname.tag}} +\inputtagfiles={\inputwithcheck {@\jobname.tag}} % will have been renamed + + +% -------- tocform.tex ------ + +%\def\c@k#1{\csname if#1list\endcsname \jobname.#1;-1 \else \jobname.#1 \fi} +%\def\newlistfilename#1{\ifnotdefined \jobname.#1 \else \c@k{#1} \fi} + % VAX/VMS \c@k is necessary because of the way TeX expands + +\def\c@k#1{\csname if#1list\endcsname @\jobname.#1 \else \jobname.#1 \fi} +\def\newlistfilename#1{\ifnotdefined \jobname.#1 \else \c@k{#1} \fi} + % \c@k is necessary because of the way TeX expands + +% ----------- cite.tex --------- + +% This does not need changing as long as the citation list ALWAYS follows +% the citations. If this is not the case, then an old version will have to +% used. This might lead to other problems later. + +% \citetagfilename = {\jobname.ctg} %compatible Ugh! + +\catcode `\@=12 diff --git a/macros/inrstex/inrstex/writfile.tex b/macros/inrstex/inrstex/writfile.tex new file mode 100644 index 0000000000..91cfc9244f --- /dev/null +++ b/macros/inrstex/inrstex/writfile.tex @@ -0,0 +1,62 @@ +%-*-tex-*- +% Copyright Michael J. Ferguson, INRS-Telecommunications +% All rights reserved. + +% ========== List Files ========= +% General macros for making, open and closing "list' files. These are files +% where the form output includes a page reference. They are named with a +% three letter extension ... eg ".fig" ... to the \jobname form. + + +% \writelistfile +% #1 file type to write +% #2 command form (\string\cs) +% #3 number ..... expanded +% #4 text .... not expanded +% Write to the appropriate list file if #1list is true and defined +% This means that the arguments must be +% expanded to reflect the state of affairs at the time of invocation. +% However, the page number must not be expanded until the +% output routine has had a chance to decide which page it will go on. + + +% this uses the upper toks registers for scratch writing. +% when the number of token registers used is within 10 of the +% newtoks count, it is reset ... there is no checking ... however +% there should be no problems ... except for token space (ugh!!!) +% This is necessary (at least in TeX 1.1) in order to prevent spurious +% expansion. + + +\newcount\sptoks \sptoks=255 % start at top with this counter +\xdef\maxlistmess{224} % 10 less than the min toks number allowed ... 20 +\def\nextsptoks{\advance\sptoks by -10 \relax \ifnum\sptoks < \count15 + \global\sptoks=255 \else + {\ifnum\sptoks<\maxlistmess + \global\sptoks=255\else \global\advance\sptoks by 9\relax\fi}\fi} +\def\settoks#1{\xdef\sptoksnum{\the\sptoks}\global\expandafter\toks\sptoksnum = {#1}} + +\def\writelistfile#1#2#3#4{\ifundefined{if#1list}\n@ewswitch{#1list}\fi + \csname if#1list\endcsname + {\let\folio=\relax %do not expand \folio + \nextsptoks\settoks{#4}\edef\next{\write\csname #1@file\endcsname + {#2{#3}{\noexpand\the\noexpand\toks\sptoksnum}{\folio}}}\next}\fi\nobreak} + +%checks to see if open +\def\openlistfile#1{\ifundefined{if#1list}\n@ewswitch{#1list}\fi + \def\n@extwrite{\relax}\ifundefined{#1@file}\def\n@extwrite + {\expandafter\n@ewwrite\csname #1@file\endcsname}\fi + \csname if#1list\endcsname + \else + \n@extwrite + \edef\n@ext{\immediate\openout\csname #1@file\endcsname + = \jobname.#1}\n@ext + \expandafter\global\csname #1listtrue\endcsname + \fi } %opens the list file + + +\def\closelistfile#1{\expandafter\global\csname #1listfalse\endcsname + \edef\n@ext{ + \closeout\csname #1@file\endcsname} + \n@ext} %closes the list file + diff --git a/macros/inrstex/inrstex/writunix.tex b/macros/inrstex/inrstex/writunix.tex new file mode 100644 index 0000000000..ada5c6a0b9 --- /dev/null +++ b/macros/inrstex/inrstex/writunix.tex @@ -0,0 +1,41 @@ +% This is a file that modifies the file naming conventions in INRSTeX +% for Berkeley Unix ... It works in conjunction with a command file that +% renames old versions of files produced by INRSTeX. The convention is +% to add "~" to the end of the filename. This is the same indication that +% EMACS uses for old versions. Note that there is no concern with file +% name length in Berkeley Unix. The "~" is not sacrosanct. + +% if a job is aborted, the old files may be made current (in csh) with +% foreach i (<jobname>.*~) +% mv $i `basename $i \~` +% end + +% There are several places in INRSTeX that require changes. + +\catcode`\~=11 + +% ------ auto.tex ----- + +% \inputtagfiles={\inputwithcheck {\jobname.tag}} +\inputtagfiles={\inputwithcheck {\jobname.tag~}} % will have been renamed + + +% -------- tocform.tex ------ + +%\def\c@k#1{\csname if#1list\endcsname \jobname.#1;-1 \else \jobname.#1 \fi} +%\def\newlistfilename#1{\ifnotdefined \jobname.#1 \else \c@k{#1} \fi} + % VAX/VMS \c@k is necessary because of the way TeX expands + +\def\c@k#1{\csname if#1list\endcsname \jobname.#1~ \else \jobname.#1 \fi} +\def\newlistfilename#1{\ifnotdefined \jobname.#1 \else \c@k{#1} \fi} + % \c@k is necessary because of the way TeX expands + +% ----------- cite.tex --------- + +% This does not need changing as long as the citation list ALWAYS follows +% the citations. If this is not the case, then an old version will have to +% used. This might lead to other problems later. + +% \citetagfilename = {\jobname.ctg} %compatible Ugh! + +\catcode `\~=\active |