[konsole] [Bug 387811] Curly and colored underlines

2022-08-26 Thread Kurt Hindenburg
https://bugs.kde.org/show_bug.cgi?id=387811

Kurt Hindenburg  changed:

   What|Removed |Added

  Latest Commit||https://invent.kde.org/util
   ||ities/konsole/commit/76f879
   ||cd70fb494ab2334d2660b346795
   ||46f3d9d
 Resolution|--- |FIXED
 Status|ASSIGNED|RESOLVED

--- Comment #7 from Kurt Hindenburg  ---
Git commit 76f879cd70fb494ab2334d2660b34679546f3d9d by Kurt Hindenburg, on
behalf of Matan Ziv-Av.
Committed on 26/08/2022 at 19:24.
Pushed by hindenburg into branch 'master'.

Draw characters in exact positions

QT can't be made to draw monospaced text (if the font does not cooperate),
so avoid combining characters, using a QPainter::drawText() call for each
character.

For bidi text support this change requires konsole to reorder and reshape
the characters. This is done using the ICU library (which QT also uses).

This change allows for some improvements related to text rendering:

- More precise bidi reordering, which is no longer changed by characters'
  attributes and selection.
- underlines drawn separately from the text, allowing for differing
  underline modes (double, curly, dashed, dotted, colored).
- Overriding font for emoji characters.

This commit fixes a few bugs and addresses a lot more:

Feature requests: More standard conforming RTL and various underlines:
Related: bug 403729, bug 416508, bug 452087, bug 425973, bug 430822, bug
442742, bug 441037, bug 430822, bug 440070, bug 450017, bug 445846, bug 453086,
bug 381593, bug 451716

Using non-monospace font:



Emoji:

Regression: devanagari rendering

M  +2-0CMakeLists.txt
M  +1-0src/CMakeLists.txt
M  +47   -25   src/FontDialog.cpp
M  +2-1src/FontDialog.h
M  +127  -23   src/Screen.cpp
M  +18   -5src/Screen.h
M  +28   -13   src/Vt102Emulation.cpp
M  +0-29   src/autotests/CharacterTest.cpp
M  +0-1src/autotests/CharacterTest.h
M  +1-1src/autotests/TerminalCharacterDecoderTest.cpp
M  +119  -29   src/characters/Character.h
M  +1-1src/characters/Hangul.cpp
M  +5-4src/decoders/HTMLDecoder.cpp
M  +1-1src/decoders/PlainTextDecoder.cpp
M  +3-0src/profile/Profile.cpp
M  +29   -0src/profile/Profile.h
M  +101  -6src/terminalDisplay/TerminalDisplay.cpp
M  +7-0src/terminalDisplay/TerminalDisplay.h
M  +42   -0src/terminalDisplay/TerminalFonts.cpp
M  +12   -0src/terminalDisplay/TerminalFonts.h
M  +542  -269  src/terminalDisplay/TerminalPainter.cpp
M  +40   -13   src/terminalDisplay/TerminalPainter.h
M  +2-0src/widgets/EditProfileAdvancedPage.ui
M  +113  -3src/widgets/EditProfileAppearancePage.ui
M  +61   -3src/widgets/EditProfileDialog.cpp
M  +6-1src/widgets/EditProfileDialog.h

https://invent.kde.org/utilities/konsole/commit/76f879cd70fb494ab2334d2660b34679546f3d9d

-- 
You are receiving this mail because:
You are watching all bug changes.

[konsole] [Bug 387811] Curly and colored underlines

2022-08-06 Thread Bug Janitor Service
https://bugs.kde.org/show_bug.cgi?id=387811

Bug Janitor Service  changed:

   What|Removed |Added

 Ever confirmed|0   |1
 Status|REPORTED|ASSIGNED

--- Comment #6 from Bug Janitor Service  ---
A possibly relevant merge request was started @
https://invent.kde.org/utilities/konsole/-/merge_requests/722

-- 
You are receiving this mail because:
You are watching all bug changes.

[konsole] [Bug 387811] Curly and colored underlines

2022-07-16 Thread Matan Ziv-Av
https://bugs.kde.org/show_bug.cgi?id=387811

--- Comment #5 from Matan Ziv-Av  ---
Created attachment 150670
  --> https://bugs.kde.org/attachment.cgi?id=150670&action=edit
screenshot of test script

Thanks. This is how it (with some changes) looks in my branch. Hopefully in
22.12.

-- 
You are receiving this mail because:
You are watching all bug changes.

[konsole] [Bug 387811] Curly and colored underlines

2022-07-16 Thread migtex
https://bugs.kde.org/show_bug.cgi?id=387811

--- Comment #4 from migtex  ---
Sorry i should have linked the sauce the first time... 
I've lost the reference, the reference on the code is not correct and this was
still stored in my pc.
The credit for this is not mine
Here it is:
#!/bin/sh

echo "# 24-bit (true-color)"
# based on: https://gist.github.com/XVilka/8346728
term_cols="$(tput cols || echo 80)"
cols=$(echo "2^((l($term_cols)/l(2))-1)" | bc -l 2> /dev/null)
rows=$(( cols / 2 ))
awk -v cols="$cols" -v rows="$rows" 'BEGIN{
s="  ";
m=cols+rows;
for (row = 0; row255) g = 510-g;
  printf "\033[48;2;%d;%d;%dm", r,g,b;
  printf "\033[38;2;%d;%d;%dm", 255-r,255-g,255-b;
  printf "%s\033[0m", substr(s,(col+row)%2+1,1);
  }
  printf "\n";
}
printf "\n\n";
}'

echo "# text decorations"
printf '\e[1mbold\e[22m\n'
printf '\e[2mdim\e[22m\n'
printf '\e[3mitalic\e[23m\n'
printf '\e[4munderline\e[24m\n'
printf '\e[4:1mthis is also underline\e[24m\n'
printf '\e[21mdouble underline\e[24m\n'
printf '\e[4:2mthis is also double underline\e[24m\n'
printf '\e[4:3mcurly underline\e[24m\n'
printf '\e[58;5;10;4mcolored underline\e[59;24m\n'
printf '\e[5mblink\e[25m\n'
printf '\e[7mreverse\e[27m\n'
printf '\e[8minvisible\e[28m <- invisible (but copy-pasteable)\n'
printf '\e[9mstrikethrough\e[29m\n'
printf '\e[53moverline\e[55m\n'
echo

echo "# magic string (see https://en.wikipedia.org/wiki/Unicode#Web)"
echo "é Δ Й ק م ๗ あ 叶 葉 말"
echo

echo "# emojis"
echo ""
echo

echo "# right-to-left ('w' symbol should be at right side)"
echo "שרה"
echo

echo "# sixel graphics"
printf '\eP0;0;0q"1;1;64;64#0;2;0;0;0#1;2;100;100;100#1~{wo_!11?@FN^!34~^NB
@?_ow{~$#0?BFN^!11~}wo_!34?_o{}~^NFB-#1!5~}{o_!12?BF^!25~^NB@??ow{!6~$#0!5?
@BN^!12~{w_!25?_o{}~~NFB-#1!10~}w_!12?@BN^!15~^NFB@?_w{}!10~$#0!10?@F^!12~}
{o_!15?_ow{}~^FB@-#1!14~}{o_!11?@BF^!7~^FB??_ow}!15~$#0!14?@BN^!11~}{w_!7?_
w{~~^NF@-#1!18~}{wo!11?_r^FB@??ow}!20~$#0!18?@BFN!11~^K_w{}~~NF@-#1!23~M!4?
_oWMF@!6?BN^!21~$#0!23?p!4~^Nfpw}!6~{o_-#1!18~^NB@?_ow{}~wo!12?@BFN!17~$#0!
18?_o{}~^NFB@?FN!12~}{wo-#1!13~^NB@??_w{}!9~}{w_!12?BFN^!12~$#0!13?_o{}~~^F
B@!9?@BF^!12~{wo_-#1!8~^NFB@?_w{}!19~{wo_!11?@BN^!8~$#0!8?_ow{}~^FB@!19?BFN
^!11~}{o_-#1!4~^NB@?_ow{!28~}{o_!12?BF^!4~$#0!4?_o{}~^NFB!28?@BN^!12~{w_-#1
NB@???GM!38NMG!13?@BN$#0?KMNNNF@!38?@F!13NMK-\e\'

-- 
You are receiving this mail because:
You are watching all bug changes.

[konsole] [Bug 387811] Curly and colored underlines

2022-07-15 Thread Matan Ziv-Av
https://bugs.kde.org/show_bug.cgi?id=387811

Matan Ziv-Av  changed:

   What|Removed |Added

 CC||ma...@svgalib.org

--- Comment #3 from Matan Ziv-Av  ---
(In reply to migtex from comment #2)
> Created attachment 150154 [details]
> Comparison

Can you tell which program is used for those tests?

-- 
You are receiving this mail because:
You are watching all bug changes.

[konsole] [Bug 387811] Curly and colored underlines

2022-06-25 Thread migtex
https://bugs.kde.org/show_bug.cgi?id=387811

migtex  changed:

   What|Removed |Added

 CC||migt...@gmail.com

--- Comment #2 from migtex  ---
Created attachment 150154
  --> https://bugs.kde.org/attachment.cgi?id=150154&action=edit
Comparison

-- 
You are receiving this mail because:
You are watching all bug changes.

[konsole] [Bug 387811] Curly and colored underlines

2022-05-30 Thread Derick
https://bugs.kde.org/show_bug.cgi?id=387811

Derick  changed:

   What|Removed |Added

 CC||derickts...@tutanota.com

-- 
You are receiving this mail because:
You are watching all bug changes.

[konsole] [Bug 387811] Curly and colored underlines

2022-05-17 Thread Qihuan Liu
https://bugs.kde.org/show_bug.cgi?id=387811

Qihuan Liu  changed:

   What|Removed |Added

Version|unspecified |22.04.1
 CC||liu.qih...@outlook.com
   Platform|Other   |Archlinux Packages

-- 
You are receiving this mail because:
You are watching all bug changes.

[konsole] [Bug 387811] Curly and colored underlines

2022-02-23 Thread Celeste
https://bugs.kde.org/show_bug.cgi?id=387811

Celeste  changed:

   What|Removed |Added

 CC||coelacant...@outlook.com

-- 
You are receiving this mail because:
You are watching all bug changes.

[konsole] [Bug 387811] Curly and colored underlines

2022-02-21 Thread Peifeng Yu
https://bugs.kde.org/show_bug.cgi?id=387811

Peifeng Yu <7437...@gmail.com> changed:

   What|Removed |Added

 CC||7437...@gmail.com

-- 
You are receiving this mail because:
You are watching all bug changes.

[konsole] [Bug 387811] Curly and colored underlines

2020-11-14 Thread bugzilla_noreply
https://bugs.kde.org/show_bug.cgi?id=387811

lilyd...@gmail.com changed:

   What|Removed |Added

 CC||lilyd...@gmail.com

-- 
You are receiving this mail because:
You are watching all bug changes.

[konsole] [Bug 387811] Curly and colored underlines

2018-10-03 Thread Martin Hostettler
https://bugs.kde.org/show_bug.cgi?id=387811

Martin Hostettler  changed:

   What|Removed |Added

 CC||textshell-dIA3f6@uchuujin.d
   ||e

-- 
You are receiving this mail because:
You are watching all bug changes.

[konsole] [Bug 387811] Curly and colored underlines

2018-04-16 Thread Egmont Koblinger
https://bugs.kde.org/show_bug.cgi?id=387811

--- Comment #1 from Egmont Koblinger  ---
(As per https://github.com/kovidgoyal/kitty/issues/226#issuecomment-381665023,
mintty decided that 4:4 is dotted underline, and 4:5 is dashed.)

-- 
You are receiving this mail because:
You are watching all bug changes.