summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/eptexdir
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2020-07-19 15:42:51 +0000
committerKarl Berry <karl@freefriends.org>2020-07-19 15:42:51 +0000
commitef76eb4ac1bfe43d21a34b25e97d8fbc40088831 (patch)
tree90b9f6a123daf5262e2ce4c50883f3694c28ff2a /Build/source/texk/web2c/eptexdir
parent4d745399c80cdfb4dd055c93ac9f063ede8087c1 (diff)
\tracinglostchars>=3 now causes an error; missing character code always reported in hex
git-svn-id: svn://tug.org/texlive/trunk@55874 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/web2c/eptexdir')
-rw-r--r--Build/source/texk/web2c/eptexdir/ChangeLog5
-rw-r--r--Build/source/texk/web2c/eptexdir/am/eptex.am4
-rw-r--r--Build/source/texk/web2c/eptexdir/char-warning-eptex.ch63
3 files changed, 71 insertions, 1 deletions
diff --git a/Build/source/texk/web2c/eptexdir/ChangeLog b/Build/source/texk/web2c/eptexdir/ChangeLog
index 58f0987ff03..ddb5dc477df 100644
--- a/Build/source/texk/web2c/eptexdir/ChangeLog
+++ b/Build/source/texk/web2c/eptexdir/ChangeLog
@@ -1,3 +1,8 @@
+2020-07-19 Karl Berry <karl@freefriends.org>
+
+ * char-warning-eptex.ch: new file (see ../pdftexdir/ChangeLog).
+ * am/eptex.am (eptex_ch_srcs): add it.
+
2020-05-05 Hironori Kitagawa <h_kitagawa2001@yahoo.co.jp>
* pdfutils.ch: Sync with inhibit_glue_flag improvement.
diff --git a/Build/source/texk/web2c/eptexdir/am/eptex.am b/Build/source/texk/web2c/eptexdir/am/eptex.am
index 0bb060024bd..596d7a42d7e 100644
--- a/Build/source/texk/web2c/eptexdir/am/eptex.am
+++ b/Build/source/texk/web2c/eptexdir/am/eptex.am
@@ -1,6 +1,7 @@
+## $Id$
## texk/web2c/eptexdir/am/eptex.am: Makefile fragment for e-pTeX.
##
-## Copyright 2015-2019 Karl Berry <tex-live@tug.org>
+## Copyright 2015-2020 Karl Berry <tex-live@tug.org>
## Copyright 2011-2015 Peter Breitenlohner <tex-live@tug.org>
## You may freely use, modify and/or distribute this file.
@@ -68,6 +69,7 @@ eptex_ch_srcs = \
$(eptex_ch_synctex) \
eptexdir/fam256.ch \
eptexdir/pdfutils.ch \
+ eptexdir/char-warning-eptex.ch \
tex-binpool.ch
EXTRA_DIST += $(eptex_web_srcs) $(eptex_ch_srcs) eptexdir/eptex.defines
diff --git a/Build/source/texk/web2c/eptexdir/char-warning-eptex.ch b/Build/source/texk/web2c/eptexdir/char-warning-eptex.ch
new file mode 100644
index 00000000000..f6593ad1e9d
--- /dev/null
+++ b/Build/source/texk/web2c/eptexdir/char-warning-eptex.ch
@@ -0,0 +1,63 @@
+% $Id$
+% Public domain. See ../pdftexdir/char-warning-pdftex.ch for info.
+
+@x [30] If \tracinglostchars > 2, then promote full errors.
+@p procedure char_warning(@!f:internal_font_number;@!c:eight_bits);
+var @!l:0..255; {small indices or counters}
+old_setting: integer; {saved value of |tracing_online|}
+begin if tracing_lost_chars>0 then
+ begin old_setting:=tracing_online;
+ if eTeX_ex and(tracing_lost_chars>1) then tracing_online:=1;
+ begin begin_diagnostic;
+ print_nl("Missing character: There is no ");
+@.Missing character@>
+ if (c<" ")or(c>"~") then
+ begin print_char("^"); print_char("^");
+ if c<64 then print_char(c+64)
+ else if c<128 then print_char(c-64)
+ else begin print_lc_hex(c div 16); print_lc_hex(c mod 16); end
+ end
+ else print_ASCII(c);
+ print(" in font ");
+ slow_print(font_name[f]); print_char("!"); end_diagnostic(false);
+ end;
+ tracing_online:=old_setting;
+ end;
+end;
+@y
+@p procedure char_warning(@!f:internal_font_number;@!c:eight_bits);
+var @!l:0..255; {small indices or counters}
+old_setting: integer; {saved value of |tracing_online|}
+begin if tracing_lost_chars>0 then
+ begin old_setting:=tracing_online;
+ if eTeX_ex and(tracing_lost_chars>1) then tracing_online:=1;
+ if tracing_lost_chars > 2 then
+ print_err("Missing character: There is no ")
+ else begin
+ begin_diagnostic;
+ print_nl("Missing character: There is no ")
+ end;
+@.Missing character@>
+ if (c<" ")or(c>"~") then begin
+ print_char("^"); print_char("^");
+ if c<64 then print_char(c+64)
+ else if c<128 then print_char(c-64)
+ else begin print_lc_hex(c div 16); print_lc_hex(c mod 16); end
+ end
+ else print_ASCII(c);
+ if tracing_lost_chars > 2 then begin
+ print(" (");
+ print_hex(c);
+ print(")");
+ end;
+ print(" in font ");
+ slow_print(font_name[f]);
+ if tracing_lost_chars < 3 then print_char("!");
+ tracing_online:=old_setting;
+ if tracing_lost_chars > 2 then begin
+ help0;
+ error;
+ end else end_diagnostic(false);
+ end; {of |tracing_lost_chars>0|}
+end; {of procedure}
+@z