harfbuzz
contour
harfbuzz | contour | |
---|---|---|
37 | 22 | |
4,055 | 2,396 | |
2.1% | 1.0% | |
9.7 | 9.5 | |
2 days ago | 3 days ago | |
C++ | C++ | |
GNU General Public License v3.0 or later | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
harfbuzz
-
Tim Peters – Dispelling Information Asymmetry
>They do have "Developers in Residence" now
Yes - three of them, out of dozens of core developers, selected by a process I can't discern. Of course, right now the money simply isn't there to compensate everyone appropriately. (But one wonders why the Steering Council apparently suddenly requires a "Communications Liaison".)
>The sooner we end this era of "the entire world runs on the good will of bored nerds volunteering their time", the better.
Python is nowhere near the only project with this problem. If you appreciate the fact that your computer can properly display text in non-European languages, consider offering some support to Behdad Esfahbod, main developer of Harfbuzz (https://github.com/harfbuzz/harfbuzz).
As far as I can tell, Linux and Mozilla are the only two open-source organizations that have any significant revenue behind them. Most are probably even worse off than Python.
-
Show HN: Handwriter.ttf – Handwriting Synthesis with Harfbuzz WASM
Font includes WASM code that harfbuzz executes for shaping: https://github.com/harfbuzz/harfbuzz/blob/main/docs/wasm-sha...
It's an experimental feature, so it's not available unless explicitly enabled during compilation.
-
Font as Tetris
You can also build harfbuzz as described here [2] and load it into some program. I used to just install it globally on arch and then use Gimp for the Bad apple example.
And lastly the same person who made the maze also made a way to use LD_PRELOAD to load a custom harfbuzz into arbitary software so you can follow that guide as well: [3]
[0]: https://github.com/hsfzxjy/Harfbuzz-WASM-Fantasy
[1]: https://github.com/harfbuzz/harfbuzz-wasm-examples
[2]: https://github.com/harfbuzz/harfbuzz/blob/main/docs/wasm-sha...
[3]: https://github.com/hsfzxjy/Bad-Apple-Font
- HarfBuzz: Text Shaping Engine
- Rive Renderer – now open source and available on all platforms
-
Libsodium: A modern, portable, easy to use crypto library
For C/C++ projects that use meson as the build system, there is an excellent way to manage dependencies:
https://mesonbuild.com/Wrapdb-projects.html
https://mesonbuild.com/Wrap-dependency-system-manual.html
meson will download and build the libraries automatically and give you a variable which you pass as a regular dependency into the built target:
https://github.com/qemu/qemu/tree/005ad32358f12fe9313a4a0191...
https://github.com/harfbuzz/harfbuzz/tree/main/subprojects
https://github.com/harfbuzz/harfbuzz/blob/37457412b3212463c5...
Or, if you're using proper operating systems, they're managed by the usual package manager, just like everything else.
- The Web Assembly Shaper
-
Text Rendering Hates You
If you sympathize with the travails of people working on text rendering in applications, please consider supporting (among other projects):
1. The LibreOffice project (libreoffice.org), the free office application suite. This is where the rubber hits the road and developers deal with the extreme complexities of everything regarding text - shaping, styling, multi-object interaction, multi-language, you name it. And - they/we absolutely need donations to manage a project with > 200 million users: https://www.libreoffice.org/donate
2. harfbuzz (https://harfbuzz.github.io), and specifically Behdad Esfahood the main contributor. Although, TBH, I've not quite figured out whether you can donate to that or to him. At least star the project on GitHub I guess.
-
ImGui or text rendering libraries
As for text, it depends very heavily on what exactly you need. Simple ASCII text and bitmap fonts? Just do it yourself or get a .bdf parser. Simple Latin/Cyrillic-like writing with ok-looking vector fonts (ttfs)? stb_truetype has all you need. Font hinting, subpixel rendering? You use freetype. More complex writing like Arabic? You will have to do shaping as well, say with HarfBuzz. Need right-to-left or unidirectional text? Hypenation? Go for platform APIs if you can (DirectWrite om Windows, CoreText on Mac).
contour
-
Okay, I Like WezTerm
I tried WezTerm on Windows because I was looking for a terminal with ligature support and lower input latency than Windows Terminal. Unfortunately, it still had higher input latency than cmd.exe. The only terminal with ligature support that comes close in terms of input latency is contour (https://contour-terminal.org/).
- Alacritty – A fast, cross-platform, OpenGL terminal emulator
-
Neovide – a simple, no-nonsense, cross-platform GUI for Neovim
Another problem is that the cursor moves while the screen is buffer is being rendered. The location is only really known once the cursor settles in the same place for some time, which is unacceptable in terms of latency.
The synchronized output extension could be used to do this, though. https://github.com/contour-terminal/contour/blob/master/docs...
- FLaNK Stack Weekly 16 October 2023
-
Contour: Modern and Fast Terminal Emulator
https://github.com/contour-terminal/contour/issues/382
This apparently does not support the Kitty graphics protocol, just Sixel, which makes it look fairly unattractive to me, personally.
-
Terminal emulators that break from the traditional rendering approach?
contour - https://github.com/contour-terminal/contour. https://github.com/contour-terminal/contour/issues/100 and other modern unicode focused attempts to update the terminal world
- Contour Terminal – A Modern and Cross-Platform C++ Terminal Emulator
-
Name a program that doesn't get enough love!
contour : a terminal application
-
Is there a way to make Dolphin use a terminal app other than Konsole?
https://github.com/contour-terminal/contour Contour has a implementation for this. See this release: https://github.com/contour-terminal/contour/releases/tag/v0.3.6.240
What are some alternatives?
imgui-sfml - Dear ImGui backend for use with SFML
nchat - Terminal-based Telegram / WhatsApp client for Linux and macOS
nanovg - Antialiased 2D vector drawing library on top of OpenGL for UI and visualizations.
kitty - Cross-platform, fast, feature-rich, GPU based terminal
c-ares - A C library for asynchronous DNS requests
terminalpp - A C++ library for interacting with ANSI terminal windows.
imgui_sdl - ImGuiSDL: SDL2 based renderer for Dear ImGui
terminal-unicode-core - Unicode Core specification for Terminal (grapheme clusters, character widths, ...)
icu - The home of the ICU project source code.
darktile - :waning_crescent_moon: Darktile is a GPU rendered terminal emulator designed for tiling window managers.
Tehreer-Android - Standalone text engine for Android aimed to be free from platform limitations
vt340test - Tests of VT340 compatibility