Version: (using KDE 4.3.2)
Installed from: Ubuntu Packages
My z-shell themes uses some unicode characters as prompt borders. Konsole doesn't show some corner characters of these character bounding boxes. It just displays them as whitespaces.
these characters are displayed:
'─' U+2500, '├' U+251C
these and other arc characters are displayed as whitespace:
'╭' U+256D, '╰' U+2570
Konsole uses UTF-8 encoding and locales are set to en_US.UTF-8 and are installed. DejaVu Sans Mono is used as Font. The shell file is encoded correctly.
Other KDE applications like Kate with DejaVu font can display all characters without problem. Cut&Paste from Kate to openoffice works fine but not paste to Konsole commandline. Cut&Paste the whitespace back to Kate displays all characters.
It's not a z-shell problem. Xterm can display these characters with zsh and Konsole running bash catting the file produces spaces.
Konsole versions of KDE3 didn't have this problem.
The bugs affects 4.3.3 and 4.3.4 as well.
possibly related with #230192
*** Bug 230192 has been marked as a duplicate of this bug. ***
hI think I have figured out why they are not displayed correctly.
A small subset (U+2500 ~ U+257F) of unicode characters , referred as linechars
in the code, are drawn in a special way. They are drawn according their
corresponding value in LineChars array in LineFont.h, which is automatically
generated from LineFont.src in the building process. However, some characters
lack definitions in LineFont.src, so they will be drawn as whitespace(?),
instead of the expected glyph.
The code flow for drawing these characters is: TerminalDisplay::drawCharacters()
--> TerminalDisplay::drawLineCharString() --> drawLineChar()
Why they are drawn in this special way and how to fix the missing definitions
are definitely beyond my knowledge. And the last change on LineFont.src is 4
The influenced characters are listed below.
I tested my comment #4 in xterm, rxvt-uniocde, xfce4-terminal and gnome-terminal, and they all showed those influenced characters correctly. It' only konsole that can't show them.
Please confirm this bug as 'New', seriously.
Whether a bug is NEW or UNCONFIRMED doesn't make a lot of difference. As you've noticed there are a ton of bugs and I've never been able to keep up doing this alone.
Thanks for your help recently.
Git commit c53d790f31d7a23e59b37b44c4529ae8229e8204 by Jekyll Wu.
Committed on 12/10/2011 at 14:50.
Pushed by jekyllwu into branch 'master'.
Draw some fail-to-simulate box-drawing characters in the normal way.
M +28 -1 src/Character.h
M +4 -1 src/TerminalDisplay.cpp