Skip to content

Commit 8296215

Browse files
committed
terminals ghostty-to-kitty initial commit
1 parent baec0c3 commit 8296215

File tree

2 files changed

+277
-0
lines changed

2 files changed

+277
-0
lines changed
Lines changed: 277 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,277 @@
1+
---
2+
title: Switching from Ghostty back to Kitty?
3+
description: >-
4+
Switching from Ghostty back to Kitty feels like a betrayal. Ghostty is new.
5+
Kitty is proven. Both are fast. Both are GPU based. Both try to replace the
6+
old terminals that we tolerated for years. This video is my full story from
7+
iTerm2 to Alacritty to Kitty to WezTerm to Ghostty and all the way back to
8+
Kitty. I show what pushed me out of each terminal and what made Kitty stand
9+
out again after Ghostty took over my setup.
10+
image:
11+
path: ./../../assets/img/imgs/251129-thux-ghostty-to-kitty.avif
12+
date: '2025-11-29 06:10:00 +0000'
13+
categories:
14+
- terminals
15+
tags:
16+
- ghostty
17+
- tutorial
18+
- youtube
19+
- video
20+
---
21+
## Contents
22+
23+
### Table of contents
24+
25+
<!-- toc -->
26+
27+
- [YouTube video](#youtube-video)
28+
- [Switching from Ghostty back to Kitty?](#switching-from-ghostty-back-to-kitty)
29+
* [The iTerm2 phase](#the-iterm2-phase)
30+
* [The Alacritty phase](#the-alacritty-phase)
31+
* [The Kitty phase](#the-kitty-phase)
32+
* [The WezTerm phase](#the-wezterm-phase)
33+
* [The Ghostty phase](#the-ghostty-phase)
34+
* [The man that broke our family apart](#the-man-that-broke-our-family-apart)
35+
* [Moving back to Kitty](#moving-back-to-kitty)
36+
* [Going back to Ghostty?](#going-back-to-ghostty)
37+
- [Community-driven promotion](#community-driven-promotion)
38+
- [You're a fraud, why do you ask for money, isn't YouTube Ads enough?](#youre-a-fraud-why-do-you-ask-for-money-isnt-youtube-ads-enough)
39+
40+
<!-- tocstop -->
41+
42+
## YouTube video
43+
44+
{% include embed/youtube.html id='sRTL0mH6j9U' %}
45+
46+
## Switching from Ghostty back to Kitty?
47+
48+
Ghostty or Kitty?
49+
50+
Which one do I prefer?
51+
52+
This is a really tough call, because It's the battle that has been going for
53+
centuries. Is this another one of those videos that at the end will tell you to
54+
reach your own conclusion?
55+
56+
Let's start with a little bit on my terminal history...
57+
58+
### The iTerm2 phase
59+
60+
It all started like a peasant. I was using macOS, and for some reason I ended up
61+
in iTerm2.
62+
63+
When you get initiated in the macOS cult, you have 2 options, the default stock
64+
macOS terminal, or iTerm2 (which is a macOS only terminal)
65+
66+
So I spent using iTerm2 for years and never felt the need to change. It has a
67+
lot of amazing features like
68+
69+
- Split panes
70+
- Hotkey window
71+
- Search
72+
- Autocomplete
73+
- Copy mode
74+
- Paste history
75+
- Instant replay
76+
- Configurability via GUI (is this an advantage?)
77+
- Tagged profiles
78+
- Triggers
79+
- Automatic profile switching
80+
- Inline images
81+
- Password manager
82+
- Annotations
83+
- Badges
84+
- Captured output
85+
- And more
86+
87+
But then, I explored outside the macOS bubble, and found out about Neovim. All
88+
these guys were pro, none of them were using iTerm2.
89+
90+
So I felt like a noob, and decided that my life had to change. I wanted to try
91+
one of them gigachad terminals that were not configured using a GUI, but instead
92+
a configuration file.
93+
94+
`iTerm2` is mainly configured via GUI. You can also export a macOS `PLIST` file
95+
with all the settings, and your profiles in a `json` file.
96+
97+
But modifying this terminal via a config file is not nice and easy like other
98+
advanced terminals.
99+
100+
At that time is when I started migrating all my macOS setup to config files in
101+
my dots, so one of these new terminals was more suited for this.
102+
103+
I had 3 options. Alacritty, Kitty and WezTerm. The 3 are GPU accelerated.
104+
105+
---
106+
107+
### The Alacritty phase
108+
109+
First terminal I started with was Alacritty and I accompanied it with Tmux.
110+
111+
It was amazing, we rolled that way for quite some time. I had fully switched to
112+
Neovim at that point. And it was all good and gold.
113+
114+
Until I decided I wanted to view images for my Markdown files when in Neovim.
115+
116+
The problem is that alacritty does not support images, not sure if it does now,
117+
but it didn't back then.
118+
119+
---
120+
121+
### The Kitty phase
122+
123+
So, I started looking elsewhere, and I decided to go with Kitty. I liked kitty,
124+
it was alright, I didn't feel it slower or anything, and it allowed me to view
125+
images inside Neovim, even when using Tmux.
126+
127+
I was a huge Tmux lover at the time, and I was of the mindset that tmux allowed
128+
me to quickly jump to a new terminal without having to learn the new terminal
129+
settings and keyboard shortcuts.
130+
131+
In case you don't know what tmux is, it's basically a terminal that runs inside
132+
your terminal. So it takes over and allows you to create panes, "tabs" which are
133+
called windows, also sessions, which are workspaces and many other things.
134+
135+
I had kitty configured, so that when I started kitty, tmux was automatically
136+
started, and everything was managed inside tmux.
137+
138+
I loved tmux more than my terminal back then, because it gave me all the
139+
features I really needed.
140+
141+
---
142+
143+
### The WezTerm phase
144+
145+
So I rolled with kitty for some time, until people in the comments section
146+
started bringing up another terminal `WezTerm`.
147+
148+
Since I have no personality, self love, and self control, I decided to give
149+
WezTerm a try. They said it's written in rust, which makes it faster, in theory.
150+
151+
I installed it, tried it, and felt slower. Until someone in my comments told me
152+
about the `max_fps` setting, which by default is set to `60` and makes it feel
153+
really slow and laggy compared to kitty.
154+
155+
Set that bad boy to `120` and it's as fast as kitty. So I rolled that way for
156+
just a brief period of time.
157+
158+
WezTerm was also accompanied by the love of my life, tmux. So all my config was
159+
done in Tmux and I didn't have to worry about learning WezTerm settings.
160+
161+
---
162+
163+
### The Ghostty phase
164+
165+
But then, there was a new kid in town, `Ghostty` by Mitchell Hashimoto.
166+
167+
You remember when only a few users, that were hand picked by God himself, had
168+
access to Ghostty?
169+
170+
Everyone was switching and since I have no personality and self respect, I was
171+
going through FOMO, so I gained access to the beta, and switched too.
172+
173+
Shaders are really cool in Ghostty and performs quite well, its fast too.
174+
175+
I also used Ghostty with tmux all the time. Again, didn't have to learn
176+
Ghostty's settings as everything was handled in tmux.
177+
178+
And it was all rainbows and butterflies, we were a happy family. We didn't need
179+
anything and we complimented each other really well.
180+
181+
---
182+
183+
### The man that broke our family apart
184+
185+
Until a man jumped into my heart and broke our family apart...
186+
187+
During all this time, I had been doing interviews in my channel, and I had an
188+
interview with the creator of the Kitty terminal, Kovid Goyal.
189+
190+
If you don't know who Kovid is, he's also the creator of the `Calibre` e-book
191+
reader. He has a PhD in quantum computing from Caltech.
192+
193+
I thought to myself, "yeah, I'm past kitty, I live in the future with Ghostty,
194+
but anyway, let's hear what this guy has to say".
195+
196+
After the interview, my admiration for Kovid went to a new level, I didn't know
197+
him before. I was now a fangirl.
198+
199+
But I kept using Ghostty, didn't switch back to kitty. I didn't have a reason
200+
to.
201+
202+
During the interview I told him that I would really love to have sessions in
203+
Kitty so I could try a workflow without tmux.
204+
205+
By sessions I mean multiplexing your terminal and have different workspaces open
206+
and easily switch between them, under a single terminal instance. I'll demo this
207+
in the video.
208+
209+
So one day, I get an email from Kovid letting me know he had implemented
210+
sessions, the feature was in Beta, so that I give it a try and provide feedback.
211+
212+
---
213+
214+
### Moving back to Kitty
215+
216+
I was hesitant at first, because this meant that I had to migrate all of my tmux
217+
config to kitty. I knew the time investment would be high. What if it didn't
218+
work as good as Tmux for me?
219+
220+
I decided to give it a go, all that work that Kovid put in place for nothing.
221+
Didn't feel correct on my part.
222+
223+
I've been using kitty sessions since around August 20th 2025, that's a little
224+
over 3 months
225+
226+
I stopped using tmux ever since, as kitty provides me with all the functionality
227+
that I need.
228+
229+
I'm still missing to implement a few things, like the `tmux-sshonizer` script I
230+
had, which shows you a list of the devices in your SSH config file, and allows
231+
you to create a session for any of them.
232+
233+
If you want to understand how to setup kitty sessions, I have dedicated videos
234+
for that, so go and check them out.
235+
236+
Kitty also allows you to open your terminal scrollback in Neovim, so you can
237+
copy stuff from your command history, I haven't migrated to Neovim 0.12, that's
238+
why there are no colors, but that's coming soon. This is way better than tmux
239+
copy mode, as its way more flexible. I Demo this in the video.
240+
241+
### Going back to Ghostty?
242+
243+
Personally, I'd say my favorite terminal feature is sessions. Ghostty does not
244+
have sessions yet.
245+
246+
So if I want to switch back to Ghostty, I need to use Tmux sessions. And I don't
247+
want to use tmux anymore as I don't really need it.
248+
249+
There's no middle man between my terminal and me anymore, and things have been
250+
good so far.
251+
252+
Do I have anything against tmux? Not at all, it was the love of my life. But I
253+
just don't need it anymore.
254+
255+
What about keeping your process active on a remote server? I don't care about
256+
that too much, but if I need tmux for that specific scenario, I would launch it
257+
as I still have it installed.
258+
259+
Remember that I did an interview with Kovid Part 2. There's a lot of questions I
260+
missed in the first one due to time.
261+
262+
## Community-driven promotion
263+
264+
Do you want to promote yourself in my channel? I'm not talking about a company
265+
like notion, brilliant, and all those other ones we're using to seeing. I'm
266+
talking about you as a person, do you have a project, course, youtube channel or
267+
product and trying to reach an audience?
268+
269+
If interested, pricing and all the details can be found
270+
[in this other page](https://chirpy.home.linkarzu.com/about/#community-driven-promotion){:target="\_blank"}
271+
272+
## You're a fraud, why do you ask for money, isn't YouTube Ads enough?
273+
274+
- I explain all of this in the "about me page" link below:
275+
- [youre-a-fraud-why-do-you-ask-for-money-isnt-youtube-ads-enough](https://linkarzu.com/about/#youre-a-fraud-why-do-you-ask-for-money-isnt-youtube-ads-enough){:target="\_blank"}
276+
- Above you'll also find links to my discord, social media, etc
277+
194 KB
Binary file not shown.

0 commit comments

Comments
 (0)