nano

nano with my custom patches
git clone git://bsandro.tech/nano
Log | Files | Refs | README | LICENSE

commit 5398d986eff2084ecc166a6dc4d7ae3f62b9cd28
parent b02dccc51fbefb44228f94ee859892c1d88c62d8
Author: Benno Schulenberg <bensberg@telfort.nl>
Date:   Thu,  3 Oct 2019 11:09:21 +0200

tweaks: speed up determining the width of plain ASCII characters

Diffstat:
Msrc/chars.c | 6+++++-
1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/chars.c b/src/chars.c @@ -201,9 +201,11 @@ char control_mbrep(const char *c, bool isdata) } #ifdef ENABLE_UTF8 -/* This function is equivalent to wcwidth() for multibyte characters. */ +/* Return the width in columns of the given (multibyte) character. */ int mbwidth(const char *c) { + /* Ask for the width only when the character isn't plain ASCII. */ + if ((signed char)*c <= 0) { wchar_t wc; int width; @@ -216,6 +218,8 @@ int mbwidth(const char *c) return 1; return width; + } else + return 1; } #endif