Konsole was one of the few terminal emulators with proper complex text shaping support. Unfortunately, complex text (including Malayalam) shaping was broken around KDE Applications release 18.08 (see upstream bug 401094 for details).

Mariusz Glebocki fixed the code in January this year which I tested to work correctly. There’s a minor issue of glyphs with deep vertical components being cut-off (notice rendering of “സ്കൂ”), but otherwise the shaping and rendering is good. The patches are also merged upstream and will be part of the KDE Applications Bundle 20.08.

If you don’t want to wait that long, I have made a 20.04 release with the fixes on top available for Fedora 31 & 32 in this COPR.
4 responses to “Complex text shaping fixed in Konsole 20.08”
That’s simply great! I was sad when I saw broken Konsole when indic scripts were rendered which was okay before. Kudos to the developers for fixing and you for this information.
[…] text shaping fixed in Konsole 20.08 https://rajeeshknambiar.wordpress.com/2020/05/19/complex-text-shaping-fixed-in-konsole-20-08/ #kde #konsole #qt […]
Is there reason why there are now two white spaces at the second example’s echo output between the file name and the extension?
It seems to be an issue with the new code. The code groups text by script and applies some complex logic to get the correct ‘box’ size to render the shapes. The commit in question is https://invent.kde.org/utilities/konsole/-/commit/8ad28a12574cadc7a41e152ec683380d7743c2a8