Mitchell Hashimoto
20dbe9792e
Merge pull request #1072 from mitchellh/cell-height
...
`adjust-cell-height` adjustments
2023-12-12 20:59:48 -08:00
Mitchell Hashimoto
1c3948f4d7
Merge pull request #1062 from mitchellh/mrn/gtk-equalize-splits
...
gtk: implement equalize_splits
2023-12-12 20:59:33 -08:00
Mitchell Hashimoto
8fc0cdb220
font: cursor size remains original cell height if height adjusted
...
Fixes #1067
2023-12-12 20:43:11 -08:00
Thorsten Ball
47b0592c73
gtk: use f64 everywhere instead of i16/f16/c_int
2023-12-13 05:38:34 +01:00
Mitchell Hashimoto
dafc02e29c
font: adjust cell baseline to center after modification, fix styles
...
Fixes #1064
Fixes #1066
2023-12-12 20:14:02 -08:00
Mitchell Hashimoto
6403ef1198
font/coretext: ceil the cell height and ascent metrics
...
Fixes #1068
2023-12-12 19:58:57 -08:00
Matt Robenolt
1b039b35ac
typos
2023-12-12 17:22:37 -08:00
Matt Robenolt
3866e09210
Use packed struct
2023-12-12 17:20:42 -08:00
Matt Robenolt
91937c4ada
Apply feedback
2023-12-12 17:14:47 -08:00
Matt Robenolt
8e607f372b
Configurable unfocused dimming color
2023-12-12 16:34:41 -08:00
Mitchell Hashimoto
7c2ecfea90
Merge pull request #1061 from jcollie/nix-formatting
...
Use Alejandra to format Nix modules.
2023-12-12 14:31:26 -08:00
Jeffrey C. Ollie
33c2ffcdd1
Fix another spelling error.
2023-12-12 12:57:06 -06:00
Jeffrey C. Ollie
f076d6c958
Fix spelling error.
2023-12-12 12:38:39 -06:00
Thorsten Ball
e67fa7abe0
gtk: implement equalize_splits
...
This adds support for the equalize_splits feature that's already
implemented for macOS.
It's essentially a port of the Swift implementation, using the same
weights-mechanism to equalize split sizes.
2023-12-12 19:30:29 +01:00
Jeffrey C. Ollie
ec5b26347f
Add formatter output to flake so that 'nix fmt' does the right thing.
2023-12-12 11:55:44 -06:00
Jeffrey C. Ollie
c4ed1f1b80
Use Alejandra to format Nix modules.
2023-12-12 11:38:39 -06:00
Mitchell Hashimoto
2f9750ad7f
Merge pull request #1057 from vancluever/vancluever-powerline-half-circle-ellipse-refs
...
Powerline: add references for the ellipse algorithm
2023-12-12 07:46:59 -08:00
Mitchell Hashimoto
cee213d00b
Merge pull request #1060 from gpanders/osc-hex-colors
...
term: parse hex color string for OSC commands
2023-12-12 07:46:34 -08:00
Mitchell Hashimoto
2a611f5c19
Merge pull request #1059 from jcollie/nix-subpackages
...
Add "terminfo" and "shell_integration" subpackages to the Nix package
2023-12-12 07:45:36 -08:00
Gregory Anders
2da05a6d5c
term: parse hex color string for OSC commands
2023-12-12 09:43:38 -06:00
Jeffrey C. Ollie
bba8583a21
Add "terminfo" and "shell_integration" subpackages to the Nix package so that the Ghostty
...
terminfo and shell integration files can be installed on a headless server without copying all
of Ghostty to the server. Implementation liberally cribbed from the Kitty Nix package.
2023-12-12 09:30:21 -06:00
Chris Marchesi
c03ae47a27
Powerline: add references for the ellipse algorithm
...
Further to the additional comments in #1055 , this adds some references
to the comments in the ellipse algorithm (including the original
reference for the circle algorithm).
2023-12-12 00:10:40 -08:00
Mitchell Hashimoto
e5acb082c1
Merge pull request #1056 from mitchellh/ct-shaping
...
CoreText font shaper, fix glyph offset handling (in Harfbuzz, too)
2023-12-11 22:17:27 -08:00
Mitchell Hashimoto
24d4981996
font: note why shaper is not enabled
2023-12-11 21:58:49 -08:00
Mitchell Hashimoto
bcf6753c68
renderer/opengl: use new glyph offsets
2023-12-11 21:47:03 -08:00
Mitchell Hashimoto
34cdb871f5
font/coretext: clarify buggy coretext shaper
2023-12-11 21:42:49 -08:00
Mitchell Hashimoto
489ed57e2f
font/harfbuzz: track x/y offsets
2023-12-11 21:41:13 -08:00
Mitchell Hashimoto
d116ed0583
Merge pull request #1055 from vancluever/vancluever-powerline-half-circle-ellipse
...
Powerline: Change half-circle algorithm to ellipse
2023-12-11 21:30:11 -08:00
Mitchell Hashimoto
114723af9e
font/coretext: shaper applies x/y offsets
2023-12-11 21:22:30 -08:00
Chris Marchesi
4aa56ab8dd
Powerline: Change half-circle algorithm to ellipse
...
This changes the half-circle drawing algorithm for glyphs E0B4 and E0B6
to an ellipse algorithm.
This fixes a shortcoming in the circle approach - how do you handle
drawing for a box that is not a typical 2:1 H*W? We were trying to
anticipate this by taking the smaller of the two axes and using that for
the radius. This works when there's some error in the zoom and the x
radius somehow becomes larger than the y radius (in observation, this
happens occasionally in some zoom steps, but only slightly).
However, turns out a more realistic anticipation is for fonts that have
a much *larger* height-to-width ratio. Iosevka, for example, has an
approx. 2.6:1 ratio (observed in the inspector). In this instance, this
approach does nothing except lock the circle to an extremely small
radius. For this instance, we need an ellipse, which will handle all
cases in an expected fashion.
Fixes #1050 .
2023-12-11 21:01:11 -08:00
Mitchell Hashimoto
cc0b615552
pkg/macos: more APIs
2023-12-11 20:48:45 -08:00
Mitchell Hashimoto
fcd9de0311
font/coretext: coretext shaper is cleaner
2023-12-11 12:56:30 -08:00
Mitchell Hashimoto
b0a7db65be
Merge pull request #1051 from RGBCube/main
...
input: add scroll_page_lines
2023-12-11 12:45:35 -08:00
RGBCube
d659b12fb9
input: add scroll_page_lines
2023-12-11 23:35:40 +03:00
Mitchell Hashimoto
62a5fe0236
font/shape: add coretext shaper
2023-12-11 11:13:49 -08:00
Mitchell Hashimoto
0137f5b0d3
pkg/macos: add many more text APIs
2023-12-11 11:12:29 -08:00
Mitchell Hashimoto
22a0869525
font/shaper: if char is 0, should send space to shaper
2023-12-11 11:12:29 -08:00
Mitchell Hashimoto
ff68c56268
pkg/macos: implement CTRun
2023-12-11 11:12:28 -08:00
Mitchell Hashimoto
554d2d0185
Merge pull request #1048 from mitchellh/combining
...
font: position combining character correctly on x-axis
2023-12-11 07:56:12 -08:00
Mitchell Hashimoto
3e9a6e4de5
renderer/opengl: apply extra offset for zero-advance glyphs
2023-12-10 17:10:00 -08:00
Mitchell Hashimoto
5e9ddb5e65
renderer/metal: offset zero-advance glyphs by the cell width
2023-12-10 17:08:32 -08:00
Mitchell Hashimoto
3fdb6a496d
font/coretext: calculate advance_x properly
2023-12-10 17:08:20 -08:00
Mitchell Hashimoto
39b15a13b4
Merge pull request #1045 from mitchellh/macos-tab
...
macos: previous_tab/next_tab wraps
2023-12-10 15:13:40 -08:00
Mitchell Hashimoto
45a4573991
macos: previous_tab/next_tab wraps
...
Fixes #999
2023-12-10 15:12:22 -08:00
Mitchell Hashimoto
9bd8aa3cce
Merge pull request #1044 from mitchellh/keybind-clear
...
config: keybind = clear clears unmaps all keybinds
2023-12-10 14:25:50 -08:00
Mitchell Hashimoto
715782b60f
config: keybind = clear clears unmaps all keybinds
...
Fixes #1033
This introduces `keybind = clear` which will unmap all keybindings set
up to that point (including defaults).
2023-12-10 13:57:14 -08:00
Mitchell Hashimoto
85f69a5ba5
Merge pull request #1043 from mitchellh/kitty-replace
...
renderer/metal,opengl: replace matching image IDs if transmit time differs
2023-12-10 09:22:32 -08:00
Mitchell Hashimoto
0b60ae0010
renderer/metal,opengl: replace matching image IDs if transmit time differs
...
Fixes #1037
Renderers must convert the internal Kitty graphics state to a GPU
texture for rendering. For performance reasons, renderers cache the GPU
state by image ID. Unfortunately, this meant that if an image was
replaced with the same ID and was already cached, it would never be
updated on the GPU.
This PR adds the transmission time to the cache. If the transmission
time differs, we assume the image changed and replace the image.
2023-12-10 09:16:10 -08:00
Mitchell Hashimoto
d51614d319
Merge pull request #1042 from kai-tub/main
...
doc: Update `gtk-titlebar` documentation
2023-12-10 06:36:01 -08:00
Kai Norman Clasen
b46fd01c4e
doc: Update gtk-titlebar
documentation
...
Mention that changes to `gtk-titlebar` only
affects new windows.
2023-12-10 13:35:06 +01:00