summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/fonts/lm/lm-hist.txt
blob: 50ba3b1b3b525a9bdd700e2081b80c0f6222deea (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
This file belongs to the Latin Modern package. The work is released under
the GUST Font License. See the MANIFEST-Latin-Modern.txt and
README-Latin-Modern.txt files for the details. For the most recent version of
this license see http://www.gust.org.pl/fonts/licenses/GUST-FONT-LICENSE.txt
or http://tug.org/fonts/licenses/GUST-FONT-LICENSE.txt

Ver. 2.003, 16.09.2009: main modification: shapes of LM glyps consistent
with D.E. Knuth's recent changes in CMs plus lots of tiny changes;
most important changes are described in details below: 
* fonts and glyphs modified according to D.E. Knuth's changes in CMs
  (note that the corrections related to glyph shapes, not metric data):
  -- leftward arrow (char '040), rightward arrow (char '041),
     upward arrow (char '042), downward arrow (char '043),
     left-and-right arrow (char '044), northeast arrow (char '045),
     southeast arrow (char '046), northwest arrow (char '055),
     southwest arrow (char '056), up-and-down arrow (char char '154)
     lmsy5 lmbsy5 lmsy6 lmsy7 lmbsy7 lmsy8 lmsy9 lmsy10 lmbsy10
  -- upward arrow (char '013), downward arrow (char '014),
     lmcsc10 lmtcsc10 lmtti10 lmtt8 lmtt9 lmtt10 lmtt12
  -- calligraphic F [less swashy], H [extended crossbow],
     I [lower right corner], T [foot]
     lmsy5 lmbsy5 lmsy6 lmsy7 lmbsy7 lmsy8 lmsy9 lmsy10 lmbsy10
  -- lowercase beta (char '014), delta (char '016), omega (char '041)
     lmmi5 lmmib5 lmmi6 lmmi7 lmmib7 lmmi8 lmmi9 lmmi10 lmmi12 lmmib10
  -- sans serif C and G [smaller overshoot]
     lmss8 lmss9 lmss10 lmss12 lmss17 lmssbx10 lmssdc10 lmssq8 lmssqbx8
  very many thanks to Barbara Beeton, David M. Jones and Karl Berry
* glyphs `eth', `Eth', `thorn', and `Thorn' reworked (as suggested by
  Arni Magnusson); it turned that there is no adequate template for all
  fonts, in particular the EC fonts contain apparent bugs; cf. e.g.,
  `eth' (char 240) in ecdh1000 (counterpart of lmdunh10 -- enormously long
  cross) or eclb8 (counterpart of lmssqbx8 -- the cross hidden in the stem);
  COMMENT: Arni Magnusson wrote: ``I would love to use lmodern instead of
  cm-super''. Alas, this cannot be easily accomplished: the CM-SUPER fonts
  are based on the EC fonts, and both collections are not compatible
  with the CM (and thus LM) fonts! The reason is that the EC and thus
  CM-SUPER fonts have in most cases widths slightly smaller 
  (with the coefficient ca. 99.975%) than the relevant CM fonts;
  exceptions are ecssdc10 and ecsql8, where the width coefficients
  are equal 100%, and ecrm1728, where the widths are greater
  by 1.5%--2.5% in comparison with cmr17, hence switching
  between EC/CM-SUPER and CM/LM is in general bound to produce 
  different results
* a bug in encodings fixed (sometimes instead of `backslash' other
  characters were typeset)
* typos in ligature schemes in `comm_mph.mp' corrected
  (`quotedblbase' and `quotedblleft' instead `quotedblright')
* `\pound' in math used to be typeset as dollar -- fixed; in ordinary
  text, however, the result may depend on the current encoding
  (for T1 is OK) -- thanks to Caity Ross for pointing out the problem
* OTF structure corrected and improved (in particular, the ligature ffi
  works now properly)
* `visiblespace' renamed to `uni2423' (suggestion of Werner Lemberg and
  Karl Berry) -- hopefully everywhere...
* `Dblgravecomb' renamed to `dblGravecomb'
* `nomero' in MT1 sources renamed to `numero', name `afii61352' no more used
* undertie added (suggestion of Werner Lemberg)
  U+203F -- undertie (smile-shaped glyph placed below baseline)
  U+2040 -- tie (frown-shaped glyph placed at the top line)
  U+2054 -- undertieinverted (frown-shaped glyph placed below baseline)
  nota bene, there is no code point in the Unicode table for the inverted tie...
* uppercase Greek completed (duplicates of Latin capitals; suggestion
  of Hans Hagen)
* glyphs `acaron', `Acaron', `icaron', `Icaron', `idieresisacute',
  `Idieresisacute', `jcaron', `J_caron', `ocaron', `Ocaron', `ucaron',
  `Ucaron', `udieresisacute', `Udieresisacute', `udieresiscaron',
  `Udieresiscaron', `udieresisgrave', and `Udieresisgrave' added
  (proposal of Oliver Corff) -- all the glyphs but `J_caron' have code
  points in the Unicode table and names assigned in the Adobe Glyph List
  (incidentaly, in J_caron apostrophe is used alike in lcaron and tcaron --
  cf. http://en.wikipedia.org/wiki/J-caron)
* glyps orogate and Orogate (`rogate' in Polish means `with horns')
  added -- they are used to denote nasal vowels in ancient Polish texts
  (ca. XIV century)
* uni2010 (hyphen duplicate) i uni2011 (non-breakable hyphen duplicate) added
  (suggestion of Hans Hagen)
* LaTeX *.sty and *.fd files reworked, options `nomath' (prevents loading
  LM math fonts), `lighttt' and `variablett' added; sample usage:
     \usepackage{lmodern}
     \usepackage[nomath]{lmodern}
     \usepackage[variablett]{lmodern}
     \usepackage[lighttt,variablett]{lmodern}
  very many thanks to Marcin Woli\'nski

REMARKS:
* we are not going to introduce any extensions that would result
  in yet more TFMs files (e.g., for more convenient handling
  of oldstyle/normal digits) -- in such cases we suggest using
  the OTF fonts versions
* improving hints is a kind of Sisyphean job -- there are no tools
  for automatic hinting checking; the only method is to check
  optically/manually each and every character with various display
  agents, on various screens under various operating systems and various
  resolutions. We are not totally opposing Sisyphean jobs in general,
  but having had that much time as we had, we decided to spend it on
  other improvements...

Ver. 1.106, 22.01.2008: several meaningful fixes and enhancements
* at the suggestion of Hans Hagen and Jonathan Kew (very many thanks
  for the interesting discussions and willing assistance), the `size'
  feature (opical sizing) implemented in the OTF files; this triggered
  a chain of changes of internal names in order to provide adequate
  family grouping (complying nolens volens with the "4-member family"
  paradigm) and resulted eventually in a completely new naming scheme
* beware of the change of the OTF file names:
      OLD NAMES                          CHANGED     NEW NAMES
  lmroman10-bold.otf                             lmroman10-bold.otf
  lmroman10-bolditalic.otf                       lmroman10-bolditalic.otf
  lmroman10-boldoblique.otf                 +    lmromanslant10-bold.otf
  lmroman10-capsoblique.otf                 +    lmromancaps10-oblique.otf
  lmroman10-capsregular.otf                 +    lmromancaps10-regular.otf
  lmroman10-demi.otf                        +    lmromandemi10-regular.otf
  lmroman10-demioblique.otf                 +    lmromandemi10-oblique.otf
  lmroman10-dunhill.otf                     +    lmromandunh10-oblique.otf
  lmroman10-dunhilloblique.otf              +    lmromandunh10-regular.otf
  lmroman10-italic.otf                           lmroman10-italic.otf
  lmroman10-oblique.otf                     +    lmromanslant10-regular.otf
  lmroman10-regular.otf                          lmroman10-regular.otf
  lmroman10-unslanted.otf                   +    lmromanunsl10-regular.otf
  lmroman12-bold.otf                             lmroman12-bold.otf
  lmroman12-italic.otf                           lmroman12-italic.otf
  lmroman12-oblique.otf                     +    lmromanslant12-regular.otf
  lmroman12-regular.otf                          lmroman12-regular.otf
  lmroman17-oblique.otf                     +    lmromanslant17-regular.otf
  lmroman17-regular.otf                          lmroman17-regular.otf
  lmroman5-bold.otf                              lmroman5-bold.otf
  lmroman5-regular.otf                           lmroman5-regular.otf
  lmroman6-bold.otf                              lmroman6-bold.otf
  lmroman6-regular.otf                           lmroman6-regular.otf
  lmroman7-bold.otf                              lmroman7-bold.otf
  lmroman7-italic.otf                            lmroman7-italic.otf
  lmroman7-regular.otf                           lmroman7-regular.otf
  lmroman8-bold.otf                              lmroman8-bold.otf
  lmroman8-italic.otf                            lmroman8-italic.otf
  lmroman8-oblique.otf                      +    lmromanslant8-regular.otf
  lmroman8-regular.otf                           lmroman8-regular.otf
  lmroman9-bold.otf                              lmroman9-bold.otf
  lmroman9-italic.otf                            lmroman9-italic.otf
  lmroman9-oblique.otf                      +    lmromanslant9-regular.otf
  lmroman9-regular.otf                           lmroman9-regular.otf
  lmsans10-bold.otf                              lmsans10-bold.otf
  lmsans10-boldoblique.otf                       lmsans10-boldoblique.otf
  lmsans10-demicondensed.otf                +    lmsansdemicond10-regular.otf
  lmsans10-demicondensedoblique.otf         +    lmsansdemicond10-oblique.otf
  lmsans10-oblique.otf                           lmsans10-oblique.otf
  lmsans10-regular.otf                           lmsans10-regular.otf
  lmsans12-oblique.otf                           lmsans12-oblique.otf
  lmsans12-regular.otf                           lmsans12-regular.otf
  lmsans17-oblique.otf                           lmsans17-oblique.otf
  lmsans17-regular.otf                           lmsans17-regular.otf
  lmsans8-oblique.otf                            lmsans8-oblique.otf
  lmsans8-regular.otf                            lmsans8-regular.otf
  lmsans9-oblique.otf                            lmsans9-oblique.otf
  lmsans9-regular.otf                            lmsans9-regular.otf
  lmsansquotation8-bold.otf                 +    lmsansquot8-bold.otf
  lmsansquotation8-boldoblique.otf          +    lmsansquot8-boldoblique.otf
  lmsansquotation8-oblique.otf              +    lmsansquot8-oblique.otf
  lmsansquotation8-regular.otf              +    lmsansquot8-regular.otf
  lmtypewriter10-capsoblique.otf            +    lmmonocaps10-oblique.otf
  lmtypewriter10-capsregular.otf            +    lmmonocaps10-regular.otf
  lmtypewriter10-dark.otf                   +    lmmonolt10-bold.otf
  lmtypewriter10-darkoblique.otf            +    lmmonolt10-boldoblique.otf
  lmtypewriter10-italic.otf                 +    lmmono10-italic.otf
  lmtypewriter10-light.otf                  +    lmmonolt10-regular.otf
  lmtypewriter10-lightcondensed.otf         +    lmmonoltcond10-regular.otf
  lmtypewriter10-lightcondensedoblique.otf  +    lmmonoltcond10-oblique.otf
  lmtypewriter10-lightoblique.otf           +    lmmonolt10-oblique.otf
  lmtypewriter10-oblique.otf                +    lmmonoslant10-regular.otf
  lmtypewriter10-regular.otf                +    lmmono10-regular.otf
  lmtypewriter12-regular.otf                +    lmmono12-regular.otf
  lmtypewriter8-regular.otf                 +    lmmono8-regular.otf
  lmtypewriter9-regular.otf                 +    lmmono9-regular.otf
  lmtypewritervarwd10-dark.otf              +    lmmonoproplt10-bold.otf
  lmtypewritervarwd10-darkoblique.otf       +    lmmonoproplt10-boldoblique.otf
  lmtypewritervarwd10-light.otf             +    lmmonoproplt10-oblique.otf
  lmtypewritervarwd10-lightoblique.otf      +    lmmonoproplt10-regular.otf
  lmtypewritervarwd10-oblique.otf           +    lmmonoprop10-oblique.otf
  lmtypewritervarwd10-regular.otf           +    lmmonoprop10-regular.otf
* and beware of the change of the PostScript Type 1 internal font names --
  we've fallen into this trap (in particular, all font maps have changed,
  also lm-rep-*.maps -- thanks, Mojca)
* ligatures I_J and i_j are now available (in OTFs; feature `liga') only
  for Dutch; similarly, the ligature f_k -- for Polish; the `locl' feature
  reimplemented -- using an artificial glyph i.TRK is no longer needed
  (thanks to Arthur Reutenauer for comments and suggestions)
* the metric bugs (spotted by Karel P\'\i\v{s}ka -- thanks!) corrected;
  actually, they turned out to be the consequence of a bug in CM fonts --
  this is a serious matter, hence a few words of explanation;
  Karel observed that widths of `j' (lmri*), `x' (lmu10)
  and `sterling' (lmu10) were different from their CM counterparts;
  the latter two were just mistakes, while the discrepancy between the
  widths of the letters `j' in all italic fonts (hence lmu10,
  and also lmbxi10) is the result of apparently wrong setting of the
  width of `dottlessj' in MF sources:
     italsp.mf:
     cmchar "Dotless italic letter i";
     beginchar(oct"020",5u#,x_height#,0);
     [...]
     cmchar "Dotless italic letter j";
     beginchar(oct"021",5.5u#,x_height#,desc_depth#);
     [...]
     itall.mf:
     cmchar "Italic letter i";
     beginchar("i",5u#,min(asc_height#,10/7x_height#+.5flare#),0);
     [...]
     cmchar "Italic letter j";
     beginchar("j",5u#,min(asc_height#,10/7x_height#+.5flare#),desc_depth#);
     [...]
  The value `5.5u#' was perhaps brought to `italsp.mf' from romansp.mf...
  Whatever, we decided that the glyphs `dotlessj' and `j' should have
  the same width as the letter `dotlessi' (and `i') in italic fonts
  in both CMs and LMs -- retaining the discrepancy between the width
  of `j' and `dotlessj' we considered unfounded; note that the width
  of j-derivatives changed
* indefatigable Karel P\'\i\v{s}ka pointed out also that small caps
  have non-uniform heights which resulted in uneven positioning
  of accents -- corrected
* dots over the ij ligature aligned horizontally with dots over i and j
  (for a misterious reason they were placed slightly higher)
* the heights of digits are now uniform (spotted by Mojca Miklavec and Taco
  Hoekwater -- thanks); they differ, however, from CM ones because of
  the limitation of 16 different heights per TFM
* at the request of Idris Samawi Hamid, several glyphs added for
  romanized Arabic transliteration: `[Dd]linebelow', `[Hh]brevebelow',
  `[Hh]dieresis', `[Hh]tilde', `[Ll]tilde', `[Ss]dotbelow',
  `[Tt]linebelow', `[Th]dieresis', `[Th]tilde', `[Zz]dotbelow',
  ringhalfleft, ringhalfright, and, additionally, narrower `macron.alt'
  and `[Ii]macron.alt'; these changes implied also the addition of
  `linebelow' and `macronbelow' accents (also as ``combined'', i.e.,
  zero-width variants) which, in turn, resulted in changes
  of Private Unicode Area  codes (we abandoned the idea of being fully
  consistent with Adobe's PUA or PUA of such popular fonts like Minion);
  by the way, all accents having attributes `below' and `inverted' are
  named uniformly -- first `below', then `inverted'
* `[Ee].reversed' renamed to `[Ee]reversed' (exist in Adobe Glyph List 2.0),
  added `eturned' and `schwa', all glyphs assigned proper unicodes
  (suggestion of Mojca Miklavec)
* as an ``at leisure'' exercise, one more glyph, `infinity', was added
  (programmed on the base of MF sources)
* at the request of V\'{\i}t Z\'yka, variants of the `cs' encoding
  for small caps and monospace fonts were introduced; at the suggestion of
  Staszek Wawrykiewicz, a similar variant was introduced for the `qx'
  ecoding (Polish; actually, `qx' had already a buggy implementation
  for monospaced fonts) and -- at the suggestion of Marcin Woli\'nski -- for
  the `rm' encoding (``Regular Math'', i.e., for fonts to be used as text
  fonts in math, e.g., \fam0) encodings.
* wrong path directions corrected in `onequarter' and `threequarters'
  in lmth10 and lmtk10 -- thanks to Karel Hor\'ak
* kerns specific only for the T5 encoding (i.e., Vietnamese) removed
  from AFMs and thus from OTFs; in particular, the deprecated `ka' kern
  pair removed from serif fonts (from TFMs it was removed long ago); also,
  strange pairs `eacute V', `ecircumflex V', `ecircumflexacute V', ...,
  etc., occuring in T5 encoding, now do not migrate to AFMs
* math fonts (PostScript Type 1) have been equipped with PFMs for installing
  under Win systems; there are two AFM files for each PFB file: (1) *.AFT --
  consistent with TFM; (2) *.AFM -- consistent with PFB
* LaTeX fd files slightly modified by Marcin Woli\'nski -- thanks
  (no functional changes expected)

Ver. 1.010x, 28.02.2007 (internal version number not changed):
* only OTFs re-generated (files lm1.010x-bas.zip, lm1.010x-otf.zip); reasons:
  1. hhea and OS/2 tables set explicitly
     following the recommendations contained in:
       http://typophile.com/wiki/Vertical%20Metrics%20How-To
       http://typophile.com/node/28277
  2. widths of characters in the CFF table
     used to be rational (inherited from Type 1), but should be integers;
     the documentation http://www.microsoft.com/OpenType/OTSpec/hmtx.htm
     says:
        In CFF OpenType fonts, every glyph's advanceWidth as recorded in
        the hmtx table must be identical to its x width in the CFF table.
     and entries in the hmtx table must be unsigned short numbers.

22.01.2007: no version change
* Lithuanian *.fd files corrected (reported by Sigitas Tolusis): L7X -> L7x

Ver. 1.010, 16.01.2007:
* important bugs fixed:
    Richard Kinch in 1995, http://www.truetex.com/tug95ps.zip,
    Karel P\'\i\v{s}ka, http://www-hep.fzu.cz/~piska/lm2006.html
  thanks to both; moreover, `perthousand' and `permyriad' corrected
  in all italic fonts (wrong path directions)
* LaTeX support fixed and enhanced with LM math (thanks to Marcin
  Woli\'nski)
* math text metric files (rm-*.tfm) provided
* the letter `mu' corrected (other Greek letters must wait for a while)
* `[lL]dotaccent' renamed to `[lL]dot', wrong shapes (dot above) corrected
* `cedilla' adjusted in lmri*, lmu10, and lmdunh10
* `[CcSs]cedilla' reprogrammed in lmri* and lmu10
* `ogonek' and `cedilla' have forced height=0 now (in TFMs)
* new encodings (cs, l7x) added
* some glyphs renamed: `*superior' -> `*.superior', `*.oldstyle' ->
  `*.taboldstyle', `*.oldstyle.prop' -> `*.oldstyle' (names `*oldstyle',
  i.e., without a dot, removed)
* several glyphs added: combining accents, `sfthyphen' (a duplicate of
  `hyphen' for non-TeX applications), `[eE].reversed', `[tT]cedilla',
  Romanized Sanskrit letters (`[dD]dotbelow', `[hH]dotbelow', `[lL]dotbelow',
  `[lL]dotbelowmacron', `[mM]dotbelow', `[nN]dotaccent', `[nN]dotbelow',
  `[rR]dotbelow', `[rR]dotbelowmacron', `[tT]dotbelow' -- the suggestion
  of R (Chandra) Chandrasekhar)
* the structure of OTF files corrected -- grouping within families changed
  (following Adam Twardoch's suggestions -- thanks), features made more
  reasonable, glyph naming adjusted to standard recommendations, OTF version
  number consistent with the PS one
* the technical documentation provided
* a few minor changes in sources

Ver. 1.000, 13.04.2006: the first official release

...

Ver. 0.500, 09.11.2002: the first Latin Modern pre-release

Ver. 0.100, 17.09.2002: the first results (then called AE, after L. Engebretsen)

Ver. 0.000, 29.04.2002--03.05.2002: project started (EuroBachoTeX)