[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[screen-devel] [bug #63634] GNU Screen should use wcwdith() in utf8_isdo
From: |
Vincent Lefèvre |
Subject: |
[screen-devel] [bug #63634] GNU Screen should use wcwdith() in utf8_isdouble() instead of hard-coded tables |
Date: |
Mon, 9 Jan 2023 06:17:15 -0500 (EST) |
URL:
<https://savannah.gnu.org/bugs/?63634>
Summary: GNU Screen should use wcwdith() in utf8_isdouble()
instead of hard-coded tables
Project: GNU Screen
Submitter: vinc17
Submitted: lun. 09 janv. 2023 11:17:13
Category: None
Severity: 3 - Normal
Priority: 5 - Normal
Status: None
Privacy: Public
Assigned to: None
Open/Closed: Open
Release: None
Discussion Lock: Any
Fixed Release: None
Planned Release: None
Work Required: None
_______________________________________________________
Follow-up Comments:
-------------------------------------------------------
Date: lun. 09 janv. 2023 11:17:13 By: Vincent Lefèvre <vinc17>
In the utf8_isdouble() function of encoding.c, GNU Screen uses hard-coded
tables, which become incomplete when Unicode evolves in the C library. This
yields major display issues, such as shifted text in Mutt (based on ncurses),
with the risk to lose data in this case if one doesn't notice the text shift:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1027733
Instead of hard-coded tables, GNU Screen should use the standard wcwdith()
function (as done in Debian to fix the above bug), which will ensure
consistency with other software that already uses it (the real terminal and
perhaps libraries like ncurses). If you think that hard-coded tables are still
useful, they could be enabled via an option, a bit like what cjkwidth
currently does (introduced for bug #16666 "Support for UAX#11 East Asian
Ambiguous characters"). BTW, I don't know whether the cjkwidth feature should
be kept, but it is likely to have issues with curses applications.
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?63634>
_______________________________________________
Message posté via Savannah
https://savannah.gnu.org/
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [screen-devel] [bug #63634] GNU Screen should use wcwdith() in utf8_isdouble() instead of hard-coded tables,
Vincent Lefèvre <=