blob: c7e776dfdfb2483aa3a97e3ef1f010423c9fd6f0 [file] [log] [blame]
<?xml version="1.0" encoding="US-ASCII"?>
<xsl:stylesheet version="2.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:u="http://docbook.sf.net/xmlns/unichar/1.0"
exclude-result-prefixes="u">
<!-- ********************************************************************
$Id$
********************************************************************
This file is part of the XSL DocBook Stylesheet distribution.
See ../README or http://docbook.sf.net/release/xsl/current/ for
copyright and other information.
******************************************************************** -->
<xsl:character-map name="groff">
<!-- * *************************************************************** -->
<!-- * Commentary -->
<!-- * *************************************************************** -->
<!-- * -->
<!-- * This file maps a selection of Unicode symbols and special -->
<!-- * characters (about 800) to corresponding groff escape sequences.-->
<!-- * -->
<!-- * Although the format of this file follows the "character map" -->
<!-- * format described in the XSLT 2.0 specification[1], the file can -->
<!-- * also be used with an appropriate XSLT 1.0 stylesheet and any -->
<!-- * XSLT 1.0 processor. -->
<!-- * -->
<!-- * [1] http://www.w3.org/TR/xslt20/#character-maps -->
<!-- * -->
<!-- * In order to make the character map more readable, and to make -->
<!-- * it possible to create subsets of it at run time, it uses the -->
<!-- * following "extension attributes" (in the "unichar" namespace): -->
<!-- * -->
<!-- * - u:name = ISO character name (e.g., "OHM SIGN") -->
<!-- * - u:entity = ISO entity name (e.g., "ohm") -->
<!-- * - u:block = Unicode block name (e.g., "Letterlike Symbols") -->
<!-- * - u:class = character class (e.g., "bullets") -->
<!-- * -->
<!-- * Use of such extension attributes is permitted by the XSLT 2.0 -->
<!-- * spec; see the "Extension Attributes" section[2]. -->
<!-- * -->
<!-- * [2] http://www.w3.org/TR/xslt20/#extension-attributes -->
<!-- * -->
<!-- * *************************************************************** -->
<!-- * Acknowledgements -->
<!-- * *************************************************************** -->
<!-- * The following references were consulted when selecting roff -->
<!-- * mappings and character information: -->
<!-- * -->
<!-- * - groff_char(7) man page[3] -->
<!-- * - groff info file[4]; in particular, the "Page Motions" node[5] -->
<!-- * - tables in "Character Sets" chapter of "XML In a Nutshell"[6] -->
<!-- * - Zvon Character Search[7] -->
<!-- * -->
<!-- * [3] http://www.linux.se/showMan.php?TITLE=groff_char&SECTION=7 -->
<!-- * [4] http://www.fifi.org/cgi-bin/info2www?(groff) -->
<!-- * [5] http://www.fifi.org/cgi-bin/info2www?(groff)Page+Motions -->
<!-- * [6] http://www.ibiblio.org/xml/books/xian2/ -->
<!-- * [7] http://zvon.org/other/charSearch/PHP/search.php -->
<!-- * -->
<!-- * The initial version of this file (before the "string" mappings -->
<!-- * were added) was generated by taking the "unichars.el" file from -->
<!-- * Norm Walsh's "xmlunicode.el"[8] elisp distro, and running a -->
<!-- * script on it to convert it to XML. -->
<!-- * -->
<!-- * [8] http://nwalsh.com/emacs/xmlchars/ -->
<!-- * -->
<!-- * The idea for implementing a character map in the DocBook Project -->
<!-- * manpages system was inspired by Steve Cheng's docbook2x[9]; -->
<!-- * in particular, its "utf8trans" utility and character-map system. -->
<!-- * -->
<!-- * [9] http://docbook2x.sourceforge.net/ -->
<!-- * -->
<!-- * ################################################################# -->
<!-- * ***************************************************************** -->
<!-- * Begin: Latin-1/ISO-8859-1 -->
<!-- * x00a0 to x00ff -->
<!-- * ***************************************************************** -->
<!-- * A no-break space can be written two ways in roff; the difference, -->
<!-- * according to the "Page Motions" node in the groff info page, is: -->
<!-- * -->
<!-- * "\ " = -->
<!-- * An unbreakable and unpaddable (i.e. not expanded during filling) -->
<!-- * space. -->
<!-- * -->
<!-- * "\~" = -->
<!-- * An unbreakable space that stretches like a normal -->
<!-- * inter-word space when a line is adjusted." -->
<!-- * -->
<!-- * Unfortunately, roff seems to do some weird things with long -->
<!-- * lines that only have words separated by "\~" spaces, so it's -->
<!-- * safer just to stick with the "\ " space -->
<xsl:output-character
character="&#x00a0;"
u:name="NO-BREAK SPACE"
u:entity="nbsp"
string="\ \&amp;"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00a1;"
u:name="INVERTED EXCLAMATION MARK"
u:entity="iexcl"
string="\(r!"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00a2;"
u:name="CENT SIGN"
u:entity="cent"
string="\(ct"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00a3;"
u:name="POUND SIGN"
u:entity="pound"
string="\(Po"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00a4;"
u:name="CURRENCY SIGN"
u:entity="curren"
string="\(Cs"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00a5;"
u:name="YEN SIGN"
u:entity="yen"
string="\(Ye"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00a6;"
u:name="BROKEN BAR"
u:entity="brvbar"
string="\(bb"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00a7;"
u:name="SECTION SIGN"
u:entity="sect"
string="\(sc"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00a8;"
u:name="DIAERESIS"
u:entity="Dot"
string="\(ad"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00a9;"
u:name="COPYRIGHT SIGN"
u:entity="copy"
string="\(co"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00aa;"
u:name="FEMININE ORDINAL INDICATOR"
u:entity="ordf"
string="\(Of"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00ab;"
u:name="LEFT-POINTING DOUBLE ANGLE QUOTATION MARK"
u:entity="laquo"
string="\(Fo"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00ac;"
u:name="NOT SIGN"
u:entity="not"
string="\(no"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<!-- * groff_char(7) man page sayxsl: "the soft hyphen control character -->
<!-- * (prints as itself). groff never use this character for output -->
<!-- * (thus it is omitted in the table below); the input character 173 -->
<!-- * is onto \%." -->
<xsl:output-character
character="&#x00ad;"
u:name="SOFT HYPHEN"
u:entity="shy"
string="\%"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00ae;"
u:name="REGISTERED SIGN"
u:entity="reg"
string="\(rg"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00af;"
u:name="MACRON"
u:entity="macr"
string="\(a-"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00b0;"
u:name="DEGREE SIGN"
u:entity="deg"
string="\(de"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00b1;"
u:name="PLUS-MINUS SIGN"
u:entity="plusmn"
string="\(+-"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00b2;"
u:name="SUPERSCRIPT TWO"
u:entity="sup2"
string="\(S2"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00b3;"
u:name="SUPERSCRIPT THREE"
u:entity="sup3"
string="\(S3"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00b4;"
u:name="ACUTE ACCENT"
u:entity="acute"
string="\(aa"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00b5;"
u:name="MICRO SIGN"
u:entity="micro"
string="\(mc"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00b6;"
u:name="PILCROW SIGN"
u:entity="para"
string="\(ps"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<!-- * according to groff_char(7), I think the escape string \(pc -->
<!-- * "periodcentered" could also be used for middot; not sure which -->
<!-- * is better, but "md" mnemonic is a better fit :-) -->
<xsl:output-character
character="&#x00b7;"
u:name="MIDDLE DOT"
u:entity="middot"
string="\(md"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00b8;"
u:name="CEDILLA"
u:entity="cedil"
string="\(ac"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00b9;"
u:name="SUPERSCRIPT ONE"
u:entity="sup1"
string="\(S1"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00ba;"
u:name="MASCULINE ORDINAL INDICATOR"
u:entity="ordm"
string="\(Om"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00bb;"
u:name="RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK"
u:entity="raquo"
string="\(Fc"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00bc;"
u:name="VULGAR FRACTION ONE QUARTER"
u:entity="frac14"
string="\(14"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00bd;"
u:name="VULGAR FRACTION ONE HALF"
u:entity="frac12"
string="\(12"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00be;"
u:name="VULGAR FRACTION THREE QUARTERS"
u:entity="frac34"
string="\(34"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00bf;"
u:name="INVERTED QUESTION MARK"
u:entity="iquest"
string="\(r?"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00c0;"
u:name="LATIN CAPITAL LETTER A WITH GRAVE"
u:entity="Agrave"
string="\(`A"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00c1;"
u:name="LATIN CAPITAL LETTER A WITH ACUTE"
u:entity="Aacute"
string="\('A"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00c2;"
u:name="LATIN CAPITAL LETTER A WITH CIRCUMFLEX"
u:entity="Acirc"
string="\(^A"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00c3;"
u:name="LATIN CAPITAL LETTER A WITH TILDE"
u:entity="Atilde"
string="\(~A"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00c4;"
u:name="LATIN CAPITAL LETTER A WITH DIAERESIS"
u:entity="Auml"
string="\(:A"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00c5;"
u:name="LATIN CAPITAL LETTER A WITH RING ABOVE"
u:entity="Aring"
string="\(oA"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00c6;"
u:name="LATIN CAPITAL LETTER AE"
u:entity="AElig"
string="\(AE"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00c7;"
u:name="LATIN CAPITAL LETTER C WITH CEDILLA"
u:entity="Ccedil"
string="\(,C"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00c8;"
u:name="LATIN CAPITAL LETTER E WITH GRAVE"
u:entity="Egrave"
string="\(`E"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00c9;"
u:name="LATIN CAPITAL LETTER E WITH ACUTE"
u:entity="Eacute"
string="\('E"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00ca;"
u:name="LATIN CAPITAL LETTER E WITH CIRCUMFLEX"
u:entity="Ecirc"
string="\(^E"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00cb;"
u:name="LATIN CAPITAL LETTER E WITH DIAERESIS"
u:entity="Euml"
string="\(:E"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00cc;"
u:name="LATIN CAPITAL LETTER I WITH GRAVE"
u:entity="Igrave"
string="\(`I"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00cd;"
u:name="LATIN CAPITAL LETTER I WITH ACUTE"
u:entity="Iacute"
string="\('I"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00ce;"
u:name="LATIN CAPITAL LETTER I WITH CIRCUMFLEX"
u:entity="Icirc"
string="\(^I"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00cf;"
u:name="LATIN CAPITAL LETTER I WITH DIAERESIS"
u:entity="Iuml"
string="\(:I"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00d0;"
u:name="LATIN CAPITAL LETTER ETH"
u:entity="ETH"
string="\(-D"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00d1;"
u:name="LATIN CAPITAL LETTER N WITH TILDE"
u:entity="Ntilde"
string="\(~N"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00d2;"
u:name="LATIN CAPITAL LETTER O WITH GRAVE"
u:entity="Ograve"
string="\(`O"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00d3;"
u:name="LATIN CAPITAL LETTER O WITH ACUTE"
u:entity="Oacute"
string="\('O"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00d4;"
u:name="LATIN CAPITAL LETTER O WITH CIRCUMFLEX"
u:entity="Ocirc"
string="\(^O"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00d5;"
u:name="LATIN CAPITAL LETTER O WITH TILDE"
u:entity="Otilde"
string="\(~O"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00d6;"
u:name="LATIN CAPITAL LETTER O WITH DIAERESIS"
u:entity="Ouml"
string="\(:O"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00d7;"
u:name="MULTIPLICATION SIGN"
u:entity="times"
string="\(mu"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00d8;"
u:name="LATIN CAPITAL LETTER O WITH STROKE"
u:entity="Oslash"
string="\(/O"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00d9;"
u:name="LATIN CAPITAL LETTER U WITH GRAVE"
u:entity="Ugrave"
string="\(`U"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00da;"
u:name="LATIN CAPITAL LETTER U WITH ACUTE"
u:entity="Uacute"
string="\('U"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00db;"
u:name="LATIN CAPITAL LETTER U WITH CIRCUMFLEX"
u:entity="Ucirc"
string="\(^U"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00dc;"
u:name="LATIN CAPITAL LETTER U WITH DIAERESIS"
u:entity="Uuml"
string="\(:U"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00dd;"
u:name="LATIN CAPITAL LETTER Y WITH ACUTE"
u:entity="Yacute"
string="\('Y"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00de;"
u:name="LATIN CAPITAL LETTER THORN"
u:entity="THORN"
string="\(TP"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00df;"
u:name="LATIN SMALL LETTER SHARP S"
u:entity="szlig"
string="\(ss"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00e0;"
u:name="LATIN SMALL LETTER A WITH GRAVE"
u:entity="agrave"
string="\(`a"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00e1;"
u:name="LATIN SMALL LETTER A WITH ACUTE"
u:entity="aacute"
string="\('a"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00e2;"
u:name="LATIN SMALL LETTER A WITH CIRCUMFLEX"
u:entity="acirc"
string="\(^a"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00e3;"
u:name="LATIN SMALL LETTER A WITH TILDE"
u:entity="atilde"
string="\(~a"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00e4;"
u:name="LATIN SMALL LETTER A WITH DIAERESIS"
u:entity="auml"
string="\(:a"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00e5;"
u:name="LATIN SMALL LETTER A WITH RING ABOVE"
u:entity="aring"
string="\(oa"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00e6;"
u:name="LATIN SMALL LETTER AE"
u:entity="aelig"
string="\(ae"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00e7;"
u:name="LATIN SMALL LETTER C WITH CEDILLA"
u:entity="ccedil"
string="\(,c"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00e8;"
u:name="LATIN SMALL LETTER E WITH GRAVE"
u:entity="egrave"
string="\(`e"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00e9;"
u:name="LATIN SMALL LETTER E WITH ACUTE"
u:entity="eacute"
string="\('e"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00ea;"
u:name="LATIN SMALL LETTER E WITH CIRCUMFLEX"
u:entity="ecirc"
string="\(^e"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00eb;"
u:name="LATIN SMALL LETTER E WITH DIAERESIS"
u:entity="euml"
string="\(:e"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00ec;"
u:name="LATIN SMALL LETTER I WITH GRAVE"
u:entity="igrave"
string="\(`i"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00ed;"
u:name="LATIN SMALL LETTER I WITH ACUTE"
u:entity="iacute"
string="\('i"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00ee;"
u:name="LATIN SMALL LETTER I WITH CIRCUMFLEX"
u:entity="icirc"
string="\(^i"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00ef;"
u:name="LATIN SMALL LETTER I WITH DIAERESIS"
u:entity="iuml"
string="\(:i"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00f0;"
u:name="LATIN SMALL LETTER ETH"
u:entity="eth"
string="\(Sd"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00f1;"
u:name="LATIN SMALL LETTER N WITH TILDE"
u:entity="ntilde"
string="\(~n"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00f2;"
u:name="LATIN SMALL LETTER O WITH GRAVE"
u:entity="ograve"
string="\(`o"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00f3;"
u:name="LATIN SMALL LETTER O WITH ACUTE"
u:entity="oacute"
string="\('o"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00f4;"
u:name="LATIN SMALL LETTER O WITH CIRCUMFLEX"
u:entity="ocirc"
string="\(^o"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00f5;"
u:name="LATIN SMALL LETTER O WITH TILDE"
u:entity="otilde"
string="\(~o"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00f6;"
u:name="LATIN SMALL LETTER O WITH DIAERESIS"
u:entity="ouml"
string="\(:o"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00f7;"
u:name="DIVISION SIGN"
u:entity="divide"
string="\(di"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="symbols"
/>
<xsl:output-character
character="&#x00f8;"
u:name="LATIN SMALL LETTER O WITH STROKE"
u:entity="oslash"
string="\(/o"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00f9;"
u:name="LATIN SMALL LETTER U WITH GRAVE"
u:entity="ugrave"
string="\(`u"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00fa;"
u:name="LATIN SMALL LETTER U WITH ACUTE"
u:entity="uacute"
string="\('u"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00fb;"
u:name="LATIN SMALL LETTER U WITH CIRCUMFLEX"
u:entity="ucirc"
string="\(^u"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00fc;"
u:name="LATIN SMALL LETTER U WITH DIAERESIS"
u:entity="uuml"
string="\(:u"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00fd;"
u:name="LATIN SMALL LETTER Y WITH ACUTE"
u:entity="yacute"
string="\('y"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00fe;"
u:name="LATIN SMALL LETTER THORN"
u:entity="thorn"
string="\(Tp"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<xsl:output-character
character="&#x00ff;"
u:name="LATIN SMALL LETTER Y WITH DIAERESIS"
u:entity="yuml"
string="\(:y"
u:block="C1 Controls And Latin-1 Supplement (Latin-1 Supplement)"
u:class="letters"
/>
<!-- * **************************************************************** -->
<!-- * End: Latin-1/ISO-8859-1 -->
<!-- * **************************************************************** -->
<!-- * **************************************************************** -->
<!-- * Begin: -->
<!-- * -->
<!-- * - x0100 to x017f (Latin Extended-A) -->
<!-- * - x0180 to x023f (Latin Extended-B) -->
<!-- * - x0250 to x02ad (IPA Extensions) -->
<!-- * - x02b0 to x02ee (Spacing Modifier Letters) -->
<!-- * - x0300 to x036f (Combining Diacritical Marks) -->
<!-- * -->
<!-- * Other than the following exceptions, characters in these -->
<!-- * blocks don't have any roff equivalents -->
<!-- * **************************************************************** -->
<xsl:output-character
character="&#x0131;"
u:name="LATIN SMALL LETTER DOTLESS I"
u:entity="inodot"
string="\(.i"
u:block="Latin Extended-A"
/>
<xsl:output-character
character="&#x0132;"
u:name="LATIN CAPITAL LIGATURE IJ"
u:entity="IJlig"
string="\(IJ"
u:block="Latin Extended-A"
/>
<xsl:output-character
character="&#x0133;"
u:name="LATIN SMALL LIGATURE IJ"
u:entity="ijlig"
string="\(ij"
u:block="Latin Extended-A"
/>
<xsl:output-character
character="&#x0141;"
u:name="LATIN CAPITAL LETTER L WITH STROKE"
u:entity="Lstrok"
string="\(/L"
u:block="Latin Extended-A"
/>
<xsl:output-character
character="&#x0142;"
u:name="LATIN SMALL LETTER L WITH STROKE"
u:entity="lstrok"
string="\(/l"
u:block="Latin Extended-A"
/>
<xsl:output-character
character="&#x0152;"
u:name="LATIN CAPITAL LIGATURE OE"
u:entity="OElig"
string="\(OE"
u:block="Latin Extended-A"
/>
<xsl:output-character
character="&#x0153;"
u:name="LATIN SMALL LIGATURE OE"
u:entity="oelig"
string="\(oe"
u:block="Latin Extended-A"
/>
<xsl:output-character
character="&#x160;"
u:name="LATIN CAPITAL LETTER S WITH CARON"
u:entity="Scaron"
string="\(vS"
u:block="Latin Extended-A"
/>
<xsl:output-character
character="&#x161;"
u:name="LATIN SMALL LETTER S WITH CARON"
u:entity="scaron"
string="\(vs"
u:block="Latin Extended-A"
/>
<xsl:output-character
character="&#x17D;"
u:name="LATIN CAPITAL LETTER Z WITH CARON"
u:entity="Zcaron"
string="\(vZ"
u:block="Latin Extended-A"
/>
<xsl:output-character
character="&#x17E;"
u:name="LATIN SMALL LETTER Z WITH CARON"
u:entity="zcaron"
string="\(vz"
u:block="Latin Extended-A"
/>
<xsl:output-character
character="&#x0192;"
u:name="LATIN SMALL LETTER F WITH HOOK"
u:entity="fnof"
string="\(Fn"
u:block="Latin Extended-B"
/>
<xsl:output-character
character="&#x02c6;"
u:name="MODIFIER LETTER CIRCUMFLEX ACCENT"
u:entity="circ"
string="\(a^"
u:block="Spacing Modifier Letters"
/>
<xsl:output-character
character="&#x02c7;"
u:name="CARON"
u:entity="caron"
string="\(ac"
u:block="Spacing Modifier Letters"
/>
<xsl:output-character
character="&#x02c9;"
u:name="MODIFIER LETTER MACRON"
string="\(a-"
u:block="Spacing Modifier Letters"
/>
<xsl:output-character
character="&#x02d8;"
u:name="BREVE"
u:entity="breve"
string="\(ab"
u:block="Spacing Modifier Letters"
/>
<!-- * there does not seem to by any roff equivalent for "dot above" -->
<!-- * <xsl:output-character -->
<!-- * character="&#x02d9;" -->
<!-- * u:name="DOT ABOVE" -->
<!-- * u:entity="dot" -->
<!-- * /> -->
<xsl:output-character
character="&#x02da;"
u:name="RING ABOVE"
u:entity="ring"
string="\(ao"
u:block="Spacing Modifier Letters"
/>
<xsl:output-character
character="&#x02db;"
u:name="OGONEK"
u:entity="ogon"
string="\(ho"
u:block="Spacing Modifier Letters"
/>
<!-- groff_char(7) calls Unicode x02dd a "Hungarian umlaut" -->
<xsl:output-character
character="&#x02dd;"
u:name="DOUBLE ACUTE ACCENT"
u:entity="dblac"
string='\(a"'
u:block="Spacing Modifier Letters"
/>
<!-- * **************************************************************** -->
<!-- * End: -->
<!-- * - Latin Extended-A -->
<!-- * - Latin Extended-B -->
<!-- * - IPA Extensions -->
<!-- * - Spacing Modifier Letters -->
<!-- * - Combining Diacritical Marks -->
<!-- * **************************************************************** -->
<!-- * **************************************************************** -->
<!-- * Begin: Greek and Coptic -->
<!-- * x0370 to x03ff -->
<!-- * **************************************************************** -->
<xsl:output-character
character="&#x0391;"
u:name="GREEK CAPITAL LETTER ALPHA"
u:entity="Agr"
string="\(*A)"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x0392;"
u:name="GREEK CAPITAL LETTER BETA"
u:entity="Bgr"
string="\(*B"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x0393;"
u:name="GREEK CAPITAL LETTER GAMMA"
u:entity="Gamma"
string="\(*G"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x0394;"
u:name="GREEK CAPITAL LETTER DELTA"
u:entity="Delta"
string="\(*D"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x0395;"
u:name="GREEK CAPITAL LETTER EPSILON"
u:entity="Egr"
string="\(*E"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x0396;"
u:name="GREEK CAPITAL LETTER ZETA"
u:entity="Zgr"
string="\(*Z"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x0397;"
u:name="GREEK CAPITAL LETTER ETA"
u:entity="EEgr"
string="\(*Y"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x0398;"
u:name="GREEK CAPITAL LETTER THETA"
u:entity="THgr"
string="\(*H"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x0399;"
u:name="GREEK CAPITAL LETTER IOTA"
u:entity="Igr"
string="\(*I"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x039a;"
u:name="GREEK CAPITAL LETTER KAPPA"
u:entity="Kgr"
string="\(*K"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x039b;"
u:name="GREEK CAPITAL LETTER LAMDA"
u:entity="Lambda"
string="\(*L"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x039c;"
u:name="GREEK CAPITAL LETTER MU"
u:entity="Mgr"
string="\(*M"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x039d;"
u:name="GREEK CAPITAL LETTER NU"
u:entity="Ngr"
string="\(*N"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x039e;"
u:name="GREEK CAPITAL LETTER XI"
u:entity="Xgr"
string="\(*C"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x039f;"
u:name="GREEK CAPITAL LETTER OMICRON"
u:entity="Ogr"
string="\(*O"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03a0;"
u:name="GREEK CAPITAL LETTER PI"
u:entity="Pgr"
string="\(*P"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03a1;"
u:name="GREEK CAPITAL LETTER RHO"
u:entity="Rgr"
string="\(*R"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03a3;"
u:name="GREEK CAPITAL LETTER SIGMA"
u:entity="Sgr"
string="\(*S"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03a4;"
u:name="GREEK CAPITAL LETTER TAU"
u:entity="Tgr"
string="\(*T"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03a5;"
u:name="GREEK CAPITAL LETTER UPSILON"
u:entity="Ugr"
string="\(*U"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03a6;"
u:name="GREEK CAPITAL LETTER PHI"
u:entity="PHgr"
string="\(*F"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03a7;"
u:name="GREEK CAPITAL LETTER CHI"
u:entity="KHgr"
string="\(*X"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03a8;"
u:name="GREEK CAPITAL LETTER PSI"
u:entity="PSgr"
string="\(*Q"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03a9;"
u:name="GREEK CAPITAL LETTER OMEGA"
u:entity="OHgr"
string="\(*W"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03aa;"
u:name="GREEK CAPITAL LETTER IOTA WITH DIALYTIKA"
u:entity="Idigr"
string="\(*I"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03ab;"
u:name="GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA"
u:entity="Udigr"
string="\(*U"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03ac;"
u:name="GREEK SMALL LETTER ALPHA WITH TONOS"
u:entity="aacgr"
string="\(*a"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03ad;"
u:name="GREEK SMALL LETTER EPSILON WITH TONOS"
u:entity="eacgr"
string="\(*e"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03ae;"
u:name="GREEK SMALL LETTER ETA WITH TONOS"
u:entity="eeacgr"
string="\(*y"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03af;"
u:name="GREEK SMALL LETTER IOTA WITH TONOS"
u:entity="iacgr"
string="\(*i"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03b0;"
u:name="GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS"
u:entity="udiagr"
string="\(*u"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03b1;"
u:name="GREEK SMALL LETTER ALPHA"
u:entity="agr"
string="\(*a"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03b2;"
u:name="GREEK SMALL LETTER BETA"
u:entity="beta"
string="\(*b"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03b3;"
u:name="GREEK SMALL LETTER GAMMA"
u:entity="gamma"
string="\(*g"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03b4;"
u:name="GREEK SMALL LETTER DELTA"
u:entity="delta"
string="\(*d"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03b5;"
u:name="GREEK SMALL LETTER EPSILON"
u:entity="epsi"
string="\(*e"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03b6;"
u:name="GREEK SMALL LETTER ZETA"
u:entity="zeta"
string="\(*z"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03b7;"
u:name="GREEK SMALL LETTER ETA"
u:entity="eegr"
string="\(*y"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03b8;"
u:name="GREEK SMALL LETTER THETA"
u:entity="thetas"
string="\(*h"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03b9;"
u:name="GREEK SMALL LETTER IOTA"
u:entity="igr"
string="\(*i"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03ba;"
u:name="GREEK SMALL LETTER KAPPA"
u:entity="kappa"
string="\(*k"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03bb;"
u:name="GREEK SMALL LETTER LAMDA"
u:entity="lambda"
string="\(*l"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03bc;"
u:name="GREEK SMALL LETTER MU"
u:entity="mgr"
string="\(*m"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03bd;"
u:name="GREEK SMALL LETTER NU"
u:entity="ngr"
string="\(*n"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03be;"
u:name="GREEK SMALL LETTER XI"
u:entity="xgr"
string="\(*c"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03bf;"
u:name="GREEK SMALL LETTER OMICRON"
u:entity="ogr"
string="\(*o"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03c0;"
u:name="GREEK SMALL LETTER PI"
u:entity="pgr"
string="\(*p"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03c1;"
u:name="GREEK SMALL LETTER RHO"
u:entity="rgr"
string="\(*r"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03c2;"
u:name="GREEK SMALL LETTER FINAL SIGMA"
u:entity="sfgr"
string="\(ts"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03c3;"
u:name="GREEK SMALL LETTER SIGMA"
u:entity="sgr"
string="\(*s"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03c4;"
u:name="GREEK SMALL LETTER TAU"
u:entity="tau"
string="\(*t"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03c5;"
u:name="GREEK SMALL LETTER UPSILON"
u:entity="ugr"
string="\(*u"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03c6;"
u:name="GREEK SMALL LETTER PHI"
u:entity="phgr"
string="\(*f"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03c7;"
u:name="GREEK SMALL LETTER CHI"
u:entity="chi"
string="\(*x"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03c8;"
u:name="GREEK SMALL LETTER PSI"
u:entity="psgr"
string="\(*q"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03c9;"
u:name="GREEK SMALL LETTER OMEGA"
u:entity="ohgr"
string="\(*w"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03ca;"
u:name="GREEK SMALL LETTER IOTA WITH DIALYTIKA"
u:entity="idigr"
string="\(*i"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03cb;"
u:name="GREEK SMALL LETTER UPSILON WITH DIALYTIKA"
u:entity="udigr"
string="\(*u"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03cc;"
u:name="GREEK SMALL LETTER OMICRON WITH TONOS"
u:entity="oacgr"
string="\(*o"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03cd;"
u:name="GREEK SMALL LETTER UPSILON WITH TONOS"
u:entity="uacgr"
string="\(*u"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03ce;"
u:name="GREEK SMALL LETTER OMEGA WITH TONOS"
u:entity="ohacgr"
string="\(*w"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03d0;"
u:name="GREEK BETA SYMBOL"
string="\(*B"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03d1;"
u:name="GREEK THETA SYMBOL"
u:entity="thetav"
string="\(+h"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03d2;"
u:name="GREEK UPSILON WITH HOOK SYMBOL"
u:entity="Upsi"
string="\(*U"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03d3;"
u:name="GREEK UPSILON WITH ACUTE AND HOOK SYMBOL"
string="\(*U"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03d4;"
u:name="GREEK UPSILON WITH DIAERESIS AND HOOK SYMBOL"
string="\(*U"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03d5;"
u:name="GREEK PHI SYMBOL"
u:entity="phis"
string="\(+f"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03d6;"
u:name="GREEK PI SYMBOL"
u:entity="piv"
string="\(+p"
u:block="Greek and Coptic"
/>
<!-- no mappings for remaining chars x03d7 to x03ef -->
<xsl:output-character
character="&#x03f0;"
u:name="GREEK KAPPA SYMBOL"
u:entity="kappav"
string="(*k"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03f1;"
u:name="GREEK RHO SYMBOL"
u:entity="rhov"
string="\(*r"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03f2;"
u:name="GREEK LUNATE SIGMA SYMBOL"
string="\(*s"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03f4;"
u:name="GREEK CAPITAL THETA SYMBOL"
string="\(*H"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03f5;"
u:name="GREEK LUNATE EPSILON SYMBOL"
string="\(*e"
u:block="Greek and Coptic"
/>
<xsl:output-character
character="&#x03f6;"
u:name="GREEK REVERSED LUNATE EPSILON SYMBOL"
u:entity="bepsi"
string="\(*e"
u:block="Greek and Coptic"
/>
<!-- * ***************************************************************** -->
<!-- * End: Greek and Coptic -->
<!-- * ***************************************************************** -->
<!-- * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<!-- * Cyrillic -->
<!-- * x0400 to x04ff -->
<!-- * - do nothing - -->
<!-- * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<!-- * ***************************************************************** -->
<!-- * Begin: General Punctuation -->
<!-- * x2000 to x206f -->
<!-- * ***************************************************************** -->
<!-- * first, spaces of various widths -->
<!-- * Note: There does not seem to be either a real em space or en space -->
<!-- * in roff; to approximate them, this character map assumes that in -->
<!-- * most fonts, an en space is about the same as the width of a digit -->
<!-- * (in roff, "\0"), so an em space (which by definition is -->
<!-- * equal to the width of two en spaces) is about the same as the width -->
<!-- * of two digits (thus, in roff, "\0\0") -->
<xsl:output-character
character="&#x2000;"
u:name="EN QUAD"
string="\0"
u:block="General Punctuation"
u:class="spaces"
/>
<xsl:output-character
character="&#x2001;"
u:name="EM QUAD"
string="\0\0"
u:block="General Punctuation"
u:class="spaces"
/>
<xsl:output-character
character="&#x2002;"
u:name="EN SPACE"
u:entity="ensp"
string="\0"
u:block="General Punctuation"
u:class="spaces"
/>
<xsl:output-character
character="&#x2003;"
u:name="EM SPACE"
u:entity="emsp"
string="\0\0"
u:block="General Punctuation"
u:class="spaces"
/>
<!-- * roughly same width as a normal space -->
<xsl:output-character
character="&#x2004;"
u:name="THREE-PER-EM SPACE"
u:entity="emsp13"
string=" "
u:block="General Punctuation"
u:class="spaces"
/>
<!-- * roughly same width as a normal space -->
<xsl:output-character
character="&#x2005;"
u:name="FOUR-PER-EM SPACE"
u:entity="emsp14"
string=" "
u:block="General Punctuation"
u:class="spaces"
/>
<!-- * roughly same width as a normal space -->
<xsl:output-character
character="&#x2006;"
u:name="SIX-PER-EM SPACE"
string=" "
u:block="General Punctuation"
u:class="spaces"
/>
<!-- * same as roff "digit" space -->
<xsl:output-character
character="&#x2007;"
u:name="FIGURE SPACE"
u:entity="numsp"
string="\0"
u:block="General Punctuation"
u:class="spaces"
/>
<!-- * punctuation space in most fonts is actually closer to a normal -->
<!-- * space than it is to a thin space -->
<xsl:output-character
character="&#x2008;"
u:name="PUNCTUATION SPACE"
u:entity="puncsp"
string=" "
u:block="General Punctuation"
u:class="spaces"
/>
<!-- * Note: Not sure how best to deal with thin space, because the roff -->
<!-- * thin space, "\^", prints as a zero-width space in TTY -->
<!-- * output. However, it seems that, unlike a hair space, a thin space, -->
<!-- * at 1/12 of an em, is still recognizable to most people as a space, -->
<!-- * so treating it as zero-width seems wrong. So, for the sake of making -->
<!-- * TTY output look OK, just substitute with a normal space; but real -->
<!-- * roff escape is "\(\^" -->
<xsl:output-character
character="&#x2009;"
u:name="THIN SPACE"
u:entity="thinsp"
string=" "
u:block="General Punctuation"
u:class="spaces"
/>
<!-- * I don't think there's a standard definition of what a hair -->
<!-- * space is; some guides just say it's "less than 1/5 of an em" or -->
<!-- * that it's "narrower than a thin space"; seems like in practice, -->
<!-- * it's *a lot* narrower than a thin space, to the point where -->
<!-- * it's close to being a non-space, so here it's substituted with -->
<!-- * roff equivalent of a zero-width no-break space -->
<xsl:output-character
character="&#x200a;"
u:name="HAIR SPACE"
u:entity="hairsp"
string="\&amp;"
u:block="General Punctuation"
u:class="spaces"
/>
<!-- * map to roff "zero-width break point" -->
<xsl:output-character
character="&#x200b;"
u:name="ZERO WIDTH SPACE"
string="\:"
u:block="General Punctuation"
u:class="spaces"
/>
<!-- * x200c and x200d have special purposes in some Indic languages (I -->
<!-- * think); for the "correct" zero-width space, according to Unicode docs, -->
<!-- * use x2060, not x200c or x200d -->
<!-- * <xsl:output-character -->
<!-- * character="&#x200c;" -->
<!-- * u:name="ZERO WIDTH NON-JOINER" -->
<!-- * string="\:" -->
<!-- * /> -->
<!-- * <xsl:output-character -->
<!-- * character="&#x200d;" -->
<!-- * u:name="ZERO WIDTH JOINER" -->
<!-- * string="\&amp;" -->
<!-- * /> -->
<!-- * non-visible -->
<!-- * <xsl:output-character -->
<!-- * character="&#x200e;" -->
<!-- * u:name="LEFT-TO-RIGHT MARK" -->
<!-- * /> -->
<!-- * <xsl:output-character -->
<!-- * character="&#x200f;" -->
<!-- * u:name="RIGHT-TO-LEFT MARK" -->
<!-- * /> -->
<!-- * .................................................... -->
<!-- * next, hyphens and various dashes, bars, underscores -->
<xsl:output-character
character="&#x2010;"
u:name="HYPHEN"
u:entity="hyphen"
string="\(hy"
u:block="General Punctuation"
u:class="dashes"
/>
<!-- * although the groff docs do not make it clear, testing -->
<!-- * indicates that the only reliable way to make a non-breaking -->
<!-- * hyphen is to put just a backslash in front of it. -->
<!-- * -->
<!-- * based on testing, it also appears that no character is needed -->
<!-- * after the hyphen in order to make it non-breaking -->
<xsl:output-character
character="&#x2011;"
u:name="NON-BREAKING HYPHEN"
string="\-"
u:block="General Punctuation"
u:class="dashes"
/>
<!-- * roughly same width as en dash -->
<xsl:output-character
character="&#x2012;"
u:name="FIGURE DASH"
string="\(en"
u:block="General Punctuation"
u:class="dashes"
/>
<xsl:output-character
character="&#x2013;"
u:name="EN DASH"
u:entity="ndash"
string="\(en"
u:block="General Punctuation"
u:class="dashes"
/>
<xsl:output-character
character="&#x2014;"
u:name="EM DASH"
u:entity="mdash"
string="\(em"
u:block="General Punctuation"
u:class="dashes"
/>
<!-- * seems roughly same width as em dash -->
<xsl:output-character
character="&#x2015;"
u:name="HORIZONTAL BAR"
u:entity="horbar"
string="\(em"
u:block="General Punctuation"
u:class="dashes"
/>
<xsl:output-character
character="&#x2016;"
u:name="DOUBLE VERTICAL LINE"
u:entity="Verbar"
string="\(bv\(bv"
u:block="General Punctuation"
/>
<!-- * no double-underscore in roff; so just make it a single -->
<!-- * underscore -->
<xsl:output-character
character="&#x2017;"
u:name="DOUBLE LOW LINE"
string="_"
u:block="General Punctuation"
/>
<!-- * .................................................... -->
<!-- * various quotation marks -->
<xsl:output-character
character="&#x2018;"
u:name="LEFT SINGLE QUOTATION MARK"
u:entity="lsquo"
string="\(oq"
u:block="General Punctuation"
u:class="quotes"
/>
<xsl:output-character
character="&#x2019;"
u:name="RIGHT SINGLE QUOTATION MARK"
u:entity="rsquo"
string="\(cq"
u:block="General Punctuation"
u:class="quotes"
/>
<xsl:output-character
character="&#x201a;"
u:name="SINGLE LOW-9 QUOTATION MARK"
u:entity="lsquor"
string="\(bq"
u:block="General Punctuation"
u:class="quotes"
/>
<!-- * no roff equiv; treat same as lsquo -->
<xsl:output-character
character="&#x201b;"
u:name="SINGLE HIGH-REVERSED-9 QUOTATION MARK"
string="\(oq"
u:block="General Punctuation"
u:class="quotes"
/>
<xsl:output-character
character="&#x201c;"
u:name="LEFT DOUBLE QUOTATION MARK"
u:entity="ldquo"
string="\(lq"
u:block="General Punctuation"
u:class="quotes"
/>
<xsl:output-character
character="&#x201d;"
u:name="RIGHT DOUBLE QUOTATION MARK"
u:entity="rdquo"
string="\(rq"
u:block="General Punctuation"
u:class="quotes"
/>
<xsl:output-character
character="&#x201e;"
u:name="DOUBLE LOW-9 QUOTATION MARK"
u:entity="ldquor"
string="\(Bq"
u:block="General Punctuation"
u:class="quotes"
/>
<!-- * no roff equiv; treat same as rdquo -->
<xsl:output-character
character="&#x201f;"
u:name="DOUBLE HIGH-REVERSED-9 QUOTATION MARK"
string="\(rq"
u:block="General Punctuation"
u:class="quotes"
/>
<!-- * .................................................... -->
<!-- * various symbols -->
<xsl:output-character
character="&#x2020;"
u:name="DAGGER"
u:entity="dagger"
string="\(dg"
u:block="General Punctuation_daggers"
/>
<xsl:output-character
character="&#x2021;"
u:name="DOUBLE DAGGER"
u:entity="Dagger"
string="\(dd"
u:block="General Punctuation_daggers"
/>
<xsl:output-character
character="&#x2022;"
u:name="BULLET"
u:entity="bull"
string="\(bu"
u:block="General Punctuation"
u:class="bullets"
/>
<!-- * no roff equiv -->
<xsl:output-character
character="&#x2023;"
u:name="TRIANGULAR BULLET"
string=">\&amp;"
u:block="General Punctuation"
u:class="bullets"
/>
<!-- * no roff equiv -->
<xsl:output-character
character="&#x2024;"
u:name="ONE DOT LEADER"
string="\&amp;."
u:block="General Punctuation_leaders"
/>
<!-- * no roff equiv -->
<xsl:output-character
character="&#x2025;"
u:name="TWO DOT LEADER"
u:entity="nldr"
string="\&amp;.."
u:block="General Punctuation_leaders"
/>
<!-- * no roff equiv -->
<xsl:output-character
character="&#x2026;"
u:name="HORIZONTAL ELLIPSIS"
u:entity="hellip"
string="\&amp;..."
u:block="General Punctuation"
/>
<!-- what is "hyphenation point" used for? looks like middot to me... -->
<xsl:output-character
character="&#x2027;"
u:name="HYPHENATION POINT"
string="\(md"
u:block="General Punctuation"
/>
<!-- * Begin x2028 to x202e - no idea what to do with these -->
<!-- * <xsl:output-character -->
<!-- * character="&#x2028;" -->
<!-- * u:name="LINE SEPARATOR" -->
<!-- * /> -->
<!-- * <xsl:output-character -->
<!-- * character="&#x2029;" -->
<!-- * u:name="PARAGRAPH SEPARATOR" -->
<!-- * /> -->
<!-- * <xsl:output-character -->
<!-- * character="&#x202a;" -->
<!-- * u:name="LEFT-TO-RIGHT EMBEDDING" -->
<!-- * /> -->
<!-- * <xsl:output-character -->
<!-- * character="&#x202b;" -->
<!-- * u:name="RIGHT-TO-LEFT EMBEDDING" -->
<!-- * /> -->
<!-- * <xsl:output-character -->
<!-- * character="&#x202c;" -->
<!-- * u:name="POP DIRECTIONAL FORMATTING" -->
<!-- * /> -->
<!-- * <xsl:output-character -->
<!-- * character="&#x202d;" -->
<!-- * u:name="LEFT-TO-RIGHT OVERRIDE" -->
<!-- * /> -->
<!-- * <xsl:output-character -->
<!-- * character="&#x202e;" -->
<!-- * u:name="RIGHT-TO-LEFT OVERRIDE" -->
<!-- * /> -->
<!-- * End x2028 to x202e - no idea what to do with these -->
<!-- * seems like "narrow" nbsp is basically the same as a no-break -->
<!-- * space -->
<xsl:output-character
character="&#x202f;"
u:name="NARROW NO-BREAK SPACE"
string="\ "
u:block="General Punctuation"
u:class="spaces"
/>
<xsl:output-character
character="&#x2030;"
u:name="PER MILLE SIGN"
u:entity="permil"
string="\(%0"
u:block="General Punctuation"
/>
<!-- * no roff equiv; no idea what to do with it -->
<!-- * <xsl:output-character -->
<!-- * character="&#x2031;" -->
<!-- * u:name="PER TEN THOUSAND SIGN" -->
<!-- * /> -->
<xsl:output-character
character="&#x2032;"
u:name="PRIME"
u:entity="prime"
string="\(fm"
u:block="General Punctuation"
u:class="primes"
/>
<xsl:output-character
character="&#x2033;"
u:name="DOUBLE PRIME"
u:entity="Prime"
string="\(sd"
u:block="General Punctuation"
u:class="primes"
/>
<xsl:output-character
character="&#x2034;"
u:name="TRIPLE PRIME"
u:entity="tprime"
string="\(sd\(fm"
u:block="General Punctuation"
u:class="primes"
/>
<!-- * no idea for these -->
<!-- * <xsl:output-character -->
<!-- * character="&#x2035;" -->
<!-- * u:name="REVERSED PRIME" -->
<!-- * u:entity="bprime" -->
<!-- * /> -->
<!-- * <xsl:output-character -->
<!-- * character="&#x2036;" -->
<!-- * u:name="REVERSED DOUBLE PRIME" -->
<!-- * /> -->
<!-- * <xsl:output-character -->
<!-- * character="&#x2037;" -->
<!-- * u:name="REVERSED TRIPLE PRIME" -->
<!-- * /> -->
<!-- * there is no low caret in roff -->
<xsl:output-character
character="&#x2038;"
u:name="CARET"
string="^"
u:block="General Punctuation"
/>
<xsl:output-character
character="&#x2039;"
u:name="SINGLE LEFT-POINTING ANGLE QUOTATION MARK"
string="\(fo"
u:block="General Punctuation"
u:class="quotes"
/>
<xsl:output-character
character="&#x203a;"
u:name="SINGLE RIGHT-POINTING ANGLE QUOTATION MARK"
string="\(fc"
u:block="General Punctuation"
u:class="quotes"
/>
<!-- * not in roff -->
<xsl:output-character
character="&#x203b;"
u:name="REFERENCE MARK"
string="*"
u:block="General Punctuation"
/>
<xsl:output-character
character="&#x203c;"
u:name="DOUBLE EXCLAMATION MARK"
string="!!"
u:block="General Punctuation"
/>
<xsl:output-character
character="&#x203d;"
u:name="INTERROBANG"
string="?!"
u:block="General Punctuation"
/>
<xsl:output-character
character="&#x203e;"
u:name="OVERLINE"
string="\(rn"
u:block="General Punctuation"
/>
<xsl:output-character
character="&#x203f;"
u:name="UNDERTIE"
string="\(ul"
u:block="General Punctuation"
/>
<!-- * not in roff -->
<xsl:output-character
character="&#x2040;"
u:name="CHARACTER TIE"
string="\(rn"
u:block="General Punctuation"
/>
<!-- * not in roff -->
<xsl:output-character
character="&#x2041;"
u:name="CARET INSERTION POINT"
u:entity="caret"
string="^"
u:block="General Punctuation"
/>
<!-- * not in roff -->
<xsl:output-character
character="&#x2042;"
u:name="ASTERISM"
string="*"
u:block="General Punctuation"
/>
<!-- * not in roff; just make bold hyphen -->
<xsl:output-character
character="&#x2043;"
u:name="HYPHEN BULLET"
u:entity="hybull"
string="\fB-\fR"
u:block="General Punctuation"
u:class="bullets"
/>
<xsl:output-character
character="&#x2044;"
u:name="FRACTION SLASH"
string="\(sl"
u:block="General Punctuation"
/>
<!-- * not in roff -->
<xsl:output-character
character="&#x2045;"
u:name="LEFT SQUARE BRACKET WITH QUILL"
string="["
u:block="General Punctuation"
/>
<!-- * not in roff -->
<xsl:output-character
character="&#x2046;"
u:name="RIGHT SQUARE BRACKET WITH QUILL"
string="]"
u:block="General Punctuation"
/>
<xsl:output-character
character="&#x2047;"
u:name="DOUBLE QUESTION MARK"
string="??"
u:block="General Punctuation"
/>
<xsl:output-character
character="&#x2048;"
u:name="QUESTION EXCLAMATION MARK"
string="?!"
u:block="General Punctuation"
/>
<xsl:output-character
character="&#x2049;"
u:name="EXCLAMATION QUESTION MARK"
string="!?"
u:block="General Punctuation"
/>
<!-- * not in roff -->
<xsl:output-character
character="&#x204a;"
u:name="TIRONIAN SIGN ET"
string="7"
u:block="General Punctuation"
/>
<!-- * not in roff; just replace with un-reversed pilcrow -->
<xsl:output-character
character="&#x204b;"
u:name="REVERSED PILCROW SIGN"
string="\(ps"
u:block="General Punctuation"
/>
<!-- * not in roff; just make regular bullet -->
<xsl:output-character
character="&#x204c;"
u:name="BLACK LEFTWARDS BULLET"
string="\(bu"
u:block="General Punctuation"
/>
<!-- * not in roff; just make regular bullet -->
<xsl:output-character
character="&#x204d;"
u:name="BLACK RIGHTWARDS BULLET"
string="\(bu"
u:block="General Punctuation"
/>
<xsl:output-character
character="&#x204e;"
u:name="LOW ASTERISK"
string="*"
u:block="General Punctuation"
/>
<!-- * ............................................................... -->
<!-- * Remaining General Punctuation -->
<!-- * from x2050 to x206f -->
<!-- * only map a couple of these -->
<!-- * ............................................................... -->
<!-- * basically same as a normal space -->
<xsl:output-character
character="&#x205f;"
u:name="MEDIUM MATHEMATICAL SPACE"
string=" "
u:block="General Punctuation"
u:class="spaces"
/>
<!-- * Regarding x2060 vs. xFEFF, the document "Unicode Standard Annex #14, -->
<!-- * Line Breaking Properties"[1] says: -->
<!-- * -->
<!-- * The word joiner character [x2060 a.k.a "WJ"] is the preferred -->
<!-- * choice for an invisible character to keep other characters -->
<!-- * together that would otherwise be split across the line at a direct -->
<!-- * break. The character FEFF has the same effect, but because it is -->
<!-- * also used in an unrelated way as a byte order mark, the use of the -->
<!-- * WJ as the preferred interword glue simplifies the handling of FEFF. -->
<!-- * -->
<!-- * [1] http://www.unicode.org/reports/tr14/ -->
<!-- * -->
<!-- * The groff docs seem ambiguous about whether \& is a joiner and -->
<!-- * prevents breaks, but, based on testing, seems like it does -->
<xsl:output-character
character="&#x2060;"
u:name="WORD JOINER"
string="\&amp;"
u:block="General Punctuation"
/>
<!-- * ***************************************************************** -->
<!-- * End: General Punctuation -->
<!-- * ***************************************************************** -->
<!-- * ***************************************************************** -->
<!-- * Begin: Superscripts and Subscripts -->
<!-- * x2070 to x209f -->
<!-- * For superscripts, just do a^n thing -->
<!-- * For subscripts, just do a_n -->
<!-- * ***************************************************************** -->
<xsl:output-character
character="&#x2070;"
u:name="SUPERSCRIPT ZERO"
string="^0"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x2071;"
u:name="SUPERSCRIPT LATIN SMALL LETTER I"
string="^i"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x2074;"
u:name="SUPERSCRIPT FOUR"
string="^4"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x2075;"
u:name="SUPERSCRIPT FIVE"
string="^5"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x2076;"
u:name="SUPERSCRIPT SIX"
string="^6"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x2077;"
u:name="SUPERSCRIPT SEVEN"
string="^7"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x2078;"
u:name="SUPERSCRIPT EIGHT"
string="^8"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x2079;"
u:name="SUPERSCRIPT NINE"
string="^9"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x207a;"
u:name="SUPERSCRIPT PLUS SIGN"
string="^+"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x207b;"
u:name="SUPERSCRIPT MINUS"
string="^-"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x207c;"
u:name="SUPERSCRIPT EQUALS SIGN"
string="^="
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x207d;"
u:name="SUPERSCRIPT LEFT PARENTHESIS"
string="^("
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x207e;"
u:name="SUPERSCRIPT RIGHT PARENTHESIS"
string="^)"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x207f;"
u:name="SUPERSCRIPT LATIN SMALL LETTER N"
string="^n"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x2080;"
u:name="SUBSCRIPT ZERO"
string="_0"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x2081;"
u:name="SUBSCRIPT ONE"
string="_1"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x2082;"
u:name="SUBSCRIPT TWO"
string="_2"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x2083;"
u:name="SUBSCRIPT THREE"
string="_3"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x2084;"
u:name="SUBSCRIPT FOUR"
string="_4"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x2085;"
u:name="SUBSCRIPT FIVE"
string="_5"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x2086;"
u:name="SUBSCRIPT SIX"
string="_6"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x2087;"
u:name="SUBSCRIPT SEVEN"
string="_7"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x2088;"
u:name="SUBSCRIPT EIGHT"
string="_8"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x2089;"
u:name="SUBSCRIPT NINE"
string="_9"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x208a;"
u:name="SUBSCRIPT PLUS SIGN"
string="_+"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x208b;"
u:name="SUBSCRIPT MINUS"
string="_-"
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x208c;"
u:name="SUBSCRIPT EQUALS SIGN"
string="_="
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x208d;"
u:name="SUBSCRIPT LEFT PARENTHESIS"
string="_("
u:block="Superscripts and Subscripts"
/>
<xsl:output-character
character="&#x208e;"
u:name="SUBSCRIPT RIGHT PARENTHESIS"
string="_)"
u:block="Superscripts and Subscripts"
/>
<!-- * ***************************************************************** -->
<!-- * End: Superscripts and Subscripts -->
<!-- * x2070 to x209f -->
<!-- * ***************************************************************** -->
<!-- * ***************************************************************** -->
<!-- * Begin: Currency Symbols -->
<!-- * x20a0 to x20b1 -->
<!-- * No mappings for any of these; just spell out -->
<!-- * ***************************************************************** -->
<xsl:output-character
character="&#x20a0;"
u:name="EURO-CURRENCY SIGN"
string="EUR"
u:block="Currency Symbols"
/>
<xsl:output-character
character="&#x20a1;"
u:name="COLON SIGN"
string="COLON"
u:block="Currency Symbols"
/>
<xsl:output-character
character="&#x20a2;"
u:name="CRUZEIRO SIGN"
string="CRUZEIRO"
u:block="Currency Symbols"
/>
<xsl:output-character
character="&#x20a3;"
u:name="FRENCH FRANC SIGN"
string="FRANC"
u:block="Currency Symbols"
/>
<xsl:output-character
character="&#x20a4;"
u:name="LIRA SIGN"
string="LIRA"
u:block="Currency Symbols"
/>
<xsl:output-character
character="&#x20a5;"
u:name="MILL SIGN"
string="MILL"
u:block="Currency Symbols"
/>
<xsl:output-character
character="&#x20a6;"
u:name="NAIRA SIGN"
string="NAIRA"
u:block="Currency Symbols"
/>
<xsl:output-character
character="&#x20a7;"
u:name="PESETA SIGN"
string="PESETA"
u:block="Currency Symbols"
/>
<xsl:output-character
character="&#x20a8;"
u:name="RUPEE SIGN"
string="RUPEE"
u:block="Currency Symbols"
/>
<xsl:output-character
character="&#x20a9;"
u:name="WON SIGN"
string="WON"
u:block="Currency Symbols"
/>
<xsl:output-character
character="&#x20aa;"
u:name="NEW SHEQEL SIGN"
string="SHEQEL"
u:block="Currency Symbols"
/>
<xsl:output-character
character="&#x20ab;"
u:name="DONG SIGN"
string="DONG"
u:block="Currency Symbols"
/>
<xsl:output-character
character="&#x20ac;"
u:name="EURO SIGN"
string="EUR"
u:block="Currency Symbols"
/>
<xsl:output-character
character="&#x20ad;"
u:name="KIP SIGN"
string="KIP"
u:block="Currency Symbols"
/>
<xsl:output-character
character="&#x20ae;"
u:name="TUGRIK SIGN"
string="TUGRIK"
u:block="Currency Symbols"
/>
<xsl:output-character
character="&#x20af;"
u:name="DRACHMA SIGN"
string="DRACHMA"
u:block="Currency Symbols"
/>
<!-- <xsl:output-character -->
<!-- character="&#x20b0;" -->
<!-- u:name="GERMAN PENNY SIGN" -->
<!-- string="?" -->
<!-- u:block="Currency Symbols" -->
<!-- /> -->
<xsl:output-character
character="&#x20b1;"
u:name="PESO SIGN"
string="PESO"
u:block="Currency Symbols"
/>
<!-- * ***************************************************************** -->
<!-- * End: Currency Symbols -->
<!-- * x20a0 to x20b1 -->
<!-- * ***************************************************************** -->
<!-- * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<!-- * Combining Diacritical Marks for Symbols -->
<!-- * x20d0 to x20ff -->
<!-- * - do nothing - -->
<!-- * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<!-- * ***************************************************************** -->
<!-- * Begin: Letterlike Symbols -->
<!-- * x2100 to x214b -->
<!-- * -->
<!-- * No mappings for any of these, and nothing appropriate for -->
<!-- * most of them; so, just spell out the ones that we can -->
<!-- * ***************************************************************** -->
<xsl:output-character
character="&#x2103;"
u:name="DEGREE CELSIUS"
string="\(deC"
u:block="Letterlike Symbols"
/>
<xsl:output-character
character="&#x2105;"
u:name="CARE OF"
u:entity="incare"
string="c/o"
u:block="Letterlike Symbols"
/>
<xsl:output-character
character="&#x2109;"
u:name="DEGREE FAHRENHEIT"
string="\(deF"
u:block="Letterlike Symbols"
/>
<!-- roff Ifraktur -->
<xsl:output-character
character="&#x2111;"
u:name="BLACK-LETTER CAPITAL I"
string="\(Im"
u:block="Letterlike Symbols"
/>
<xsl:output-character
character="&#x2113;"
u:name="SCRIPT SMALL L"
u:entity="ell"
string="l"
u:block="Letterlike Symbols"
/>
<xsl:output-character
character="&#x2116;"
u:name="NUMERO SIGN"
u:entity="numero"
string="No."
u:block="Letterlike Symbols"
/>
<xsl:output-character
character="&#x2118;"
u:name="SCRIPT CAPITAL P"
u:entity="weierp"
string="\(wp"
u:block="Letterlike Symbols"
/>
<xsl:output-character
character="&#x211c;"
u:name="BLACK-LETTER CAPITAL R"
u:entity="real"
string="\(Re"
u:block="Letterlike Symbols"
/>
<xsl:output-character
character="&#x211e;"
u:name="PRESCRIPTION TAKE"
u:entity="rx"
string="Rx"
u:block="Letterlike Symbols"
/>
<xsl:output-character
character="&#x2120;"
u:name="SERVICE MARK"
string="(SM)"
u:block="Letterlike Symbols"
/>
<!-- * We don't do "\(tm" for &#x2122; because for console output, groff -->
<!-- * just renders that as "tm", without any preceding space, parens, -->
<!-- * or anything. So it just gets run into the preceding word; i.e.: -->
<!-- * -->
<!-- * Product&#x2122; -> Producttm -->
<!-- * -->
<!-- * That it probably not what most people would want. So we just -->
<!-- * render it as (TM) instead, Thus: -->
<!-- * -->
<!-- * Product&#x2122; -> Product(TM) -->
<xsl:output-character
character="&#x2122;"
u:name="TRADE MARK SIGN"
u:entity="trade"
string="(TM)"
u:block="Letterlike Symbols"
/>
<xsl:output-character
character="&#x2126;"
u:name="OHM SIGN"
u:entity="ohm"
string="\(*W"
u:block="Letterlike Symbols"
/>
<xsl:output-character
character="&#x212a;"
u:name="KELVIN SIGN"
string="K"
u:block="Letterlike Symbols"
/>
<xsl:output-character
character="&#x212b;"
u:name="ANGSTROM SIGN"
u:entity="angst"
string="\(oA"
u:block="Letterlike Symbols"
/>
<xsl:output-character
character="&#x2135;"
u:name="ALEF SYMBOL"
u:entity="aleph"
string="\(Ah"
u:block="Letterlike Symbols"
/>
<!-- * ***************************************************************** -->
<!-- * End: Letterlike Symbols -->
<!-- * x2100 to x214b -->
<!-- * ***************************************************************** -->
<!-- * ***************************************************************** -->
<!-- * Begin: Number Forms -->
<!-- * x2150 to x218f -->
<!-- * -->
<!-- * No mappings for any of these, and nothing appropriate for most -->
<!-- * of them; so, just spell out the ones that we can -->
<!-- * ***************************************************************** -->
<xsl:output-character
character="&#x2153;"
u:name="VULGAR FRACTION ONE THIRD"
u:entity="frac13"
string="1/3"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2154;"
u:name="VULGAR FRACTION TWO THIRDS"
u:entity="frac23"
string="2/3"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2155;"
u:name="VULGAR FRACTION ONE FIFTH"
u:entity="frac15"
string="1/5"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2156;"
u:name="VULGAR FRACTION TWO FIFTHS"
u:entity="frac25"
string="2/5"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2157;"
u:name="VULGAR FRACTION THREE FIFTHS"
u:entity="frac35"
string="3/5"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2158;"
u:name="VULGAR FRACTION FOUR FIFTHS"
u:entity="frac45"
string="4/5"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2159;"
u:name="VULGAR FRACTION ONE SIXTH"
u:entity="frac16"
string="1/6"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x215a;"
u:name="VULGAR FRACTION FIVE SIXTHS"
u:entity="frac56"
string="5/6"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x215b;"
u:name="VULGAR FRACTION ONE EIGHTH"
u:entity="frac18"
string="1/8"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x215c;"
u:name="VULGAR FRACTION THREE EIGHTHS"
u:entity="frac38"
string="3/8"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x215d;"
u:name="VULGAR FRACTION FIVE EIGHTHS"
u:entity="frac58"
string="5/8"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x215e;"
u:name="VULGAR FRACTION SEVEN EIGHTHS"
u:entity="frac78"
string="7/8"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x215f;"
u:name="FRACTION NUMERATOR ONE"
string="1/"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2160;"
u:name="ROMAN NUMERAL ONE"
string="I"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2161;"
u:name="ROMAN NUMERAL TWO"
string="II"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2162;"
u:name="ROMAN NUMERAL THREE"
string="III"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2163;"
u:name="ROMAN NUMERAL FOUR"
string="IV"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2164;"
u:name="ROMAN NUMERAL FIVE"
string="V"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2165;"
u:name="ROMAN NUMERAL SIX"
string="VI"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2166;"
u:name="ROMAN NUMERAL SEVEN"
string="VII"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2167;"
u:name="ROMAN NUMERAL EIGHT"
string="VIII"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2168;"
u:name="ROMAN NUMERAL NINE"
string="IX"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2169;"
u:name="ROMAN NUMERAL TEN"
string="X"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x216a;"
u:name="ROMAN NUMERAL ELEVEN"
string="XI"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x216b;"
u:name="ROMAN NUMERAL TWELVE"
string="XII"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x216c;"
u:name="ROMAN NUMERAL FIFTY"
string="L"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x216d;"
u:name="ROMAN NUMERAL ONE HUNDRED"
string="C"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x216e;"
u:name="ROMAN NUMERAL FIVE HUNDRED"
string="D"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x216f;"
u:name="ROMAN NUMERAL ONE THOUSAND"
string="M"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2170;"
u:name="SMALL ROMAN NUMERAL ONE"
string="i"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2171;"
u:name="SMALL ROMAN NUMERAL TWO"
string="ii"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2172;"
u:name="SMALL ROMAN NUMERAL THREE"
string="iii"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2173;"
u:name="SMALL ROMAN NUMERAL FOUR"
string="iv"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2174;"
u:name="SMALL ROMAN NUMERAL FIVE"
string="v"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2175;"
u:name="SMALL ROMAN NUMERAL SIX"
string="vi"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2176;"
u:name="SMALL ROMAN NUMERAL SEVEN"
string="vii"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2177;"
u:name="SMALL ROMAN NUMERAL EIGHT"
string="viii"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2178;"
u:name="SMALL ROMAN NUMERAL NINE"
string="ix"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2179;"
u:name="SMALL ROMAN NUMERAL TEN"
string="x"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x217a;"
u:name="SMALL ROMAN NUMERAL ELEVEN"
string="xi"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x217b;"
u:name="SMALL ROMAN NUMERAL TWELVE"
string="xii"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x217c;"
u:name="SMALL ROMAN NUMERAL FIFTY"
string="l"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x217d;"
u:name="SMALL ROMAN NUMERAL ONE HUNDRED"
string="c"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x217e;"
u:name="SMALL ROMAN NUMERAL FIVE HUNDRED"
string="d"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x217f;"
u:name="SMALL ROMAN NUMERAL ONE THOUSAND"
string="m"
u:block="Number Forms"
/>
<xsl:output-character
character="&#x2180;"
u:name="ROMAN NUMERAL ONE THOUSAND C D"
string="CD"
u:block="Number Forms"
/>
<!-- * ***************************************************************** -->
<!-- * End: Number Forms -->
<!-- * x2150 to x218f -->
<!-- * ***************************************************************** -->
<!-- * ***************************************************************** -->
<!-- * Begin: Arrows -->
<!-- * x2190 to x21ff -->
<!-- * ***************************************************************** -->
<xsl:output-character
character="&#x2190;"
u:name="LEFTWARDS ARROW"
u:entity="larr"
string="\(&lt;-"
u:block="Arrows"
/>
<xsl:output-character
character="&#x2191;"
u:name="UPWARDS ARROW"
u:entity="uarr"
string="\(ua"
u:block="Arrows"
/>
<xsl:output-character
character="&#x2192;"
u:name="RIGHTWARDS ARROW"
u:entity="rarr"
string="\(->"
u:block="Arrows"
/>
<xsl:output-character
character="&#x2193;"
u:name="DOWNWARDS ARROW"
u:entity="darr"
string="\(da"
u:block="Arrows"
/>
<xsl:output-character
character="&#x2194;"
u:name="LEFT RIGHT ARROW"
u:entity="harr"
string="\(&lt;>"
u:block="Arrows"
/>
<xsl:output-character
character="&#x2195;"
u:name="UP DOWN ARROW"
u:entity="varr"
string="\(va"
u:block="Arrows"
/>
<xsl:output-character
character="&#x21b5;"
u:name="DOWNWARDS ARROW WITH CORNER LEFTWARDS"
u:entity="crarr"
string="\(CR"
u:block="Arrows"
/>
<xsl:output-character
character="&#x21d0;"
u:name="LEFTWARDS DOUBLE ARROW"
u:entity="lArr"
string="\(la"
u:block="Arrows"
/>
<xsl:output-character
character="&#x21d1;"
u:name="UPWARDS DOUBLE ARROW"
u:entity="uArr"
string="\(uA"
u:block="Arrows"
/>
<xsl:output-character
character="&#x21d2;"
u:name="RIGHTWARDS DOUBLE ARROW"
u:entity="rArr"
string="\(rA"
u:block="Arrows"
/>
<xsl:output-character
character="&#x21d3;"
u:name="DOWNWARDS DOUBLE ARROW"
u:entity="dArr"
string="\(dA"
u:block="Arrows"
/>
<xsl:output-character
character="&#x21d4;"
u:name="LEFT RIGHT DOUBLE ARROW"
u:entity="hArr"
string="\(hA"
u:block="Arrows"
/>
<!-- no roff equiv; render same as single arrow -->
<xsl:output-character
character="&#x21d5;"
u:name="UP DOWN DOUBLE ARROW"
u:entity="vArr"
string="\(va"
u:block="Arrows"
/>
<!-- * ***************************************************************** -->
<!-- * Begin: Mathematical Operators -->
<!-- * x2200 to x22ff -->
<!-- * ***************************************************************** -->
<xsl:output-character
character="&#x2200;"
u:name="FOR ALL"
u:entity="forall"
string="\(fa"
u:block="Mathematical Operators"
/>
<xsl:output-character
character="&#x2201;"
u:name="COMPLEMENT"
u:entity="comp"
string="C"
u:block="Mathematical Operators"
/>
<xsl:output-character
character="&#x2202;"
u:name="PARTIAL DIFFERENTIAL"