ZH version is available. Content is displayed in original English for accuracy.
Advertisement
Advertisement
⚡ Community Insights
Discussion Sentiment
67% Positive
Analyzed from 444 words in the discussion.
Trending Topics
#ghostel#terminal#emacs#github#https#dakra#vterm#buffer#here#bit

Discussion (5 Comments)Read Original on HackerNews
baokaola and I actually wanted to do a "Show HN" next week, but looks like someone was faster submitting the link.
Have a look at the GitHub repo which is a bit nicer for a quick overview: https://github.com/dakra/ghostel
To add some context, Ghostel is a terminal emulator for Emacs powered by libghostty-vt.
There's a feature comparison vs vterm and eat: https://dakra.github.io/ghostel/#ghostel-vs-vterm
And here is a gist with images to compare performance and correctness: https://gist.github.com/dakra/4a0b76ebcf5d52338e134864378465...
But for me personally, it has not only replaced vterm/eat but also any other external terminal like kitty/Ghostty.
Having your terminal text just like a normal Emacs buffer opens up so many possibilities and extension points that are just not available on any other terminal.
Even simple stuff like searching in the scrollback, then navigating and selecting+copying a paragraph only with the keyboard. For every Emacs user that's so natural and fast in Ghostel while often cumbersome in other Terminals where I just reach to the mouse because it's easier.
Happy to answer any questions and also like to hear feedback positive or negative.
If you're an Emacs user and tried Ghostel and are still using Ghostty (or another external Terminal), is there something Ghostel is missing or is it just because you want some processes to run outside of Emacs?
baokaola and I are also very active on GitHub, so feel free to open an issue if you have any.
That being said, there are still some rough edges. Sometimes it fails to properly clear the terminal, leaving junk at the top of the buffer before the currrent prompt line. And on a couple of occasions it has totally frozen, with no fix other than killing the buffer and starting over.
Overall, it’s very promising and totally usable as a daily driver, but it needs a bit of polish and bug fixes before I would consider it mature.
The junk at the top of the screen sounds like it could be https://github.com/dakra/ghostel/issues/495 and it should be fixed on later versions. But maybe you're seeing another bug. The tricky part is replicating the libghostty-vt internal data into an Emacs buffer while only replacing the parts that need to be replaced. We have property based tests to exercise this a lot, but sometimes things slip through.
The latest released version as I'm writing this should have improved lifecycle handling, so maybe it also fixes some of your issues.
As you say, the project is still in the early phase so hopefully, we can iron things out over time.
Why? Keep it a part of distribution.