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
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
|
2018-09-09 Karl Berry <karl@tug.org>
* ligkern.test,
* odvicopy.test,
* overbmp.test: LC_ALL=LANGUAGE=C.
2018-07-22 Hironobu Yamashita <h.y.acetaminophen@gmail.com>
* odvicopy.web: Sync with dvicopy.web change 2018-07-17 (typos).
2018-01-19 Hironobu Yamashita <h.y.acetaminophen@gmail.com>
* ovp2ovf.web, ovp2ovf.ch: Throw an error and exit if OFMLEVEL
undefined and char>0xff is used. This behavior is compatible
with ovp2ovf C version.
2015-08-10 Peter Breitenlohner <peb@mppmu.mpg.de>
* opl2ofm.ch, ovp2ovf.ch: Send also real numbers to stderr,
completing the change from 2015-01-11.
2015-07-08 Peter Breitenlohner <peb@mppmu.mpg.de>
* am/omegaware.am: Fix dependencies for 'make check'.
2015-06-22 Peter Breitenlohner <peb@mppmu.mpg.de>
* am/omegaware.am: Use $(tie_m).
2015-01-18 Peter Breitenlohner <peb@mppmu.mpg.de>
* odvicopy.ch: Drop intcast().
* odvitype.ch: Drop intcast().
* ofm2opl.ch: Drop intcast().
* opl2ofm.ch: Drop intcast().
* ovf2ovp.ch: Drop intcast().
* ovp2ovf.ch: Drop intcast().
2015-01-16 Peter Breitenlohner <peb@mppmu.mpg.de>
* odvicopy.web: Avoid useless differences with ../dvicopy.web.
* odvicopy.ch: Bug fix: Respect -page-start and -max-pages.
* odvicopy.test: Additional test cases.
* am/omegaware.am (DISTCLEANFILES): Additional output files.
2015-01-15 Peter Breitenlohner <peb@mppmu.mpg.de>
* odvitype.web: Avoid useless differences with ../dvitype.web.
* odvitype.ch: Allow output level 0 and use intcast() as
in ../dvitype.ch.
2015-01-12 Peter Breitenlohner <peb@mppmu.mpg.de>
* ofm2opl.ch, ovf2ovp.ch: Use ^byte and x*alloc_array().
2015-01-11 Peter Breitenlohner <peb@mppmu.mpg.de>
* ovf2ovp.ch: Send diagnostic messages to stderr.
* ofm2opl.ch, opl2ofm.ch, ovp2ovf.ch:
Send diagnostic messages to stderr.
Non-zero return code in case of problems.
* check.test: Also test writung OPL file to stdout.
* selectfont.test: Also test writung OVP file to stdout.
* bad.test, version.test: Shell scripts for new tests.
* tests/badofm.ofm, tests/badopl.opl, tests/badovf.{ofm,ovf},
tests/badovp.ovp: New test input files.
* am/omegaware.am: Add new test shell scripts and input files.
2014-11-07 Peter Breitenlohner <peb@mppmu.mpg.de>
* ofm2opl.ch, ovf2ovp.ch: Add missing space to message.
* help.test: New shell script to test help messages and options.
2014-11-06 Peter Breitenlohner <peb@mppmu.mpg.de>
* ofm2opl.ch, ovf2ovp.ch: Add stringcast to avoid printing
strings as numbers.
2014-08-19 Peter Breitenlohner <peb@mppmu.mpg.de>
* check.test, check.{ofm,opl}, checked.opl:
Shell script and data for a new test.
* am/omegaware.am: Add the new test.
2014-08-18 Peter Breitenlohner <peb@mppmu.mpg.de>
* ofonts.test: Fix parallel tests.
2014-08-17 Peter Breitenlohner <peb@mppmu.mpg.de>
* tests/arabic.ovp: Use more than 64k ligkern steps.
* tests/liguse{,1,2}.opl (new): Additional test data.
* ligkern.test, am/omegaware.am: Add the new test data.
2014-08-14 Peter Breitenlohner <peb@mppmu.mpg.de>
* ovp2ovf.web: Correctly handle bchar_label (as in opl2ofm.web).
* ofm2opl.web, ovf2ovp.{ch,web}: Treat infinite ligature loop
as non-fatal.
* ligkern.test, tests/lig{all,bch,bdy,blb}.opl,
tests/ligblv.{opl,ovp}, tests/ligloop1.{ofm,opl},
tests/ligloop2.opl: Shell script and data for a new test.
* am/omegaware.am: Add the new test.
2014-08-13 Peter Breitenlohner <peb@mppmu.mpg.de>
* ofm2opl.{ch,web}, ovf2ovp.{ch,web}, yannis.test: Fixed a bug
when checking for ligature loops.
* opl2ofm.(ch,web}, ovp2ovf.{ch,web}: No 64-bit arg1 of f().
2014-08-08 Peter Breitenlohner <peb@mppmu.mpg.de>
* yannis.test, tests/arabicr.pl, tests/arabic.ovp (new):
Shell script and data for a new test.
* am/omegaware.am: Add the new test.
2014-08-04 Peter Breitenlohner <peb@mppmu.mpg.de>
* level1.opl, repeat.opl, repeated.opl, sample.ovp: Always use
computed checksum.
2014-08-03 Peter Breitenlohner <peb@mppmu.mpg.de>
* shorten.test, tests/shorten.opl (new): Shell script and data
for a new test.
* am/omegaware.am: Add the new test.
2014-07-31 Peter Breitenlohner <peb@mppmu.mpg.de>
* opl2ofm.web, ovp2ovf.web: Fixed a bug in computation of lf.
* opl2ofm.{ch,web}: Adapted (more) to PLtoTF Version 3.6.
* ovp2ovf.{ch,web}: Adapted (more) to VPtoVF Version 1.6.
2014-07-09 Peter Breitenlohner <peb@mppmu.mpg.de>
* am/omegaware.am: Drop Automake conditional OMFONTS.
Always build and test wofm2opl&Co (instead of ofm2opl&Co).
* level1.test, ofonts.test, omfonts.test, overbmp.test,
realnum.test, repeat.test, selectfont.test, specialhex.test:
Adapted.
* charwd.test, tests/charwd-r.pl, tests/charwd-v.vpl (new):
Shell script and data for a new test.
2014-05-05 Peter Breitenlohner <peb@mppmu.mpg.de>
* odvicopy.ch, odvicopy.web: Fixed a non-Web2C bug and several
typos, mostly from Udo Wermuth <u.wermuth@icloud.com>.
Removed some trivial diffs with ../dvicopy.web.
2014-01-23 Peter Breitenlohner <peb@mppmu.mpg.de>
* ofm2opl.web, ovf2ovp.web: Drop duplicate semicolon.
2014-01-20 Peter Breitenlohner <peb@mppmu.mpg.de>
* ofm2opl.web: Adapted to TFtoPL Version 3.3.
* opl2ofm.web: Adapted to PLtoTF Version 3.6.
* ovf2ovp.web: Adapted to VFtpVP Version 1.4.
* ovp2ovf.web: Adapted to VPtoVF Version 1.6.
2014-01-11 Peter Breitenlohner <peb@mppmu.mpg.de>
* {ofm2opl,opl2ofm,ovf2ovp,ovp2ovf}.{ch,web}: Fix glitches in
online printing of progress report.
2014-01-10 Peter Breitenlohner <peb@mppmu.mpg.de>
* opl2ofm.up, ovp2ovf.up: Update module numbers.
2014-01-09 Peter Breitenlohner <peb@mppmu.mpg.de>
Version 1.13 (January 2014) of OFM2OPL & Co.
* {ofm2opl,opl2ofm,ovf2ovp,ovp2ovf}.{ch,up,web}: Bug fixes.
With character codes up to 0x10ffff the ligature hash keys no
longer fit into 32-bit integers, thus we use type integer64.
* vrepeat.test, vrepeat0.{ofm,opl}, vrepeat1.{ofm,opl,ovf,ovp}:
Shell script and data for a new test,
* am/omegaware.am: Adapted.
2014-01-06 Peter Breitenlohner <peb@mppmu.mpg.de>
* ofm2opl.{ch,web}: Adapt formatting to ../tftopl.web.
* opl2ofm.{ch,up,web}: Adapt formatting to ../pltotf.web.
* ovf2ovp.{ch,web}: Adapt formatting to ../vftovp.web.
* ovp2ovf.{ch,up,web}: Adapt formatting to ../vptovf.web.
2014-01-04 Peter Breitenlohner <peb@mppmu.mpg.de>
* am/omegaware.am: Add rules to build wofm2opl wopl2ofm wovf2ovp.
2013-12-30 TANAKA Takuji <KXD02663@nifty.ne.jp>
* ovp2ovf.web: OFM files are never seven bit safe.
2013-12-10 Peter Breitenlohner <peb@mppmu.mpg.de>
* ofm2ovf.web, ovf2ofm.web: Replace 65535 etc by numeric Web
macros (can be up to 2^{30} for otangle).
* ofm2opl.ch: Split one changset to enable upTeX version.
* ofm2ovf.up, ovf2ofm.up (new): Changes for upTeX versions.
* ovp2ovf.up: Character codes are 0..0x10ffff.
* overbmp.test: More extensive tests.
* tests/inbmp0.opl (removed): Moved ...
* tests/inbmp.opl (new): ... to here.
* tests/overbmp.opl (new): Additional test data.
* tests/overbmp.ovp: Adapt to modified file names.
* am/omegaware.am: Adapted.
2013-12-09 Peter Breitenlohner <peb@mppmu.mpg.de>
* ovp2ovf.up: Ensure char_repeats[c]<=0xffff.
* overbmp.test, tests/inbmp0.opl, tests/overbmp.ovp (new):
Shell script and data for a new test,
inspired by TANAKA Takuji <KXD02663@nifty.ne.jp>.
2013-12-06 Peter Breitenlohner <peb@mppmu.mpg.de>
* opl2ofm.{ch,web}: Drop ASCII_04, ASCII_10, ASCII_14, MBL_string,
RI_string, RCE_string (all unused).
* {opl2ofm,ovp2ovf}.web: Drop unused procedure out_digs().
* {ofm2opl,opl2ofm,ovf2ovp,ovp2ovf}.{ch,web}: HEX has 16 bytes.
* ovp2ovf.ch: Use make_suffix() for implied ofm_name.
* selectfont.test: Add test for 'ovp2ovf foo.ovp bar.ovf'.
* am/omegaware.am (DISTCLEANFILES): Additional files.
2013-01-24 Peter Breitenlohner <peb@mppmu.mpg.de>
* otangle.test: Avoid spurious failure of parallel-tests.
* am/etex.am: Renamed cftest.{web,ch,p} => cftest.{web,ch,p}.
2012-12-17 Peter Breitenlohner <peb@mppmu.mpg.de>
* am/omegaware.am: Enable silent rules.
2012-07-15 Peter Breitenlohner <peb@mppmu.mpg.de>
* odvicopy.ch, odvitype.ch, ofm2opl.ch, opl2ofm.ch, otangle.ch,
ovf2ovp.ch, ovp2ovf.ch: Define and use my_name.
2012-05-15 Peter Breitenlohner <peb@mppmu.mpg.de>
* am/omegaware.am: Add rule to build wovp2ovf.
2012-02-04 Peter Breitenlohner <peb@mppmu.mpg.de>
* ovf2ovp.ch: Allow arbitrarily large TFM files as in TFtoPL.
* opl2ofm.ch, ovp2ovf.ch: Avoid name conflict; MinGW defines
`byte' in <rpcndr.h>.
2012-02-01 Peter Breitenlohner <peb@mppmu.mpg.de>
* ofm2opl.web, ovf2ovp.web: Both nl and lig_size are in words,
so the multiplication by 4 is not needed.
* ofm2opl.ch: Handle tfm_file_array as in TFtoPL, i.e., allocate
with a small initial size and reallocate as needed.
* ofm2opl.ch, opl2ofm.web: Remove unused constant tfm_size.
2012-01-24 Peter Breitenlohner <peb@mppmu.mpg.de>
* opl2ofm.web, ovp2ovf.web: Interpret "--" as "+", not "-".
* realnum.test, tests/realnum.opl, tests/realnum.out (new):
Shell script and data for a new test.
* am/omegaware.am: Add the new test.
2012-01-22 Peter Breitenlohner <peb@mppmu.mpg.de>
* ofm2opl.web, ovf2ovp.web: Add missing space in error message.
2011-12-23 Peter Breitenlohner <peb@mppmu.mpg.de>
* ovf2ovp.web, ovp2ovf.web: Replace 65535 etc by numeric Web
macros (can be up to 2^{30} for otangle).
* ovf2ovp.up, ovp2ovf.up (new): Changes for upTeX versions.
* am/omegaware.am: Adapted.
2011-12-21 Peter Breitenlohner <peb@mppmu.mpg.de>
* opl2ofm.web: Correctly compute mem_size=max_char*4+8;
* ofm2opl.web, ovf2ovp.web: Drop unused mem_size.
* ovf2ovp.ch: Shorten change set (for upTeX version).
2011-12-20 Peter Breitenlohner <peb@mppmu.mpg.de>
* selectfont.test, tests/sample.out, tests/sample.ovp,
tests/sample0-h.opl (new): Shell script and data for a new test.
* am/omegaware.am: Add the new test.
2011-04-19 Peter Breitenlohner <peb@mppmu.mpg.de>
Avoid 'differ in signedness' warnings.
* odvicopy.ch (comment): Do not declare as unsigned.
(do_pre): Apply ucharcast() to xord[] index.
2010-04-22 Peter Breitenlohner <peb@mppmu.mpg.de>
* opl2ofm.ch, ovp2ovf.ch: Bug fix, from ../ptexdir/ppltotf.ch by
Ken Nakano <nakano@nextsolution.co.jp>.
2010-04-08 Peter Breitenlohner <peb@mppmu.mpg.de>
* odvicopy.ch (dvi_name): New global variable.
(dvi_length, dvi_move): Use dvi_name instead of 'odvicopy' as
last arg of xfseek() and xftell().
No random reading on stdin, may be not seekable.
* odvitype.ch (dvi_name): New global variable.
(dvi_length, move_to_byte): Use dvi_name instead of 'odvitype'
as last arg of xfseek() and xftell().
2010-03-09 Peter Breitenlohner <peb@mppmu.mpg.de>
* odvicopy.ch, odvitype.ch, ofm2opl.ch, opl2ofm.ch, otangle.ch,
ovf2ovp.ch, ovp2ovf: Use kpse_set_program_name(argv[0], nil)
instead of kpse_set_progname(argv[0]).
2010-01-22 Peter Breitenlohner <peb@mppmu.mpg.de>
* odvitype.ch (open_dvi_file): Skip use of cur_name.
* ofm2opl.ch (tfm_name, pl_name), opl2ofm.ch (tfm_name, pl_name),
otangle.ch (web_name, chg_name, pascal_name, pool_name),
ovf2ovp.ch (vf_name, vpl_name), ovp2ovf.ch (vpl_name, tfm_name,
vf_name): Declare as const_c_string.
2010-01-05 Peter Breitenlohner <peb@mppmu.mpg.de>
* repeat.test (new): Shell script to test repeat_char handling.
* tests/repeat.opl, tests/repeated.opl (new): Test data.
* am/omegaware.am: Add the new test.
2010-01-04 Peter Breitenlohner <peb@mppmu.mpg.de>
* opl2ofm.web (font direction code): Fix typo in error message.
2010-01-03 Peter Breitenlohner <peb@mppmu.mpg.de>
* opl2ofm.ch, ovp2ovf.ch (read_repeated_character_info): No
output (except errors) unless verbose.
2009-09-29 Peter Breitenlohner <peb@mppmu.mpg.de>
* opl2ofm.web, ovp2ovf.web: Rearrange property name codes to
simplify checking for legal properties.
2009-09-28 Peter Breitenlohner <peb@mppmu.mpg.de>
* o*.web, o*.ch: Remove trailing blanks.
2009-09-26 Peter Breitenlohner <peb@mppmu.mpg.de>
* ofm2opl.web, opl2ofm.web, ovf2ovp.web, ovp2ovf.web: Bugfix.
Don't forget to output the mvalues.
* opl2ofm.web, ovp2ovf.web: Bugfix. Check input parameters for
character tables (ivalue & Co), fix table size computation.
Use out_int() for values that might be negative.
2009-09-24 Peter Breitenlohner <peb@mppmu.mpg.de>
* odvicopy.test (new): Shell script to test odvicopy.
* odvitype.test (new): Shell script to test odvitype.
* ofonts.test (new): Shell script to test ofm2opl etc.
* tests/ofont* (new): Test data.
* am/omegaware.am: Add new tests and test data.
* odvicopy.{ch,web}: Correctly identify TFM/OFM files by their
ofm_level, not by being found via TFMFONTS/OFMFONTS.
When assembling VF chracter packets use type of local font.
* ovf2ovp.ch: Somewhat reorganize, avoiding to move a largish
section of code.
2009-09-22 Peter Breitenlohner <peb@mppmu.mpg.de>
* ovf2ovp.{web,ch}: Bugfix in handling of local fonts with
ofm_level=0,1 and characters in the range 0..65535, diagnosing
characters outside this range.
* opl2ofm.web, ovp2ovf.web: Bugfix. Don't forget to output the
mvalues.
2009-09-20 Peter Breitenlohner <peb@mppmu.mpg.de>
* ovp2ovf.web: Bugfix in handling of ofm_level=-1.
2009-09-20 Peter Breitenlohner <peb@mppmu.mpg.de>
* odvicopy.web (load_font), odvitype.web (in_TFM): Bugfix in
handling of ofm_level=1 fonts.
* odvicopy.ch, odvitype.ch: Avoid compiler warnings.
2009-09-19 Peter Breitenlohner <peb@mppmu.mpg.de>
* opl2ofm.web (get_integer), ovp2ovf.web (get_integer):
Avoid relying on 32-Bit integer overflow.
* ofm2opl.web (check_unused), ovf2ovp.web (check_unused):
New function to check for non-zero unused char info bits.
* opl2ofm.web, ovp2ovf.web: Check for parameter index <0.
2009-09-18 Peter Breitenlohner <peb@mppmu.mpg.de>
* opl2ofm.web: Use top_width as maximum number as character
widths, not max_width; same for depth, height, and italic.
Reported by Lars Hellstr\"om <Lars.Hellstrom@residenset.net>
2009-09-17 Peter Breitenlohner <peb@mppmu.mpg.de>
* ofm2opl.web, opl2ofm.web, ovf2ovp.web, ovp2ovf.web: Use correct
8-bit italic index for ofm_level=0 as in C versions and engines.
2009-09-13 Peter Breitenlohner <peb@mppmu.mpg.de>
* ofm2opl.web, ovf2ovp.web: Check for ofm_level<=1.
Bugfix: ensure that ofm2opl and ovf2ovp can read TFM files.
Handle the seven_bit_safe_flag of TFM files as TFtoPL/VFtoVP do.
Add newline after '...WAS BAD, SO THE DATA HAS BEEN CHANGED!'
2009-09-11 Peter Breitenlohner <peb@mppmu.mpg.de>
Version 1.12 (September 2009) of OFM2OPL & Co.
* opl2ofm.web, ovp2ovf.web: Accept NATURALFONTDIR as alias for
NFONTDIR for compatibility with omegafonts (C) versions.
2009-09-09 Peter Breitenlohner <peb@mppmu.mpg.de>
* am/omegaware.am, ../am/web.am: Move test data from ../tests/
to tests.
* level1.test, omfonts.test, specialhex.test: Adjusted.
2009-09-07 Peter Breitenlohner <peb@mppmu.mpg.de>
* odvicopy.web: Version 1.6 (September 2009).
Import changes for dvicopy.web updating from V1.5 to V1.6:
Minor cleanup to avoid unused or uninitialized variables
and diagnose impossible cases.
(comp_char): Bugfix, 'o' was used uninitialized.
* odvicopy.ch (make_name): Eliminate unused variable.
(jump_out, confusion, overflow, bad_tfm, bad_font, bad_dvi):
Declare as noreturn procedures.
* odvitype.ch (first_par): Diagnose impossible cases.
2009-09-06 Peter Breitenlohner <peb@mppmu.mpg.de>
* odvicopy.ch: Declare comment as const_w2c_u_string.
2009-09-05 Peter Breitenlohner <peb@mppmu.mpg.de>
* ovf2ovp.ch (ASCII04 etc.): Declare as const_c_string.
(vf_input, organize, do_map): Eliminate unused labels.
* ofm2opl.ch (ASCII04 etc.): Declare as const_c_string.
* opl2ofm.ch: Define char (used as array index) as 0..255.
(ASCII04 etc.): Declare as const_c_string.
(read_lig_kern): Eliminate unused variables.
* ovp2ovf.ch: Define char (used as array index) as 0..255.
(HEX): Declare as const_c_string.
(read_lig_kern): Eliminate unused variables.
2009-09-04 Peter Breitenlohner <peb@mppmu.mpg.de>
* otangle.ch: Eliminate the unused |end_of_TANGLE| label.
2009-08-16 Peter Breitenlohner <peb@mppmu.mpg.de>
* am/omegaware.am: Adapt to web2c-sh.
2009-07-15 Peter Breitenlohner <peb@mppmu.mpg.de>
* specialhex.test (new): Shell script to test specials.
* am/omegaware.am: add the new test.
2009-05-30 Peter Breitenlohner <peb@mppmu.mpg.de>
* level1.test (new): Shell script to test ofm_level=1.
* omfonts.test (new): Shell script to test ofm2opl etc.
* am/omegaware.am: add the new test.
* ovp2ovf.ch: correctly print banner and version_string.
2009-05-29 Peter Breitenlohner <peb@mppmu.mpg.de>
* {ofm2opl,opl2ofm,ovf2ovp,ovp2ovf}.{ch,web}: revived.
2009-05-26 Peter Breitenlohner <peb@mppmu.mpg.de>
* {ofm2opl,opl2ofm,ovf2ovp,ovp2ovf}.{ch,web} (removed):
these Pascal Web versions are obsolete, replaced by symlinks
to omfonts (from ../omegafonts/).
2009-03-03 Peter Breitenlohner <peb@mppmu.mpg.de>
* otangle.ch: use kpse_open_file to locate input files,
in order to respect WEBINPUTS (ported from tangle.ch).
|