comparison src/screen.c @ 8819:a1132255e3e1 v7.4.1697

commit https://github.com/vim/vim/commit/cb0700844c1274fe8bc0ceaffaee0ad21c406f30 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Apr 2 22:14:51 2016 +0200 patch 7.4.1697 Problem: Display problems when the 'ambiwidth' and 'emoji' options are not set properly or the terminal doesn't behave as expected. Solution: After drawing an ambiguous width character always position the cursor.
author Christian Brabandt <cb@256bit.org>
date Sat, 02 Apr 2016 22:15:05 +0200
parents b7eb7bbd71d0
children 470ea7526cc6
comparison
equal deleted inserted replaced
8818:f32102355dba 8819:a1132255e3e1
8050 /* Convert UTF-8 character to bytes and write it. */ 8050 /* Convert UTF-8 character to bytes and write it. */
8051 8051
8052 buf[utfc_char2bytes(off, buf)] = NUL; 8052 buf[utfc_char2bytes(off, buf)] = NUL;
8053 8053
8054 out_str(buf); 8054 out_str(buf);
8055 if (utf_char2cells(ScreenLinesUC[off]) > 1) 8055 if (utf_ambiguous_width(ScreenLinesUC[off]))
8056 screen_cur_col = 9999;
8057 else if (utf_char2cells(ScreenLinesUC[off]) > 1)
8056 ++screen_cur_col; 8058 ++screen_cur_col;
8057 } 8059 }
8058 else 8060 else
8059 #endif 8061 #endif
8060 { 8062 {