Readit News logoReadit News
mitchellh · a year ago
<3 This has been a work of passion for the past two years of my life (off and on). I hope anyone who uses this can feel the love and care I put into this, and subsequently the amazing private beta community (all ~5,000 strong!) that helped improve and polish this into a better release than I ever could alone.

Ghostty got a lot of hype (I cover this in my reflection below), but I want to make sure I call out that there is a good group of EXCELLENT terminals out there, and I'm not claiming Ghostty is strictly better than any of them. Ghostty has different design goals and tradeoffs and if it's right for you great, but if not, you have so many good choices.

Shout out to Kitty, WezTerm, Foot in particular. iTerm2 gets some hate for being relatively slow but nothing comes close to touching it in terms of feature count. Rio is a super cool newer terminal, too. The world of terminals is great.

I’ve posted a personal reflection here, which has a bit more history on why I started this, what’s next, and some of the takeaways from the past two years. https://mitchellh.com/writing/ghostty-1-0-reflection

arghwhat · a year ago
Just make sure not to get caught in the pitfall that is maximum render speed, which can lead to missing out on efficiency during slow and partial rendering.

Missing damage tracking, always painting everything (even when the window is a full 4k monitor), etc. kills performance and input latency when dealing with realistic redraw workloads like text editing, blinking cursors and progress bars. Much too often to terminals worry only about the performance of `cat /dev/urandom`...

imron · a year ago
> kills performance

And battery.

I gave up on alacritty because it was always using the dedicated graphics card of my MacBook and there was no reasonably way to use the integrated graphics card because it was “low performance”.

epcoa · a year ago
> Missing damage tracking, always painting everything (even when the window is a full 4k monitor),

Out of curiosity, what GPU accelerated terminal does this.

cayley_graph · a year ago
Right, input latency is what matters for me. I'm not seeing whether they've measured that in the docs/on Github.
mtlmtlmtlmtl · a year ago
Congrats on your 1.0 release! Building a term from scratch is no small task. And it looks like after 2 years you already have something I'm seriously considering switching to. That's seriously impressive. And though I'm mostly a Linux supremacist, I genuinely appreciate and respect your dedication to providing native applications on all major platforms. I see too many projects do one of two things: only support one platform at first, with some vague promise of doing others in the future left unfulfilled for years. Or going the easy route of using electron or some other cross-platform toolkit, getting cross-platform support at the cost of a significantly worse experience. There is no substitute for doing the extra work, at the end of the day, and you're already well on your way there at such an early point. Again, I'm impressed!

Now, the one thing I've coveted for years is a linux term with tmux control mode support, ever since I used iterm2 during my short tenure as a Mac user. I can see from your github issues that this is in the works(https://github.com/ghostty-org/ghostty/issues/1935), which is great. It looks like a lot of the necessary UI elements are already in place, as well as partial support for the control mode protocol. Do you have any idea how far off this is from being completed? I don't wanna make demands or anything, I know this is a passion project with lots of things still to work on. As far as I know(and I look around quite often) control mode support is still something no existing term for linux supports. Being the first could drive a lot of adoption! I'd also like to offer my help in pushing it over the goal line. I haven't touched Zig, but I'm a polyglot with plenty C experience and Im highly motivated to bring this feature to my Linux systems. Some guidance on things I might do to help would be welcome. The final 3 points of the checklist don't have much detail provided.

Again, no pressure, thanks for all your amazing work, and good luck with continued development!

pzmarzly · a year ago
This. To add some words why this is important:

Given the remote-first container-based world we're heading towards, decoupling UI (terminal emulator) from its "backend" (tmux, code-server) is a great design decision, which I think will ultimately define what the "next generation" of terminal emulators is. Imagine being able to open tabs directly on remote host, reconnect without losing state, etc, all while using native UI (so Cmd+T to open new tab, Cmd+F to search, etc). Productivity game changer, which currently only the iTerm2 users can fully enjoy.

Ptyxis (putting its backend in running containers), WezTerm (native handling of ssh sessions) and VSCode's terminal (starting a proprietary code-server binary and connecting to its TCP port) have reached some of this functionality, but in their design they need some out-of-band mechanisms to handle the connections, ultimately limiting the scenarios they can handle.

Meanwhile tmux -CC [0] and ht [1] are sending both their control channel and data channel over the opened terminal itself (in-band), making them flexible enough to support any configuration. Something complex like `ssh jumpbox -- ssh prod -- podman exec -it prod /bin/bash -- tmux -CC` should just work, as if everything was running on your local machine.

[0] https://github.com/tmux/tmux/wiki/Control-Mode

[1] https://github.com/andyk/ht

underdeserver · a year ago
For those interested, the link below from Mitchell's blog explains the different goals he's trying to reach, compared to other terminal emulators.

https://mitchellh.com/writing/ghostty-is-coming

sambeau · a year ago
I love this page in your docs:

https://ghostty.org/docs/about

Clear, friendly, modest, respectful and with the right balance of detail vs overview.

Congratulations on your launch.

balou23 · a year ago
I'm not sure why they couldn't put that on the front page. Or at least on the front page of the documentation.

As it stands now, the front page is pretty useless if you never heard of ghostty. It's a ghost in a terminal? And there's tty in the name.... so is it a program to show ghosts in your terminal?

mahdihabibi · a year ago
How you've managed to communicate effectively with so many people who were using the beta version to craft the final release is beyond me! I downloaded it last night, wrote one line of theme configuration (I picked the batman theme). and For me it just works fine and faster than any other terminal emulator I've ever worked with. Also great with 'less' and 'tmux'. I just switched to 'Ghostty'! so thank you.
worldmerge · a year ago
Just downloaded it because of the animation on the site. How did you make that? it's cute.

The terminal is good. I don't have any issues with the stock mac os terminal app but I'll give yours a go for a bit. I can't tell exactly how, but it does feel faster - I'm not sure exactly how it is but it looks like it renders text faster.

commandersaki · a year ago
Stock Terminal.app doesn’t do 256 or 24-bit colour, that’s really the big thing that drew me to ghostty.
pfg_ · a year ago
Lower inout latency can make something feel faster. I haven't measured it but it's possible that's why with ghostty
jbergstroem · a year ago
I've been a beta tester from very early on. I came for the performance but stayed for the stability. I've only had a rare few crashes and all but one was a duplicate in the bug tracker.

I thought I needed search but as Mitchell put it, not a 1.0 feature. Ripgrep was always the answer.

Very happy to share the ghostty experience with the world!

sionisrecur · a year ago
Search was the first thing I noticed it was lacking. I hope it can be added at some point, sometimes you can't just run a command again to grep it.
KolenCh · a year ago
Looks great. Switching from wezterm and kitty before that, and the native feel on macOS is indeed better than those emulated tabs. Also it is really quite zero config where to me it seems only one line of color theme is needed, together with setting TERM for ssh. (Default font happens to be mine.) Bundling so much color theme felt a bit waste of space, but it is nice that I don’t need to define them myself which also makes switching theme tedious. I also love to see it lands at 1.0 where features, documentation, and promotional materials seem polished already.

Chances are, it will become my default terminal in 2025!

The only nitpicking is the doc does not seem to have a search function. It would be great if I can search color or ssh and find the relevant page address that immediately, without navigating the tree or relying on external search engines.

feketegy · a year ago
Use the browser's search on the page?
verandaguy · a year ago
I haven't heard of Ghostty before today. I'm reading the docs; but what are the main selling points?

Personally, I've used Terminal.app (for a bit), iTerm (for a long while), Konsole (in the past, on Linux) and more recently I standardized on Alacritty (macOS) and Kitty (Linux). GPU acceleration puts it in the same general bin as my current toolchain, but your comment alludes to it pulling in some concepts from iTerm, possibly -- is that the case?

mitchellh · a year ago
the_mitsuhiko · a year ago
Thanks so much for this. I really enjoy using it and I also refer to the source code quite a bit as I'm trying to get more familiar with Zig :)
gigatexal · a year ago
How do you plan on sustaining the project? Do you have enough committers so you’ll not burn out? Will you need support? Is there a way to donate? I guess what I’m getting at is what is the long term sustainability work around this?
LVB · a year ago
Discussed near the last part of an earlier post.

“… exploring not-for-profit structures to help ensure the long-term sustainability of Ghostty.”

https://mitchellh.com/writing/ghostty-is-coming

cbushko · a year ago
I think you've done an excellent job running the community for Ghostty and it is a prime example of how to do it right. From the Discord to Github repos you've been a class act all the way through and have pushed folks to be good, civil internet denizens. Much respect.

If anyone cares to search through Github, they will see loads and loads of Issues and PRs created by Mitchell in many of the related Open Source projects that Ghostty uses/references. From zig to kitty to supporting libraries, Mitchell has been trying to get the terminal community working together and have some sort of standards. A lot of them are like "X does this, Y does that, why are you doing it this way? Can we all do it this way?" and then having Ghostty follow the most reasonable solution (or supporting several!).

redserk · a year ago
You've saved me an immeasurable amount of time and sanity over the last few years with the tools you've been building, and simply put: thank you.

I'm extremely excited to give Ghostty a whirl.

reissbaker · a year ago
Just built this from source on Fedora and I have to say the experience even for building-from-source is flawless. Immediately replaced Kitty for me; it feels smoother and faster. Amazing work.
Fnoord · a year ago
Alacritty on macOS and Linux user here (Windows Terminal on Windows due to easily different shells available, formerly used iTerm2 on macOS). I make up for lack of tabs with zellij locally (tmux remotely). Also allows me to relog or close/update Alacritty. I will give Ghostty a whirl but why no shout out to Alacritty? Which features am I missing out on?
feketegy · a year ago
Ghostty's community is much nicer compared to Alacritty :)
PcChip · a year ago
I’m trying to figure out the same thing, sounds like just tabs?
howon92 · a year ago
I'm a fan of your work! I'm curious about how you decided to work on building a terminal for your next project among your other ideas. If you have time later, could you share your main motivation with us or link to an existing post if you already mentioned it elsewhere?
glitchc · a year ago
Thank you for making this. Does it support quake mode? It's hard to tell looking at the docs.
mkl · a year ago
From https://ghostty.org/docs/features:

> macOS

> Quick Terminal: Lightweight terminal that animates down below the menu bar for instant access without interrupting work.

peanball · a year ago
It does, natively.
hnlmorg · a year ago
> Ghostty has different design goals and tradeoffs and if it's right for you great, but if not, you have so many good choices.

I was looking on the website to try and understand this more but couldn’t find any information. Perhaps I missed it?

therealfiona · a year ago
Looks cool man.

Does it have a way to do tabs, and split terminal vertical and horizontal? Those are the only features keeping me on Terminator.

I've tried Tmux, but it isn't the same, so please commenters, avoid from the suggestion.

mitchellh · a year ago
Yes we have both as native UI elements.
gigatexal · a year ago
Shoutout to you sir for Shouting out the other terminals. It’d be easy for someone of your fame and talent and history to ride the hype to the GOAT of all terminals. But you stayed humble. Props.
filmgirlcw · a year ago
Thank you for building this! I’ve loved using this over the last two months or so and really appreciate the work you’ve put into it.

I’ve been a very happy iTerm2 user and support the dev on GitHub Sponsors (and I’ll continue to do that), but I love your commitment to making a fast, native app (and cross platform, no less) and really appreciate this very obvious labor of love that has also been really interesting to watch from afar as the development has progressed!

slimsag · a year ago
Congrats Mitchell! It has been really cool to see Ghostty progress as a project, and I've enjoyed having it as my daily driver these past few years :)
Emigre_ · a year ago
I've been looking forward to it for a while, I'm really happy about this. Thanks for your work on this project.
tylerchilds · a year ago
super cool!

kitty has been my default for a few years now— highly superficial, but my designer side landed on kitty as it was one of the few that supports ligatures by default, specifically for the fira code font for my bias.

does ghostty support ligatures?

pfg_ · a year ago
not only does it support them, but the default font provides them. although it splits the ligature in half if your cursor is in the middle of it which feels a little weird to me
tessierashpool9 · a year ago
what was the motivation to start this project? it got so many points here, hence I assume there must be something really useful about it - but I so far fail to see it.
ksec · a year ago
Congratulations.

On the cross-platform library, I wonder why "libGhostty" and not libTerminal. Which seems like a more appropriate in term of library?

jez · a year ago
Calling it libTerminal might be confusing. There are other terminal emulation libraries—for example libvterm[1], notably used to power the embedded terminal in Neovim.[2]

[1] https://www.leonerd.org.uk/code/libvterm/

[2] https://neovim.io/doc/user/terminal.html

jmorenoamor · a year ago
Terminals are always welcome :) I hope you can add Win supoort so I can try it at work.

Congrats for the release and happy new year.

levlaz · a year ago
Thank you for making this! I've been waiting to use it for quite some time. Really happy to take it for a spin.
Nekorosu · a year ago
It's surprisingly convenient and works as I expect it to work all the time. Fantastic job!
samgranieri · a year ago
Thank you for all the hard work you’ve done and for sharing your passion project with us.
jdmg94 · a year ago
how did you decided on building for arch and NixOS but not for red hat or debian?
blondin · a year ago
thank you and the community for the work. i hope to see blocks (not sure if this is a shell thing or a terminal thing) the same way warp does it :)
timvdalen · a year ago
Enjoyed hearing about this on The Changelog recently!
indigodaddy · a year ago
Looks really awesome. I'm going to sound like I don't belong in the hipster terminal club, but the reason I shied away from some of the other terminals is the lack of tabs, which looks like yours has when I did a quick Google question/search. (if wezterm and the like have them, I must have missed it or it wasn't obviously apparent in the settings how to achieve them).

I know everyone will say but tmux and/or native multiplexing bla, but I'm kind of old school and only do screen remotely if needed, and I just like a lot of terminal tabs in my workflow with a quick mod left/right arrow to navigate between (and if native multiplexing in Ghostty is simple and easy I'd probably do some of that too). Perhaps this is why I've never left iterm2.

onli · a year ago
Wezterm does have tabs, and their related keyboard shortcuts are configurable.

See https://wezfurlong.org/wezterm/config/lua/keyassignment/Spaw... for a starting point in the config.

mitchellh · a year ago
We've got native tabs and splits on both macOS and Linux. :)

WezTerm has tabs but they're not native UI elements.

dotancohen · a year ago
I also use tmux, but I love the native tabs of Konsole in KDE. I have Shift-Arrow configured to move between them, it is far more comfortable than the dual shortcuts needed by tmux, Ctrl-B to call tmux's attention then l (if I remember correctly) to get to the last tab.

Konsole also has easy resizing of text and supports images in the console, you might like it.

jyap · a year ago
Quick correction: I currently use Wezterm on Linux and it has tabs. Alacritty does not for developer philosophical reasons.

Looking forward to checking out Ghostty.

GreenWatermelon · a year ago
Wezterm has tabs right out of the box and they are fully customizable, though I prefer tmux since I prefer to not have my data extinguished if I accidentally close the terminal :D

WezTerm shines in ease and breadth of configurability due to using lua, so it's simple to have the theme change between light/dark depending on host OS theme.

gigatexal · a year ago
Yeah. I could get by with the default Linux terminal and tmux really. Tmux is just the best. Second to vim it’s the single most useful thing I’ve ever used.

Deleted Comment

cmgriffing · a year ago
No mention of Cool Retro Term!?!? Typical elitist behavior... /s

I'm just having a bit of fun, but it is a fun terminal every once in a while. https://github.com/Swordfish90/cool-retro-term

SG- · a year ago
you can use glsl shaders with Ghostty including this CRT one to mimic what cool retro does

https://github.com/m-ahdal/ghostty-shaders/blob/main/crt.gls...

bioneuralnet · a year ago
I LOVE Cool Retro Term! I mean, every once in a while. But if I’m sharing it in Zoom, I’m damn sure re-opening my tmux session in CRT.
Blackthorn · a year ago
I use that one as my daily driver. Works great.
xrd · a year ago
Wow that's great
brandoniscool · a year ago
this guy is a billionaire guys...
antirez · a year ago
After a quick test this looks incredibly good and fast. I'll use it as a terminal for the next weeks to see how it goes, but I have good feelings. Thank you so much for writing it.

EDIT: WOOOW, for me this is going to be a game changer. I was just working at Redis stuff outputting a ton of debugging info and results, and normally the terminal was the bottleneck, and here instead it printed half million of results in the blink of an eye. And then I could go back in the history without any performance degradation. I love this: for development of systems it makes a big difference.

ilrwbwrkhv · a year ago
Really need scrollback search though. Was a bit surprised it was launched without that.
tessierashpool9 · a year ago
why don't you just pipe it into a file and then less it? if your redis stuff prints so much stuff you might want to reevaluate the respective program logic.
antirez · a year ago
Sure, I redirect when there is to redirect, but sometimes during debugging you want to spam yourself to see what is happening during some stress testing when some code path is full of printfs. Also sometimes I'm just on the redis-cli and to test the system at scale I directly ask (like yesterday) for half million of similar vectors. It is very convenient I can type this on the CLI and see the result immediately, instead of flooding myself for seconds or minutes.
btheunissen · a year ago
Telling to creator of Redis that they might want to reevaluate their respective program logic (Redis) is pretty funny, only on HN :)

Deleted Comment

Dead Comment

Deleted Comment

Jarred · a year ago
I've been using Ghostty for several months now (used Alacritty before that). Ghostty is really, really good. It's fast, it gets the text rendering right (many cross-platform terminals struggle with this), and it has all the features I need.

It's also some very well-written Zig code. We use some of the code for graphemes in Bun for `Bun.stringWidth`.

SnowingXIV · a year ago
Likewise coming from alacritty myself. This out of the box gives me everything I really want and does it well. Not to mention the development process was quite refreshing to see. Decision making process for sane defaults and to allow customization quite easily.

Nicely done.

modernerd · a year ago
Ghostty has a hard-to-find "quake mode" that may interest some.

During the beta I had it configured like this on macOS:

    keybind = global:cmd+space=toggle_quick_terminal
    quick-terminal-animation-duration = 0.1
There isn't an option to set the default height of the "quick terminal" window that I'm aware of but you can drag the bottom of the window after it opens and it will persist between toggles.

milgrim · a year ago
Unfortunately no tab support yet in the quick terminal, and it does not work on top of fullscreen applications. Would be great if these things would work at some point.

Currently I am using Wezterm and iTerm2 for the quake style terminal, but using two different terminals is quite annoying. I really miss Visor and TotalTerminal.

tecleandor · a year ago
About tab support, you mean pressing the tab key to, for example, autocomplete a command?

That seems to work for me (macOS 15.2 here)

dsp_person · a year ago
Hmm any way for this to work in kde plasma wayland?

In yakuake they have to register the Open/Retract shortcut with KGlobalAccel [1] and I don't think global shortcuts are implemented otherwise

[1] https://github.com/KDE/yakuake/blob/164d24b8bad1175199260c62...

gpanders · a year ago
It's a macOS-only feature, for now.
manmal · a year ago
I'm using ctrl+` :

    keybind = global:ctrl+grave_accent=toggle_quick_terminal
It was the first thing I made sure ghostty supported it before trying it.

Setting the initial height of the quick terminal is under development: https://github.com/ghostty-org/ghostty/issues/2384

Lack of tab support in the quick terminal is a bummer, but it should come eventually: https://github.com/ghostty-org/ghostty/issues/2329#issuecomm...

For now, splits are the way to go in the quick terminal.

rplnt · a year ago
Note, if someone is trying this, that you need to grant accessibility permissions for it to work when Ghostty isn't focused.
alejoar · a year ago
This is the first thing I went looking for when looking at the docs, thank you.
swyx · a year ago
what does quake mode do?
thomaslutz · a year ago
Downside is that the quick terminal doesn't support tabs. Unfortunately that's currently a dealbreaker for me.
poincaredisk · a year ago
You can always run tmux inside. I personally don't use tabs in my terminal emulator at all, because I use tmux tabs for everything.

It may not work for you, of course.

freehorse · a year ago
Thank you! First thing I was looking for too. Cannot imagine trying a terminal without this.
emmelaich · a year ago
Doesn't seem to like that keybind now, and searching the docs doesn't give me answer. Do you know if something still works?

Also, why cmd+space? That's the MacOS spotlight search binding.

modernerd · a year ago
I disable cmd+space for Spotlight in macOS System Preferences.

You could try another keybind:

https://ghostty.org/docs/config/reference#keybind

Also be sure to quit and reopen Ghostty or use the reload configuration option from the Ghostty menu.

psyclobe · a year ago
Love me some quake style terminals, will check this out
danpalmer · a year ago
Amazing, thanks! This is most of how I use a terminal. Will give it a go.
skykooler · a year ago
Does this work under Wayland? I remember that being an issue for Guake.
commotionfever · a year ago
it should do. on Linux it uses GTK which supports Wayland these days
gigatexal · a year ago
Where does one add this? Is there a config file?
modernerd · a year ago
https://ghostty.org/docs/config

On macOS, pressing ⌘+comma with Ghostty in focus opens the config file.

Quit and reopen Ghostty to load the updated config (or bind another key to the reload_config action: https://ghostty.org/docs/config/keybind/reference#reload_con... ).

Keybinds are explained here: https://ghostty.org/docs/config/reference#keybind

jedisct1 · a year ago
Super handy!
dang · a year ago
Related. Others?

Ghostty 1.0 Is Coming - https://news.ycombinator.com/item?id=41914025 - Oct 2024 (32 comments)

Ghostty Devlog 004 - https://news.ycombinator.com/item?id=37709113 - Sept 2023 (2 comments)

Talk: Ghostty and Some Useful Zig Patterns - https://news.ycombinator.com/item?id=37491031 - Sept 2023 (2 comments)

Mitchell Hashimoto's Ghostty Devlog - https://news.ycombinator.com/item?id=36736686 - July 2023 (1 comment)

videlov · a year ago
I have found the following community site for generating Ghostty config quite helpful https://ghostty.zerebos.com/
zerebos · a year ago
Hey this is my tool, thanks for sharing! I've been very happy with how well received it has been so far!
mvdwoord · a year ago
Well, thanks! Sometimes GUI makes for easier discovery than a wall of text, even when the docs are good.

Deleted Comment

matwood · a year ago
Great tool! Thank you.
8bithero · a year ago
Oh wow, this great! Is it your project? Either your post deserves more upvoted, or this link deserves it's own post. Thanks for this one! <3
elAhmo · a year ago
This is great, thanks! It would be amazing if CMD + , would open this directly.
shpx · a year ago
I uninstalled the app when I saw that Cmd+, opens an empty text file called config.

I'm not going to learn more configuration languages or type 30 characters (or paste them from the browser) to toggle a binary setting.

fishgoesblub · a year ago
I initially scoffed when I read "platform-native UI" as I've found programs made in Electron typically proclaim something similar when they are anything but native, so when I saw it used GTK for Linux (SwiftUI for MacOS) my interests were piqued. Always fun to mess around with new terminal emulators.

edit: alas, it doesn't support bitmap fonts..

mitchellh · a year ago
You can get pixel perfect bitmap fonts by using their TrueType conversions and using fractional point font sizes. There are dozens of bitmap enthusiasts that were in the beta and they're totally convinced because well... it's pixel identical.

I've noted before in issues I'm open to supporting bitmap fonts if someone contributes it, but not interested in adding it myself. The workaround above is very good.

fishgoesblub · a year ago
When using the original Terminus font failed, I tried the TTF version (Terminess) which in VSCode at specific point sizes is crisp and sharp. But with Ghostty, it was blurry and hard to read. At that point I gave up trying.
barnabee · a year ago
Looks like a very nice project overall. I was initially interested in the "native" UI but after trying Ghostty I think I've realised that in a terminal app I actually want all the UI to be terminal/TUI based within the terminal itself. This is a personal preference I've discovered rather than a criticism of Ghostty.

It seems fast and really nice otherwise, so I'll keep fiddling with it, but so far I still prefer, for example, the "non-fancy" tabs in WezTerm (where the tabs are just rendered as line of terminal cells at the top or bottom of the window rather than GUI elements), and the way that modals ("Really quit WezTerm?" etc.) are also rendered within the terminal.

I'd also struggle to live without quick select mode[0].

[0] https://wezfurlong.org/wezterm/quickselect.html

seqizz · a year ago
Yeah I also searched for a quick select in ghostty while checking now. I am probably too deep in wezterm with my lua configuration anyway, but still.
BoingBoomTschak · a year ago
Thanks for this post, first thing I did was search "bitmap" in the thread. If I can't use Terminus (+Unifont fallback), it's not for me.
emmelaich · a year ago
Curious as to how much it matters; if a TTF font looks similar and is fast?
fishgoesblub · a year ago
It was the first thing I check whenever I try a new terminal. If Terminus doesn't work then the terminal doesn't work for me.
TheSmoke · a year ago
fyi, I have just tried Unifont and worked perfectly.
opan · a year ago
>it doesn't support bitmap fonts

Very disappointing. Not sure why people are trying to kill off bitmap support in everything these days. Will stick with foot.

nasretdinov · a year ago
IMO the main reason is high DPI screens. On macs it's essentially the default, and it'll probably become the default in the future for everything. Since bitmap fonts make much more sense with low pixel density I think it's not going to be a priority for any newly developed apps.
mike31fr · a year ago
Many people here seem impressed about speed/performance. I have been using all sorts of terminals / emulators over the past 20 years and it never occurred to me a terminal can be slow. When I type a command, I just get the result instantaneously, for any terminal. What are the use cases that can make a terminal be slow?
danhau · a year ago
I don‘t get it either. The only use case I can see is for programs that output basically a video feed in text form.

A commenter in this thread mentioned sifting through log / debug output… but why wouldn‘t you pipe it to a file instead?

mike31fr · a year ago
TESTED:

1. Create a file with 1 million lines:

  for i in {1..1000000}; do echo "Line $i: This is a test of terminal performance."; done > bigfile.txt
2. cat the file and see how much time it takes:

  time cat bigfile.txt
RESULTS:

- iterm2: 3.5s

- Default macOS terminal: 2.3s

- Ghostty: 1.8s

umvi · a year ago
> What are the use cases that can make a terminal be slow?

Rendering huge stdout/stderr can be a bottleneck. Try running a program that writes half a million lines of text to stdout without file redirects and a lot of terminal emulators will struggle to keep up.

itsn0tm3 · a year ago
I think this mostly plays a role when using modal text editors like vim in your terminal. Speed matters so very much then! Give it a try if you want ;)
mike31fr · a year ago
Have you ever experienced vim being slow? If so, would you know how I could reproduce this?