|
| 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 | + |
0 commit comments