From 7c2d713b9b2f469194017b115c1b0ab66c4e44e2 Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Sat, 20 Nov 2010 17:04:50 +0200 Subject: [PATCH] Use \uNNNN, \UNNNNNN, or \xNNNNNN for hex-code display on a TTY. term.c (produce_glyphless_glyph): Use \uNNNN, \UNNNNNN, or \xNNNNNN for hex-code display of glyphless characters. --- src/ChangeLog | 5 +++++ src/term.c | 9 ++++----- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index 552d8efe6f1..bb9f68acd5b 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2010-11-20 Eli Zaretskii + + * term.c (produce_glyphless_glyph): Use \uNNNN, \UNNNNNN, or + \xNNNNNN for hex-code display of glyphless characters. + 2010-11-20 Jan Djärv * gtkutil.c (xg_make_tool_item): Take vert_only as argument. diff --git a/src/term.c b/src/term.c index 4d452ed3e00..481a5d8853d 100644 --- a/src/term.c +++ b/src/term.c @@ -1936,7 +1936,7 @@ produce_glyphless_glyph (struct it *it, int for_no_font, Lisp_Object acronym) { int face_id; int len; - char buf[11], *str = " "; + char buf[9], *str = " "; /* Get a face ID for the glyph by utilizing a cache (the same way as done for `escape-glyph' in get_next_display_element). */ @@ -1987,10 +1987,9 @@ produce_glyphless_glyph (struct it *it, int for_no_font, Lisp_Object acronym) else { xassert (it->glyphless_method == GLYPHLESS_DISPLAY_HEX_CODE); - len = (it->c < 0x100 ? sprintf (buf, "[U+%02X]", it->c) - : it->c < 0x10000 ? sprintf (buf, "[U+%04X]", it->c) - : it->c <= MAX_UNICODE_CHAR ? sprintf (buf, "[U+%06X]", it->c) - : sprintf (buf, "[E+%06X]", it->c)); + len = (it->c < 0x10000 ? sprintf (buf, "\\u%04X", it->c) + : it->c <= MAX_UNICODE_CHAR ? sprintf (buf, "\\U%06X", it->c) + : sprintf (buf, "\\x%06X", it->c)); } str = buf; } -- 2.39.5