Comment by cassianoleal
17 hours ago
I still don't understand the point of Ghostty, Kitty, Wezterm...
Konsole is way faster than any of those on my computer and it has all the usual suspects I'd expect from a modern terminal emulator.
The one feature I miss since moving to Linux and not having iTerm2 is tmux -CC integration. None of those offer it.
To be clear, I'm not attempting to be dismissive. I really want to understand what it is that they bring.
KDE guy here.
Konsole is a fantastic and very mature terminal emulator, but it does have some real gaps that reveal its age.
The Qt toolkit that most KDE software is based on at some point introduced a next-gen toolkit-within-a-toolkit called Qt Quick, which most of our newer apps are written in. However, in its library form Konsole can only be embedded into apps that use the old gen toolkit. This is a real impediment to some efforts.
The old gen toolkit also typically doesn't use Vulkan or OpenGL for rendering (the new one supports both), and so Konsole's terminal renderer doesn't either. Konsole's real-world performance during use is arguably just fine, but it does leave a lot of performance and battery life on the table.
libghostty also has somewhat wider support for newer stuff like Kitty protocols, even though Konsole certainly trumps it in support for older stuff (like sixels).
There's some other shortcomings to Konsole that are not inherent to the technology, like accessibility support not quite being where it should be.
And while the default UI is, in most distros, OK, there sure is a lot of spiderwebs and spacebar heating lurking in the settings dialogs (of which there are strangely many). It's also a bit dated vs. our HIG at the moment.
Which is to say, these projects can and do have a point, especially if they provide a nice library instead of hoarding all the good to themselves.
A couple of annoyances I've had shipping CLI apps to Konsole users:
1. By default, Konsole disables OSC8 link support. Users can enable it manually, but you need to ship fallbacks by default since otherwise the default users will have a broken experience. Ghostty, Kitty, WezTerm, etc all ship working OSC8 support out of the box.
2. No built-in Nerd Font support, so if you want to render icons, you need to tell your users to set up a patched font or else have fallbacks. Ghostty and WezTerm ship built-in Nerd Font fallbacks if your configured font isn't patched.
That being said Konsole is much better than most emulators. iTerm2 is not bad, although it lacks Symbols for Legacy Computing Unicode support (which all of the above have, including Konsole, and which is very useful for drawing prettier terminal UIs). The worst by far is Apple Terminal, truly the IE6 of terminal emulators.
What's so bad about Apple Terminal? I've tried iTerm2 and others but never found a compelling reason to use them over the stock app. I don't live in the terminal like some do, though.
Apple Terminal doesn't support:
1. The Kitty keyboard protocol, which makes it impossible to distinguish e.g. Shift-Enter from Enter
2. OSC8 hyperlinks
3. It breaks on APC queries, so you need special handling to not emit them
4. Symbols for Legacy Computing Unicode support
5. The Kitty Terminal Graphics Protocol (or sixel)
6. OSC 9 notifications (or any of the later versions)
and a bunch of other stuff, this is just off the top of my head. For a long time they didn't even support 24-bit color, although they fixed that in Tahoe.
It's totally fine for basic UNIX tooling, but pretty painful if you're trying to make nice interactive TUIs.
2 replies →
Is this for security reasons? I am sure the Konsole has a reason for it.
> By default, Konsole disables OSC8 link support.
That is, in my opinion, the correct default.
I believe that the default behavior should be to never open a link without a confirmation from the user that this may be done.
This should be enough to avoid malicious links. I do not believe that completely disabling links is a good default, because they are very frequently useful when you read some text file in the terminal window.
11 replies →
1) Personal preferences: different terminals come with different defaults, some people do not want to tinker with the settings, so they just stick with whatever immediately clicks.
2) Technical curiosity: some people probably started their own terminal project just for the fuck of having made their own - and they eventually gained a userbase.
3) Feature set: Most terminals implement most features these days, but at the time these projects started, you'd have a feature matrix between features and terminals because most terminals lacked some features; so people would pick whatever suited their needs.
Personally I've been using kitty for years mostly due to 3), at the time I chose my forever terminal, I evaluated like 12 different ones, and kitty was the only one that covered most of my needs without feeling like it suffers from random quirks, and I like that it has built-in terminal multiplexer (a'la tmux) and emoji picker.
The terminal ecosystem needs to change, and these terminals support a lot of cool features. Ghostty's pure reusable terminal state machine being a source of truth, Kitty graphics, Wezterm and its mux domains & lua config, lots of cool ideas there.
Having having an industry player like hashimoto's superlogical driving terminal features is the extreme version of that
> Ghostty's pure reusable terminal state machine being a source of truth
Can you please explain what this means? I have Ghostty installed just as a backup to use when I have terminal saturation in my default (MacOS Terminal). But other than being super responsive, I don’t know why people love it so. Perhaps I’m missing something large and compelling.
I assume the quote is referring to libghostty. In which case a lot of different tools like vs code, Emacs, Gvim, Intellij and other IDEs, even web consoles on stuff like Azure essentially use and reimplement the same core, the idea behind libghostty is to replace those with a common component where long term development can better support the needs of all terminals.
In terms of ghostty itself its just a highly competent use of libghostty, Mitchell’s message above about it being a tech demo is tongue and cheek, but its not far off from the truth. It is just a really solid no bells and whistles, bar excellent execution, terminal emulator that uses libghostty.
Terminal state machine parsing is a very tricky thing, especially when you have people defining arbitrary protocols to interact with it. So having one implementation simplifies the development a lot. Of course this buys you into their ecosystem and whatever ghostty specifically supports etc.
A lot of other terminal emulators can expose similar reusable things (alacritty comes to mind) but libghostty is the most well supported one
It being super responsive is the reason I switched to it. MacOS terminal had issues keeping up with Claude Code. It would frequently be super slow rendering the text output or sometimes just stop altogether.
When looking at options I looked at speed and simplicity. Ghostty fit the bill but I did evaluate iterm as well. Excellent terminal but too many features for what I was looking for. I live in the terminal but am not a Terminal App power user if that makes sense.
So, it really comes down to what you want and what your workflow looks like. Ghostty has been flawless for me the past 9months. It gets out of the way and just works really well.
4 replies →
Why would a terminal multiplexer need an entire company behind it? Especially since it looks identical to the many other vibe coded alternatives (including my own lol).
> The terminal ecosystem needs to change
What is your justification for this statement? Why does it need to change, and what does it need to change to? Personally, I've not felt this (and I spend a lot of time in the terminal). Fish shell and Byobu give me everything I've ever wanted.
Like the poster you were replying to, I don't understand what these new terminal emulators bring to the table, other than potentially more resource usage.
I feel that there's something here that I'm missing (ghostty is clearly popular, so it must bring something both new and useful to the table), but I'm genuinely not sure what that is.
> I still don't understand the point of Ghostty, Kitty, Wezterm...
If you're genuinely not trying to be dismissive and just have a sincere question you want to have an answer to then I _strongly_ implore you to be more aware of and careful about how you express yourself.
Because as your first sentence is worded virtually all readers will assume you are hostile and not asking in good faith.
For me: it doesn't really "bring" anything more than what I expect from a terminal.
In Mac, we had the default terminal app which has some problems with TUI apps and other small issues. iTerm2 is the replacement that most users use, but it become too bloated with useless features and AI, while it was hard to keep a good config file that I could share between devices. Ghostty was a sane mid-term for me: a good and modern terminal, with a simple config file, maintained by someone that I trust (Mitchell Hashimoto) and only that.
About Linux: I don't use Ghostty in Linux because I'm comfortable with Konsole.
There's always gonna be something that's better, faster, bigger, badder, stronger, thicker, firmer, etc., and terminals really aren't one of those things where I am interested in exhaustively testing all of them to find the truly greatest one. A terminal is also one of those things where if you find one that is perfectly adequate then there's little motivation to even bother using trying one. And there's the whole "devil you know" aspect. The only reason I rarely try a different terminal is if the stock terminal on whatever OS I'm using lacks some basic niceties that should be expected in the year 2026.
I like Ghostty because I find it both fast and configurable, and it's multi-platform without treating macOS like the red headed step child. I also appreciate how its configuration is text-based, which I prefer to someone's opinion of how a configuration GUI should behave, and I think it's good the developers aren't wasting a second of their time thinking about a configuration GUI.
Funny, I won’t use a term emulator unless it has a good GUI config. Even SGI and Windows Command prompt had them in the 90s.
Also the konsole context menu and default toolbar are a mess.
I also thought like that, but you only to set some defaults and you're ready to go. If you still prefer a GUI there are online generators. Nowdays you can also vibecode them, they are very simple and any LLM will do it right
4 replies →
The lack of a config GUI in ghostty used to bother me, but to be honest now I just describe to Claude what I want to change and it does it. It would still be nice to have one eventually but I can see the argument for deprioritizing it.
I assume that this depends on your computer/GPU/GPU driver.
I have used Konsole for many years and I have used kitty for about 2 years in 2024/2025, then I have switched to ghostty around the beginning of 2026.
At least in my computers (with NVIDIA GPUs and Gentoo Linux), kitty was many times faster than Konsole and Ghostty even faster.
Moreover, in the now somewhat distant past when I was still using Konsole, it did not have some font rendering features that I desired, but that might have been solved meanwhile.
A reason why the terminal emulator speed is important for me is that I frequently compile big software projects and I find it unacceptable for a compilation to be slowed down by the low speed at which the compiler output is displayed on the terminal window, which happened frequently with all terminal emulators older than kitty and ghostty (I have always used CPUs with enough cores so that compilation itself is very fast, so the older terminal emulators become the bottleneck).
Real question: Is the Linux kernel terminal the fastest of all? If yes, why not compile there?
I know for many folks they like the fact that it is cross platform (works on mac/linux) etc and gpu acceleration which is really nice to have.
Yeah, I recently tried out Kitty and Ghostty just feels much smoother when rendering most TUIs and even some more basic stuff like the homebrew progress bar. It is also better about respecting platform conventions for things like keybinds and window/tab behavior.
I have been using Alacritty for its GPU acceleration long ago. Ghostty was slightly faster, but then Ptyxis was also faster. Since I preferred to configure my terminal with GUI, I have switched to Ptyxis.
[dead]
I use Linux at home and Mac at work. I use Ghostty simply to have the same terminal on both systems.
Me too. I was using WezTerm for a while for the same reason.
It wasn’t the only reason I switched, but I prefer config to be config and code to be code rather than my WezTerm config to be executable.
I tried a bunch of terminals and ended up switching back to xfce-terminal, fastest I have tried by far. (It's just the default that ships with my distro.)
Actually I think xterm was even more performant, but the eye sore wasn't worth it for me.
Also in the xfce camp. KISS
For me it's simply that iTerm2 got really fat over the years, and Ghostty was a nice and slim alternative - plus it has one of the better Kitty Graphics Protocol implementations which is fun to tinker with. e.g.: https://github.com/floooh/chipz-kitty (needs zig-0.17.0).
> chipz-kitty: Emulators in terminal experiment.
Cool! How fun, I'm a big fan of your work and will enjoy learning from this project too. (:
For me, the main reason to use Ghostty is simply that mouse support works right out of the box. In Konsole clicking a spot to move the cursor only works if you're using Bash. While it also works with the Fish Shell on Ghostty.
Same here. ghostty + fish = just works out of the box, no plugins or dotfiles needed. Plays well with accessing remote tmux claude/codex sessions as well.
I don't think Konsole is actually faster than Kitty or Alacritty. Kitty is really nice and an innovator in a lot of terminal standards. It's also non-commercial and not related to any sort of startup (not that Konsole is either). It's definitely my first choice of the bunch, followed by Alacritty.
Konsole seems to keep up with modern features as well. For instance I realized yesterday that it renders the newer progress codes that clis can emit. I am content.
The other day I was able to click on Ghostty, then open Gnome Terminal, type a command and run it before Ghostty had finished loading.
Yeah. It's slow on Linux, for sure. I use Foot, which as far as I've tested is the fastest to launch. I use Niri and launch Foot terminals all the time as part of my workflow (it's just how my mind works), so time to launch matters to me.
Monstar is a libghostty derivative that resembles foot: https://github.com/rockorager/monstar
Namely it is wayland only, cpu rendered, and doesn't have any window decorations
Yep, same here but with xfce4-terminal.
I've just reverted back to using that as it's faster to load and has all the features I need.
It works well, that’s my only requirement. I could ask you the same, what’s the point of Konsole, what value does it bring?
You could, but my answer would probably skew your opinion about as much as yours did mine. :D
To me the point of Konsole is that it works well, plus it's already there. Ghostty I need to make an effort to have it, however small it is, and I'm just trying to understand what I'd be missing if I didn't.
Konsole is not already there for me. I would have to make an effort to get Konsole, just like Ghostty. I’m struggling to see what point you are trying to make. Do you want someone to tell you Ghostty is better than Konsole to convince you to switch, or … not?
Cross-platform native GUI, built-in nerd font symbols. Simple text file configuration with trivially easy platform/machine-specific drop-ins.
Seems a bit of a disingenuous comment when you initially said "I still don't understand the point...".
Surely you understand Konsole is not already there for most people?
1 reply →
Kitty is really nice, a programmable terminal that does everything I want, GPU rendering, etc. Haven't used Ghostty yet but one of its advantages is libghostty, modern terminal emulation as a library.
> libghostty: a cross-platform, minimal dependency library that exposes a C API so feature-rich, correct, and fast terminal functionality can be embedded by any application anywhere.
Oh the author actually posted about it just now in rich detail. It's pretty exciting for people who spend much of their time in the terminal.
>I still don't understand the point of Ghostty, Kitty, Wezterm...
WezTerm can run on my Mac but give me a native GUI experience of a Wezterm session on my Linux workstation. It's like tmux, but with a native GUI experience including mouse click-drag selection that doesn't pick up "window" borders.
That alone is what is keeping me on Wezterm, since I get a native experience on some terminal sessions I access remotely on my macbook but then can switch to on my 30" screen when I'm at my desk.
for terminals I personally am using kitty, but libghostty is great and powers ghostel in emacs which is amazing. Also note if you start trying to look at unicode correctness, in my experience ghostty is in general the best among all alternatives.
iTerm2 feels overwhelming to me. I think the default Terminal.app is good enough.
> Konsole is way faster than any of those on my computer and it has all the usual suspects I'd expect from a modern terminal emulator.
Same boat here, though I also get to enjoy some of the benefits of libghostty, via ghostel in Emacs. Ghostel is noticeably faster when there's a lot of output being dumped, but I don't often need the speed and use it only because it's integrated rather well into the rest of my Emacs.
> tmux -CC integration
If you can stomach Emacs, there are at least two packages that implement this, one via eat and another via vterm, though none via ghostel just yet. Shouldn't be difficult to port, though.
I don't know about the others as I used Terminal.app on mac since Panther, but Ghostty has been a pretty good upgrade, at first offering 24-bit colour which Terminal.app didn't have at the time of its release. I also like the shell integration such as easy selection of command output. I don't ask much from a terminal as evidenced by using Terminal.app for almost 2 decades, but Ghostty has not once been an issue and is 'invisible' to me.
To add to the other good points made in sibling comments, MacOS has butchered fullscreen to the point where some of us depend on MacOS terminal emulators having the "non-native fullscreen" config option. Personally, Ghostty does the best job supporting my preferred terminal environment of non-native fullscreen with tabs that works with an auto-hiding menubar and the camera notch.
vouch this comment since this is a pretty common question people have, I don't believe it should be dead.
I do believe it should be dead
The advertised point is it needs zero config to work outside of the box. For example nerd fonts are included by default whereas you need to install them if you are using let’s say iterm2.
The point for me is each one can have ten or so claudes, so any one crashing doesn't take down all the claudes ... and I don't have to learn tmux.
Can konsole do the fancy shader and inline images? I think that's all that distinguishes the others but I may be overlooking things.
I have no idea what that is or why I would want it.
I'm not sure why you want shaders, but if you use a coding agent in the terminal you definitely want image support. Otherwise it's very hard to see what the agent is seeing.
I can use Ghostty and use the same featureful terminal on Linux and macOS.
I also hate configuring Konsole, most KDE apps for that matter. Being able to have a plaintext configuration file I can keep in my dotfiles is way simpler.
tmux control mode (-CC) is the killer feature I'm waiting to land in ghostty
Konsole is not gpu accelerated and is several orders of magnitude slower as a result than those that you listed?
The acceleration is the primary point.
I don't know Konsole, but kitty have tons of features other "plain" terminals lack. It's not just about speed (which I never got the obsession about either)
Ghostty is so much better than iTerm2! Don't get me started...
I'd love to, I switched back to iTerm after not really feeling any big difference in my uses cases, but also hating the crappy plain text with no defaults listed config that required me to use a goddamn web app to comfortably learn and fill out.
There was also some pretty noticeable differences in character rendering between the two with identical-as-I-could-make-them font settings.
> here was also some pretty noticeable differences in character rendering between the two with identical-as-I-could-make-them font settings. I'm pretty sure it was iTerm's problem.
I've tested a number of Terminal Emulators on macOS and Ghostty's rendering is always superior.
You should give 1.4 a try.
It just works. — Steve Jobs
Ref: https://arne.me/blog/we-need-more-zero-config-tools
5 replies →
I was sceptical for decades as well. But they are amazing - no more closing the xterm by mistake. I'm using those because I wanted for example a single window with THREE consoles open at once AND being able to handle some ANSI crazy theming.
Xterm failed me :( Tabby just works.
cute little mascots
[dead]
Lots of things bother me about my terminal emulators, and it's almost always in the category of "things don't work right". It's never "I wish my terminal emulator ran faster." Ghostty seems hyper focused on speed, with the negative side effect that compatibility breaks - in practice. I get that it's following all the newest standards or whatever it's doing, but in reality it always needs custom setup to work right. And for me the net effect is that it's always creating problems, not solving them.