]> git.wh0rd.org Git - nano.git/commitdiff
in display_string(), properly display double-column characters if
authorDavid Lawrence Ramsey <pooka109@gmail.com>
Fri, 19 May 2006 17:50:01 +0000 (17:50 +0000)
committerDavid Lawrence Ramsey <pooka109@gmail.com>
Fri, 19 May 2006 17:50:01 +0000 (17:50 +0000)
they're past the first virtual page and their first column is covered by
the "$" displayed at the beginning of the line

git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@3528 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

ChangeLog
src/winio.c

index 51caf1050a3fd7009ffda14d300babfaa8163621..f49804cd7ede89b18f94848773f3ef3e32a9ded6 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -237,6 +237,10 @@ CVS code -
        - Add Ctrl-/ as an alias for Ctrl-_. (DLR, found by Benno
          Schulenberg)
        - Simplify the if blocks wherever possible. (DLR)
+  display_string()
+       - Properly display double-column characters if they're past the
+         first virtual page and their first column is covered by the
+         "$" displayed at the beginning of the line. (DLR)
   edit_draw()
        - Properly ignore zero-length regexes in multi-line regexes as
          well as single-line ones.  This avoids a segfault when trying
index cceadb93de47fa7fc2322fab8c4eb0098296c95a..c6a404c29b4dbe1fdaf35d41181135b19224a7bc 100644 (file)
@@ -1810,7 +1810,12 @@ char *display_string(const char *buf, size_t start_col, size_t len, bool
            }
        }
 #ifdef ENABLE_UTF8
-       else if (using_utf8() && mbwidth(buf_mb) > 1) {
+       else if (using_utf8() && mbwidth(buf_mb) == 2) {
+           if (column >= start_col) {
+               converted[index++] = ' ';
+               start_col++;
+           }
+
            converted[index++] = ' ';
            start_col++;