10
66
Fork
You've already forked fcft
13

Add glyph-index and shaped-run rasterization APIs - for easier ligature rendering #116

Open
barsmonster wants to merge 1 commit from barsmonster/fcft:master into master
pull from: barsmonster/fcft:master
merge into: dnkl:master
dnkl:master
dnkl:colrv1
dnkl:releases/3.3
dnkl:rasterize-utf8
dnkl:spacing
dnkl:releases/3.2
dnkl:releases/3.1
dnkl:releases/3.0
dnkl:releases/2.5
dnkl:releases/2.4
dnkl:releases/2.3
dnkl:releases/2.2
dnkl:releases/2.1
dnkl:releases/2.0
dnkl:releases/1.0
First-time contributor
Copy link

Add fcft_rasterize_glyph_index() for rasterizing by FreeType glyph index with caching, and fcft_rasterize_shaped_run() which shapes a codepoint array with HarfBuzz and returns individually-cached glyphs per input position.

Falls back to fcft_rasterize_char_utf32 for characters missing from the primary font.

Add fcft_rasterize_glyph_index() for rasterizing by FreeType glyph index with caching, and fcft_rasterize_shaped_run() which shapes a codepoint array with HarfBuzz and returns individually-cached glyphs per input position. Falls back to fcft_rasterize_char_utf32 for characters missing from the primary font.
barsmonster force-pushed master from 6cd528a0a3
All checks were successful
builds.sr.ht/freebsd-x64 Job completed
to 1bb467638e
All checks were successful
builds.sr.ht/freebsd-x64 Job completed
2026年02月21日 13:08:05 +01:00
Compare
First-time contributor
Copy link

Hi, still me :) I have tested your changes and for the text they work great.
It seems there are some remaining issues with Nerd-Font icons, which are rendered truncated, see attachments. This happens both with Fira Code and Maple Mono (which, BTW, is a very nice font!). I played a bit with foot tweaks with no luck, maybe I am doing something wrong? I seem to remember I had a similar problem with st terminal back in the days when ligature support was added, but I do not remember how it was eventually fixed.
Thanks!

Hi, still me :) I have tested your changes and for the text they work great. It seems there are some remaining issues with `Nerd-Font` icons, which are rendered truncated, see attachments. This happens both with `Fira Code` and `Maple Mono` (which, BTW, is a very nice font!). I played a bit with `foot` tweaks with no luck, maybe I am doing something wrong? I seem to remember I had a similar problem with `st` terminal back in the days when ligature support was added, but I do not remember how it was eventually fixed. Thanks!
Author
First-time contributor
Copy link

@_fe wrote in #116 (comment):

It seems there are some remaining issues with Nerd-Font icons, which are rendered truncated, see attachments.

You are right! This was fixed on the foot side (right-to-left rendering for non-ligatures, like in original code).

@_fe wrote in https://codeberg.org/dnkl/fcft/pulls/116#issuecomment-10866905: > It seems there are some remaining issues with `Nerd-Font` icons, which are rendered truncated, see attachments. You are right! This was fixed on the foot side (right-to-left rendering for non-ligatures, like in original code).
barsmonster force-pushed master from 1bb467638e
All checks were successful
builds.sr.ht/freebsd-x64 Job completed
to 61e2240cf6
All checks were successful
builds.sr.ht/freebsd-x64 Job completed
2026年02月27日 15:17:42 +01:00
Compare
Author
First-time contributor
Copy link

Fixed rendering of /dev/random:

  • Malformed characters are skipped instead of terminating the process
  • Locking added when rendering in ligature codepath
Fixed rendering of /dev/random: * Malformed characters are skipped instead of terminating the process * Locking added when rendering in ligature codepath
barsmonster force-pushed master from 61e2240cf6
All checks were successful
builds.sr.ht/freebsd-x64 Job completed
to b023dbd779
Some checks are pending
ci/woodpecker/pr/woodpecker Pipeline is pending approval
builds.sr.ht/freebsd-x64 Job completed
2026年05月21日 17:29:31 +02:00
Compare
Author
First-time contributor
Copy link

Rebased to current version, no conflicts on fcft side (foot part will have some).

Rebased to current version, no conflicts on fcft side (foot part will have some).
Some checks are pending
ci/woodpecker/pr/woodpecker Pipeline is pending approval
builds.sr.ht/freebsd-x64 Job completed
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u master:barsmonster-master
git switch barsmonster-master

Merge

Merge the changes and update on Forgejo.
git switch master
git merge --no-ff barsmonster-master
git switch barsmonster-master
git rebase master
git switch master
git merge --ff-only barsmonster-master
git switch barsmonster-master
git rebase master
git switch master
git merge --no-ff barsmonster-master
git switch master
git merge --squash barsmonster-master
git switch master
git merge --ff-only barsmonster-master
git switch master
git merge barsmonster-master
git push origin master
Sign in to join this conversation.
No reviewers
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
dnkl/fcft!116
Reference in a new issue
dnkl/fcft
No description provided.
Delete branch "barsmonster/fcft:master"

Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?