summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/fonts/ly1
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-01-09 00:47:01 +0000
committerKarl Berry <karl@freefriends.org>2006-01-09 00:47:01 +0000
commit950209b26f70aa87ed07c54f82a95b6f03b7c3a0 (patch)
tree32b2d4ab4e36aee3a9aaf41877a5c0c581de9b77 /Master/texmf-dist/doc/fonts/ly1
parent71c5ce4be7e36bdc6bdda98641bc9368e28223ad (diff)
doc/fonts
git-svn-id: svn://tug.org/texlive/trunk@83 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/fonts/ly1')
-rw-r--r--Master/texmf-dist/doc/fonts/ly1/ly1.txt158
-rw-r--r--Master/texmf-dist/doc/fonts/ly1/texnansi.txt142
-rw-r--r--Master/texmf-dist/doc/fonts/ly1/texnansi.vec337
3 files changed, 637 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/fonts/ly1/ly1.txt b/Master/texmf-dist/doc/fonts/ly1/ly1.txt
new file mode 100644
index 00000000000..a70d0c12545
--- /dev/null
+++ b/Master/texmf-dist/doc/fonts/ly1/ly1.txt
@@ -0,0 +1,158 @@
+
+
+ LaTeX support for `texnansi' encoding (LY1)
+ ===========================================
+
+ ly1enc.def
+ texnansi.sty
+ ly1ptm.fd
+ ly1phv.fd
+ ly1pcr.fd
+ ly1.txt
+
+The files in this directory make known a new encoding `LY1'
+to LaTeX that corresponds to the `texnansi' encoding as used
+by default in the Y&Y TeX system. There is also an option
+to support the `ansinew' encoding that is the default encoding
+in Microsoft Windows.
+
+The main file is ly1enc.def. This contains the declaration of
+the encoding. To use `texnansi' encoded fonts within LaTeX, typically
+you just need to add the line
+
+\usepackage[LY1]{fontenc}
+
+to your document preamble.
+
+An alternative to the above line is to use the texnansi package
+
+\usepackage{texnansi}
+
+This will call the fontenc package, as above, to set up the LY1
+encoding but then make further changes to the uppercase and lowercase
+tables.
+Note that LaTeX does not need these changes to correctly uppercase
+text as its \MakeUppercase and \MakeLowercase commands only require
+the uppercase and lower case codes of the letters a-z.
+
+So for most purposes it is better to use the call to fontenc rather
+than use the texnansi package. Then if you pass the file to a site
+using T1 (Cork) encoded fonts the line can more easily be changed to
+
+\usepackage[T1]{fontenc}
+
+The texnansi package has a package option `ansinew' which modifies
+the LY1 encoding to refer to that MS Windows encoding. However you
+should only do this if your TeX system can not reencode fonts to
+support T1 or texnansi. The `ansinew' treatment of the left quote
+` as a grave accent makes it rather unsuitable for TeX use, also it
+lacks several useful glyphs. However if you need to you can go:
+
+\usepackage[ansinew]{texnansi}
+
+The other possible reason for using the texnansi package relates
+to the use of the lowercase table in the hyphenation algorithm.
+This is described below, but it is unfortunately of necessity
+rather technical, and you may want to stop reading at that point.
+
+Having declared the LY1 encoding to LaTeX, LaTeX will need to know
+the fonts that are available in this encoding. This distribution
+includes ly1ptm.fd, ly1plv.fd and ly1pcr.fd which declare the
+common Adobe Times/Helvetica/Courier `Standard PostScript' fonts.
+If you install other text fonts you can make similar ly1XXX.fd files
+based on this model. The LaTeX support packages for MathTime and
+Lucida Bright contain suitable LY1 fd files for those fonts.
+Note that these LY1 `fd' files assume that you have kept the
+original font vendor's file names rather than renaming the fonts
+to the Standard TeX `Karl Berry' naming scheme. The choice
+of font naming scheme is however not connected to the choice of
+encoding.
+
+For each encoding LaTeX needs to know an `error font' which is its
+fall back in the case that the font substitution system can find
+nothing better to do. ly1enc.def specifies that the Error Font for
+LY1 is Adobe Times Roman. This font is freely available from many
+sources (for instance it is included with the Free Adobe Acrobat
+reader) and so it seems the best choice as the error font.
+If you do not have this, you may wish to edit the lines
+
+\DeclareErrorFont{LY1}{ptm}{m}{n}{10}
+\DeclareFontSubstitution{LY1}{ptm}{m}{n}
+
+at the top of ly1enc.def to refer to some other font set.
+For example if you have Y&Y TeX's `Lucida' distribution
+You could change the two occurrences of {ptm} to {hlh}
+Which will make LaTeX fall back on Lucida Bright if all else
+fails. Note that the copyright is held on ly1enc.def.
+This is the only change you should make to that file.
+
+
+A Note on Lowercase Codes and Hyphenation Tables
+================================================
+
+The lowercase table is used by TeX's hyphenation algorithm,
+so in principle one would need to change the lowercase table
+to match the encoding used. However, it should not be changed
+mid paragraph as all words, whatever font encoding they are
+set in, are lowercased using the table current at the *end*
+of the paragraph before being checked for hyphenation.
+Because of these limitations in TeX's hyphenation algorithm,
+LaTeX does not support changing the lowercase table mid document,
+so if the texnansi package is used then the texnansi lowercase
+table will be used for all fonts (whether or not LY1 encoded)
+and conversely if it is not used, the T1 table will be used, even
+for LY1 encoded fonts. The reason why this problem is not more
+serious is that the majority of letters (as opposed to ligatures,
+and symbols) that occur in LY1 occur in the same place in T1.
+
+The only letters that might possibly appear in a hyphenation table
+that are in different positions in T1 and LY1 are:
+
+\oe (low position OT1 high new)
+\ss (low position OT1 high new)
+\v{s}
+\v{z}
+\l
+\i OT1 (although *composites* such as \'\i are in T1 position
+ so this will only affect languages (Turkish?) that use
+ an unaccented \i)
+\"{y}
+
+
+It should be noted that for those symbols that occur twice in LY1,
+the `high' copy is used if it coincides with the position used
+in T1 (as in the case of \ae, \o) otherwise the `low' copy will
+be used which will coincide with the OT1 position (\oe, \ss).
+(Unless the setup for ansinew is enabled in which case the high
+position is always used.)
+
+
+Fortunately most hyphenation files for Western European languages
+(I checked French, German and Danish) duplicate all the hyphenation
+patterns using these letters so that the tables work with both T1 and
+OT1 (and hence LY1) encoded fonts. However if you are using a language
+that makes use of say, \ss, but the hyphenation patterns just refer to
+\ss as ^^ff then you will need to copy the hyphenation file and edit
+all occurences of ^^ff to refer to the new position; either
+^^19 (for texnansi) or ^^df (for ansinew).
+
+The remaining letters that are in different positions, such as s caron,
+may be dealt with similarly, although they are mainly used in Eastern
+European languages. The LY1 encoding does not have as many glyphs
+for Eastern European languages as T1, so for those languages most likely
+this encoding is not suitable. (Of course TeX can produce all the
+accented letters required, but the hyphenation algorithm can not work
+with such constructed composites it can only work with composite letters
+that actually occur in the font.)
+
+It would be a good thing if hyphenation tables did not refer to any
+explicit character positions using the ^^ab notation, but rather always
+accessed characters by control sequences such as \ss. This would allow
+the remapping to be done via inputting a file such as ly1enc.def
+rather than by editing the hyphenation file. However currently most of
+the publicly available hyphenation tables unfortunately do `hard wire'
+the T1 character codes in this way.
+
+
+Copyright 1997 David Carlisle
+
diff --git a/Master/texmf-dist/doc/fonts/ly1/texnansi.txt b/Master/texmf-dist/doc/fonts/ly1/texnansi.txt
new file mode 100644
index 00000000000..761e44ad29e
--- /dev/null
+++ b/Master/texmf-dist/doc/fonts/ly1/texnansi.txt
@@ -0,0 +1,142 @@
+===============================================================
+ Design principles of `texnansi.vec':
+===============================================================
+
+* Make all 228 glyphs in typical plain vanilla text fonts accessible.
+ (Avoid need for second copy of font with different encoding)
+
+* Provide access to `extra' f-ligatures (ff, ffi, ffl) and dotlessj
+ if the font has these.
+
+* Make 58 accented / composite `standard' characters directly accessible
+ (so don't have to use TeX's \accent mechanism - improved hyphenation)
+
+* Follow ISO Latin 1 in 160 - 255 range --- which matches Windows ANSI.
+ (And matches Cork T1 encoding for accented characters in 192 - 255)
+
+* Fill in from Windows ANSI in 128 -- 159 range
+ (which means one can use a Windows editor for the source file)
+
+* Have special characters where plain TeX (OT1) has them hard-wired.
+ (ae, oe, oslash, AE, OE, Oslash, germandbls)
+
+* Have accents (grave, acute, caron, breve. macron, ring, cedilla,
+ circumflex, tilde, dieresis) mostly where plain TeX (OT1) has them
+ hard-wired.
+
+* Follow `TeX typewriter' in 32 -- 127 as much as reasonable
+ (so verbatim environment works as expected)
+
+* Fortunately, glyphs accessed only via ligature mechanism in TFM can
+ be anywhere: ff/fi/fl/ffi/ffl
+ exclamdown/questiondown, quotedblleft/quotedblright, endash/emdash
+
+* Avoid character codes 0, 9, 10, 13, and perhaps 127, since much brain
+ dead software has trouble with those.
+
+We use `control characters' (0 -- 31 and 127), since we need space for more
+than 224 slots, and since we want to match some aspects of `TeX typewriter'.
+
+Overall layout:
+
+0 Avoid since some buggy software uses null-terminated string ops
+
+4 -- 8 `fraction', `dotaccent', `hungarumlaut', `ogonek', `fl'
+
+9 Avoid (tab - which is treated as white space by some software)
+
+10 Avoid - some applications have hard-wired for `newline'
+
+11 -- 12 ff, fi could actually be anywhere (accessed via ligs)
+
+13 Avoid - some applications have hard-wired for `return'
+
+14 -- 15 ffi, ffl could actually be anywhere (accessed via ligs)
+
+16 -- 17 dotlessi/dotlessj \i, \j
+
+18 -- 24 grave/acute/caron/breve/macron/ring/cedilla accents.
+ Some accents occur again higher up:
+ (96), 180, *, *, 175, *, 184
+
+25 -- 31 germandbls/ae/oe/oslash/AE/OE/Oslash.
+ All special characters occur again higher up:
+ 223, 230, 156, 248, 198, 140, 216
+
+32 space. Any sane font should have this! And have it here!
+
+% NO: 34 quotedblright (148) keep: quotedbl
+
+39 quoteright (146) *not* quotesingle
+
+% NO: 60 exclamdown (161) keep: less
+
+% NO: 62 questiondown (191) keep: greater
+
+NOTE: exclamdown and questiondown can go anywhere (via pseudo ligature)
+
+% NO: 92 quotedblleft (147) keep: backslash
+
+NOTE: quotedblleft and quotedblright can go anywhere (via pseudo ligature)
+
+94 circumflex (136) *not* asciicircum
+
+% NO: 95 dotaccent (*) keep: underscore
+
+96 quoteleft (145) *not* grave accent
+
+% NO: 123 endash (150) keep: braceleft
+% NO: 124 emdash (151) keep: bar
+
+NOTE: endash/emdash can go anywhere (via pseudo ligature)
+
+% NO: 125 hungarumlaut (*) keep: braceright
+
+126 tilde (152) *not* asciitilde
+127 dieresis (168) but use the one in 168 instead
+
+So we have displaced 5 characters (out of 12 possibles) from Windows ANSI:
+
+ quotesingle (39), asciicircum (94), asciitilde (126),
+ underscore (95), grave (96).
+
+but not: quotedbl (34), less (60), greater (62),
+but not: backslash (92), bar (124), braceleft (123), braceright (125)
+
+The five above then need to be patched in higher up.
+
+Conversely, we have moved down from Windows ANSI accents and special chars:
+
+ grave (96), acute (180), macron (175), cedilla (184),
+ circumflex (136), tilde (152), dieresis (168),
+ quoteleft (145), quoteright (146),
+ germandbls (223), ae (230), oe (156), oslash (248),
+ AE (198), OE (140), Oslash (216).
+
+but not: quotedblleft (147), quotedblright (148),
+but not: exclamdown (161), questiondown (191)
+but not: endash (150), emdash (151),
+
+(This opens up some slots higher up that could be filled with other things).
+
+There are eight gaps in Windows ANSI: 128, 129, 141, 142, 143, 144, 157, 158,
+we need four for characters displaced from lower down:
+
+ quotesingle (39), asciicircum (94), asciitilde (126), grave (96),
+
+Actually, we can omit grave, because it appears at 18 now.
+
+Finally, fill in the gaps, and adding minus, Lslash, lslash, Zcaron, zcaron
+
+128 Lslash
+129 quotesingle
+
+141 Zcaron
+142 asciicircum
+143 minus
+144 lslash
+
+157 zcaron
+158 asciitilde
+
+The rest (160 and above) is ISO Latin 1 / Windows ANSI \ No newline at end of file
diff --git a/Master/texmf-dist/doc/fonts/ly1/texnansi.vec b/Master/texmf-dist/doc/fonts/ly1/texnansi.vec
new file mode 100644
index 00000000000..9de28767a30
--- /dev/null
+++ b/Master/texmf-dist/doc/fonts/ly1/texnansi.vec
@@ -0,0 +1,337 @@
+% Encoding: TeX typewriter and Windows ANSI
+
+% NOTE: This has *all* 228 glyphs found in `standard' plain text fonts
+% It is thus a superset of Windows ANSI and Macintosh standard roman.
+% Windows ANSI lacks 15 glyphs, while Mac standard roman lacks 21,
+% Adobe StandardEncoding (ASE) lacks 21, and Cork encoding lacks 38.
+
+% NOTE: Uses (mostly) ASCII for 32 -- 126
+% Uses (some) `TeX typewriter' and `TeX text' for 0 -- 127
+% Uses (mostly) Windows ANSI (ansinew.vec) for 128 -- 255
+
+% NOTE: since this encoding has special characters and accents
+% mostly where plain TeX and LaTeX expect them, there is
+% little need to change anything in the source file.
+% Exceptions: dotaccent & hungarumlaut.
+
+% NOTE: However, to get the maximum benefit of this encoding add:
+% \input texnansi.tex to your TeX source file -
+% between \documentclass{...} and \begin{document} in case of LaTeX -
+% after \usepackage{mathtimy} or \usepackage{lucidbry}.
+
+% NOTE: this encoding has accented characters - yet does not use
+% Windows ANSI encoding. `On the fly' reencoding in DVIWindo /
+% DVIPSONE can handle this. Otherwise, the font files have
+% to be processed by SAFESEAC to protect accented/composite
+% characters from ATM (both in Windows and on the Mac).
+% The `encode.bat' batch file does this automatically.
+% Note that this is *not* an issue when using Y&Y TeX System 1.2
+% or later --- since it supports `on the fly' reencoding.
+
+% NOTE: TeX text *does not* conform to ASCII except for letters and digits.
+% As a result one loses the following from the 0 -- 127 range:
+% quotesingle, asciicircum, asciitilde & grave.
+% These have been inserted higher up to compensate
+% (but the following are kept: braceleft, braceright, underscore,
+% bar, quotedbl, less, greater, backslash).
+
+% NOTE: TeX text does not conform to Windows ANSI. So conversely,
+% one must expect repeated encodings for the following:
+% circumflex, tilde, dieresis
+% (but not for: quotedblleft, quotedblright,
+% exclamdown, questiondown, endash, emdash).
+
+% NOTE: TeX uses *ten* different hard-wired encodings, `TeX text' is just one.
+% TeX uses *different* encoding for fixed-width fonts - `TeX typewriter'
+% To avoid problems in verbatim environment we follow mostly the latter.
+
+% NOTE: Ideally, one should try and avoid 0 (null), 9 (tab), 10 (newline),
+% 13 (return), 127 (delete) --- perhaps also 128, 255 (and use 32 *only*
+% for space) since flakey software has trouble with some of these.
+
+% Revised 1996 June 1 by adding second position for `fl' to avoid Acrobat bug.
+% Revised 1996 June 1 by adding second position for `fraction' for same reason.
+% Revised 1996 Sep 1 by adding notes regarding `dieresis' preferred code 168.
+
+% Could use 1, 2, 3 for Eng and eng, or ct and st ligatures, or ...
+
+4 fraction % new position - to avoid problems with 9 (tab)
+5 dotaccent % displaced from above (by underscore in 95)
+6 hungarumlaut % displaced from above (by braceright in 125)
+7 ogonek % added for convenience
+8 fl % new position to avoid problem with 13 (return)
+9 fraction % old position - for backward compatability
+
+% Some fonts do have *all* five f ligatures, although many have only fi and fl
+% The following could go *anywhere*, since accessed *only* via ligatures
+
+11 ff
+12 fi
+13 fl % old position - for backward compatability
+14 ffi
+15 ffl
+
+% Accents, and `dotlessi' should be in hard-wired `TeX text' positions
+
+16 dotlessi % most text fonts have dotlessi, but not in ANSI
+17 dotlessj % and few fonts have dotlessj...
+
+18 grave % rather than 96, ANSI position
+19 acute % repeated in 180
+20 caron % not in ANSI
+21 breve % not in ANSI
+22 macron % repeated in 175
+23 ring % not in ANSI
+24 cedilla % repeated in 184
+
+% circumflex, tilde, dieresis - appear higher up, as in `TeX text'
+% dotaccent, hungarumlaut, ogonek - appear lower down
+
+% Special characters should be in hard-wired `TeX text' positions
+
+25 germandbls % repeated in 223
+26 ae % repeated in 230
+27 oe % repeated in 156
+28 oslash % repeated in 248
+29 AE % repeated in 198
+30 OE % repeated in 140
+31 Oslash % repeated in 216
+
+% Watch out: there are some serious departures from ASCII in `TeX text'
+
+32 space % TeX typewriter: visiblespace
+33 exclam
+34 quotedbl % TeX text: quotedblright (via pseudo ligature)
+35 numbersign
+36 dollar
+37 percent
+38 ampersand
+39 quoteright % ANSI: quotesingle
+40 parenleft
+41 parenright
+42 asterisk
+43 plus
+44 comma
+45 hyphen
+46 period
+47 slash
+48 zero
+49 one
+50 two
+51 three
+52 four
+53 five
+54 six
+55 seven
+56 eight
+57 nine
+58 colon
+59 semicolon
+60 less % Tex text: exclamdown (via pseudo ligature)
+61 equal
+62 greater % TeX text: questiondown (via pseudo ligature)
+63 question
+64 at
+65 A
+66 B
+67 C
+68 D
+69 E
+70 F
+71 G
+72 H
+73 I
+74 J
+75 K
+76 L
+77 M
+78 N
+79 O
+80 P
+81 Q
+82 R
+83 S
+84 T
+85 U
+86 V
+87 W
+88 X
+89 Y
+90 Z
+
+91 bracketleft
+92 backslash % TeX text: quotedblleft (via pseudo ligature)
+93 bracketright
+94 circumflex % ANSI: asciicircum
+95 underscore % TeX text: dotaccent --- UGH!!!
+96 quoteleft % ANSI: grave
+
+97 a
+98 b
+99 c
+100 d
+101 e
+102 f
+103 g
+104 h
+105 i
+106 j
+107 k
+108 l
+109 m
+110 n
+111 o
+112 p
+113 q
+114 r
+115 s
+116 t
+117 u
+118 v
+119 w
+120 x
+121 y
+122 z
+
+% endash and emdash can be *anywhere*, since only accessed via pseudo ligatures
+
+123 braceleft % TeX text: endash (via pseudo ligature)
+124 bar % TeX text: emdash (via pseudo ligature)
+125 braceright % TeX text: hungarumlaut --- UGH!!!
+126 tilde % ANSI: asciitilde
+127 dieresis % here for backward compatability - repeated in 168
+
+128 Lslash % added for convenience
+129 quotesingle % added for convenience (not in 39, ANSI position)
+
+130 quotesinglbase
+131 florin
+132 quotedblbase
+133 ellipsis
+134 dagger
+135 daggerdbl
+136 circumflex
+137 perthousand
+138 Scaron
+139 guilsinglleft
+140 OE
+
+141 Zcaron % added for convenience
+142 asciicircum % displaced from below (by circumflex in 94)
+143 minus % added for convenience
+144 lslash % added for convenience
+
+145 quoteleft
+146 quoteright
+147 quotedblleft
+148 quotedblright
+149 bullet
+150 endash
+151 emdash
+152 tilde
+153 trademark
+154 scaron
+155 guilsinglright
+156 oe
+
+157 zcaron % added for convenience
+158 asciitilde % displaced from below (by tilde in 126)
+
+159 Ydieresis % no language uses this, but...
+
+160 space % nbspace
+161 exclamdown
+162 cent % as in ASE
+163 sterling % as in ASE
+164 currency
+165 yen % as in ASE
+166 brokenbar
+167 section % as in ASE
+168 dieresis % safe position - use this instead of 127
+169 copyright
+170 ordfeminine
+171 guillemotleft % as in ASE
+172 logicalnot
+173 hyphen % sfthyphen
+174 registered
+175 macron
+176 degree
+177 plusminus
+178 twosuperior
+179 threesuperior
+180 acute
+181 mu
+182 paragraph % as in ASE
+183 periodcentered
+184 cedilla
+185 onesuperior
+186 ordmasculine
+187 guillemotright % as in ASE
+188 onequarter
+189 onehalf
+190 threequarters
+191 questiondown
+192 Agrave
+193 Aacute
+194 Acircumflex
+195 Atilde
+196 Adieresis
+197 Aring
+198 AE
+199 Ccedilla
+200 Egrave
+201 Eacute
+202 Ecircumflex
+203 Edieresis
+204 Igrave
+205 Iacute
+206 Icircumflex
+207 Idieresis
+208 Eth
+209 Ntilde
+210 Ograve
+211 Oacute
+212 Ocircumflex
+213 Otilde
+214 Odieresis
+215 multiply
+216 Oslash
+217 Ugrave
+218 Uacute
+219 Ucircumflex
+220 Udieresis
+221 Yacute
+222 Thorn
+223 germandbls
+224 agrave
+225 aacute
+226 acircumflex
+227 atilde
+228 adieresis
+229 aring
+230 ae
+231 ccedilla
+232 egrave
+233 eacute
+234 ecircumflex
+235 edieresis
+236 igrave
+237 iacute
+238 icircumflex
+239 idieresis
+240 eth
+241 ntilde
+242 ograve
+243 oacute
+244 ocircumflex
+245 otilde
+246 odieresis
+247 divide
+248 oslash
+249 ugrave
+250 uacute
+251 ucircumflex
+252 udieresis
+253 yacute
+254 thorn
+255 ydieresis % no language uses this, but...