From 40b50332dea5fc732a23491d50b4a9aee635324f Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Thu, 19 Aug 2021 22:28:07 +0530 Subject: [PATCH] Fix space ligatures not working with Iosevka for some characters in the Enclosed Alphanumeric Supplement Recognize chars in this block as non-emoji dingbats to turn on space ligatures for them Fixes #3954 --- docs/changelog.rst | 3 +++ kitty/fonts.c | 9 ++++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/docs/changelog.rst b/docs/changelog.rst index b7ad3c894..cb42323fa 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -30,6 +30,9 @@ To update |kitty|, :doc:`follow the instructions `. - broadcast kitten: Allow broadcasting :kbd:`ctrl+c` (:pull:`3956`) +- Fix space ligatures not working with Iosevka for some characters in the + Enclosed Alphanumeric Supplement (:iss:`3954`) + 0.23.1 [2021-08-17] ---------------------- diff --git a/kitty/fonts.c b/kitty/fonts.c index 6f460cc70..cee33c10e 100644 --- a/kitty/fonts.c +++ b/kitty/fonts.c @@ -1214,7 +1214,14 @@ render_run(FontGroup *fg, CPUCell *first_cpu_cell, GPUCell *first_gpu_cell, inde static bool is_non_emoji_dingbat(char_type ch) { - return 0x2700 <= ch && ch <= 0x27bf && !is_emoji(ch); + switch(ch) { + START_ALLOW_CASE_RANGE + case 0x2700 ... 0x27bf: + case 0x1f100 ... 0x1f1ff: + return !is_emoji(ch); + END_ALLOW_CASE_RANGE + } + return false; } void