diff options
Diffstat (limited to 'Build/source/texk/web2c/euptexdir/char-warning-eptex.ch')
-rw-r--r-- | Build/source/texk/web2c/euptexdir/char-warning-eptex.ch | 101 |
1 files changed, 101 insertions, 0 deletions
diff --git a/Build/source/texk/web2c/euptexdir/char-warning-eptex.ch b/Build/source/texk/web2c/euptexdir/char-warning-eptex.ch new file mode 100644 index 00000000000..fcd528d45be --- /dev/null +++ b/Build/source/texk/web2c/euptexdir/char-warning-eptex.ch @@ -0,0 +1,101 @@ +% $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 + +@x [30] Another warning for (u)pTeX. +@p procedure char_warning_jis(@!f:internal_font_number;@!jc:KANJI_code); +begin if tracing_lost_chars>0 then + begin begin_diagnostic; + print_nl("Character "); print_kanji(jc); print(" ("); + print_hex(jc); print(") cannot be typeset in JIS-encoded JFM "); + slow_print(font_name[f]); + print_char(","); print_nl("so I use .notdef glyph instead."); + end_diagnostic(false); + end; +end; +@y +@p procedure char_warning_jis(@!f:internal_font_number;@!jc:KANJI_code); +var 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("Character ") + else begin + begin_diagnostic; + print_nl("Character ") + end; + print_kanji(jc); print(" ("); + print_hex(jc); print(") cannot be typeset in JIS-encoded JFM "); + slow_print(font_name[f]); + print_char(","); + if tracing_lost_chars > 2 then + begin print_nl(" so I use .notdef glyph instead"); + help0; error; end + else + begin print_nl("so I use .notdef glyph instead."); + end_diagnostic(false); end; + tracing_online:=old_setting; + end; {of |tracing_lost_chars>0|} +end; {of procedure} +@z |