[Bug 1562308] Re: missing or duplicate lines caused by a wrapped line with wide characters
aeb
aeb at cwi.nl
Mon Aug 1 16:08:33 UTC 2016
I just investigated the same bug. "less" loses input lines because it
does not count output lines correctly. The problem is that it assumes
that east asian wide characters have width 1, but in reality, e.g. on
xterm, these characters take 2 positions. In other words, the routine
pwidth() in less-481:line.c is broken (since the is_wide_char(ch)
returns false for characters that take two screen positions).
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to less in Ubuntu.
https://bugs.launchpad.net/bugs/1562308
Title:
missing or duplicate lines caused by a wrapped line with wide
characters
Status in less package in Ubuntu:
Confirmed
Bug description:
When you scroll down text with "j" key and encounter a wrapped line
with wide characters (such as UTF8-encoded Japanese characters),
"less" seems to show the whole wrapped line at a single "j" key,
causing the view scroll down by 2 lines at once. Strangely, if you
type "k" to scroll up, it does that by only 1 line. As a result, there
is a missing line that should have been shown.
Even stranger stuff (i.e., duplicate lines) happens when you type "j"
and "k" alternately when a wrapped line with wide characters is at the
bottom of the view.
# Steps to reproduce
1. Open xterm.
2. Set the geometory of xterm to 71x22.
3. Open the attached lesstest.long_jap.txt with less (maybe you need
environment variable LANG=ja_JP.UTF-8)
4. Type "j", then you will see "003" at the top, and a long wrapped
line with Japanese characters at the bottom.
5. Type "k", then you will see "001" and "003" at the top. "002" is
missing.
# Expected behavior
In step 4, only the first part of the wrapped line should be shown.
In step 5, all "001", "002" and "003" should be shown.
# Test Environment
- Xubuntu 16.04 (Xenial) beta (in VirtualBox on Xubuntu 14.04)
- less: 481-2.1
- xterm: 322-1ubuntu1
- Japanese environment (LANG=ja_JP.UTF-8)
# Note
- The same problem happens on xfce4-terminal (0.6.3-2ubuntu1)
- lv (4.51-2.3build1) doesn't have such problem.
- In "less" in Xubuntu 14.04 (version 458-2), this problem didn't
exist.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/less/+bug/1562308/+subscriptions
More information about the foundations-bugs
mailing list