summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Build/source/texk/web2c/omegaware/ChangeLog15
-rw-r--r--Build/source/texk/web2c/omegaware/am/omegaware.am19
-rw-r--r--Build/source/texk/web2c/omegaware/opl2ofm.ch15
-rw-r--r--Build/source/texk/web2c/omegaware/opl2ofm.web4
-rw-r--r--Build/source/texk/web2c/omegaware/ovp2ovf.ch15
-rwxr-xr-xBuild/source/texk/web2c/omegaware/repeat.test16
-rw-r--r--Build/source/texk/web2c/omegaware/tests/repeat.opl78
-rw-r--r--Build/source/texk/web2c/omegaware/tests/repeated.opl49
8 files changed, 199 insertions, 12 deletions
diff --git a/Build/source/texk/web2c/omegaware/ChangeLog b/Build/source/texk/web2c/omegaware/ChangeLog
index 322d35cfd79..9bfbae39443 100644
--- a/Build/source/texk/web2c/omegaware/ChangeLog
+++ b/Build/source/texk/web2c/omegaware/ChangeLog
@@ -1,3 +1,18 @@
+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
diff --git a/Build/source/texk/web2c/omegaware/am/omegaware.am b/Build/source/texk/web2c/omegaware/am/omegaware.am
index 2f12023bc33..e75e97c5f2f 100644
--- a/Build/source/texk/web2c/omegaware/am/omegaware.am
+++ b/Build/source/texk/web2c/omegaware/am/omegaware.am
@@ -93,17 +93,17 @@ ovp2ovf.p: tangle$(EXEEXT) $(ovp2ovf_sources)
## Tests
##
-EXTRA_DIST += omegaware/level1.test \
- omegaware/odvicopy.test omegaware/odvitype.test \
- omegaware/ofonts.test omegaware/omfonts.test \
- omegaware/otangle.test omegaware/specialhex.test
+OTANGLE_tests = omegaware/odvicopy.test omegaware/odvitype.test \
+ omegaware/otangle.test
+OMFONTS_tests = omegaware/level1.test omegaware/ofonts.test \
+ omegaware/omfonts.test omegaware/repeat.test \
+ omegaware/specialhex.test
+EXTRA_DIST += $(OTANGLE_tests) $(OMFONTS_tests)
if OTANGLE
-TESTS += omegaware/odvicopy.test omegaware/odvitype.test \
- omegaware/otangle.test
+TESTS += $(OTANGLE_tests)
if !OMFONTS
-TESTS += omegaware/level1.test omegaware/ofonts.test \
- omegaware/omfonts.test omegaware/specialhex.test
+TESTS += $(OMFONTS_tests)
endif !OMFONTS
endif OTANGLE
@@ -141,6 +141,9 @@ DISTCLEANFILES += omegaware/tests/Cherokee.tfm omegaware/tests/OCherokee.ofm \
omegaware/tests/xCherokee.* omegaware/tests/xOCherokee.*
## omegaware/otangle.test
DISTCLEANFILES += cftest.p
+## omegaware/repeat.test
+EXTRA_DIST += omegaware/tests/repeat.opl omegaware/tests/repeated.opl
+DISTCLEANFILES += omegaware/tests/xrepeated.*
## omegaware/specialhex.test
EXTRA_DIST += omegaware/tests/specialhex.ovp
DISTCLEANFILES += omegaware/tests/specialhex.ofm omegaware/tests/specialhex.opl \
diff --git a/Build/source/texk/web2c/omegaware/opl2ofm.ch b/Build/source/texk/web2c/omegaware/opl2ofm.ch
index ff626c22e37..67172f602bd 100644
--- a/Build/source/texk/web2c/omegaware/opl2ofm.ch
+++ b/Build/source/texk/web2c/omegaware/opl2ofm.ch
@@ -100,12 +100,25 @@ rewritebin (tfm_file, tfm_name);
@d index == index_var
@z
-@x [103] No output (except errors) unless verbose.
+@x [116] No output (except errors) unless verbose.
@<Print |c| in hex notation@>;
@y
if verbose then @<Print |c| in hex notation@>;
@z
+@x [119] No output (except errors) unless verbose.
+@<Print |c| in hex notation@>;
+@y
+if verbose then @<Print |c| in hex notation@>;
+@z
+@x
+print('-'); print_hex(c+crange);
+@y
+if verbose then begin
+ print('-'); print_hex(c+crange);
+ end;
+@z
+
% [27, 28] Change strings to C char pointers. The Pascal strings are
% indexed starting at 1, so we pad with a blank.
@x
diff --git a/Build/source/texk/web2c/omegaware/opl2ofm.web b/Build/source/texk/web2c/omegaware/opl2ofm.web
index 3b3be4ad807..e03f745d204 100644
--- a/Build/source/texk/web2c/omegaware/opl2ofm.web
+++ b/Build/source/texk/web2c/omegaware/opl2ofm.web
@@ -3419,7 +3419,7 @@ case cur_char of
end;
while cur_char<>")" do get_next;
if font_dir = -1 then begin
- flush_error('FONTDIR must be valid direction, -- TR assumed');
+ flush_error('FONTDIR must be valid direction, -- TL assumed');
font_dir:=0;
end;
end
@@ -3449,7 +3449,7 @@ case cur_char of
end;
while cur_char<>")" do get_next;
if font_dir = -1 then begin
- flush_error('NFONTDIR must be valid direction, -- TR assumed');
+ flush_error('NFONTDIR must be valid direction, -- TL assumed');
font_dir:=8;
end;
end
diff --git a/Build/source/texk/web2c/omegaware/ovp2ovf.ch b/Build/source/texk/web2c/omegaware/ovp2ovf.ch
index d96af15c18c..2fa615d0729 100644
--- a/Build/source/texk/web2c/omegaware/ovp2ovf.ch
+++ b/Build/source/texk/web2c/omegaware/ovp2ovf.ch
@@ -101,12 +101,25 @@ rewritebin (tfm_file, tfm_name);
@d class == class_var
@z
-@x [118] No output unless verbose.
+@x [130] No output (except errors) unless verbose.
@<Print |c| in hex notation@>;
@y
if verbose then @<Print |c| in hex notation@>;
@z
+@x [133] No output (except errors) unless verbose.
+@<Print |c| in hex notation@>;
+@y
+if verbose then @<Print |c| in hex notation@>;
+@z
+@x
+print('-'); print_hex(c+crange);
+@y
+if verbose then begin
+ print('-'); print_hex(c+crange);
+ end;
+@z
+
@x
@!HEX: packed array [1..32] of char;
@y
diff --git a/Build/source/texk/web2c/omegaware/repeat.test b/Build/source/texk/web2c/omegaware/repeat.test
new file mode 100755
index 00000000000..157ce1ac91b
--- /dev/null
+++ b/Build/source/texk/web2c/omegaware/repeat.test
@@ -0,0 +1,16 @@
+#! /bin/sh
+
+# Copyright (C) 2009 Peter Breitenlohner <tex-live@tug.org>
+# You may freely use, modify and/or distribute this file.
+
+tests=omegaware/tests
+
+test -d $tests || mkdir -p $tests
+
+./opl2ofm -verbose $srcdir/$tests/repeat $tests/xrepeated || exit 1
+
+TEXMFCNF=$srcdir/../kpathsea \
+ ./ofm2opl -verbose $tests/xrepeated $tests/xrepeated || exit 1
+
+diff $srcdir/$tests/repeated.opl $tests/xrepeated.opl || exit 1
+
diff --git a/Build/source/texk/web2c/omegaware/tests/repeat.opl b/Build/source/texk/web2c/omegaware/tests/repeat.opl
new file mode 100644
index 00000000000..e629f952d63
--- /dev/null
+++ b/Build/source/texk/web2c/omegaware/tests/repeat.opl
@@ -0,0 +1,78 @@
+(OFMLEVEL H 1)
+(FONTDIR TL)
+(FAMILY UNSPECIFIED)
+(FACE F MRR)
+(CODINGSCHEME UNICODE)
+(DESIGNSIZE R 10.0)
+(COMMENT DESIGNSIZE IS IN POINTS)
+(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
+(CHECKSUM H 0)
+(SEVENBITSAFEFLAG FALSE)
+(FONTDIMEN
+ (SLANT R 0.0)
+ (SPACE R 0.0)
+ (STRETCH R 0.0)
+ (SHRINK R 0.0)
+ (XHEIGHT R 1.0)
+ (QUAD R 1.0)
+ (EXTRASPACE R 0.0)
+ )
+(CHARREPEAT H 1 H 0
+ (COMMENT Repeat count zero)
+ (CHARWD R 1.0)
+ (CHARHT R 0.9)
+ (CHARDP R 0.1)
+ )
+(CHARREPEAT H 11 H 1
+ (CHARWD R 1.0)
+ (CHARHT R 0.9)
+ (CHARDP R 0.1)
+ )
+(CHARREPEAT H 13 H 1
+ (COMMENT Merge with previous)
+ (CHARWD R 1.0)
+ (CHARHT R 0.9)
+ (CHARDP R 0.1)
+ )
+(CHARREPEAT H 16 H 1
+ (COMMENT No merge after gap)
+ (CHARWD R 1.0)
+ (CHARHT R 0.9)
+ (CHARDP R 0.1)
+ )
+(CHARACTER H 18
+ (COMMENT Merge with previous)
+ (CHARWD R 1.0)
+ (CHARHT R 0.9)
+ (CHARDP R 0.1)
+ )
+(CHARACTER H 1A
+ (COMMENT No merge after gap)
+ (CHARWD R 1.0)
+ (CHARHT R 0.9)
+ (CHARDP R 0.1)
+ )
+(CHARREPEAT H 1B H 1
+ (COMMENT Merge with previous)
+ (CHARWD R 1.0)
+ (CHARHT R 0.9)
+ (CHARDP R 0.1)
+ )
+(CHARACTER H 1E
+ (COMMENT No merge after gap)
+ (CHARWD R 1.0)
+ (CHARHT R 0.9)
+ (CHARDP R 0.1)
+ )
+(CHARACTER H 1F
+ (COMMENT Merge with previous)
+ (CHARWD R 1.0)
+ (CHARHT R 0.9)
+ (CHARDP R 0.1)
+ )
+(CHARREPEAT H 21 H 1
+ (COMMENT No merge after gap)
+ (CHARWD R 1.0)
+ (CHARHT R 0.9)
+ (CHARDP R 0.1)
+ )
diff --git a/Build/source/texk/web2c/omegaware/tests/repeated.opl b/Build/source/texk/web2c/omegaware/tests/repeated.opl
new file mode 100644
index 00000000000..f443e08546b
--- /dev/null
+++ b/Build/source/texk/web2c/omegaware/tests/repeated.opl
@@ -0,0 +1,49 @@
+(OFMLEVEL H 1)
+(FONTDIR TL)
+(FAMILY UNSPECIFIED)
+(FACE F MRR)
+(CODINGSCHEME UNICODE)
+(DESIGNSIZE R 10.0)
+(COMMENT DESIGNSIZE IS IN POINTS)
+(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
+(CHECKSUM H 0)
+(SEVENBITSAFEFLAG FALSE)
+(FONTDIMEN
+ (SLANT R 0.0)
+ (SPACE R 0.0)
+ (STRETCH R 0.0)
+ (SHRINK R 0.0)
+ (XHEIGHT R 1.0)
+ (QUAD R 1.0)
+ (EXTRASPACE R 0.0)
+ )
+(CHARACTER H 1
+ (CHARWD R 1.0)
+ (CHARHT R 0.9)
+ (CHARDP R 0.1)
+ )
+(CHARREPEAT H 11 H 3
+ (CHARWD R 1.0)
+ (CHARHT R 0.9)
+ (CHARDP R 0.1)
+ )
+(CHARREPEAT H 16 H 2
+ (CHARWD R 1.0)
+ (CHARHT R 0.9)
+ (CHARDP R 0.1)
+ )
+(CHARREPEAT H 1A H 2
+ (CHARWD R 1.0)
+ (CHARHT R 0.9)
+ (CHARDP R 0.1)
+ )
+(CHARREPEAT H 1E H 1
+ (CHARWD R 1.0)
+ (CHARHT R 0.9)
+ (CHARDP R 0.1)
+ )
+(CHARREPEAT H 21 H 1
+ (CHARWD R 1.0)
+ (CHARHT R 0.9)
+ (CHARDP R 0.1)
+ )