1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
|
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="description" content="Home for a73x" />
<meta name="author" content="a73x" />
<meta name="viewport"
content="user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, width=device-width" />
<title>a73x</title>
<link rel="stylesheet" href="/static/styles.css">
<link rel="stylesheet" href="/static/syntax.css">
<link rel="icon" type="image/x-icon" href="/static/favicon.svg">
</head>
<body>
<main>
<div class="header">
<div class="header-title">
<h1>a73x</h1>
<sub>high effort, low reward</sub>
</div>
<nav class="nav">
<ul>
<li><a class="no-decorations" href="/">Home</a></li>
<li><a class="no-decorations" href="/posts">Posts</a></li>
<li><a class="no-decorations" href="/ethos">Ethos</a></li>
</ul>
</nav>
</div>
<hr />
<a href="/posts">← Posts</a>
<h1>Ghostty</h1>
<p>Well, Ghostty is now finally released, so I'll briefly explain why I've adopted it.</p>
<p>For context, I've been using Alacritty for the last few years, and I've tried almost every terminal emulator under the sun—st, terminal, iTerm2, kitty, western, rxvt-unicode, Hyper, Warp, and a few others. One key requirement is cross-platform—I swap between MacOS and Linux a fair bit—and another is performance.</p>
<p>I landed on Alacritty because it's blazing fast, cross-platform, and has just enough features to cover my needs.</p>
<p>Kitty is another performant terminal, but I've always been hesitant to adopt it due to Kovid Goyal's stewardship. I've witnessed a few occasions where users have been hung out to dry, as their desired use case didn't fall within Kovid's view of the world. For instance, his intense dislike of multiplexers means anything multiplexer related is <a href="https://sw.kovidgoyal.net/kitty/faq/#i-am-using-tmux-and-have-a-problem">immediately shutdown</a>—he repeatedly says they're a hack—but has failed to implement all the features that would allow multiplexer users to leave their multiplexers behind—like some form of <a href="https://github.com/kovidgoyal/kitty/issues/391#issuecomment-846071535">session persistence</a>.</p>
<p>I understand the project is large and constantly being bombarded with repeat questions can lead to curtness but I don't want to accidentally depend on a bug to find myself <a href="https://github.com/kovidgoyal/kitty/discussions/7735#discussioncomment-10370765">hung out to dry</a>.</p>
<p>But onto Ghostty which, like Kitty, is feature rich. It has built-in ligatures, nerd fonts, and themes, provides tabs/panes and window management, and is highly performant. Not bad for a first release.</p>
<p>I've been trialling it since release (I didn't make it for the beta), and it's been seamless so far—my biggest praise is how it just works—I've not experienced any issues—it looks good, and it's snappy.</p>
<p>My configuration is fairly straightforward; I've cleared all keybindings, so I manually set the ones I need. Two things I want to call out are <code>window-colorspace</code> and <code>toggle_quick_terminal</code>, both are macOS only settings.</p>
<ul>
<li><code>window-colorspace</code> changes colorspace from <code>srgb</code> to <code>display-p3</code>... I can't actually perceive a difference.</li>
<li><code>toggle_quick_terminal</code> gives you a little drop down terminal from the top which is nifty for quick actions</li>
</ul>
<pre tabindex="0" style="background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;white-space:pre-wrap;word-break:break-word;"><code><span style="color:#aaa;font-style:italic"># Fonts</span>
font-family = <span style="color:#a50">"Hack"</span>
<span style="color:#aaa;font-style:italic"># Mouse</span>
mouse-hide-while-typing = <span style="color:#00a">true</span>
<span style="color:#aaa;font-style:italic"># UI</span>
theme = <span style="color:#a50">"catppuccin-mocha"</span>
cursor-invert-fg-bg = <span style="color:#00a">true</span>
background-opacity = <span style="color:#099">0.8</span>
window-padding-x = <span style="color:#099">10</span>
window-padding-y = <span style="color:#099">10</span>
window-padding-balance = <span style="color:#00a">true</span>
window-decoration = <span style="color:#00a">false</span>
macos-titlebar-style = hidden
window-colorspace = display-p3
<span style="color:#aaa;font-style:italic"># Keybindings</span>
keybind = super<span style="color:#f00;background-color:#faa">+</span>n=new_window
keybind = super<span style="color:#f00;background-color:#faa">+</span>w=close_window
keybind = super<span style="color:#f00;background-color:#faa">+</span>c=copy_to_clipboard
keybind = super<span style="color:#f00;background-color:#faa">+</span>v=paste_from_clipboard
keybind = super<span style="color:#f00;background-color:#faa">+</span>shift<span style="color:#f00;background-color:#faa">+</span>i=inspector<span style="color:#f00;background-color:#faa">:</span>toggle
keybind = super<span style="color:#f00;background-color:#faa">+</span>shift<span style="color:#f00;background-color:#faa">+</span>r=reload_config
keybind = global<span style="color:#f00;background-color:#faa">:</span>ctrl<span style="color:#f00;background-color:#faa">+</span>space=toggle_quick_terminal
<span style="color:#aaa;font-style:italic"># Misc</span>
confirm-close-surface = <span style="color:#00a">false</span>
copy-on-select = clipboard
</code></pre><p>It's a strong contender for those who feel disillusioned by kitty but want more than Alacritty offers, and it requires minimal configuration out of the box—so I highly recommend giving it a try.</p>
<footer>
<br />
<hr />
<br />
<p>see something you disagree with? email: <a href="mailto:[email protected]">[email protected]</a></p>
</footer>
</main>
</body>
</html>
|