731 lines
25 KiB
TeX
731 lines
25 KiB
TeX
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
%% PlainTeX utf-8 macro
|
|
%% Inspired from texinfo macros.
|
|
%% 2012-09-20
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
% Change the current font style to #1, remembering it in \curfontstyle.
|
|
% For now, we do not accumulate font styles: @b{@i{foo}} prints foo in
|
|
% italics, not bold italics.
|
|
%
|
|
\def\setfontstyle#1{%
|
|
\def\curfontstyle{#1}% not as a control sequence, because we are \edef'd.
|
|
\csname ten#1\endcsname % change the current font
|
|
}
|
|
|
|
% Select #1 fonts with the current style.
|
|
%
|
|
\def\rm{\fam=0 \setfontstyle{rm}}
|
|
\def\it{\fam=\itfam \setfontstyle{it}}
|
|
\def\sl{\fam=\slfam \setfontstyle{sl}}
|
|
\def\bf{\fam=\bffam \setfontstyle{bf}}\def\bfstylename{bf}
|
|
\def\tt{\fam=\ttfam \setfontstyle{tt}}
|
|
|
|
|
|
% This macro is used to make a character print one way in \tt
|
|
% (where it can probably be output as-is), and another way in other fonts,
|
|
% where something hairier probably needs to be done.
|
|
%
|
|
% #1 is what to print if we are indeed using \tt; #2 is what to print
|
|
% otherwise. Since all the Computer Modern typewriter fonts have zero
|
|
% interword stretch (and shrink), and it is reasonable to expect all
|
|
% typewriter fonts to have this, we can check that font parameter.
|
|
%
|
|
\def\ifusingtt#1#2{\ifdim \fontdimen3\font=0pt #1\else #2\fi}
|
|
|
|
% Same as above, but check for italic font. Actually this also catches
|
|
% non-italic slanted fonts since it is impossible to distinguish them from
|
|
% italic fonts. But since this is only used by $ and it uses \sl anyway
|
|
% this is not a problem.
|
|
\def\ifusingit#1#2{\ifdim \fontdimen1\font>0pt #1\else #2\fi}
|
|
|
|
\def\textnominalsize{10pt}
|
|
|
|
% Fonts for indices, footnotes, small examples (9pt).
|
|
\def\smallnominalsize{9pt}
|
|
|
|
% Fonts for small examples (8pt).
|
|
\def\smallernominalsize{8pt}
|
|
|
|
% Fonts for title page (20.4pt):
|
|
\def\titlenominalsize{20pt}
|
|
|
|
% Chapter fonts (14.4pt).
|
|
\def\chapnominalsize{14pt}
|
|
|
|
% Section fonts (12pt).
|
|
\def\secnominalsize{12pt}
|
|
|
|
% Subsection fonts (10pt).
|
|
\def\ssecnominalsize{10pt}
|
|
|
|
% Reduced fonts for @acro in text (9pt).
|
|
\def\reducednominalsize{9pt}
|
|
|
|
\def\curfontsize{text}
|
|
|
|
% @euro{} comes from a separate font, depending on the current style.
|
|
% We use the free feym* fonts from the eurosym package by Henrik
|
|
% Theiling, which support regular, slanted, bold and bold slanted (and
|
|
% "outlined" (blackboard board, sort of) versions, which we don't need).
|
|
% It is available from http://www.ctan.org/tex-archive/fonts/eurosym.
|
|
%
|
|
% Although only regular is the truly official Euro symbol, we ignore
|
|
% that. The Euro is designed to be slightly taller than the regular
|
|
% font height.
|
|
%
|
|
% feymr - regular
|
|
% feymo - slanted
|
|
% feybr - bold
|
|
% feybo - bold slanted
|
|
%
|
|
% There is no good (free) typewriter version, to my knowledge.
|
|
% A feymr10 euro is ~7.3pt wide, while a normal cmtt10 char is ~5.25pt wide.
|
|
% Hmm.
|
|
%
|
|
% Also doesn't work in math. Do we need to do math with euro symbols?
|
|
% Hope not.
|
|
%
|
|
%
|
|
\def\euro{{\eurofont e}}
|
|
\def\eurofont{%
|
|
% We set the font at each command, rather than predefining it in
|
|
% \textfonts and the other font-switching commands, so that
|
|
% installations which never need the symbol don't have to have the
|
|
% font installed.
|
|
%
|
|
% There is only one designed size (nominal 10pt), so we always scale
|
|
% that to the current nominal size.
|
|
%
|
|
% By the way, simply using "at 1em" works for cmr10 and the like, but
|
|
% does not work for cmbx10 and other extended/shrunken fonts.
|
|
%
|
|
\def\eurosize{\csname\curfontsize nominalsize\endcsname}%
|
|
%
|
|
\ifx\curfontstyle\bfstylename
|
|
% bold:
|
|
\font\thiseurofont = \ifusingit{feybo10}{feybr10} at \eurosize
|
|
\else
|
|
% regular:
|
|
\font\thiseurofont = \ifusingit{feymo10}{feymr10} at \eurosize
|
|
\fi
|
|
\thiseurofont
|
|
}
|
|
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
% sometimes characters are active, so we need control sequences.
|
|
\chardef\ampChar = `\&
|
|
\chardef\colonChar = `\:
|
|
\chardef\commaChar = `\,
|
|
\chardef\dashChar = `\-
|
|
\chardef\dotChar = `\.
|
|
\chardef\exclamChar= `\!
|
|
\chardef\hashChar = `\#
|
|
\chardef\lquoteChar= `\`
|
|
\chardef\questChar = `\?
|
|
\chardef\rquoteChar= `\'
|
|
\chardef\semiChar = `\;
|
|
\chardef\slashChar = `\/
|
|
\chardef\underChar = `\_
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
% This macro is called from txi-??.tex files; the first argument is the
|
|
% \language name to set (without the "\lang@" prefix), the second and
|
|
% third args are \{left,right}hyphenmin.
|
|
%
|
|
% The language names to pass are determined when the format is built.
|
|
% See the etex.log file created at that time, e.g.,
|
|
% /usr/local/texlive/2008/texmf-var/web2c/pdftex/etex.log.
|
|
%
|
|
% With TeX Live 2008, etex now includes hyphenation patterns for all
|
|
% available languages. This means we can support hyphenation in
|
|
% Texinfo, at least to some extent. (This still doesn't solve the
|
|
% accented characters problem.)
|
|
%
|
|
\catcode`@=11
|
|
\def\txisetlanguage#1#2#3{%
|
|
% do not set the language if the name is undefined in the current TeX.
|
|
\expandafter\ifx\csname lang@#1\endcsname \relax
|
|
\message{no patterns for #1}%
|
|
\else
|
|
\global\language = \csname lang@#1\endcsname
|
|
\fi
|
|
% but there is no harm in adjusting the hyphenmin values regardless.
|
|
\global\lefthyphenmin = #2\relax
|
|
\global\righthyphenmin = #3\relax
|
|
}
|
|
|
|
|
|
% Set sfcode to normal for the chars that usually have another value.
|
|
% Can't use plain's \frenchspacing because it uses the `\x notation, and
|
|
% sometimes \x has an active definition that messes things up.
|
|
%
|
|
\catcode`@=11
|
|
\def\plainfrenchspacing{%
|
|
\sfcode\dotChar =\@m \sfcode\questChar=\@m \sfcode\exclamChar=\@m
|
|
\sfcode\colonChar=\@m \sfcode\semiChar =\@m \sfcode\commaChar =\@m
|
|
\def\endofsentencespacefactor{1000}% for @. and friends
|
|
}
|
|
\def\plainnonfrenchspacing{%
|
|
\sfcode`\.3000\sfcode`\?3000\sfcode`\!3000
|
|
\sfcode`\:2000\sfcode`\;1500\sfcode`\,1250
|
|
\def\endofsentencespacefactor{3000}% for @. and friends
|
|
}
|
|
% \catcode`@=\other
|
|
% \def\endofsentencespacefactor{3000}% default
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
% Helpers for encodings.
|
|
% Set the catcode of characters 128 through 255 to the specified number.
|
|
%
|
|
\def\setnonasciicharscatcode#1{%
|
|
\count255=128
|
|
\loop\ifnum\count255<256
|
|
\global\catcode\count255=#1\relax
|
|
\advance\count255 by 1
|
|
\repeat
|
|
}
|
|
|
|
% Take account of \c (plain) vs. \, (Texinfo) difference.
|
|
% \def\cedilla#1{\ifx\c\ptexc\c{#1}\else\,{#1}\fi}
|
|
\def\cedilla#1{\c{#1}}
|
|
|
|
|
|
% Dotless i and dotless j, used for accents.
|
|
\def\imacro{i}
|
|
\def\jmacro{j}
|
|
\def\dotless#1{%
|
|
\def\temp{#1}%
|
|
\ifx\temp\imacro \ifmmode\imath \else\i \fi
|
|
\else\ifx\temp\jmacro \ifmmode\jmath \else\j \fi
|
|
\else \errmessage{@dotless can be used only with i or j}%
|
|
\fi\fi
|
|
}
|
|
|
|
|
|
% \setnonasciicharscatcode\active
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
% UTF-8 character definitions.
|
|
%
|
|
% This code to support UTF-8 is based on LaTeX's utf8.def, with some
|
|
% changes for Texinfo conventions. It is included here under the GPL by
|
|
% permission from Frank Mittelbach and the LaTeX team.
|
|
%
|
|
\newcount\countUTFx
|
|
\newcount\countUTFy
|
|
\newcount\countUTFz
|
|
|
|
\gdef\UTFviiiTwoOctets#1#2{\expandafter
|
|
\UTFviiiDefined\csname u8:#1\string #2\endcsname}
|
|
%
|
|
\gdef\UTFviiiThreeOctets#1#2#3{\expandafter
|
|
\UTFviiiDefined\csname u8:#1\string #2\string #3\endcsname}
|
|
%
|
|
\gdef\UTFviiiFourOctets#1#2#3#4{\expandafter
|
|
\UTFviiiDefined\csname u8:#1\string #2\string #3\string #4\endcsname}
|
|
|
|
\gdef\UTFviiiDefined#1{%
|
|
\ifx #1\relax
|
|
\message{\linenumber Unicode char \string #1 not defined for Texinfo}%
|
|
\else
|
|
\expandafter #1%
|
|
\fi
|
|
}
|
|
|
|
\begingroup
|
|
\catcode`\~13
|
|
\catcode`\"12
|
|
|
|
\def\UTFviiiLoop{%
|
|
\global\catcode\countUTFx\active
|
|
\uccode`\~\countUTFx
|
|
\uppercase\expandafter{\UTFviiiTmp}%
|
|
\advance\countUTFx by 1
|
|
\ifnum\countUTFx < \countUTFy
|
|
\expandafter\UTFviiiLoop
|
|
\fi}
|
|
|
|
\countUTFx = "C2
|
|
\countUTFy = "E0
|
|
\def\UTFviiiTmp{%
|
|
\xdef~{\noexpand\UTFviiiTwoOctets\string~}}
|
|
\UTFviiiLoop
|
|
|
|
\countUTFx = "E0
|
|
\countUTFy = "F0
|
|
\def\UTFviiiTmp{%
|
|
\xdef~{\noexpand\UTFviiiThreeOctets\string~}}
|
|
\UTFviiiLoop
|
|
|
|
\countUTFx = "F0
|
|
\countUTFy = "F4
|
|
\def\UTFviiiTmp{%
|
|
\xdef~{\noexpand\UTFviiiFourOctets\string~}}
|
|
\UTFviiiLoop
|
|
\endgroup
|
|
|
|
\begingroup
|
|
\catcode`\"=12
|
|
\catcode`\<=12
|
|
\catcode`\.=12
|
|
\catcode`\,=12
|
|
\catcode`\;=12
|
|
\catcode`\!=12
|
|
\catcode`\~=13
|
|
|
|
\gdef\DeclareUnicodeCharacter#1#2{%
|
|
\countUTFz = "#1\relax
|
|
%\wlog{\space\space defining Unicode char U+#1 (decimal \the\countUTFz)}%
|
|
\begingroup
|
|
\parseXMLCharref
|
|
\def\UTFviiiTwoOctets##1##2{%
|
|
\csname u8:##1\string ##2\endcsname}%
|
|
\def\UTFviiiThreeOctets##1##2##3{%
|
|
\csname u8:##1\string ##2\string ##3\endcsname}%
|
|
\def\UTFviiiFourOctets##1##2##3##4{%
|
|
\csname u8:##1\string ##2\string ##3\string ##4\endcsname}%
|
|
\expandafter\expandafter\expandafter\expandafter
|
|
\expandafter\expandafter\expandafter
|
|
\gdef\UTFviiiTmp{#2}%
|
|
\endgroup}
|
|
|
|
\gdef\parseXMLCharref{%
|
|
\ifnum\countUTFz < "A0\relax
|
|
\errhelp = \EMsimple
|
|
\errmessage{Cannot define Unicode char value < 00A0}%
|
|
\else\ifnum\countUTFz < "800\relax
|
|
\parseUTFviiiA,%
|
|
\parseUTFviiiB C\UTFviiiTwoOctets.,%
|
|
\else\ifnum\countUTFz < "10000\relax
|
|
\parseUTFviiiA;%
|
|
\parseUTFviiiA,%
|
|
\parseUTFviiiB E\UTFviiiThreeOctets.{,;}%
|
|
\else
|
|
\parseUTFviiiA;%
|
|
\parseUTFviiiA,%
|
|
\parseUTFviiiA!%
|
|
\parseUTFviiiB F\UTFviiiFourOctets.{!,;}%
|
|
\fi\fi\fi
|
|
}
|
|
|
|
\gdef\parseUTFviiiA#1{%
|
|
\countUTFx = \countUTFz
|
|
\divide\countUTFz by 64
|
|
\countUTFy = \countUTFz
|
|
\multiply\countUTFz by 64
|
|
\advance\countUTFx by -\countUTFz
|
|
\advance\countUTFx by 128
|
|
\uccode `#1\countUTFx
|
|
\countUTFz = \countUTFy}
|
|
|
|
\gdef\parseUTFviiiB#1#2#3#4{%
|
|
\advance\countUTFz by "#10\relax
|
|
\uccode `#3\countUTFz
|
|
\uppercase{\gdef\UTFviiiTmp{#2#3#4}}}
|
|
\endgroup
|
|
|
|
\def\utfeightchardefs{%
|
|
\DeclareUnicodeCharacter{00A0}{\tie}
|
|
\DeclareUnicodeCharacter{00A1}{\exclamdown}
|
|
\DeclareUnicodeCharacter{00A3}{\pounds}
|
|
\DeclareUnicodeCharacter{00A8}{\"{ }}
|
|
\DeclareUnicodeCharacter{00A9}{\copyright}
|
|
\DeclareUnicodeCharacter{00AA}{\ordf}
|
|
\DeclareUnicodeCharacter{00AB}{\guillemetleft}
|
|
\DeclareUnicodeCharacter{00AD}{\-}
|
|
\DeclareUnicodeCharacter{00AE}{\registeredsymbol}
|
|
\DeclareUnicodeCharacter{00AF}{\={ }}
|
|
|
|
\DeclareUnicodeCharacter{00B0}{\ringaccent{ }}
|
|
\DeclareUnicodeCharacter{00B4}{\'{ }}
|
|
\DeclareUnicodeCharacter{00B8}{\cedilla{ }}
|
|
\DeclareUnicodeCharacter{00BA}{\ordm}
|
|
\DeclareUnicodeCharacter{00BB}{\guillemetright}
|
|
\DeclareUnicodeCharacter{00BF}{\questiondown}
|
|
|
|
\DeclareUnicodeCharacter{00C0}{\`A}
|
|
\DeclareUnicodeCharacter{00C1}{\'A}
|
|
\DeclareUnicodeCharacter{00C2}{\^A}
|
|
\DeclareUnicodeCharacter{00C3}{\~A}
|
|
\DeclareUnicodeCharacter{00C4}{\"A}
|
|
\DeclareUnicodeCharacter{00C5}{\AA}
|
|
\DeclareUnicodeCharacter{00C6}{\AE}
|
|
\DeclareUnicodeCharacter{00C7}{\cedilla{C}}
|
|
\DeclareUnicodeCharacter{00C8}{\`E}
|
|
\DeclareUnicodeCharacter{00C9}{\'E}
|
|
\DeclareUnicodeCharacter{00CA}{\^E}
|
|
\DeclareUnicodeCharacter{00CB}{\"E}
|
|
\DeclareUnicodeCharacter{00CC}{\`I}
|
|
\DeclareUnicodeCharacter{00CD}{\'I}
|
|
\DeclareUnicodeCharacter{00CE}{\^I}
|
|
\DeclareUnicodeCharacter{00CF}{\"I}
|
|
|
|
\DeclareUnicodeCharacter{00D0}{\DH}
|
|
\DeclareUnicodeCharacter{00D1}{\~N}
|
|
\DeclareUnicodeCharacter{00D2}{\`O}
|
|
\DeclareUnicodeCharacter{00D3}{\'O}
|
|
\DeclareUnicodeCharacter{00D4}{\^O}
|
|
\DeclareUnicodeCharacter{00D5}{\~O}
|
|
\DeclareUnicodeCharacter{00D6}{\"O}
|
|
\DeclareUnicodeCharacter{00D8}{\O}
|
|
\DeclareUnicodeCharacter{00D9}{\`U}
|
|
\DeclareUnicodeCharacter{00DA}{\'U}
|
|
\DeclareUnicodeCharacter{00DB}{\^U}
|
|
\DeclareUnicodeCharacter{00DC}{\"U}
|
|
\DeclareUnicodeCharacter{00DD}{\'Y}
|
|
\DeclareUnicodeCharacter{00DE}{\TH}
|
|
\DeclareUnicodeCharacter{00DF}{\ss}
|
|
|
|
\DeclareUnicodeCharacter{00E0}{\`a}
|
|
\DeclareUnicodeCharacter{00E1}{\'a}
|
|
\DeclareUnicodeCharacter{00E2}{\^a}
|
|
\DeclareUnicodeCharacter{00E3}{\~a}
|
|
\DeclareUnicodeCharacter{00E4}{\"a}
|
|
\DeclareUnicodeCharacter{00E5}{\aa}
|
|
\DeclareUnicodeCharacter{00E6}{\ae}
|
|
\DeclareUnicodeCharacter{00E7}{\cedilla{c}}
|
|
\DeclareUnicodeCharacter{00E8}{\`e}
|
|
\DeclareUnicodeCharacter{00E9}{\'e}
|
|
\DeclareUnicodeCharacter{00EA}{\^e}
|
|
\DeclareUnicodeCharacter{00EB}{\"e}
|
|
\DeclareUnicodeCharacter{00EC}{\`{\dotless{i}}}
|
|
\DeclareUnicodeCharacter{00ED}{\'{\dotless{i}}}
|
|
\DeclareUnicodeCharacter{00EE}{\^{\dotless{i}}}
|
|
\DeclareUnicodeCharacter{00EF}{\"{\dotless{i}}}
|
|
|
|
\DeclareUnicodeCharacter{00F0}{\dh}
|
|
\DeclareUnicodeCharacter{00F1}{\~n}
|
|
\DeclareUnicodeCharacter{00F2}{\`o}
|
|
\DeclareUnicodeCharacter{00F3}{\'o}
|
|
\DeclareUnicodeCharacter{00F4}{\^o}
|
|
\DeclareUnicodeCharacter{00F5}{\~o}
|
|
\DeclareUnicodeCharacter{00F6}{\"o}
|
|
\DeclareUnicodeCharacter{00F8}{\o}
|
|
\DeclareUnicodeCharacter{00F9}{\`u}
|
|
\DeclareUnicodeCharacter{00FA}{\'u}
|
|
\DeclareUnicodeCharacter{00FB}{\^u}
|
|
\DeclareUnicodeCharacter{00FC}{\"u}
|
|
\DeclareUnicodeCharacter{00FD}{\'y}
|
|
\DeclareUnicodeCharacter{00FE}{\th}
|
|
\DeclareUnicodeCharacter{00FF}{\"y}
|
|
|
|
\DeclareUnicodeCharacter{0100}{\=A}
|
|
\DeclareUnicodeCharacter{0101}{\=a}
|
|
\DeclareUnicodeCharacter{0102}{\u{A}}
|
|
\DeclareUnicodeCharacter{0103}{\u{a}}
|
|
\DeclareUnicodeCharacter{0104}{\ogonek{A}}
|
|
\DeclareUnicodeCharacter{0105}{\ogonek{a}}
|
|
\DeclareUnicodeCharacter{0106}{\'C}
|
|
\DeclareUnicodeCharacter{0107}{\'c}
|
|
\DeclareUnicodeCharacter{0108}{\^C}
|
|
\DeclareUnicodeCharacter{0109}{\^c}
|
|
\DeclareUnicodeCharacter{0118}{\ogonek{E}}
|
|
\DeclareUnicodeCharacter{0119}{\ogonek{e}}
|
|
\DeclareUnicodeCharacter{010A}{\dotaccent{C}}
|
|
\DeclareUnicodeCharacter{010B}{\dotaccent{c}}
|
|
\DeclareUnicodeCharacter{010C}{\v{C}}
|
|
\DeclareUnicodeCharacter{010D}{\v{c}}
|
|
\DeclareUnicodeCharacter{010E}{\v{D}}
|
|
|
|
\DeclareUnicodeCharacter{0112}{\=E}
|
|
\DeclareUnicodeCharacter{0113}{\=e}
|
|
\DeclareUnicodeCharacter{0114}{\u{E}}
|
|
\DeclareUnicodeCharacter{0115}{\u{e}}
|
|
\DeclareUnicodeCharacter{0116}{\dotaccent{E}}
|
|
\DeclareUnicodeCharacter{0117}{\dotaccent{e}}
|
|
\DeclareUnicodeCharacter{011A}{\v{E}}
|
|
\DeclareUnicodeCharacter{011B}{\v{e}}
|
|
\DeclareUnicodeCharacter{011C}{\^G}
|
|
\DeclareUnicodeCharacter{011D}{\^g}
|
|
\DeclareUnicodeCharacter{011E}{\u{G}}
|
|
\DeclareUnicodeCharacter{011F}{\u{g}}
|
|
|
|
\DeclareUnicodeCharacter{0120}{\dotaccent{G}}
|
|
\DeclareUnicodeCharacter{0121}{\dotaccent{g}}
|
|
\DeclareUnicodeCharacter{0124}{\^H}
|
|
\DeclareUnicodeCharacter{0125}{\^h}
|
|
\DeclareUnicodeCharacter{0128}{\~I}
|
|
\DeclareUnicodeCharacter{0129}{\~{\dotless{i}}}
|
|
\DeclareUnicodeCharacter{012A}{\=I}
|
|
\DeclareUnicodeCharacter{012B}{\={\dotless{i}}}
|
|
\DeclareUnicodeCharacter{012C}{\u{I}}
|
|
\DeclareUnicodeCharacter{012D}{\u{\dotless{i}}}
|
|
|
|
\DeclareUnicodeCharacter{0130}{\dotaccent{I}}
|
|
\DeclareUnicodeCharacter{0131}{\dotless{i}}
|
|
\DeclareUnicodeCharacter{0132}{IJ}
|
|
\DeclareUnicodeCharacter{0133}{ij}
|
|
\DeclareUnicodeCharacter{0134}{\^J}
|
|
\DeclareUnicodeCharacter{0135}{\^{\dotless{j}}}
|
|
\DeclareUnicodeCharacter{0139}{\'L}
|
|
\DeclareUnicodeCharacter{013A}{\'l}
|
|
|
|
\DeclareUnicodeCharacter{0141}{\L}
|
|
\DeclareUnicodeCharacter{0142}{\l}
|
|
\DeclareUnicodeCharacter{0143}{\'N}
|
|
\DeclareUnicodeCharacter{0144}{\'n}
|
|
\DeclareUnicodeCharacter{0147}{\v{N}}
|
|
\DeclareUnicodeCharacter{0148}{\v{n}}
|
|
\DeclareUnicodeCharacter{014C}{\=O}
|
|
\DeclareUnicodeCharacter{014D}{\=o}
|
|
\DeclareUnicodeCharacter{014E}{\u{O}}
|
|
\DeclareUnicodeCharacter{014F}{\u{o}}
|
|
|
|
\DeclareUnicodeCharacter{0150}{\H{O}}
|
|
\DeclareUnicodeCharacter{0151}{\H{o}}
|
|
\DeclareUnicodeCharacter{0152}{\OE}
|
|
\DeclareUnicodeCharacter{0153}{\oe}
|
|
\DeclareUnicodeCharacter{0154}{\'R}
|
|
\DeclareUnicodeCharacter{0155}{\'r}
|
|
\DeclareUnicodeCharacter{0158}{\v{R}}
|
|
\DeclareUnicodeCharacter{0159}{\v{r}}
|
|
\DeclareUnicodeCharacter{015A}{\'S}
|
|
\DeclareUnicodeCharacter{015B}{\'s}
|
|
\DeclareUnicodeCharacter{015C}{\^S}
|
|
\DeclareUnicodeCharacter{015D}{\^s}
|
|
\DeclareUnicodeCharacter{015E}{\cedilla{S}}
|
|
\DeclareUnicodeCharacter{015F}{\cedilla{s}}
|
|
|
|
\DeclareUnicodeCharacter{0160}{\v{S}}
|
|
\DeclareUnicodeCharacter{0161}{\v{s}}
|
|
\DeclareUnicodeCharacter{0162}{\cedilla{t}}
|
|
\DeclareUnicodeCharacter{0163}{\cedilla{T}}
|
|
\DeclareUnicodeCharacter{0164}{\v{T}}
|
|
|
|
\DeclareUnicodeCharacter{0168}{\~U}
|
|
\DeclareUnicodeCharacter{0169}{\~u}
|
|
\DeclareUnicodeCharacter{016A}{\=U}
|
|
\DeclareUnicodeCharacter{016B}{\=u}
|
|
\DeclareUnicodeCharacter{016C}{\u{U}}
|
|
\DeclareUnicodeCharacter{016D}{\u{u}}
|
|
\DeclareUnicodeCharacter{016E}{\ringaccent{U}}
|
|
\DeclareUnicodeCharacter{016F}{\ringaccent{u}}
|
|
|
|
\DeclareUnicodeCharacter{0170}{\H{U}}
|
|
\DeclareUnicodeCharacter{0171}{\H{u}}
|
|
\DeclareUnicodeCharacter{0174}{\^W}
|
|
\DeclareUnicodeCharacter{0175}{\^w}
|
|
\DeclareUnicodeCharacter{0176}{\^Y}
|
|
\DeclareUnicodeCharacter{0177}{\^y}
|
|
\DeclareUnicodeCharacter{0178}{\"Y}
|
|
\DeclareUnicodeCharacter{0179}{\'Z}
|
|
\DeclareUnicodeCharacter{017A}{\'z}
|
|
\DeclareUnicodeCharacter{017B}{\dotaccent{Z}}
|
|
\DeclareUnicodeCharacter{017C}{\dotaccent{z}}
|
|
\DeclareUnicodeCharacter{017D}{\v{Z}}
|
|
\DeclareUnicodeCharacter{017E}{\v{z}}
|
|
|
|
\DeclareUnicodeCharacter{01C4}{D\v{Z}}
|
|
\DeclareUnicodeCharacter{01C5}{D\v{z}}
|
|
\DeclareUnicodeCharacter{01C6}{d\v{z}}
|
|
\DeclareUnicodeCharacter{01C7}{LJ}
|
|
\DeclareUnicodeCharacter{01C8}{Lj}
|
|
\DeclareUnicodeCharacter{01C9}{lj}
|
|
\DeclareUnicodeCharacter{01CA}{NJ}
|
|
\DeclareUnicodeCharacter{01CB}{Nj}
|
|
\DeclareUnicodeCharacter{01CC}{nj}
|
|
\DeclareUnicodeCharacter{01CD}{\v{A}}
|
|
\DeclareUnicodeCharacter{01CE}{\v{a}}
|
|
\DeclareUnicodeCharacter{01CF}{\v{I}}
|
|
|
|
\DeclareUnicodeCharacter{01D0}{\v{\dotless{i}}}
|
|
\DeclareUnicodeCharacter{01D1}{\v{O}}
|
|
\DeclareUnicodeCharacter{01D2}{\v{o}}
|
|
\DeclareUnicodeCharacter{01D3}{\v{U}}
|
|
\DeclareUnicodeCharacter{01D4}{\v{u}}
|
|
|
|
\DeclareUnicodeCharacter{01E2}{\={\AE}}
|
|
\DeclareUnicodeCharacter{01E3}{\={\ae}}
|
|
\DeclareUnicodeCharacter{01E6}{\v{G}}
|
|
\DeclareUnicodeCharacter{01E7}{\v{g}}
|
|
\DeclareUnicodeCharacter{01E8}{\v{K}}
|
|
\DeclareUnicodeCharacter{01E9}{\v{k}}
|
|
|
|
\DeclareUnicodeCharacter{01F0}{\v{\dotless{j}}}
|
|
\DeclareUnicodeCharacter{01F1}{DZ}
|
|
\DeclareUnicodeCharacter{01F2}{Dz}
|
|
\DeclareUnicodeCharacter{01F3}{dz}
|
|
\DeclareUnicodeCharacter{01F4}{\'G}
|
|
\DeclareUnicodeCharacter{01F5}{\'g}
|
|
\DeclareUnicodeCharacter{01F8}{\`N}
|
|
\DeclareUnicodeCharacter{01F9}{\`n}
|
|
\DeclareUnicodeCharacter{01FC}{\'{\AE}}
|
|
\DeclareUnicodeCharacter{01FD}{\'{\ae}}
|
|
\DeclareUnicodeCharacter{01FE}{\'{\O}}
|
|
\DeclareUnicodeCharacter{01FF}{\'{\o}}
|
|
|
|
\DeclareUnicodeCharacter{021E}{\v{H}}
|
|
\DeclareUnicodeCharacter{021F}{\v{h}}
|
|
|
|
\DeclareUnicodeCharacter{0226}{\dotaccent{A}}
|
|
\DeclareUnicodeCharacter{0227}{\dotaccent{a}}
|
|
\DeclareUnicodeCharacter{0228}{\cedilla{E}}
|
|
\DeclareUnicodeCharacter{0229}{\cedilla{e}}
|
|
\DeclareUnicodeCharacter{022E}{\dotaccent{O}}
|
|
\DeclareUnicodeCharacter{022F}{\dotaccent{o}}
|
|
|
|
\DeclareUnicodeCharacter{0232}{\=Y}
|
|
\DeclareUnicodeCharacter{0233}{\=y}
|
|
\DeclareUnicodeCharacter{0237}{\dotless{j}}
|
|
|
|
\DeclareUnicodeCharacter{02DB}{\ogonek{ }}
|
|
|
|
\DeclareUnicodeCharacter{1E02}{\dotaccent{B}}
|
|
\DeclareUnicodeCharacter{1E03}{\dotaccent{b}}
|
|
\DeclareUnicodeCharacter{1E04}{\udotaccent{B}}
|
|
\DeclareUnicodeCharacter{1E05}{\udotaccent{b}}
|
|
\DeclareUnicodeCharacter{1E06}{\ubaraccent{B}}
|
|
\DeclareUnicodeCharacter{1E07}{\ubaraccent{b}}
|
|
\DeclareUnicodeCharacter{1E0A}{\dotaccent{D}}
|
|
\DeclareUnicodeCharacter{1E0B}{\dotaccent{d}}
|
|
\DeclareUnicodeCharacter{1E0C}{\udotaccent{D}}
|
|
\DeclareUnicodeCharacter{1E0D}{\udotaccent{d}}
|
|
\DeclareUnicodeCharacter{1E0E}{\ubaraccent{D}}
|
|
\DeclareUnicodeCharacter{1E0F}{\ubaraccent{d}}
|
|
|
|
\DeclareUnicodeCharacter{1E1E}{\dotaccent{F}}
|
|
\DeclareUnicodeCharacter{1E1F}{\dotaccent{f}}
|
|
|
|
\DeclareUnicodeCharacter{1E20}{\=G}
|
|
\DeclareUnicodeCharacter{1E21}{\=g}
|
|
\DeclareUnicodeCharacter{1E22}{\dotaccent{H}}
|
|
\DeclareUnicodeCharacter{1E23}{\dotaccent{h}}
|
|
\DeclareUnicodeCharacter{1E24}{\udotaccent{H}}
|
|
\DeclareUnicodeCharacter{1E25}{\udotaccent{h}}
|
|
\DeclareUnicodeCharacter{1E26}{\"H}
|
|
\DeclareUnicodeCharacter{1E27}{\"h}
|
|
|
|
\DeclareUnicodeCharacter{1E30}{\'K}
|
|
\DeclareUnicodeCharacter{1E31}{\'k}
|
|
\DeclareUnicodeCharacter{1E32}{\udotaccent{K}}
|
|
\DeclareUnicodeCharacter{1E33}{\udotaccent{k}}
|
|
\DeclareUnicodeCharacter{1E34}{\ubaraccent{K}}
|
|
\DeclareUnicodeCharacter{1E35}{\ubaraccent{k}}
|
|
\DeclareUnicodeCharacter{1E36}{\udotaccent{L}}
|
|
\DeclareUnicodeCharacter{1E37}{\udotaccent{l}}
|
|
\DeclareUnicodeCharacter{1E3A}{\ubaraccent{L}}
|
|
\DeclareUnicodeCharacter{1E3B}{\ubaraccent{l}}
|
|
\DeclareUnicodeCharacter{1E3E}{\'M}
|
|
\DeclareUnicodeCharacter{1E3F}{\'m}
|
|
|
|
\DeclareUnicodeCharacter{1E40}{\dotaccent{M}}
|
|
\DeclareUnicodeCharacter{1E41}{\dotaccent{m}}
|
|
\DeclareUnicodeCharacter{1E42}{\udotaccent{M}}
|
|
\DeclareUnicodeCharacter{1E43}{\udotaccent{m}}
|
|
\DeclareUnicodeCharacter{1E44}{\dotaccent{N}}
|
|
\DeclareUnicodeCharacter{1E45}{\dotaccent{n}}
|
|
\DeclareUnicodeCharacter{1E46}{\udotaccent{N}}
|
|
\DeclareUnicodeCharacter{1E47}{\udotaccent{n}}
|
|
\DeclareUnicodeCharacter{1E48}{\ubaraccent{N}}
|
|
\DeclareUnicodeCharacter{1E49}{\ubaraccent{n}}
|
|
|
|
\DeclareUnicodeCharacter{1E54}{\'P}
|
|
\DeclareUnicodeCharacter{1E55}{\'p}
|
|
\DeclareUnicodeCharacter{1E56}{\dotaccent{P}}
|
|
\DeclareUnicodeCharacter{1E57}{\dotaccent{p}}
|
|
\DeclareUnicodeCharacter{1E58}{\dotaccent{R}}
|
|
\DeclareUnicodeCharacter{1E59}{\dotaccent{r}}
|
|
\DeclareUnicodeCharacter{1E5A}{\udotaccent{R}}
|
|
\DeclareUnicodeCharacter{1E5B}{\udotaccent{r}}
|
|
\DeclareUnicodeCharacter{1E5E}{\ubaraccent{R}}
|
|
\DeclareUnicodeCharacter{1E5F}{\ubaraccent{r}}
|
|
|
|
\DeclareUnicodeCharacter{1E60}{\dotaccent{S}}
|
|
\DeclareUnicodeCharacter{1E61}{\dotaccent{s}}
|
|
\DeclareUnicodeCharacter{1E62}{\udotaccent{S}}
|
|
\DeclareUnicodeCharacter{1E63}{\udotaccent{s}}
|
|
\DeclareUnicodeCharacter{1E6A}{\dotaccent{T}}
|
|
\DeclareUnicodeCharacter{1E6B}{\dotaccent{t}}
|
|
\DeclareUnicodeCharacter{1E6C}{\udotaccent{T}}
|
|
\DeclareUnicodeCharacter{1E6D}{\udotaccent{t}}
|
|
\DeclareUnicodeCharacter{1E6E}{\ubaraccent{T}}
|
|
\DeclareUnicodeCharacter{1E6F}{\ubaraccent{t}}
|
|
|
|
\DeclareUnicodeCharacter{1E7C}{\~V}
|
|
\DeclareUnicodeCharacter{1E7D}{\~v}
|
|
\DeclareUnicodeCharacter{1E7E}{\udotaccent{V}}
|
|
\DeclareUnicodeCharacter{1E7F}{\udotaccent{v}}
|
|
|
|
\DeclareUnicodeCharacter{1E80}{\`W}
|
|
\DeclareUnicodeCharacter{1E81}{\`w}
|
|
\DeclareUnicodeCharacter{1E82}{\'W}
|
|
\DeclareUnicodeCharacter{1E83}{\'w}
|
|
\DeclareUnicodeCharacter{1E84}{\"W}
|
|
\DeclareUnicodeCharacter{1E85}{\"w}
|
|
\DeclareUnicodeCharacter{1E86}{\dotaccent{W}}
|
|
\DeclareUnicodeCharacter{1E87}{\dotaccent{w}}
|
|
\DeclareUnicodeCharacter{1E88}{\udotaccent{W}}
|
|
\DeclareUnicodeCharacter{1E89}{\udotaccent{w}}
|
|
\DeclareUnicodeCharacter{1E8A}{\dotaccent{X}}
|
|
\DeclareUnicodeCharacter{1E8B}{\dotaccent{x}}
|
|
\DeclareUnicodeCharacter{1E8C}{\"X}
|
|
\DeclareUnicodeCharacter{1E8D}{\"x}
|
|
\DeclareUnicodeCharacter{1E8E}{\dotaccent{Y}}
|
|
\DeclareUnicodeCharacter{1E8F}{\dotaccent{y}}
|
|
|
|
\DeclareUnicodeCharacter{1E90}{\^Z}
|
|
\DeclareUnicodeCharacter{1E91}{\^z}
|
|
\DeclareUnicodeCharacter{1E92}{\udotaccent{Z}}
|
|
\DeclareUnicodeCharacter{1E93}{\udotaccent{z}}
|
|
\DeclareUnicodeCharacter{1E94}{\ubaraccent{Z}}
|
|
\DeclareUnicodeCharacter{1E95}{\ubaraccent{z}}
|
|
\DeclareUnicodeCharacter{1E96}{\ubaraccent{h}}
|
|
\DeclareUnicodeCharacter{1E97}{\"t}
|
|
\DeclareUnicodeCharacter{1E98}{\ringaccent{w}}
|
|
\DeclareUnicodeCharacter{1E99}{\ringaccent{y}}
|
|
|
|
\DeclareUnicodeCharacter{1EA0}{\udotaccent{A}}
|
|
\DeclareUnicodeCharacter{1EA1}{\udotaccent{a}}
|
|
|
|
\DeclareUnicodeCharacter{1EB8}{\udotaccent{E}}
|
|
\DeclareUnicodeCharacter{1EB9}{\udotaccent{e}}
|
|
\DeclareUnicodeCharacter{1EBC}{\~E}
|
|
\DeclareUnicodeCharacter{1EBD}{\~e}
|
|
|
|
\DeclareUnicodeCharacter{1ECA}{\udotaccent{I}}
|
|
\DeclareUnicodeCharacter{1ECB}{\udotaccent{i}}
|
|
\DeclareUnicodeCharacter{1ECC}{\udotaccent{O}}
|
|
\DeclareUnicodeCharacter{1ECD}{\udotaccent{o}}
|
|
|
|
\DeclareUnicodeCharacter{1EE4}{\udotaccent{U}}
|
|
\DeclareUnicodeCharacter{1EE5}{\udotaccent{u}}
|
|
|
|
\DeclareUnicodeCharacter{1EF2}{\`Y}
|
|
\DeclareUnicodeCharacter{1EF3}{\`y}
|
|
\DeclareUnicodeCharacter{1EF4}{\udotaccent{Y}}
|
|
|
|
\DeclareUnicodeCharacter{1EF8}{\~Y}
|
|
\DeclareUnicodeCharacter{1EF9}{\~y}
|
|
|
|
\DeclareUnicodeCharacter{2013}{--}
|
|
\DeclareUnicodeCharacter{2014}{---}
|
|
\DeclareUnicodeCharacter{2018}{\quoteleft}
|
|
\DeclareUnicodeCharacter{2019}{\quoteright}
|
|
\DeclareUnicodeCharacter{201A}{\quotesinglbase}
|
|
\DeclareUnicodeCharacter{201C}{\quotedblleft}
|
|
\DeclareUnicodeCharacter{201D}{\quotedblright}
|
|
\DeclareUnicodeCharacter{201E}{\quotedblbase}
|
|
\DeclareUnicodeCharacter{2022}{\bullet}
|
|
\DeclareUnicodeCharacter{2026}{\dots}
|
|
\DeclareUnicodeCharacter{2039}{\guilsinglleft}
|
|
\DeclareUnicodeCharacter{203A}{\guilsinglright}
|
|
\DeclareUnicodeCharacter{20AC}{\euro}
|
|
|
|
\DeclareUnicodeCharacter{2192}{\expansion}
|
|
\DeclareUnicodeCharacter{21D2}{\result}
|
|
|
|
\DeclareUnicodeCharacter{2212}{\minus}
|
|
\DeclareUnicodeCharacter{2217}{\point}
|
|
\DeclareUnicodeCharacter{2261}{\equiv}
|
|
}% end of \utfeightchardefs
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
% \setnonasciicharscatcode\active
|
|
\utfeightchardefs
|