diff options
author | Karl Berry <karl@freefriends.org> | 2006-01-12 23:58:26 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2006-01-12 23:58:26 +0000 |
commit | 93d6df0e08e20675e3d1e40d309067384b537cf4 (patch) | |
tree | 76ab81aa244193a3caa561d9552f5c442e14ea92 /Master/texmf-dist/tex/latex/ly1/texnansi.sty | |
parent | 384bbb4cf52ef02cc831c6bd138478c638fcd073 (diff) |
ly1
git-svn-id: svn://tug.org/texlive/trunk@1059 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/ly1/texnansi.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/ly1/texnansi.sty | 113 |
1 files changed, 113 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/ly1/texnansi.sty b/Master/texmf-dist/tex/latex/ly1/texnansi.sty new file mode 100644 index 00000000000..dbca87c4c4a --- /dev/null +++ b/Master/texmf-dist/tex/latex/ly1/texnansi.sty @@ -0,0 +1,113 @@ +\ProvidesPackage{texnansi}[1998/05/30 v0.2 texnansi and ansinew support] + +\RequirePackage[LY1]{fontenc} + +\@tempcnta=224 +\@tempcntb=192 + +\loop +\ifnum\@tempcnta<255 + \lccode\@tempcnta=\@tempcnta + \lccode\@tempcntb=\@tempcnta + \uccode\@tempcntb=\@tempcntb + \uccode\@tempcnta=\@tempcntb + \advance\@tempcnta\@ne + \advance\@tempcntb\@ne +\repeat + +% Then there are just a few odd ones that don't fit this pattern + +% OE, oe +\lccode140=156\lccode156=156 +\uccode140=140\uccode156=140 +% Ydieresis, ydieresis +\lccode159=255\lccode255=255 +\uccode159=159\uccode255=159 +% Scaron, scaron +\lccode138=154\lccode154=154 +\uccode138=138\uccode154=138 +% Zcaron, zcaron +\lccode142=158\lccode158=158 +\uccode158=142\uccode142=142 +% Lslash, lslash +\lccode128=144\lccode144=144 +\uccode144=128\uccode128=128 + +\DeclareOption{ansinew}{\let\caronfake\relax} + +\ProcessOptions + +% Stop here unless ansinew being used. +\ifx\caronfake\relax\else\endinput\fi + +% Issue a warning in this case. +\PackageWarningNoLine{fontenc}{% + Modifying LY1 encoding for ansinew rather than texnansi} + +% Use the `high' copies of these +\DeclareTextSymbol{\oe}{LY1} {156} +\DeclareTextSymbol{\OE}{LY1} {140} +\DeclareTextSymbol{\ss}{LY1} {223} + +% Take out some characters. +% Some of the `fakes' used here are so bad it may be better to +% do nothing, but do this for now. +\DeclareTextCommand{\i}{LY1}{% + \TextSymbolUnavailable\i i} +\DeclareTextCommand{\l}{LY1}{% + \TextSymbolUnavailable\l \leavevmode\rlap-l} +\DeclareTextCommand{\L}{LY1}{% + \TextSymbolUnavailable\L \leavevmode\rlap-L} + +\def\accentfake#1#2#3#4#5{% + \TextSymbolUnavailable#1% + {\let\vtop\vbox + \oalign{% + \hfil + \dimen@\f@size\p@ + \fontsize{#2\dimen@}\z@\selectfont + \smash{\lower#3\dimen@\hbox{#4}}\hfil\cr\hfil#5\hfil}}} + +\def\caronfake{\accentfake\v{.4}{.1}{$\vee$}} +\DeclareTextCommand{\v}{LY1}[1]{\caronfake{#1}} +\DeclareTextComposite{\v}{LY1}{S} {138} +\DeclareTextComposite{\v}{LY1}{s} {154} +% \DeclareTextCompositeCommand{\v}{LY1}{Z}{\caronfake{Z}} +% \DeclareTextCompositeCommand{\v}{LY1}{z}{\caronfake{z}} +\DeclareTextComposite{\v}{LY1}{Z} {142} +\DeclareTextComposite{\v}{LY1}{z} {158} + +\DeclareTextCommand{\r}{LY1}[1]{\accentfake\r{.75}{.3}{\char176}{#1}} +\DeclareTextComposite{\r}{LY1}{A} {197} +\DeclareTextComposite{\r}{LY1}{a} {229} + +\DeclareTextCommand{\H}{LY1}[1]{\TextSymbolUnavailable\H\"{#1}} + +\DeclareTextCommand{\u}{LY1}[1]{\accentfake\u{.3}{.1}{$\smile$}{#1}} +\DeclareTextCommand{\k}{LY1}[1]{\TextSymbolUnavailable\k\c{#1}} +\DeclareTextCommand{\.}{LY1}[1]{\accentfake\.{1}{0}{.}{#1}} + + +% Need to deal with prime in math mode since 39 is remapped to 146 + +{\catcode146=\active \gdef^^92{{^\bgroup\prim@s}}} +\mathcode146="8000 % ^\prime + +\chardef\lq=145 \chardef\rq=146 + +% Note that \lq and \rq also provide access to ` and ' + +% `quoteright' has moved from 39 to 146 +% make space for `quotesingle' in ANSI: + +{\catcode`\'=\active \global\chardef'=146} + +% `quoteleft' has moved from 96 to 145 +% make space for `grave' in ANSI: + +{\catcode`\`=\active \global\chardef`=145} + +% Delay making ` and ' active until after packages read. +% So they can be used in octal and character code numbers. +\AtBeginDocument{\catcode`\'\active \catcode`\`\active} + |