Mitchell Hashimoto
8bb8b01e54
build: use Zig system packaging options
...
This allows dynamically linking against system libraries, which is
particularly useful for packaging.
2024-10-24 14:46:37 -07:00
Mitchell Hashimoto
915ec029ee
font/freetype: synthetic bold
2024-08-25 09:51:09 -07:00
Mitchell Hashimoto
5f0daa23b9
font/freetype: synthetic italic
2024-08-24 21:03:54 -07:00
Mitchell Hashimoto
91431a90a1
pkg/freetype: remove usingns
2024-08-16 15:34:46 -07:00
Mitchell Hashimoto
a30e791c85
begin 0.13 update process -- very broken
2024-06-24 15:16:22 -07:00
Mitchell Hashimoto
a205e1e2c1
pkg/freetype: use c_ulong which isn't 64-bit on windows
2024-05-28 20:49:21 -07:00
Mitchell Hashimoto
adaeffb2b5
font/freetype: CBDT/CBLC tables imply color
2024-05-28 20:40:46 -07:00
Mitchell Hashimoto
4daa49fe27
font/freetype: update to new presentation APIs
2024-05-28 20:25:49 -07:00
Mitchell Hashimoto
8920f45fd8
font/freetype: API to load font table
2024-05-28 09:48:01 -07:00
Mitchell Hashimoto
595f24585e
working on more zig breaking changes
2024-04-17 20:50:50 -07:00
Krzysztof Wolicki
edaafdf57a
build API change: update usage of addCSourceFiles
2024-02-26 18:00:43 +01:00
Mitchell Hashimoto
3360a008cd
build: build produces a broken object file for iOS
...
This gets `zig build -Dtarget=aarch64-ios` working. By "working" I mean
it produces an object file without compiler errors. However, the object
file certainly isn't useful since it uses a number of features that will
not work in the iOS sandbox.
This is just an experiment more than anything to see how hard it would be to
get libghostty working within iOS to render a terminal. Note iOS doesn't
support ptys so this wouldn't be a true on-device terminal. The
challenge right now is to just get a terminal rendering (not usable).
2024-01-13 21:38:58 -08:00
Krzysztof Wolicki
f917be968d
Merge branch 'mitchellh:main' into main
2024-01-07 19:13:06 +01:00
Krzysztof Wolicki
6c7c5eecce
Add include paths to freetype module
2024-01-07 18:45:07 +01:00
Mitchell Hashimoto
efd196e5c9
pkg/freetype: unknown errors should be reported, not unreachable
2024-01-05 21:08:39 -08:00
Krzysztof Wolicki
1913243c35
WIP: Update to new build module API after Zig PR #18160
...
Temporarily change dependency sources to forks until they update
2024-01-03 21:50:32 +01:00
Carlos Alexandro Becker
25856d62aa
Remove FiraCode leftovers
...
from #993
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2023-12-06 13:36:05 -03:00
Mitchell Hashimoto
0021b290cf
pkg: add test targets
2023-10-01 18:43:25 -07:00
Mitchell Hashimoto
f0d4e9c7c3
pkg: remove all old build.zig files
2023-10-01 18:35:31 -07:00
Mitchell Hashimoto
2237b43df0
pkg/freetype, harfbuzz modules
2023-10-01 16:57:45 -07:00
Mitchell Hashimoto
7dc3fcc41e
pkg/freetype
2023-10-01 12:12:05 -07:00
Jonathan Marler
a2e881ff4e
windows: initial support for zig build test
...
Makes progress getting "zig build test" to work on windows. Mostly
fixed issues around build configuration and added some branches throughout
the Zig code to return/throw errors for unimplemented parts.
I also added an initial implementation for getting the home dir.
2023-09-14 03:15:40 -06:00
Mitchell Hashimoto
1ee5b7f91c
font: freetype supports font variation settings
2023-08-28 07:25:09 -07:00
Mitchell Hashimoto
ea3b957bc7
quirks: Menlo/Monaco should disable ligatures by default ( #331 )
...
* font: disable default font features for Menlo and Monaco
Both of these fonts have a default ligature on "fi" which makes terminal
rendering super ugly. The easiest thing to do is special-case these
fonts and disable ligatures. It appears other terminals do the same
thing.
2023-08-25 09:29:15 -07:00
Kevin Hovsäter
22b8173164
Fix typos
2023-08-08 14:27:34 +02:00
Mitchell Hashimoto
d649b3f6d4
update zig
2023-08-02 14:39:19 -07:00
Mitchell Hashimoto
314f9287b1
Update Zig ( #164 )
...
* update zig
* pkg/fontconfig: clean up @as
* pkg/freetype,harfbuzz: clean up @as
* pkg/imgui: clean up @as
* pkg/macos: clean up @as
* pkg/pixman,utf8proc: clean up @as
* clean up @as
* lots more @as cleanup
* undo flatpak changes
* clean up @as
2023-06-30 12:15:31 -07:00
Mitchell Hashimoto
56f8e39e5b
Update zig, mach, fmt
2023-06-25 11:08:20 -07:00
Mitchell Hashimoto
be75109a1d
new build system
2023-02-14 20:58:33 -08:00
Mitchell Hashimoto
15a57983a6
pkg/freetype: remove unused API
2022-10-16 21:03:17 -07:00
Mitchell Hashimoto
2e1bc7bb01
Bring back freetype font bitmap conversion
...
Monaco on Mac is mono
2022-10-16 20:47:21 -07:00
Mitchell Hashimoto
e493a722a3
fix some issues that fail nightly stage2 compiler
2022-10-13 10:54:30 -07:00
Mitchell Hashimoto
b18309187e
Strikethrough ( #19 )
...
Not as straightforward as it sounds, but not hard either:
* Read OS/2 sfnt tables from TrueType fonts
* Calculate strikethrough position/thickness (prefer font-advertised if possible, calculate if not)
* Plumb the SGR code through the terminal state -- does not increase cell memory size
* Modify the shader to support it
The shaders are getting pretty nasty after this... there's tons of room for improvement. I chose to follow the existing shader style for this to keep it straightforward but will likely soon refactor the shaders.
2022-10-06 15:03:19 -07:00
Mitchell Hashimoto
c149696f61
redoing some of the baseline calcs, remove from shader
2022-10-04 10:00:32 -07:00
Mitchell Hashimoto
fdbf40d3ee
pkg/freetype: disable ubsan
2022-09-29 11:39:09 -07:00
Mitchell Hashimoto
88a4cb65f3
src/font: working on initiaizing deferred fonts from fc
2022-09-23 14:12:38 -07:00
Mitchell Hashimoto
b4d571e018
pkg/fontconfig: disable ubsan (reported upstream)
2022-09-14 09:23:02 -07:00
Mitchell Hashimoto
f1abca51f7
convert src/font to use new pkg/freetype
2022-08-28 22:22:16 -07:00
Mitchell Hashimoto
672f6e720c
pkg/freetype: finish APIs we need
2022-08-28 21:06:36 -07:00
Mitchell Hashimoto
8ef3018189
pkg/freetype: loading glyphs
2022-08-28 21:02:39 -07:00
Mitchell Hashimoto
a2b06d7705
pkg/freetype: more face APIs
2022-08-28 17:18:23 -07:00
Mitchell Hashimoto
7af9091497
pkg/freetype: Library and Face
2022-08-28 17:07:27 -07:00
Mitchell Hashimoto
367aba62c4
Add harfbuzz build (not used yet)
2022-08-28 10:09:39 -07:00
Mitchell Hashimoto
ecf8353c74
support dynamic linking (not default) test in GH actions
2022-08-20 15:21:24 -07:00
Mitchell Hashimoto
5ae450099d
freetype builds in png support, uses our own zlib
2022-08-20 10:33:57 -07:00
Mitchell Hashimoto
728df4af16
build libpng and link freetype to it
2022-08-20 10:24:49 -07:00
Mitchell Hashimoto
08292e58f3
add system SDK to build to enable cross compilation
2022-08-17 14:53:34 -07:00
Mitchell Hashimoto
f2d65d4524
move freetype into pkg
2022-08-17 11:20:31 -07:00