[HN Gopher] Ghostty 1.0
___________________________________________________________________
Ghostty 1.0
Author : matrixhelix
Score : 2190 points
Date : 2024-12-26 20:14 UTC (2 days ago)
(HTM) web link (ghostty.org)
(TXT) w3m dump (ghostty.org)
| mrjbq7 wrote:
| This is a neat blog post explaining part of the magic:
|
| https://gpanders.com/blog/ghostty-is-native-so-what/
| VeejayRampay wrote:
| thanks Mitchell for all the hard work, it's nice to see quality
| and competition in this field
| leetrout wrote:
| I'm very excited to have this because it's the first bit of high
| quality open source software to hit the streets in a while.
|
| I like where we're headed with tools like this and Ladybird[0]
| for hope of a subscriptionless future.
|
| Thank you, Mitchell!
|
| [0] https://ladybird.org/
| progbits wrote:
| > I like where we're headed with tools like this and
| Ladybird[0] for hope of a subscriptionless future.
|
| That's a weird statement. I've been running a free, open-source
| and subscription-less browser (firefox) and terminal emulator
| (many) for close to 20 years.
|
| Actually I like what ladybird is doing in the browser space,
| given firefox is quite dependent on google cash. But this is
| just yet another terminal emulator in a sea of them. The only
| two distinguishing features I can see are hype and native UI
| (which mac users care about for some reason -- my native UI is
| a borderless rectangle in tiling WM).
| SG- wrote:
| native UI is so much more than how a border of a window looks
| like.
| poincaredisk wrote:
| What is native UI in this context? My terminal emulator is
| also always basically a full-screen black textarea with
| white letters. No window borders, no tabs, no buttons, no
| menus, nothing else. Is there anything native UI would give
| me in this case (and what is a native UI, I can't find it
| defined anywhere)?
| nateb2022 wrote:
| > The big picture of "native" is that Ghostty is designed
| to look, feel, and behave like you expect an application
| to behave in your desktop environment.
|
| > On macOS, the GUI is written in Swift and uses AppKit
| and SwiftUI.
|
| (https://ghostty.org/docs/about#native)
| Gormo wrote:
| I'm using Linux with Xfce, but it seems to be locked into
| a Gnome-like look and feel, with header bars and CSDs
| that can't be disabled in favor of standard title bars
| and menus, so it's actually very inconsistent with the
| rest of my desktop environment.
| gpanders wrote:
| This gets brought up a lot, so I wrote about it here
| https://gpanders.com/blog/ghostty-is-native-so-what/
| matwood wrote:
| > This also means that native features like pressing
| Shift+[?]+\ open the tab overview, just as in other
| applications.
|
| Ah, so this is a macos thing and not just Safari. Can
| anyone help me select a tab using a keyboard? I use the
| shortcut, type in the search box and...have to use the
| mouse :(
| urbandw311er wrote:
| Your rebuttal is not mutually exclusive to the parent
| comment. They say it's the first _new_ such thing in a while,
| not that there aren't any in existence.
| robertlagrant wrote:
| It does where it says they give hope for a wunsciptionless
| future. We've always had subscriptionless, and the software
| that was subscriptionless is still around.
| progbits wrote:
| Can't edit my post anymore so replying to myself with an
| addendum:
|
| I wrote the comment in a rush last night and I think it
| sounds like I'm dumping on ghostty. That is not my intention,
| it looks very well made and a true passion project which I
| have lot of respect for.
|
| I just took issue with GP adding yet more hype to this.
| brcmthrowaway wrote:
| What was the last one? Ghidra?
| poincaredisk wrote:
| >first bit of high quality open source software
|
| That feels like an exaggregation. L High quality open source
| software is uploaded daily to GitHub.
| feznyng wrote:
| The author has a dev log I'd recommend if you're curious about
| what makes it different + general goodies on Zig/terminal
| emulators.
|
| https://mitchellh.com/ghostty
| stmonty wrote:
| Awesome, I have been waiting for this since you originally
| announced it. I also enjoyed the blog posts.
| icapybara wrote:
| Congratulations
| kristopolous wrote:
| I assume this is mostly a mac thing? The effort to get this up
| and running on debian appears to be a bit more work than normal.
| SG- wrote:
| it's a Mac and Linux thing.
| mrjbq7 wrote:
| $ git clone git@github.com:ghostty-org/ghostty.git
|
| $ cd ghostty
|
| $ zig build -Doptimize=ReleaseFast
|
| $ ./zig-out/bin/ghostty
| beanjuiceII wrote:
| tried this doesn't work do i need some specific zig version?
| eddythompson80 wrote:
| 0.13.0
|
| https://github.com/ghostty-
| org/ghostty/blob/4b4d4062dfed7b37...
|
| The full script is pretty much:
|
| $ wget https://ziglang.org/download/0.13.0/zig-
| linux-x86_64-0.13.0....
|
| $ tar xvf zig-linux-x86_64-0.13.0.tar.xz
|
| $ git clone git@github.com:ghostty-org/ghostty.git
|
| $ cd ghostty
|
| $ ../zig-linux-x86_64-0.13.0/zig build
| -Doptimize=ReleaseFast
|
| $ ./zig-out/bin/ghostty
| tlhunter wrote:
| Looks like there are a few deps needed:
| sudo apt install libgtk-4-dev libadwaita-1-dev git
|
| Otherwise you'll get this error: error:
| unable to spawn glib-compile-resources: FileNotFound
| Build Summary: 78/83 steps succeeded; 2 failed (disable
| with --summary none) install transitive failure
| +- install ghostty transitive failure +- zig
| build-exe ghostty ReleaseFast native transitive failure
| +- run glib-compile-resources (ghostty_resources.c)
| failure +- run glib-compile-resources
| (ghostty_resources.h) failure error: the following
| build command failed with exit code 1:
| /home/tlhunter/Downloads/ghosttty/ghostty/.zig-
| cache/o/57acb02f2b1ccf1b03b9597a8c5f2d09/build
| /home/tlhunter/Downloads/ghosttty/zig-
| linux-x86_64-0.13.0/zig
| /home/tlhunter/Downloads/ghosttty/ghostty
| /home/tlhunter/Downloads/ghosttty/ghostty/.zig-cache
| /home/tlhunter/.cache/zig --seed 0xb4306e7d
| -Z11426c6f3a70c8b9 -Doptimize=ReleaseFast
|
| ```
|
| I'm quite surprised they don't provide a .deb package as
| that checks off 90% of Linux users.
| AndyKelley wrote:
| It's uncommon for upstream to provide .deb packages.
| That's not really how it's supposed to work. The Debian
| community creates Debian packages. Upstream's job is only
| to avoid making the Debian community's job more difficult
| than necessary. Unfortunately due to the decisions made
| by various popular Linux projects (mainly an obscene
| obsession with dynamic linking), it's not really feasible
| for upstreams to provide GUI applications on Linux. I
| hope someday this can change, but realistically there's
| not enough effort being put towards this goal.
| eddythompson80 wrote:
| Good point. I'm on pacman, but I remember installing
| adwaita last year when I started using Ghostty.
| javierhonduco wrote:
| Zig 0.13 is required according to
| https://ghostty.org/docs/install/build
| autarch wrote:
| It also seems to need a fairly new gtk4. At least the
| version in Ubuntu 22.04 is too old.
| sundarurfriend wrote:
| Funny to see a "doesn't work" response even on Hacker News,
| with no details or error messages.
| mrjbq7 wrote:
| I imagine package managers will start picking this up shortly
| since it just released publicly.
| kristopolous wrote:
| well you'll have to get a DD on board to do the work and zig
| isn't even in debian so that'd have to get there first and
| the person wanting the terminal probably doesn't want to
| maintain the programming language as well. So that probably
| means 2 DDs. Again, there is a non-normal distance here.
| e3bc54b2 wrote:
| That seems like a very Debian problem.
|
| Perhaps if one was inclined, Nix can provide immediate
| resolution, since it can be installed and used on Debian
| and ghostty project provides convenient flake.
|
| Granted I'm on NixOS, but took me grand total of 60 seconds
| to update config and 8 minutes of actually building on a
| slow machine.
| pabs3 wrote:
| Non-DDs can get packages in too via the RFS process, there
| is a Zig package by a non-DD, not yet in Debian though.
|
| https://mentors.debian.net/intro-maintainers/
| https://bugs.debian.org/995670
| hei-lima wrote:
| Yeah, it's not available in the Debian/Ubuntu package managers,
| but building from source is quite trivial.
| do_not_redeem wrote:
| I just want to say thanks for the minimum-contrast option:
| https://ghostty.org/docs/config/reference#minimum-contrast
|
| I've grown so sick of tools/TUIs that output unreadable text
| (like Debian's ls that defaults to dark-blue-on-black for
| directories). I look forward to never manually theming a terminal
| app again!
| thenipper wrote:
| This is great. I'm middle aged and I've definitely noticed my
| eyesight needs more and more help in the contrast dept
| rand0m4r wrote:
| thanks for sharing
| commandersaki wrote:
| Another goodie is selection-foreground and selection-background
| config to set the colour for highlight selection, makes a
| massive difference when it's something you can choose rather
| than the translucent crap on mac, or the defaults on
| Windows/Linux.
| sitkack wrote:
| Is there a bounty for zero days?
| selectnull wrote:
| Yes, your name will forever be on that pull request.
| BSDobelix wrote:
| So I will see how well it works on FreeBSD, but I love the
| development model, keeping it "closed" for the 1.0 (focus and
| polish), I have not tested it yet, but it already "feels" like
| professional engineering work.
| wutwutwat wrote:
| source is open https://github.com/ghostty-org/ghostty
| afatparakeet wrote:
| Only as of 1.0 release I believe was their point.
| Jarred wrote:
| 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 wrote:
| 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 wrote:
| 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.
| alejoar wrote:
| This is the first thing I went looking for when looking at the
| docs, thank you.
| swyx wrote:
| what does quake mode do?
| vorpalhex wrote:
| Scroll down from top on any screen
| diggan wrote:
| Comes from video games where you usually can hit ~ (tilde)
| or other character to make a in-game console appear,
| usually sliding down from above or at least in the top
| half/third/quarter of the screen. Popularized by Quake and
| games from that heritage (like Source engine) I suppose.
|
| Desktop equivalent is that you have a terminal available at
| a short-cut/button-press that will always show it but not
| fully hide the rest, no matter what other context you're
| in. Pretty handy.
| swyx wrote:
| TIL. thank you for taking the time to answer - wasnt
| obvious from above whether or not this was some kind of
| joke easter egg thing
| rgun wrote:
| Same. I have been using this in Yakuake since 5 years but
| I never knew it was called a "quake mode"
| nosrepa wrote:
| This is especially amusing to me given your choice of
| terminal.
| sangnoir wrote:
| > a terminal available at a short-cut/button-press that
| will always show it but not fully hide the rest, no
| matter what other context you're in
|
| I cant be the only person who uses Quake-style terminals
| at fullscreen. The second part of your sentence is the
| crucial bit: the ability to _instantly_ conjure a
| persistent terminal regardless of whatever else I have on
| screen.
| throw9986bbdhi wrote:
| Can you then detach it to make it "non-quick", if you
| want to keep working on that separate context thing?
|
| What I find annoying with my workflow (linux) is that
| starting a terminal and shell takes a lot of time. I
| wonder if it's possible to have a terminal always loaded
| so that my keybinding for creating a terminal would
| actually: move terminal in current workspace, focus it,
| then spawn another invisible terminal in the background.
| sangnoir wrote:
| Yakuake supports invoking the terminal in windowed-mode,
| if that's the profile you choose for it. I don't follow
| the purpose served by spawning an invisible background
| terminal; that doesn't seem to be common workflow, but I
| suspect you could wrangle it in your shell startup file
| so that the terminal self-invokes in hidden mode - but
| having 2 running copies (invisible and windowed) may
| result in both appearing when you press your global
| shortcut.
| diggan wrote:
| I kind of use tmux for this, to have a persistent
| session. Even if my desktop manager (Gnome3) crashes,
| which happens sometimes when I run a bazillion VMs and
| run out of memory, my tmux session still survives and I
| can `tmux attach` once logged in again.
|
| So the idea would be that you start tmux
| somehow/somewhere, then in your new shell you can do
| `tmux attach` to get into that session from anywhere, and
| if you close this new shell, you can still do `tmux
| attach` to get back to where you were.
| Dashos wrote:
| > I wonder if it's possible to have a terminal always
| loaded so that my keybinding for creating a terminal
| would actually: move terminal in current workspace, focus
| it, then spawn another invisible terminal in the
| background.
|
| Use rxvt-unicode or another terminal that has a
| client/server mode. Start up a server in the background
| on boot or login (e.g. as a systemd user service), and
| make your keybind launch a new client process. Should be
| pretty much instant.
| DanielHB wrote:
| Yeah I have been using quake-style terminals (guake on
| linux, iterm2 on mac) for _years_. I never met another
| dev in person who also uses it.
|
| I am a single massive monitor kind of person. Quake-style
| terminal + all apps in maximized window + multiple
| desktops (with a shortcut to switch between them) is so
| good. Pull up the same terminal no matter which desktop
| you are on.
| jedisct1 wrote:
| Super handy!
| freehorse wrote:
| Thank you! First thing I was looking for too. Cannot imagine
| trying a terminal without this.
| gigatexal wrote:
| Where does one add this? Is there a config file?
| modernerd wrote:
| 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
| gigatexal wrote:
| I just saw this https://ghostty.org/docs/config and was
| coming to update my post when I saw your comment.
|
| Thank you!
|
| Imma try out ghostty, WezTerm, and Rio thanks to this
| thread. And why not use them all. For terminal minded folks
| we are surely spoiled.
| johng wrote:
| It also has reload config in the Apple menu items which I
| found handy as the default keybinds didn't seem to work for
| me.
| dsego wrote:
| And you can reload the config with Cmd+Shft+, so Cmd+, to
| open the config (standard mac shortcut) and then the same
| with Shift to reload it, it's genius.
| thomaslutz wrote:
| Downside is that the quick terminal doesn't support tabs.
| Unfortunately that's currently a dealbreaker for me.
| poincaredisk wrote:
| 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.
| skykooler wrote:
| Does this work under Wayland? I remember that being an issue
| for Guake.
| commotionfever wrote:
| it should do. on Linux it uses GTK which supports Wayland
| these days
| dsp_person wrote:
| 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 wrote:
| It's a macOS-only feature, for now.
| arendtio wrote:
| Let's hope it will become available for Linux, too. I have
| been using Yakuake for over a decade now, mostly because I
| love how I can access the terminal everywhere with one
| button press.
|
| At the same time, Yakuake seems to be in maintenance mode,
| and you should be happy when it works with new KDE
| versions.
| milgrim wrote:
| 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 wrote:
| 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)
| manmal wrote:
| GP means creating a new tab with CMD+T, which works in the
| normal ghostty terminal. iTerm2 does support tabs in its
| hotkey windows (~= ghostty's quick terminal).
| tecleandor wrote:
| Aaaaaah! Ok, what a confusion :D
| psyclobe wrote:
| Love me some quake style terminals, will check this out
| danpalmer wrote:
| Amazing, thanks! This is most of how I use a terminal. Will
| give it a go.
| emmelaich wrote:
| 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 wrote:
| 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.
| manmal wrote:
| 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 wrote:
| Note, if someone is trying this, that you need to grant
| accessibility permissions for it to work when Ghostty isn't
| focused.
| fishgoesblub wrote:
| 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..
| BoingBoomTschak wrote:
| 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.
| fishgoesblub wrote:
| 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.
| emmelaich wrote:
| Curious as to how much it matters; if a TTF font looks
| similar and is fast?
| BoingBoomTschak wrote:
| > if a TTF font looks similar
|
| It doesn't, especially on average DPI monitors. Oh, you
| mean the OTF trick.
| TheSmoke wrote:
| fyi, I have just tried Unifont and worked perfectly.
| opan wrote:
| >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 wrote:
| 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.
| mitchellh wrote:
| 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 wrote:
| 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.
| BoingBoomTschak wrote:
| The reason might be that you need to have an "anti-
| aliasing" checkbox to untick on MacOS (generally in the
| font selection menu). I switched from Terminal to iTerm for
| that reason, on my work MBP.
| barnabee wrote:
| 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 wrote:
| 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.
| videlov wrote:
| I have found the following community site for generating Ghostty
| config quite helpful https://ghostty.zerebos.com/
| elAhmo wrote:
| This is great, thanks! It would be amazing if CMD + , would
| open this directly.
| shpx wrote:
| 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.
| computerfriend wrote:
| Aren't plaintext configuration files standard? It's how I
| configure most applications (and how I like it, because it
| makes the configuration shareable).
|
| As a DSL, it's key-value pairs. It doesn't get much simpler
| than that.
| rplnt wrote:
| It's a desktop/GUI application. It's definitely not a
| standard for those, no. I share the OPs frustation that I
| don't even know what I can configure and have to search
| web to be able to change something. And while the
| documentation is nice, it's not exactly great for this.
|
| Also, having an explorable and searchable UI doesn't mean
| it's not saved in the same shareable and readable file.
| agos wrote:
| no, especially for an app that boasts to be "native"
| wpm wrote:
| The ultimate end format for the config stored on disc is
| completely irrelevant to how the config is created.
| Simple doesn't mean easy to experiment with, simple to
| understand, fast to write and so on.
|
| No one is confused as to how the ghostty config works.
| Key value pairs. Sure. A window full of GUI controls and
| system color pickers can create that config file, or I
| can manually by hand. I'd prefer the former.
| Filligree wrote:
| That _could_ have been acceptable. The problem is it 's
| empty; it should instead contain the default
| configuration.
| rererereferred wrote:
| You can see the default configuration by running `ghostty
| +show-config --default`
| Filligree wrote:
| In that case it should be easy to prefill the config file
| if it doesn't already exist.
| OrangeMusic wrote:
| Same here. I was curious, so I installed it. First thing I
| tried to do was to change the text color, and saw there was
| no settings UI. This is a bit baffling to be honest.
|
| Uninstalled it right away, I'll keep using the default
| MacOS Terminal app.
| rainbowjelly wrote:
| A GUI for settings is planned so you can try again in the
| future.
| homebrewer wrote:
| kitty has a nicely formatted config which lists all
| settings along with their default values and a very
| detailed description of each one. It's pretty much the same
| as having a GUI. Maybe Ghostty can adopt this?
| Houstan wrote:
| Similarly documented config file can be generated on
| linux with: mkdir -p ~/.config/ghostty
| ghostty +show-config --default --docs >>
| ~/.config/ghostty/config
| matwood wrote:
| Interesting take. Settings are typically something I setup
| once and move on. A GUI is nice (I'm sure there will be
| one), but not required in a v1. One of Ghostty's stated
| goals is sane defaults that mostly work out the box. I just
| checked my settings file and I changed 3 things. I think
| they did a pretty good job with defaults.
|
| Finally, somewhere else in this thread someone linked a web
| tool that will generate the settings if you absolutely
| can't look up the couple you need to change.
| zerebos wrote:
| Hey this is my tool, thanks for sharing! I've been very happy
| with how well received it has been so far!
| mvdwoord wrote:
| Well, thanks! Sometimes GUI makes for easier discovery than a
| wall of text, even when the docs are good.
| matwood wrote:
| Great tool! Thank you.
| 8bithero wrote:
| 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
| loeg wrote:
| > For example, on macOS, Ghostty supports Quick Look, force
| touch, the macOS secure input API, built-in window state recovery
| on restart, etc. These are all native APIs provided by macOS that
| don't have equivalents in Linux desktop environments.
|
| I believe window state recovery has some approximate equivalent
| in GNOME and KDE, but maybe not exactly the same (and I don't
| know how easy it is to integrate with).
| eliaspro wrote:
| On X11, Gnome and KDE Plasma supported session/state restore,
| but this was based on XSMP and couldn't be simply reused for
| Wayland.
|
| There's an ongoing standardization effort to provide equivalent
| functionality for Wayland:
| https://gitlab.freedesktop.org/wayland/wayland-protocols/-/m...
|
| KDE Plasma provides a "fake session restore" for the time
| being: https://invent.kde.org/plasma/plasma-
| workspace/-/merge_reque...
| loeg wrote:
| Ah, good to know.
| ksec wrote:
| This feels like the Vagrant moment [1] again. Cant believe 15
| years have passed already.
|
| Together with Bun I believe that is two high profile open source
| software made with Zig.
|
| [1] https://news.ycombinator.com/item?id=1175901
| BrouteMinou wrote:
| Wayland WM "River" is great too.
| ajoseps wrote:
| and it's the same guy
| ivve wrote:
| What do you mean the "vagrant moment"?
| alberth wrote:
| For those who don't have the background:
|
| - created by Mitchell (founder of HashiCorp)
|
| - it's developed in Zig (and Mitchell recently pledge $300k to
| Zig foundation)
|
| - uses native UI (which is super rare for cross platform app)
|
| - amazingly performant. e.g.
| https://hachyderm.io/@mitchellh/111919642467789362
|
| - has lots of amazing small details like below
|
| https://hachyderm.io/@mitchellh/113330304084905500
|
| https://hachyderm.io/@mitchellh/113443002518588524
|
| https://hachyderm.io/@mitchellh/113166930440000852
|
| This has been a passion project of his for the past 2-years and
| he's completely MIT open sourced it. He's spent a lot of time
| thinking and ensuring this project can persist in the future even
| without him.
|
| Many people have tremendous respect for Mitchell's technical
| abilities, as well as hugely respect _how_ he operates (genuinely
| nice person and thinks about things long-term and does the hard
| work for sustainability).
|
| Lots more to read at: https://mitchellh.com/writing/ghostty-is-
| coming
| saberience wrote:
| It doesn't work in Windows so how is it cross platform?
|
| Also, I've been using terminals since DOS in 1990 and never
| once have I had to say, "I wish this terminal had more
| performance", so I'm not sure that performance is really
| relevant here. If I write a command to build my project which
| takes 10 mins to build, does it matter whether the terminal
| command ran in 10 milliseconds vs 1 millisecond?
|
| In the linked speed demo one command was 8 milliseconds faster
| than another. Ok?
|
| Is a terminal written in Zig better than one made in C++ or
| Rust? Again, unsure why its relavant at all.
| marcus0x62 wrote:
| > It doesn't work in Windows so how is it cross platform?
|
| Linux and macOS are different platforms. Would calling it
| multi-platform make you happier?
|
| > Also, I've been using terminals since DOS in 1990 and never
| once have I had to say, "I wish this terminal had more
| performance",
|
| I remember the Windows terminal being unbearably slow in the
| past and wishing it had better performance.
|
| Maybe this just isn't for you.
| SG- wrote:
| are you still running DOS too?
| Fnoord wrote:
| If you use something like tmux you will notice higher
| latencies. Clearly, if you've been using terminals since DOS
| in 90s and the issue does not bother you, then you are likely
| happy with whatever it is you are using. If you want to look
| into the issue and read on methodology used before I
| recommend Dan Luu's from 2017 [1]
|
| [1] https://danluu.com/term-latency/
| cbushko wrote:
| | In the linked speed demo one command was 8 milliseconds
| faster than another. Ok?
|
| For day to day, ls'ing files that speed up won't matter too
| much. It is when you are tailing logs or working with multi-
| gig files that it matters.
| sweeter wrote:
| Ghostty, Mitchell, and the community around Ghostty, are all
| really amazing and pleasant to work with. I've had a lot of fun
| hanging out in the Discord, and sending in a couple of PR's.
| Everyone is really kind and accommodating. It's a pretty great
| example of how to run a community and open-source project, even
| this early on.
| sureglymop wrote:
| Does it support Ctrl+Scroll to zoom? Somehow I got used to this
| years ago and unfortunately not a lot of software supports it.
| Have been using Wezterm until now, which does.
| sionisrecur wrote:
| That's usually a feature of the Desktop Environment. If you
| configure it there then it works everywhere.
| thiht wrote:
| I've been very disappointed with Alacritty (no support for split
| term in favor of tmux) and WezTerm (insane config format, config
| has no business using a full fledged programming language)
| feature wise, so I have high hopes regarding Ghostty, can't wait
| to try it!
| medimikka wrote:
| Config being a programming language has insane advantages. Not
| only can I error check my config in vim or Visual Code, I can
| do insane things with logic that just don't work in other
| config file approaches. My laptop is connected to a 32" 4k
| monitor at work, standalone while traveling, and to a 27" 2k at
| home. WezTerm "knows" that, and sets things such as font size
| and line height automagically.
|
| Even more, I can have split logic based on window size, window
| titles that show me who also checked out a file while I am
| inside an editor, even per-window color and font schemes.
|
| All apps should use something like Lua for their config.
| thiht wrote:
| It's great that you (and many others) find it useful, but I
| genuinely have no idea what this is about. I switch my iTerm
| from my 13" MBP, 32" monitor, and iPad all the time, and I
| don't need any config to make it work. Maybe I just don't
| care enough about this stuff but I don't see what I would
| even configure this way.
|
| Anyway, this is the reason I love the new wave of terminals,
| they bring new stuff on the table and anyone can find one
| they love. I just installed Ghostty and it works as I expect
| out of the box, with even less config (0) than I have on
| iTerm. And it's fast. Now I just hope they'll add a config UI
| some day (one of the reasons I prefer static config files:
| you can't really get a UI with a programming language) and
| I'll be in terminal heaven
| eviks wrote:
| If you don't care about this stuff you'll just as easily
| configure in a static key=value table whatever you like,
| lua doesn't limit you here. It's benefits are all optional
| gigatexal wrote:
| Hmmm this actually has me thinking of looking at WezTerm now
| hah
| gigatexal wrote:
| I have a similar setup could you link your config? Id like to
| adapt it.
| root_axis wrote:
| I've used wezterm for years and have never done anything
| fancy with the config, but this sounds awesome. I'd really
| appreciate it if you could link your config or a similar
| resource.
| jitl wrote:
| I just started using wezterm, my config isn't as mature or
| fancy, but I already found a spot where lua config is
| making me happy. I added a feature so I can command-click
| on Github PR numbers in Wezterm to take me to that PR on
| Github.com. Here's a permalink to the code: https://github.
| com/justjake/Dotfiles/blob/030c5d2b43e944df55...
|
| The way this works in Wezterm is you can add regexes that
| match text in the terminal and format that text as links.
| So, I turn #(\d+) into "GITHUB_PR:$1" and then add a "on
| link clicked" callback to handle that special URL form by
| shelling out to `gh pr view --web $1` in the same working
| directory as the clicked pane.
| zaruvi wrote:
| This is what I love about wezterm. I have a whole system that
| detects lightness and changes themes automatically, and also
| sends commands down to any open nvim instances to switch
| colourschemes there. The only downside is that there is no
| going back for me haha.
|
| Lua is also simple enough that if you want to have a static
| config, you can have a single table that is very json-like.
| Fnoord wrote:
| I solve that by using zellij locally (I use tmux remotely).
| Bonus points: I can close or upgrade Alacritty without losing
| session.
| jakkos wrote:
| > WezTerm (insane config format, config has no business using a
| full fledged programming language)
|
| Insanely good ;)
|
| Being able to quickly script minor functionality into my
| terminal emulator is my favorite thing about WezTerm
| mikkelam wrote:
| I have honestly been so excited to try this after listening to
| several videos of mitchell talking about his work. What a
| christmas present!
|
| A terminal is so dear to us software engineers, and this seems
| like such a love declaration to the terminal.
|
| Time to spend hours tuning my config!
| jedisct1 wrote:
| This is by far the best terminal emulator I've ever used.
| mitchellh wrote:
| <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
| the_mitsuhiko wrote:
| 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 :)
| indigodaddy wrote:
| 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 wrote:
| Wezterm does have tabs, and their related keyboard shortcuts
| are configurable.
|
| See https://wezfurlong.org/wezterm/config/lua/keyassignment/S
| paw... for a starting point in the config.
| indigodaddy wrote:
| Thanks!
| samatman wrote:
| WezTerm has emulated tabs, not OS-native tabs. Some people
| will find that to be enough to suit their needs. Others
| will want 'real tabs'.
|
| For example, I can select a tab in Ghostty, pull it out
| into its own window, and then stick it into another window.
| This doesn't work in WezTerm, nor can you drag them around
| to rearrange them (keyboard shortcuts allow this however).
| nyclounge wrote:
| So is Ghostty a faster version of iTerm2 and it is Linux
| compatible?
| rererereferred wrote:
| iTerm2 has way more features, more than I realistically
| use, but feels slower too.
| onli wrote:
| I'm honestly not sure what a OS native tab is supposed to
| be, on Linux. And I do not see why "emulated tabs" of
| WezTerm couldn't just do the actions that you describe.
| The Firefox tabs do after all, and they do not look like
| they are built according to some (GTK?) tab standard
| (GTK.Notebook?). I'm pretty sure that X11 does not have
| native tabs, while some window manager do. Is there a
| linux standard I'm just not aware of that you are
| referencing here?
|
| Maybe it does not matter, the difference in functionality
| should count. Just highlighting that this messaging might
| not be understandable for linux users. I guess you are
| talking about some macOS thingie that's irrelevant to us.
| wongogue wrote:
| They mean that WezTerm doesn't use the tab widgets of the
| platform's _first-party_ UI tookit.
|
| AppKit/SwiftUI on macOS and GTK/Qt on Linux.
| jyap wrote:
| 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.
| sshine wrote:
| So does kitty.
|
| I agree with the philosophy of no tabs, but I
| simultaneously live in an intermediate desktop environment
| situation where I don't have access to the "right" solution
| yet. So I'm happy to have terminal emulator tabs, browser
| tabs and IDE tabs for lack of a more integrated solution.
| mitchellh wrote:
| We've got native tabs and splits on both macOS and Linux. :)
|
| WezTerm has tabs but they're not native UI elements.
| indigodaddy wrote:
| Right, I was admittedly too lazy to dig far enough with
| wezterm it appears. Was looking for the button to click I
| guess.
| Zizizizz wrote:
| You can click the tabs in wezterm
| GreenWatermelon wrote:
| 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.
| threecheese wrote:
| Interestingly there's another comment ITT complaining that
| they need to use a programming language for configuring
| wezterm :)
|
| As a wezterm user I'll admit that configuring it was mildly
| annoying to start, but ended up feeling like an
| accomplishment. A few years in, it's just another annoying
| program I have to re-remember how to use when i update
| twice a year.
| 8n4vidtmkvmk wrote:
| I don't know Lua either but c'mon now. It's just some
| config. Copy and paste from the docs and tweak the values
| as needed. If you really want to write something funky in
| there, ChatGPT knows Lua. It's not that bad.
| cevn wrote:
| It took me all of 30 seconds to get the Lua config to
| compile from copy pasting the documentation..
| 8n4vidtmkvmk wrote:
| Your data isn't extinguished if you're running wezterm on
| the server too. It'll reconnect.
| gigatexal wrote:
| 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.
| dotancohen wrote:
| 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.
| tessellated wrote:
| I just tried, "tmux bind -n S-Left prev"... works. Thank
| you, good idea. I now have 'S-Up switch-client -n' and
| 'S-Down last'
| whateveracct wrote:
| Konsole is super solid. Just Works.
| rgun wrote:
| I am a happy konsole user. I have bookmarked all the tabs
| relevant to my project, in a folder. As soon as I start
| konsole, I open the folder in tabs.
|
| Then as a ritual (and a bit of OCD), I quickly cycle
| through all the tabs with Shift-Right Arrow once.
| smw wrote:
| Try binding the tmux leader key to '`' (grave accent). This
| changed my life!
| Fnoord wrote:
| jj or qq can also be used. As I once started with GNU
| Screen ages ago, I like prefix to ctrl+a but it
| interferes with going to front of command in bash mode.
| For that, I use vi keybind mode in my shell (fish or
| bash) which feel very natural to me. For zellij, I use
| default prefix so that it does not interfere with remote
| (yes I am aware remote requires double prefix; I prefer
| using tmux remotely and zellij locally).
| bhasi wrote:
| I second this. I wouldn't have been able to make tmux
| such an integral part of my daily workflow if it weren't
| for this binding that I came across in someone's starter
| tmux conf many years ago.
| kombine wrote:
| As a longtime KDE fan I've used Konsole for years and it is
| seriously underrated. However, after I discovered Kitty a
| few months ago, I fully converted and cannot be happier.
| You can also move between tabs using keyboard shortcuts as
| well as move the tabs themselves. What I like about Kitty
| more is its straightforward text file based approach for
| configuration and absence of any gui elements. Konsole's
| GUI and configuration menus are overwhelming and I think
| are in need of a deep redesign.
| jbergstroem wrote:
| 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 wrote:
| 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.
| mixmastamyk wrote:
| Guessing y'all mean search of the scrollback buffers?
| 3r7j6qzi9jvnve wrote:
| (probably, I was also looking for that)
| rainbowjelly wrote:
| Mitchell said it is planned in a recent interview on the
| Changelog podcast[1], just not in time for 1.0.
|
| [1]: https://changelog.com/podcast/622
| fn-mote wrote:
| The kitty method of piping the scroll back buffer to a
| pager is more general - it also seems like a quick fix to
| achieve this desired feature.
| WD-42 wrote:
| I really like how Kitty handles search. I thought it was
| a hack at first - then came to realize why re-implement
| search if less works better?
| levlaz wrote:
| Thank you for making this! I've been waiting to use it for
| quite some time. Really happy to take it for a spin.
| filmgirlcw wrote:
| 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!
| cmgriffing wrote:
| 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
| bioneuralnet wrote:
| 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.
| xrd wrote:
| Wow that's great
| SG- wrote:
| 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...
| cmgriffing wrote:
| Awesome! Thanks!
|
| For anyone else curious about how to configure these, check
| out the docs:
| https://ghostty.org/docs/config/reference#custom-shader
| dsego wrote:
| Will these work on MacOS or does it use metal for the mac
| version?
| cmgriffing wrote:
| I'm using them on a new mac mini. Haven't tried on my
| older intel mac mini yet though.
| dsego wrote:
| Thanks, I managed to enable the shader, I think the glsl
| path needs to be absolute, it doesn't work starting with
| ~ (tilde).
| Blackthorn wrote:
| I use that one as my daily driver. Works great.
| cbushko wrote:
| 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!).
| arghwhat wrote:
| 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`...
| cayley_graph wrote:
| Right, input latency is what matters for me. I'm not seeing
| whether they've measured that in the docs/on Github.
| CalebJohn wrote:
| He mentions input latency[1] as one of 4 aspects of being
| fast that were considered during development. I'm not aware
| of how that was tested, but would trust that it outperforms
| Iterm2 in that regard.
|
| [1] https://www.youtube.com/watch?v=cPaGkEesw20&t=3015s
| imron wrote:
| > 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".
| mitchellh wrote:
| - Ghostty does vsync by default and supports variable
| refresh rates (DisplayLink). If you're on battery and macOS
| wants to slow Ghostty down, it can and we respect it.
|
| - Ghostty picks your integrated GPU over dedicated/external
|
| - Ghostty sets non-focused rendering threads as QoS
| background to go onto E-cores
|
| - Ghostty slows down rendering significantly if the window
| is obscured completely (not visible)
|
| No idea if Alacritty does this, I'm not commenting about
| that. They might! I'm just talking from the Ghostty side.
| imron wrote:
| That's a great approach.
|
| Not sure on the current state of Alacritty, but a few
| years back the suggested solution for users interested in
| battery performance was to switch to a different terminal
| emulator: https://github.com/alacritty/alacritty/issues/3
| 473#issuecomm...
| indemnity wrote:
| This is the Alacritty answer to a lot of queries. I took
| the advice, eventually.
| imron wrote:
| Yep. That comment was when I stopped using Alacritty.
| diggan wrote:
| I, a person who don't care about battery performance one
| iota (because my computer has no battery), love this
| answer and approach. Not every software is for everyone,
| and authors drawing a line in the sand like that works
| out better for everyone in the long-term, instead of
| software that kind of works OK for everything.
| mitchellh wrote:
| In some cases yes. In this case, in my opinion it can be
| strictly wrong.
|
| The GPU requirements of a terminal are _minuscule_ even
| under heavy load. We're not building AAA games here,
| we're building a thing that draws a text grid. There is
| no integrated GPU on the planet that wouldn't be able to
| keep a terminal going at an associated monitor's refresh
| rate.
|
| From a technical standpoint, there is zero downside
| whatsoever to always using the integrated GPU (the stance
| Ghostty takes) and plenty of upside.
| imron wrote:
| More than happy for software authors to draw a line in
| the sand - I've done that myself too.
|
| I just find myself on the other side of the line for
| Alacritty.
| Fnoord wrote:
| Because _my_ computer has no battery. There is a plethora
| of computers out there with batteries who can run Linux,
| Windows, and macOS. These computers can, on paper, run
| Alacritty.
|
| Cherry on top is me being a former user of a MBP 2010
| who'd crash when using discrete GPU (it was _the_ reason
| Apple went with AMD later on). And some apps insisted on
| using it, even when I disabled it.
|
| I like Rust applications but I don't like this response.
| The dev sounds worn out; whereas the dev of Ghostty seems
| to be a pleasure to deal with.
| ayushgun wrote:
| > - Ghostty sets non-focused rendering threads as QoS
| background to go onto E-cores
|
| Assuming you're referring to Apple Silicon chips, how
| does Ghostty explicitly pin a thread to an E-core? IIRC
| there isn't an explicit way to do it, but I may be
| misremembering.
| ec109685 wrote:
| The QoS influences the core threads are placed on
| https://developer.apple.com/documentation/apple-
| silicon/tuni....
| broknbottle wrote:
| You can tell something to run on e-core just not p-cores
| Filligree wrote:
| > - Ghostty slows down rendering significantly if the
| window is obscured completely (not visible)
|
| About this. For whatever reason, I often end up with
| foreground windows (e.g. Chrome) covering the background
| window entirely, except for a sliver a few pixels wide.
|
| Would Ghostty handle this case? I don't believe there's
| any point in full-speed rendering if less than a single
| line of text is shown, but the window isn't _technically_
| obscured completely.
| mitchellh wrote:
| We rely on the OS to tell us when we're obscured, and
| macOS will only tell us if the window is fully obscured
| (1 pixel showing is not obscured).
| tuananh wrote:
| can i configure it to run on dedicated? im on desktop,
| power consumption is not an issue.
| stouset wrote:
| I struggle to understand why any of the above approaches
| would cause any impact worth maintaining a configuration
| flag over.
| epcoa wrote:
| > Missing damage tracking, always painting everything (even
| when the window is a full 4k monitor),
|
| Out of curiosity, what GPU accelerated terminal does this.
| cztomsik wrote:
| +1, no idea.
|
| But maybe to add a little bit of context, "damage tracking"
| means for example, that if there is any ongoing animation
| (like a spinner), then only a small part of the screen will
| be re-rendered (with proper vertex-time scissors, so only
| relevant pixels will be computed). I am not sure if it
| makes sense in the context of a terminal emulator, but it's
| certainly a big issue for any non-toy GUI toolkits.
|
| GPUs are incredibly fast parallel computers, so you will
| likely not observe any perf difference (unless you need
| order-dependent transparency which you don't), but it might
| improve your battery life significantly.
| arghwhat wrote:
| No, damage tracking is important as it about _reporting_
| that you only updated that spinner, which means that your
| display server also knows to only redraw and repaint that
| area, and in turn that your GPU knows during scanout that
| only that area changed.
|
| Without, even if you only redrew your spinner, your
| display server ends up having to redraw what might be a
| full screen 4k window, as well as every intersecting
| window above and below until an opaque surfaces are hit
| to stop blending.
| epcoa wrote:
| Well it sounds like ghostty is like all the other major
| GPU terminal emulators (unless you know of a
| counterexample) and does full redraw, though it appears
| to have some optimizations about how often that occurs.
|
| The power issue might be true in some cases, but even as
| foot's own benchmarks against alacritty demonstrate, it's
| hyperbolic to say it "kills performance".
| mitchellh wrote:
| We do a full redraw but do damage tracking ("dirty
| tracking" for us) on the cell state so we only rebuild
| the GPU state that changed. The CPU time to rebuild a
| frame is way more expensive than the mostly non-existent
| GPU time to render a frame since our render pipeline is
| so cheap.
|
| As I said in another thread, this ain't a AAA game.
| Shading a text grid is basically free on the GPU lol.
| epcoa wrote:
| Perhaps that came across wrong, no shade intended, what
| was meant was that ghostty seems to be like all the other
| mature GPU based emulators. Which means there's no damage
| reporting to a display server or anything like that. I
| don't think it's quite the deal breaker the GGP implies.
| underdeserver wrote:
| 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
| gigatexal wrote:
| 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.
| Fnoord wrote:
| 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?
| PcChip wrote:
| I'm trying to figure out the same thing, sounds like just
| tabs?
| feketegy wrote:
| Ghostty's community is much nicer compared to Alacritty :)
| Fnoord wrote:
| Thanks. I'm interested in seeing examples (of Alacritty
| community not being nice). I'm aware of one now [1] but I
| have not been involved with the Alacritty community much. I
| read/write a few bug reports when the project was born;
| after that it has served me very well (compared to iTerm2
| and Terminal.app). IIRC there was something with ligatures
| but I don't remember.
|
| Thus far I have not been able to get my italic bold font
| (Cartograph CF) working on Ghostty, but this is a minor
| issue.
|
| [1] https://news.ycombinator.com/item?id=42532762
| hitekker wrote:
| One issue I noted was when they advertised poorly
| implemented cross-platform support
| https://news.ycombinator.com/item?id=27079234 and then
| told Mac users to use other terminals.
|
| And then another where one of their maintainers had a
| meltdown and his fellow dev jumped in to protect him
| from... a bug report on the color green
| https://github.com/alacritty/alacritty/issues/1561
|
| This was a few years ago so maybe they grew up since
| then.
| therealfiona wrote:
| 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 wrote:
| Yes we have both as native UI elements.
| howon92 wrote:
| 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?
| dbmnt wrote:
| https://mitchellh.com/writing/ghostty-is-coming
| slimsag wrote:
| 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 :)
| hnlmorg wrote:
| > 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?
| mitchellh wrote:
| https://ghostty.org/docs/about
| reissbaker wrote:
| 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.
| glitchc wrote:
| Thank you for making this. Does it support quake mode? It's
| hard to tell looking at the docs.
| mkl wrote:
| 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 wrote:
| It does, natively.
| worldmerge wrote:
| 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 wrote:
| Stock Terminal.app doesn't do 256 or 24-bit colour, that's
| really the big thing that drew me to ghostty.
| lenkite wrote:
| If the stock Terminal was updated to support nerd fonts,
| extra colors and horizontal/vertical panes - then would
| switch back to it in a jiffy.
| pfg_ wrote:
| Lower inout latency can make something feel faster. I haven't
| measured it but it's possible that's why with ghostty
| samgranieri wrote:
| Thank you for all the hard work you've done and for sharing
| your passion project with us.
| verandaguy wrote:
| 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 wrote:
| https://ghostty.org/docs/about
| verandaguy wrote:
| Thank you!
| redserk wrote:
| 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.
| KolenCh wrote:
| 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 wrote:
| Use the browser's search on the page?
| KolenCh wrote:
| Search through the whole documentation, not just current
| page.
| brandoniscool wrote:
| this guy is a billionaire guys...
| tylerchilds wrote:
| 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?
| freeCandy wrote:
| looks like it does!
| https://ghostty.org/docs/config/reference#font-feature
| pfg_ wrote:
| 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
| gigatexal wrote:
| 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 wrote:
| 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
| gigatexal wrote:
| Thank you!!! Glad to see this.
| tessierashpool9 wrote:
| 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.
| Nekorosu wrote:
| It's surprisingly convenient and works as I expect it to work
| all the time. Fantastic job!
| timvdalen wrote:
| Enjoyed hearing about this on The Changelog recently!
| sambeau wrote:
| 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 wrote:
| 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?
| Daneel_ wrote:
| I'd never heard of it before today, so yeah, my first
| thought was exactly what you postulated. "Cool? Maybe it's
| a tool for generating animations in the terminal?"
|
| *edit - oh, no Windows support for now (my hands are tied
| at work).
| cruffle_duffle wrote:
| On mobile I thought this thing was some ascii art game for
| a hot minute before I tried clicking on the download link.
| Seems silly to admit that but there you have it.
| frereubu wrote:
| Absolutely agree, even if it was just the tagline on the
| first page of the documentation - "Ghostty is a fast,
| feature-rich, and cross-platform terminal emulator that
| uses platform-native UI and GPU acceleration." - underneath
| the "screenshot" and above the buttons on the homepage.
| Emigre_ wrote:
| I've been looking forward to it for a while, I'm really happy
| about this. Thanks for your work on this project.
| mtlmtlmtlmtl wrote:
| 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 wrote:
| 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
| diggan wrote:
| > Given the remote-first container-based world we're
| heading towards
|
| You might want to expand on who "we" are here, because to
| me it seems to be a very small section of developers who
| want a "remote-first" experience and most (if not everyone)
| I speak with want software and tools that work
| local/offline-first, including our dear development
| environment.
|
| If a tool requires a internet connection to work (so this
| "remote-first container-based world" you mention), I don't
| think either me nor many of the developers I know would
| even give it a try, because we need to be able to use our
| tools regardless if we have a working internet connection
| and/or the service-provider has downtime.
|
| In fact, the only ones I know who are using a "remote-
| first" environment are developers who are forced to do so
| by their employer, and it's not a short-list of complaints
| about it when we meet over beers.
| pzmarzly wrote:
| Good point, I also want things to work offline. By
| "remote" here I was also thinking of scenarios like:
|
| - Connecting from Windows/macOS host to a local VM
|
| - Connecting to a build server over LAN (I have a beefy
| PC but prefer to work from my couch)
|
| Both work offline just fine, but from tooling perspective
| you are connecting to remote host over the network
| nine_k wrote:
| Not very small; most corporate non-Windows development
| uses containers, I'd bet on the ratio above 90%.
|
| Not that developers _want_ remote-first experience, but
| they _face_ it. Containers in this regard behave like
| remote systems, even when run locally. A tool that helps
| juggle multiple remote contexts in a sane way may be very
| helpful. Say, tmux does a lot to help, but more is of
| course possible.
| jmorenoamor wrote:
| 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.
| blondin wrote:
| 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 :)
| ksec wrote:
| Congratulations.
|
| On the cross-platform library, I wonder why "libGhostty" and
| not libTerminal. Which seems like a more appropriate in term of
| library?
| jez wrote:
| 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
| mahdihabibi wrote:
| 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.
| dang wrote:
| 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)
| frou_dh wrote:
| I wonder how the colour rendering is. Usually when I configure
| some editor in a terminal to use specific #rrggbb 24bit colours I
| like, the end result does not render the same as in non-terminal
| software (confirmed in the past with an eye-dropper tool).
| 999900000999 wrote:
| Has anyone put up an Arch Aur yet ?
| SG- wrote:
| https://aur.archlinux.org/packages/ghostty
| 999900000999 wrote:
| Thanks!
|
| This is why I love HN. I had already installed from source,
| but this makes updating easier after all.
| gpanders wrote:
| Note the AUR package was removed because it's since been
| packaged in the official Arch repos.
|
| There is a ghostty-git AUR repo for tracking the main branch:
| https://aur.archlinux.org/packages/ghostty-git
| 999900000999 wrote:
| Will Arch auto migrate the Aur package for me, or should I
| uninstall and install from the repo.
| dsp_person wrote:
| AUR not even needed
| https://archlinux.org/packages/extra/x86_64/ghostty/
| guerrilla wrote:
| How... did that get in there so fast? I just updated a couple
| of hours ago and it wasn't there. Now it is.
| 999900000999 wrote:
| I'm assuming it's been out for a while, but out of respect
| package maintainers waited to release it.
| luckydata wrote:
| Could someone give me an idea why I would want to use this
| instead of any other terminal?
| jeremy_k wrote:
| Same request. As someone who uses the standard Teriminal
| application on my MBP I'm wondering what benefits I might find
| from Ghostty
| spopejoy wrote:
| I think "vanilla" terminal users such as myself (e.g. I don't
| do a bunch of screen/tmuxing, I don't code in terminals etc)
| probably are not the target audience.
|
| I've had zero issues with standard macos terminal ( once I
| realized how to speed up key repeat in system settings that
| is), so I assume I don't need this.
| jeremy_k wrote:
| Makes a lot of sense, I fall into the same bucket as you so
| thank you for the response. I use the terminal to start up
| services and issue git commands. Beyond that, not too much.
| luismedel wrote:
| Same club here. I feel comfortable even with the crappiest
| terminal out there, as far as it allows me to write
| commands and read/copy output. Even the terminal in the
| Inferno OS felt good enough for me, like 20 years ago.
| orliesaurus wrote:
| simplicity, feels zen-mode vs a lot of over-the-top-terminals
| these days
|
| also (from the docs):
|
| > Ghostty supports the Kitty graphics protocol, light/dark mode
| notifications, hyperlinks, and more. This lets terminal
| applications like Neovim, Zellij, and others do more than they
| could in other terminal emulators.
|
| Application features are higher-level features that are useful
| for interacting with the terminal emulator itself. For example,
| Ghostty supports native tabs, splits, a drop-down terminal on
| macOS, theme switching on system dark/light mode, etc.
| antirez wrote:
| 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.
| tessierashpool9 wrote:
| 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.
| btheunissen wrote:
| Telling to creator of Redis that they might want to
| reevaluate their respective program logic (Redis) is pretty
| funny, only on HN :)
| antirez wrote:
| Haha, the question makes sense per se but there are
| definitely times where you want to see the output in real
| time. I'm a big fan of printf-debugging :D
| noisy_boy wrote:
| It feels good to hear support for printf-debugging coming
| from such esteemed corner. I have been doing that for a
| significant majority of my career instead of dropping
| into debugger. The side effect is you become pretty good
| at crafting meaningful logs.
| antirez wrote:
| 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.
| tessierashpool9 wrote:
| so, it's convenience. fair enough. i'm just trying to make
| sense of why it is so popular on hn. i often see stuff
| rated to mount everest here and i just don't get it. and
| then i'm wondering is it me? or is it them? am i one of
| those weak engineers who just don't know what's going on?
| that's all.
| robenkleene wrote:
| Since you asked, your point above effectively says "why
| don't you just work around your terminal emulator being
| slow by making more work for yourself?" That's not a
| compelling argument.
| tessierashpool9 wrote:
| not really - the use case mentioned where you suffer from
| a slow terminal is a code smell as far as i am concerned
| dcre wrote:
| No it isn't.
| klohto wrote:
| [flagged]
| dang wrote:
| Please don't be snarky or cross into personal attack.
| We're trying for the opposite here.
|
| https://news.ycombinator.com/newsguidelines.html
| ilrwbwrkhv wrote:
| Really need scrollback search though. Was a bit surprised it
| was launched without that.
| Valodim wrote:
| See https://github.com/ghostty-
| org/ghostty/issues/189#issuecomme...
| bun_terminator wrote:
| The little it says about what this even is seems to be wrong.
| This is not cross-platform at all
| mitchellh wrote:
| It works on both macOS and Linux.
| SG- wrote:
| Windows is a third class citizen when it comes to the
| development world.
| metaltyphoon wrote:
| Lmao this statement is so funny.
| justmarc wrote:
| It's its own doing
| nhumrich wrote:
| In case anyone is wondering, this terminal appears to work just
| great on windows by using WSLg.
|
| I installed on linux inside WSL, then launched it, and it
| looks/works great. Clipboard also works.
| attentive wrote:
| Did you have to build it? On which OS?
| nhumrich wrote:
| I used Arch. It was already in the AUR, but I believe it did
| build from source
| eapotapov wrote:
| Thanks! I did it, but I'm having problems with window resizing
| and mouse selection. When I try to resize the window, the
| actual window is smaller than it appears. Did you encounter the
| same issue? Related issues:
|
| https://github.com/microsoft/wslg/issues/1008
| https://github.com/microsoft/wslg/issues/633
| eapotapov wrote:
| oh, it's actually a problem with ultra-wide screens and there
| is no simple resolution for this and I gave up
| https://github.com/microsoft/wslg/issues/590
| st3fan wrote:
| Looks great. Eagerly waiting to be able to "Use Left Option as
| Esc+" like iTerm has. Without it, it is nearly impossible to use
| Emacs.
| zimpenfish wrote:
| Was just looking for how to configure this globally. You can
| create a keybind for every key[0][1] but that's a bit silly
| faff nonsense in current year 2024.
|
| [0] e.g. `keybind = alt+f=esc:f`
|
| [1] Which affects both option keys, sadly.
| lilyball wrote:
| See `macos-option-as-alt`
| zimpenfish wrote:
| Ah, damn it, I searched for "meta" and completely missed
| that. Apologies to Ghostty!
| lilyball wrote:
| Look for `macos-option-as-alt`. The Ghostty docs use the term
| "Alt" here to mean using the key as a terminal input modifier
| rather than for macOS text input. This setting allows you to
| specify only one option key to use this behavior for.
| samatman wrote:
| I have this as a system-wide mapping with Karabiner. Complex
| modifications, "Post esc if left_alt is pressed alone".
|
| There's never a time when I _wouldn 't_ want this to work, may
| as well enable it everywhere.
|
| Edit: It looks like I misunderstood what that setting in iTerm
| does. But hey if you _do_ want left option to send Esc by
| itself, that 's how to get it.
| rewgs wrote:
| Overall nice, but I'm bummed to be running into some bugs
| regarding a few key binding assignments. Though, I could just be
| missing something due to the somewhat spartan docs.
|
| Given all the time and hype, I'd have hoped that wrinkles like
| this would've been ironed out by launch time.
|
| Back to Wezterm for now, but I'll certainly be checking back in
| at some point.
| sigmonsays wrote:
| any nix users aware of a derivation?
| vluft wrote:
| there's a flake in the official repo that works fine for me
| (nixos unstable)
| jhatemyjob wrote:
| Upon installing this, I went straight for this part of the
| documentation:
|
| https://ghostty.org/docs/config/reference#macos-non-native-f...
|
| Unfortunately the "tabs not working in non-native fullscreen"
| thing is a dealbreaker for me, so I will be switching back to
| iTerm 2.
|
| But Ghostty as a whole looks promising. I like zig, zig-objc, MIT
| license, libghostty, config via text file. I will check back
| every month or so because I really want to use this. But my hate
| for macOS native fullscreen outweighs everything else.
|
| Edit: Ok here we go, this is why it's not implemented:
| https://github.com/ghostty-org/ghostty/issues/392#issuecomme...
|
| There's more than one workaround which is superior in my opinion:
| https://i.imgur.com/iWoqrM0.png
|
| IIRC you can even use AppKit to remove the
| close/minimize/fullscreen buttons, so it would just be a blank
| bar.
|
| You could go a step further and use private APIs / objc runtime
| voodoo to set the height of the titlebar to 0. That might outside
| your design philosophy though.
|
| Also, FYI, clicking the green fullscreen button still uses macOS
| native fullscreen, so you definitely want to disable that button
| (which is a public AppKit API) when you have that option enabled
| block_dagger wrote:
| Nice work! How does this compare to Warp?
| do_not_redeem wrote:
| - open source
|
| - faster
|
| - no AI bloat
|
| - no telemetry
|
| - no obnoxious warning banner if you run without admin access
|
| - no VCs that will enshittify the app in a few years
|
| - doesn't require an internet connection and an account to
| access motherfucking bash on your local machine
| alecthomas wrote:
| Preach!
| c2xlZXB5Cg1 wrote:
| Startup time was very bad until I disabled adwaita with
| gtk-adwaita = false
| YorickPeterse wrote:
| This sounds like an issue with your environment. For example,
| on my Fedora 41 setup Ghostty starts up pretty much instantly
| regardless of the value of this option.
| skerit wrote:
| This is very nice! How do I work around remote SSH shells
| complaining like `Error opening terminal: xterm-ghostty`?
| mikergray wrote:
| https://ghostty.org/docs/help/terminfo#ssh
| SG- wrote:
| https://ghostty.org/docs/help/terminfo
| gregwebs wrote:
| Warp has been meeting all my needs other than tab switching
| behavior. It's not open source but the UX is great.
|
| Switched from WezTerm which was working cross platform but not
| quite as good.
|
| Both are low latency and written in Rust.
| howon92 wrote:
| To people who tried using it, what are the reasons to use it over
| iTerm2?
| jitl wrote:
| It's fast. In the same league as Alacritty and Wezterm, which
| is to say on the doom fire benchmark those terminals can do
| 500fps plus, where iTerm2 does 90fps on my M4 MacBook Pro. In
| practical terms if you use tmux or vim in the terminal, it
| makes a big difference for typing latency and scrolling.
| howon92 wrote:
| Thank you! Interesting, because I haven't perceived "terminal
| performance" as a problem before. I will try it out
| quantonganh wrote:
| Where should I look first if I only get around 160 fps, while
| WezTerm gets 400+ fps?
| dschuessler wrote:
| The parent is probably referring to this benchmark:
| https://github.com/const-void/DOOM-fire-zig/
| Jcampuzano2 wrote:
| I tried it but I just can't jump since it doesn't have support
| the global hotkey to autofocus iterm that I'm so used to.
|
| I tried using their toggle_visibility keybind but it's a bit
| wonky since it doesn't return focus back to another window when
| you toggle away.
| kaycey2022 wrote:
| I just use rcmd for that. But that iterm feature is nice.
| kaycey2022 wrote:
| I am not a very adept terminal user. I just hook in to tmux. So
| all emulators are basically the same for me. Switching windows
| in tmux is much faster than clicking on tabs. ghostty at least
| looks much nicer. It has a lot of built in fonts and themes.
| Command line editing is similar. Man pages for some reason are
| very slow to open in iterm2, but that isn't the case here. The
| only deal breaker for me is that it takes up a lot of cpu (in
| macbook air). Unless there is a simple, non-consequential
| config to change that will fix this, I will stay with iterm for
| now.
| oneeyedpigeon wrote:
| > Switching windows in tmux is much faster than clicking on
| tabs.
|
| Sure, if you're _clicking_ tabs... A fairer comparison would
| be between the keyboard shortcut to switch windows in tmux
| and the native keyboard shortcut to switch tabs.
| kaycey2022 wrote:
| which is prefix+number in tmux. I don't know if you can
| easily jump to a tab with a visible index in ghostty.
| barnabee wrote:
| On Mac at least it seems to be cmd+number
| brcmthrowaway wrote:
| Could GPT5 or Claude written this from scratch?
| throwaway0665 wrote:
| of course not
| loeg wrote:
| In the same sense that a million monkeys on typewriters could
| theoretically produce Shakespeare.
| micahkepe wrote:
| Been trying it out for a few hours and love it! One feature that
| I do miss from Kitty is the cursor trail when your cursor moves
| in a buffer. Excited to see what Ghostty does in the future and
| thank you for a great new terminal!
| petepete wrote:
| Cursor trail?
|
| I've been using Kitty since just about the beginning and didn't
| know it did that!
|
| Edit. Oh I see it's a really recent addition. I'll definitely
| be taking that for a spin.
| makapuf wrote:
| Just want to share what I just realised, but the author is no one
| else than the mitchell hashimoto from hashicorp, so not exactly a
| newbie ! Would it have killed you to let us poor 99% have a bit
| of fun releasing useful projects too? (And also reach a bit of
| your determination, skill and talent)? (no, really, kudos, well
| done and thanks)
| MyKiwi wrote:
| any tips on how to install it if you have nix (without nixos)?
| Cyph0n wrote:
| You can install it as a Flake using plain Nix. See:
| https://ghostty.org/docs/install/binary#nix-flake
| soraminazuki wrote:
| nixGL is also likely required on non-NixOS Linux distros.
|
| https://github.com/nix-community/nixGL
| puttycat wrote:
| What am I missing? Can someone please explain what reason there
| is to switch/build a new terminal when we can use e.g. iTerm ?
| x3ro wrote:
| Proper text-based configuration made me switch from iTerm to
| WezTerm, and i'll give this a try as well :)
| chipsrafferty wrote:
| Yeah or vscode integrated bash?
| nathansherburn wrote:
| I'm still using the built in MacOS terminal. What am I missing?
| I mostly do webdev - maybe terminal features are more important
| for other types of programming?
| dcre wrote:
| Built-in terminal doesn't support truecolor. Many CLI
| programs rely on that to look good.
| herpdyderp wrote:
| What CLI programs? I have yet to run into any issues after
| using the built in terminal for its entire lifespan.
| oefrha wrote:
| You wouldn't realize because 24-bit colors are silently
| dropped. You don't get the full experience but you also
| won't "run into any issues", unless you start using
| something that relies on 24-bit color coding for core
| functionality, like my own log viewer.
| dcre wrote:
| As an example, here is the Helix editor (neovim looks
| just as bad) in Terminal.app vs. ghostty (would look just
| as good in any other modern terminal).
|
| https://imgur.com/a/terminal-app-left-vs-truecolor-
| tddRL0C
| xoa wrote:
| I appreciate you making an effort to visually display
| things, but FWIW I don't think that (or sibling) really
| gets to the root issue, which is less of capability then
| practical convenience and compatibility. Mac native
| Terminal perfectly well supports 256 colors (or arbitrary
| 16 colors with themes), which I've used, so you could
| absolutely make both sides look identical there. Unless
| someone is regularly viewing photos inside their terminal
| (which some do support and can actually sometimes be
| handy!) then it might not be immediately clear what
| 24-bit would bring to the table over 8-bit, regardless of
| editor or shell themes.
|
| But in practice 24-bit was an easy lift for terminals
| under active development ages ago, and in turn made it
| trivial to have everyone across any platform specify
| exact colors more easily without any end user
| customization or arguments about "not quite what I
| wanted" in an 8-bit palette or whatever. Thus a lot of
| the ecosystem now makes use of it. Being able to
| replicate anything yourself, or get close enough, in a
| smaller colorspace is still extra grunt work for no
| particularly valuable reason, and could actually add up
| to be fairly significant work if one has a lot of more
| complex code coloring themes and such.
| dcre wrote:
| My example is precisely about practical convenience. If I
| try to do something very normal in Terminal.app, namely
| use a text editor with a theme, it will look like
| garbage.
| gpanders wrote:
| Apple Terminal has a lot of problems. As others have
| mentioned, it lacks support for 24 bit color, enforces
| minimum contrast ratios without any ability to disable them
| (meaning you cannot set arbitrary color themes), is
| hopelessly bad at Unicode rendering (particularly with multi-
| codepoint graphemes, see [1]), and in general misbehaves in
| other myriad ways [2][3][4].
|
| With both Ghostty and iTerm2 now freely available, there's
| really no reason to use Terminal.app.
|
| [1]: https://mitchellh.com/writing/grapheme-clusters-in-
| terminals
|
| [2]: https://github.com/neovim/neovim/issues/26093
|
| [3]: https://github.com/neovim/neovim/issues/28776
|
| [4]: https://github.com/neovim/neovim/pull/28453
| setopt wrote:
| Personally, my main reason to prefer Kitty over Terminal.app
| are (I believe Ghostty support all of them as well, so
| looking forward to try it out):
|
| - "Kitty Keyboard Protocol" means that a TUI app can detect
| _all_ keybindings. For example, if you install kkp.el in
| Emacs, then Emacs running in a terminal will pick up
| ctrl+shift keys, super keys, etc. on par with a GUI app. I
| believe NeoVim supports this out of the box now as well, so
| if you ever felt like binding Cmd+S to :w <cr> you now can. -
| "Kitty Graphics Protocol" means that I can let e.g.
| Matplotlib show images _inside_ a terminal, even over SSH
| connections. If you're annoyed at pop-up GUI windows, or
| struggling with viewing remote images often, this is a nice
| workaround. There are even attempts at making terminal PDF
| viewers (like termpdf.py); IMO that's a game changer, even
| though the app itself is still in a "proof of concept" stage
| IMO. - Terminal splits. If you work a lot in a terminal, it's
| nice to be able to full-screen a terminal and view many
| different shells or processes side-by-side. Last I checked,
| Terminal.app just doesn't have this feature. Sure, you could
| use multiple windows or a multiplexer like tmux, but that
| comes with different trade-offs; for example, a native
| terminal offers smooth scrolling with a trackpad whereas tmux
| doesn't. Personally, I use tmux remotely, but stopped using
| it locally. - I see a lot of people mention 24-bit colors as
| a main reason to not use Terminal.app. For me, I'm actually
| pretending that I have a 16-color terminal, because I'm tired
| of having to theme every command-line utility individually,
| I'd rather they all just respect my 16 chosen colors instead.
| The only exception is my editor, just because there are
| unfortunately few good 16-color themes these days, so I
| instead change my terminal program to be consistent with my
| editor theme and then let every other TUI utility believe the
| terminal only supports 16 colors to match.
| jitl wrote:
| I was using iTerm up until about a week ago when I unboxed a
| new Mac and decided to test out alternatives while setting it
| up. Ghostty wasn't out yet so I started with Wezterm, and was
| shocked to find how much it's speed improved my terminal
| experience. Typing latency is much better in nvim, and
| scrolling is vastly improved in nvim and tmux.
|
| Ghostty feels like a Mac app like iTerm2 while being fast and
| having fewer features. Wezterm feels more like an app ported
| from Linux, but has a much richer config system and features
| like build-in multiplexing which means it's replaced tmux for
| me - while keeping all my tmux keybinds.
| herpdyderp wrote:
| Is iTerm2 noticeably slow? I just use the built in Terminal
| app and I can't imagine "speed" being a reason to switch away
| from it. (There is no lack of speed.)
| whoisstan wrote:
| Same, I use it all the time and never perceived it as slow.
| I am not a tmux user, maybe the speed is noticeable when
| using more complex terminal apps like that?
| 1-more wrote:
| The reason I switched from iTerm2 is it took multiple
| seconds to resize a window on macOS. I use Rectangle to
| resize windows, and by default my shortcut for "put this
| window on the left half" cycles through window sizes when
| the window is already on the left. So a common workflow is
| to tap Hyper-J to move a window to the left half, then make
| it the left third, then the left two thirds of the screen.
| This is fine for any text editor or browser, but iTerm2
| would beachball while I waited multiple seconds for it to
| resize the window.
|
| Wezterm moves instantly.
| peanball wrote:
| I've noticed that too when the scroll back buffer is
| particularly long. iTerm seems to then reflow from the
| beginning, which can take a while.
|
| I keep using a lot of fresh tabs all the time and iTerm
| resizes instantly via Rectangle for me.
|
| Ghostty was a bit more sluggish in resizing on an Intel
| Mac than iTerm in the current latest versions.
| drewbitt wrote:
| No, iTerm is not slow. Ghostty is not noticeably faster in
| any of my workflows. I am sure Ghostty is faster in some
| use case, but it's nothing I regularly do or have noticed.
| oefrha wrote:
| Do you have a lot of triggers set up in iTerm 2? IMO that's
| what kills performance.
|
| I can understand being frustrated about latency on older Macs
| -- I used to run Alacritty for certain tasks on my Intel Macs
| for that reason. But on newer Macs like a new M4 Pro I'm back
| to 100% iTerm 2 again. I can't fathom having latency problems
| with iTerm 2 on a new Mac you just unboxed.
| paustint wrote:
| Mitchell has a 5 min lightning talk discussing performance
| of ghostty which is worth a quick watch
| https://www.youtube.com/watch?v=cPaGkEesw20&t=3015s
|
| It's one of those things that you don't realize how poor
| the performance is until you experience something better.
|
| Mentioned from his blog:
| https://mitchellh.com/writing/ghostty-is-coming
| oefrha wrote:
| > It's one of those things that you don't realize how
| poor the performance is until you experience something
| better.
|
| No, it's one of those things I've tested myself
| extensively and arrived at my own conclusion. Which I
| already mentioned in the comment you responded to.
| 0x6c6f6c wrote:
| The performance talk is about ghostty, which you did not
| mention trying. You mention alacritty, which is GPU based
| and offers good performance, but you're quick to rebuttal
| on unrelated projects.
| oefrha wrote:
| I only settled on Alacritty after giving all the new and
| supposedly fast terminal emulators a spin (at least a day
| for various tasks).
| eviks wrote:
| Iterm is slow
| reconvene1290 wrote:
| Why create new art when we already have galleries full of it?
| nickorlow wrote:
| Any Alacritry users have opinions on this? I've been waiting for
| its release and am looking forward to trying it. Wonder what the
| big differences are?
|
| I mostly appreciate Alacritty's simplicity and use tmux to manage
| multiple windows/panes.
| wonger_ wrote:
| In my experience, Alacritty had a few bugs / unimplemented
| features that broke certain TUIs. Ghostty seems to be the most
| complete / least broken terminal emulator.
| jitl wrote:
| You should also check out Wezterm too and see which one you
| like more. I ported my tmux keybinds to Wezterm - including
| vim-tmux-navigator style ctrl+{h,j,k,l} for navigating between
| nvim splits and Wezterm splits, ctrl-a as tmux leader. Getting
| tmux out of the way between terminal and nvim noticably
| improved scroll feeling in nvim and just in shell scrollback
| too.
|
| I styled Wezterm's tabs to look just like my tmux tab bar too,
| there's no visual difference for me between a Wezterm window
| with Wezterm tabs, and a Wezterm window with tmux tabs. If
| you're more of a terminal native than a Mac native, I think
| you'd enjoy it.
|
| My wezterm config:
| https://github.com/justjake/Dotfiles/blob/new/config/wezterm...
| nickorlow wrote:
| Does wezterm (or any other terminal emulator) have some way
| to attach to a session over ssh or over multiple ttys? It's
| the main thing stopping me from jumping ship.
| jitl wrote:
| Yes, Wezterm has this.
| https://wezfurlong.org/wezterm/multiplexing.html
|
| I haven't used it yet, and it requires you install Wezterm
| on the remote. Ideally Wezterm could push a mux server
| executable to the remote host if needed.
| abound wrote:
| I tested it out really quickly, and something is off with
| Ghostty's font rendering on my machine -- there's extra
| vertical space between lines. I didn't see any config options
| for adjusting the line height, just things like `adjust-cell-
| height`, which squished the whole font, and `adjust-font-
| baseline`, which moved everything up.
|
| I tried a few searches ('line height', 'vertical spacing') on
| the GH issues for the project [1], but didn't see anything. I'm
| sure it's a simple config option or something with my font, but
| it works out-of-the-box on Alacritty + xterm and others.
|
| I might file an issue if I can nail it down a bit more.
|
| [1] https://github.com/ghostty-org/ghostty/issues
| vesche wrote:
| I was using urxvt for about 10 years and then I switched to
| alacritty about 5 years ago. Have had the best experience with
| alacritty- runs on all my systems, super fast, config is great.
| That being said, I'm gonna give ghostty a well-deserved test
| drive. I like it a lot so far. Love seeing more zig apps!
| ComputerGuru wrote:
| Urxvt causes(d) my laptop running Ubuntu to sporadically but
| spontaneously power cycle, presumably due to bugs in the
| graphics drivers. Iirc it happened under Nvidia and Intel.
| metaltyphoon wrote:
| Why is the CLI args so weird with the + sign?
| slantedview wrote:
| Congrats on the release! I'm excited to try this out.
| elashri wrote:
| I have been waiting to try this out for sometime now. I recently
| tried various terminal emulator tools and I settled on wave
| terminal. This is a list of these tools for reference. I would
| list tools that are on both MacOS and Linux which is comparable
| to this new emulator. But also because I did not try any on
| windows.
|
| - Alacritty (https://github.com/jwilm/alacritty)
|
| - waveterminal (https://github.com/wavetermdev/waveterm)
|
| - Hyber (https://github.com/zeit/hyper)
|
| - Kitty (https://github.com/kovidgoyal/kitty)
|
| - Rio (https://github.com/raphamorim/rio)
|
| - Tabby (https://github.com/Eugeny/tabby)
|
| - Wezterm(https://github.com/wez/wezterm)
|
| - Contour (https://contour-terminal.org)
|
| - Extraterm (https://github.com/sedwards2009/extraterm)
|
| - Warp (https://www.warp.dev/)
|
| I didn't like that Warp is VC product as I don't like essential
| tool like a terminal in my workflow to be dependent on
| proprietary VC product.
| xbeta wrote:
| Great stuff! Does it have a Session/Workspace concept? Maybe we
| can learn from how Alacritty does it integrating with tmux?
| cornel007 wrote:
| Congrats! I'm curious what the main reason is you ended up going
| with the MIT license over GPL. Is it because of potentially
| integrating Ghostty with VS Code like you mentioned during Zig
| showtime a year ago?
| needlesslygrim wrote:
| I'm also interested in why the MIT license was chosen. I guess
| it's because of the plan to create 'libghostty'?
| Zetaphor wrote:
| Sadly another terminal that doesn't seem to support "Quake style"
| dropdown (that I can find)
|
| Having my terminal session available on a hotkey has become a
| critical part of my workflow
| SG- wrote:
| except it does? View -> Quick Terminal.
| Zetaphor wrote:
| I've built from source on Linux, I don't use MacOS.
| Zetaphor wrote:
| This just doesn't seem to work :(
|
| quick-terminal-position=top quick-terminal-screen=main
| quick-terminal-autohide=false
| keybind=f9=toggle_quick_terminal
|
| Edit: Joined the discord, turns out this feature is MacOS
| only :/
| gpanders wrote:
| It's a macOS-only feature, for now.
| tristan957 wrote:
| GTK does not support the Wayland protocol to implement a Quake
| style terminal.
| IceDane wrote:
| I think this being part of the terminal is sort of weird. I've
| had this functionality in my window managers for years. First
| xmonad, now awesomewm. It's called scratch pads.
| PMunch wrote:
| Cool to finally see a 1.0 release of Ghostty! Will definitely
| check it out. One very strange and niche question though, do you
| support font switching with SGR escape codes? After the Monaspace
| font family was released I made a PR to Vim to support
| highlighting by font switching, but I've yet to find a terminal
| emulator to my liking that supports it. I'm building an eink
| laptop and its monochrome display requires some neat tricks like
| this to get the most out of the device.
| hysan wrote:
| I might give this a shot but using GTK4 makes me think this won't
| live up to the "native" claim on Linux. It will likely feel out
| of place on non-GTK DEs with KDE being the big one. And yes, I
| did read the about page disclaimer about Linux but strongly
| disagree about calling GTK4 the closest thing. That's a very
| GNOME-centric view (e.g., ignores the rest of the Linux
| ecosystem) and makes me worry that any issues on other DEs will
| be ignored/deprioritized. It's possible that I'm wrong and that a
| sizable population of the closed beta Linux users we're on KDE,
| but without knowing, I'm very hesitant and put back by the
| "native" claim (it feels disingenuous).
| happens wrote:
| Does "native" exist on Linux, in your opinion? Feels to me like
| both QT and GTK (and maybe iced if cosmic comes to fruition?)
| could be considered native (or none of them can, depending on
| your point of view).
| hysan wrote:
| I'd answer this differently depending on when you ask. 10
| years ago (random, but long enough number) I would have said
| an easy yes. Both GTK and QT would have been acceptable
| toolkits to use as the cross DE issues weren't that many and
| bugs got fixed. Ask me a few years ago and I'd waver. It
| wasn't clear how ecosystem friendly GTK4 would be, so I might
| have optimistically replied the same. But caveat it with a
| "maybe support both X11 and Wayland." But ask me now and I'd
| say to earn the label *Linux native*, you would have to
| support a lot. GTK4 has proven to not play well with other
| DEs. The jump to Wayland has caused a fairly significant
| split in DEs (this year has greatly closed the gap with many
| showing great progress in supporting Wayland) which means
| some apps may not work on your DE of choice. And overall, I'd
| be hesitant to claim that any app is truly *Linux native*
| because installing an app no longer guarantees that it'll
| just work and look and feel right. You'd need to have builds
| GTK4 & QT, and make sure that they work in both X11 and
| Wayland for the next few years. When I look for apps
| nowadays, I tend to append my DE and/or distribution to my
| search. I currently think it's more truthful (on Linux) to
| say that an app is native to a DE instead of to Linux.
|
| Note: I don't think GTK4 is bad. One of the best parts of the
| Linux ecosystem is that we have a lot of great DEs that have
| gradually differentiated themselves by UX. GTK4 not playing
| well with others is in part due to how different GNOME's UX
| is. The toolkit is meant to serve one DE paradigm now and
| that's led to higher quality on that DE. The drawback to that
| diversification is that there is no easy way to support all
| DEs. Your toolkit drives what you support (unless you go out
| of your way to fix things that GTK4 isn't fixing - which is
| why I put that bit about seeing how KDE issues would be
| addressed). The word "Linux", now more than ever before,
| describes an ecosystem (or kernel) rather than an operating
| system.
| ComputerGuru wrote:
| > You'd need to have builds GTK4 & QT
|
| Isn't this just a long about way of saying "no"? Very few
| frameworks let you flip a switch and build against Qt OR
| Gtk.
| docandrew wrote:
| FWIW I just tried on KDE (built from source on NixOS) and had
| some weird cursor dpi issues and GDK errors. Looks like it is
| tailored more for GTK-based DEs for now.
| AMD_DRIVERS wrote:
| all GTK apps have the weird cursor issue on KDE if you're
| using scaling - I believe it's due to how GTK (and GNOME)
| handles fractional scaling as compared to QT (and KDE).
| Install the Bottles Flatpak and you'll see the same issue.
| dismalaf wrote:
| Gnome is becoming the de-facto Linux DE. It's standard on
| Ubuntu, Fedora, RHEL, Suse and Debian.
|
| KDE is standard on what, Steam deck? Every enterprise-y distro
| ditched it some time ago...
| hysan wrote:
| Hasn't Suse been KDE by default since... as long as I can
| remember? Debian defaults to GNOME but it lets you pick the
| DE in the installer IIRC (haven't installed Debian in a long
| time since I just use it for servers). Last I heard, Fedora
| is making KDE an official supported DE. You're also leaving
| out other popular user-centric distros like Mint which don't
| use either DE (toolkit it GTK but the UX paradigms makes it
| so just about any toolkit means that it'll look & feel right
| on Cinnamon).
| dismalaf wrote:
| Suse has had Gnome as the only supported DE for 5ish years
| now. They don't even support KDE at all. Talking Suse as in
| the commercial distros. OpenSuse has choice of DEs like
| most.
| hysan wrote:
| Gotcha. So you really meant enterprise only. Not a tongue
| in cheek answer (which I thought was a way of just
| grouping all suse-related distros). To me, that's not the
| context for a user oriented product. Any reasonable
| person looking at a developer tool and listening to that
| pitch isn't thinking pure enterprise. So I think that's
| not a good interpretation of what I find disagreeable
| with calling a GTK4-only app "Linux native."
|
| Also, I thought opensuse (or whatever new name they're
| using) was KDE default but with a choice (like Debian)?
| At least that's what DE I got last time distro hopped to
| it. Which is why I don't consider either as an example of
| why GNOME would be the "de-facto standard."
| dismalaf wrote:
| It means what people actually develop, support and use in
| the real world. KDE has no real support. Suse, Red
| Hat/IBM and Canonical all develop and support Gnome which
| is largely what has made it so polished.
|
| Also, I'd wager Gnome is absolutely used by 90% or more
| of Linux users.
|
| > Also, I thought opensuse (or whatever new name they're
| using) was KDE default but with a choice (like Debian)?
| At least that's what DE I got last time distro hopped to
| it.
|
| Depends "which" openSuse. OpenSuse Leap is going away
| since Suse (the corporation) is doing away with non-
| immutable distros. Whether it keeps KDE remains to be
| seen as MicroOS has lots of issues with KDE. Tumbleweed
| has KDE as the first choice still, but it's basically
| hobbyist-only from this point since there's no equivalent
| Suse distro. Aeon is Gnome-only.
| a_e_k wrote:
| For Fedora, at least, there's been a recent proposal to
| upgrade KDE to the same status as Gnome.
|
| https://www.phoronix.com/news/Fedora-KDE-Desktop-Promoted
| FergusArgyll wrote:
| KDE is standard in my house
| aidenn0 wrote:
| It is almost impressive how much worse a GTK4/Adwaita
| application is compared to a GTK2 application. I just tried
| this and it has a fucking hamburger menu in a desktop
| application. If that ever becomes what is considered "native"
| on Linux I will abandon it after using it for 25 years.
| tristan957 wrote:
| You are free to take libghostty and create an XApp app
| runtime for it, or even fork it and do what you want. Just
| because you don't like something does not make it worse.
| aidenn0 wrote:
| Oh, GhostTTY is a _great_ project. I also agree that some
| flavor of Gnome is the default out of the box on most
| distros. I 'm bemoaning that fact, not the existence of an
| excellent terminal library and 3 frontends for it that I
| will never use.
| tristan957 wrote:
| GTK-based desktop environments: GNOME, Pantheon, MATE, Xfce,
| Cinnamon
|
| Qt-based desktop environments: KDE, LXQt
|
| Iced-based desktop environments: COSMIC
|
| By going GTK, you support 5 desktop environments. If you really
| don't like GTK, just build a Qt app runtime with libghostty.
| Lots of people want a Qt version.
| bogantech wrote:
| Looks really out of place for me on KDE, big fat gnome title
| bar and buttons etc...
| navigate8310 wrote:
| Any love for Windows. I'm getting restless to ditch putty but
| unable to find any good emulator that has select and login style
| of management screen.
| karmakaze wrote:
| > Windows support is planned after the 1.0 release.
|
| This really does aim to be _the_ terminal for all.
| metaltyphoon wrote:
| When on windows I have been happy with WezTerm
| baaym wrote:
| Apparently it works great on WSL
|
| See this other user's comment:
| https://news.ycombinator.com/item?id=42518033
| 38 wrote:
| For the 10th time WSL is not windows, it's a Linux emulator.
| ComputerGuru wrote:
| I ditched putty a long time ago. Conemu is better than putty
| these days (latest Windows 10 or Windows 11 if you're unlucky
| enough).
|
| I don't like the "feel" of the new Windows Terminal "app" but
| it is more "modern" and "capable" (running a newer conhost
| under the hood).
|
| But if you're willing to use non-standard software then
| WezTerm, Alacritty, and Kitty (WSL with an XServer) are all
| good options.
| emmelaich wrote:
| Already in homebrew if you want to use that!
|
| I'm very new to Ghostty and went looking for my favorite theme
| "Solarized Light"; it's listed as "iTerm2 Solarized Light" -- in
| contrast (heh) to "Solarized Dark"
| RainyDayTmrw wrote:
| As someone who uses the default terminal app, I'm curious to
| learn about other people's use-cases where the choice of terminal
| app makes a difference and how.
| naikrovek wrote:
| I am not sure how to answer this.
|
| Why choose a non-default anything? It feels like deeper down,
| you're asking why anyone chooses anything.
|
| These terminal emulators all behave slightly differently and
| have different strengths and weaknesses. Some are configurable.
| Some are programmable. Some feel "right". Others can be made to
| feel "right". Etc.
|
| Why use any non-default application? Same answer for terminal
| emulators.
| wiseowise wrote:
| This is a very specific question.
| oneeyedpigeon wrote:
| > These terminal emulators all behave slightly differently
|
| That's the point. Different browsers or word processors
| behave _completely_ differently. They were asking what
| differences there are between this and other TEs.
| robinsonrc wrote:
| Lack of true colour support was the first thing that got me
| looking at other options
| matwood wrote:
| This. I try to stick with the built ins, but lack of true
| color on Terminal.app is annoying. I wouldn't consider myself
| an advanced terminal person, but I do all my git interactions
| using the terminal and like it to look nice.
| m1keil wrote:
| I really like to copy on select in the terminal. Terminal.app
| used to have a hack available to add this feature in, but since
| SIP days, it is no longer possible.
| barnabee wrote:
| My most used "unique" feture of WezTerm and one of the main
| reasons I'd struggle to move to any of the alternatives is
| quick select mode[0] which massively speeds up copying or
| typing file names, hashes, IDs, etc. from the output of
| commands.
|
| [0] https://wezfurlong.org/wezterm/quickselect.html
| themadsens wrote:
| Very impressed with ghostty so far, but: Main reasons for
| sticking with ITerm2 (for the moment at least):
|
| - "Seamless" cut & paste with paste on "2 X right click" +
| "Trim trailing LF"
|
| - Quadruple click "Smart selection"
|
| - Brillant search with highlighting in text and scrollbar
|
| - Support for OSC-1 "icon titles" in tabs, as opposed to OSC-0
| "header title"
| cranberryturkey wrote:
| no windows version?
| pzo wrote:
| Landing page and github README could improve:
|
| - picture or gif is worth a thousand word
|
| - it mentioned its cross-platform but I don't see support for
| Windows or Android - its better make it explicit it's only for
| macOS and Linux. Yesterday was looking for some nicer terminal on
| Android and was hoping ghostty could work.
|
| - I like simple landing pages but this... is too simple and not
| much useful (only 2 buttons and ASCII image. Why even bother with
| such landing page and not just stick with github README?
|
| - it doesn't provide me any fast information how to compares to
| different terminals and why I should switch from Warp
| grantcarthew wrote:
| I disagree, the landing page is just fantastic.
|
| I like the product as well, however, I need to use it for a
| week to comment.
| punkspider wrote:
| I think it would help if there were more information about
| it, along with demos, to clearly communicate what it's about.
| At the moment I'm still confused because I see Ghostty has
| gotten so much attention, and I'm not clear why it's special.
|
| I am sold thanks to the author's authenticity, but if I had
| not seen this, I wouldn't know what I'm looking at. So I
| think it would be very helpful if there were more info on the
| landing page.
| srik wrote:
| Performance of course but native is a big part of ghostty's
| appeal; there's an article by a neovim dev that expands on
| that native part a bit - https://gpanders.com/blog/ghostty-
| is-native-so-what/
| tapirl wrote:
| I have to enable JavaScript to make it load. It seems the
| animation on the page requires JavaScript. So, I agree with
| @pzo that a GIF would be better in this case.
| kelvinjps10 wrote:
| Cross platform doesn't mean every single platform, and it is
| not common of terminals supporting android
| bigstrat2003 wrote:
| It's true that you wouldn't normally expect a terminal to
| support Android, but generally one _does_ expect "cross-
| platform" to mean Linux, Mac, and Windows.
| someothherguyy wrote:
| A noscript tag on the landing page with a link to the
| repository's readme would be appreciated (or ssr the react).
| There are a small number of users who don't enable javascript
| for every domain.
| tsrez wrote:
| This is such a cool project, looks amazing!
| kaycey2022 wrote:
| I love the terminal. But I'm seeing relatively high CPU usage.
| Maybe there's some non default setting that can reduce that?
| AndyKelley wrote:
| Are you perhaps hitting this KDE bug?
| https://bugs.kde.org/show_bug.cgi?id=497341
| kaycey2022 wrote:
| I'm on macos
| casey2 wrote:
| It's pretty slow and buggy for me idk
| iambvk wrote:
| Does this support the non-standard key-press, key-release, etc.
| events proposal by kitty project? They are necessary for _nicer_
| terminal UI projects.
| mitchellh wrote:
| Yes.
| iambvk wrote:
| Cool. Thanks.
| dr_kretyn wrote:
| [flagged]
| lawgimenez wrote:
| The description is in the documentation. What's the trouble by
| clicking on it? It won't take a second.
| dr_kretyn wrote:
| I don't know whether it's going to take a second or half a
| minute. I also don't know whether there will be an answer on
| the first page, or there's going to be a cute image and then
| I'll need to find "Getting Started" to learn how to get
| started with unknown project. My subjective experience on the
| internet is that if the gate isn't labelled, there's unlikely
| value on the other side.
| tptacek wrote:
| People who are interested in this are talking about it
| because they're interested in it. Nobody is trying to
| convert you.
| abenga wrote:
| People who are interested in things learn about them at
| different times. You make it seem like it's "learn about
| it at the outset or gtfo".
| halostatue wrote:
| And it might be that next month there's a different
| homepage with more details. For a launch where all
| "marketing" has been via blog post, discord, and
| discussions across various nerdy social media sites...I'm
| more than happy for them to have some fun to celebrate
| this.
|
| There are people who have been watching this for a few
| months waiting for it to go 1.0 -- and, at least on day
| 1, "if you know, you know."
| lawgimenez wrote:
| Whatever dude, you hating because of a missing label on the
| intro page.
| twoparachute45 wrote:
| > I don't know whether it's going to take a second or half
| a minute.
|
| You know how you could find out how long it's going to
| take? By clicking the button. It's free. It's easy. Hell,
| it would've taken you less time to click that single button
| and read the first sentence than it would have taken you to
| post this comment.
|
| You didn't even bother to spend half a second actually
| opening the documentation page and then you come here
| complaining about how you don't know whats in the
| documentation. This is entirely a problem of your own
| creation. What gives?
| reanimus wrote:
| > I hate things in "if you know then you know" category. This
| is one of them.
|
| > Documentation? Reading a manual for an unknown thing?
|
| Well. Yes? Maybe I'm assuming too much, but I feel like the
| target audience here (terminal emulator 'enthusiasts') either
| know about this already or are totally willing to go over to
| the manual to read what it is. The very first section upon
| opening the documentation explains it succinctly: Ghostty is a
| fast, feature-rich, and cross-platform terminal emulator that
| uses platform-native UI and GPU acceleration.
| chooma wrote:
| I wouldn't word it that strongly, however I would've like to
| see the first line of the documention on the homepage :)
|
| I'll give it a spin later, looks interesting.
| mitchellh wrote:
| This isn't a company, I'm not trying to convince you to use it,
| this is more of a personal art project. If that doesn't vibe
| with you that's completely fine. You're happy to not use it.
| I'm happy whether you use it or not. It's all good mate.
|
| (The first sentence in the docs page does explain what it is
| but if that's too much for you, it's all good.)
| dr_kretyn wrote:
| Fair. And I'm not here to convince you to cater to everyone.
| The explanation might be on the first page of the doc, but
| unless you click on it, you won't know. My prior experience
| is that docs don't necessarily tell "what" but rather "how"
| which means that you need to know why you're there. Their
| weight also varies. Thus, I learned to not speculate how many
| clicks and real time it's going to take me to learn about the
| project. If the author doesn't want me to know it, I won't be
| digging into it.
|
| I enjoy personal projects and if you're saying that this is
| your personal - all the best! Given high praise count it's
| likely very good.
| Udo wrote:
| > You're happy to not use it. I'm happy whether you use it or
| not.
|
| I think you misunderstood the OP. The criticism was about the
| landing page, not the project.
|
| And _fwiw_ , it's not unwarranted. Putting the words
| "terminal emulator" somewhere on the page would make less
| people bounce off. You may be fine with them bouncing off,
| but still, I think it was meant as constructive criticism.
| geodel wrote:
| > I hate things in "if you know then you know" category.
| This is one of them.
|
| A little too constructive I guess.
| Udo wrote:
| You're right, maybe I read the post a bit too charitably.
| torstenvl wrote:
| It's constructive criticism. You don't have to respond with
| "Well get fucked then"
| hombre_fatal wrote:
| It's okay to filter people out who are too uninterested to
| click a "Documentation" link yet vocal enough to come post
| about it.
|
| It works for https://www.midjourney.com/home and apparently
| this project too with its 1100+ upvotes.
| torstenvl wrote:
| No, it isn't okay to filter people out for giving helpful
| feedback solely because you don't like the feedback.
|
| It's _especially_ not okay to be so rude on HN. "Please
| don't post shallow dismissals"
| btheunissen wrote:
| The original commenter posted a shallow dismissal by
| putting the effort into posting a comment without
| clicking a single button on the page :)
| torstenvl wrote:
| No. He didn't post any kind of dismissal at all.
| twoparachute45 wrote:
| The feedback provided wasn't helpful. You're absolutely
| correct in that shallow dismissals aren't kind, but
| you're wrong about who was shallow and who was not. OP
| didn't dismiss anyone, nor was their comment shallow. And
| they don't owe you or anyone else anything as far as
| "explanation" goes, and they can filter out whoever the
| hell they want. Click the link and look further, or
| don't.
|
| Meanwhile, dr_ketyn's comment was both rude and not
| constructive in the slightest (here's a tip: starting
| feedback with "I hate this" isn't constructive or kind).
| dmkolobov wrote:
| I would think, or hope, that this guideline is geared
| towards protecting a years-long effort such as writing a
| performant, feature-rich terminal emulator, rather than a
| comment which takes 5 minutes max to draft.
|
| Not clicking on a documentation link on a technical
| project is the definition of a shallow dismissal in my
| opinion.
| torstenvl wrote:
| No. The rule is about protecting a culture. Having a
| brief description on the front page is an eminently
| reasonable suggestion. Mitchell's response was a shallow
| dismissal _of the person_ (calls out "you" five times in
| six sentences) and was against site guidelines.
| dmkolobov wrote:
| Which culture would that be? Starting off a post with "I
| hate things... this is one of them"?
|
| I think the discussion here would be different if the
| tone was more moderated. Seems like you're dying on a
| hill for the right to be abrasive without consequence.
| dbmnt wrote:
| But... don't you want people to use it? You seem passionate
| about it otherwise.
|
| I'll admit, I almost didn't click past the animation either.
| I did, and the doc quickly answered "what is it?", but why
| not just put that sentence on the landing page? I don't get
| the unnecessary obscurity either.
| btheunissen wrote:
| I think the documentation does a very good job in the first
| sentence of describing the project. Not sure why the tone of
| the commenter was so offended they had to click on a single
| button to find that.
| unsungNovelty wrote:
| I had the same problem. I digged through it only cos it was
| #1 in HN so I knew something's up. If I had come across this
| any other way, I wouldn't bother looking past the home page.
| I don't think you have to be selling the project (financially
| or otherwise). But you will lose a lot of potential users cos
| you didn't add the description you have in docs right there
| in the home page.
|
| > Ghostty is a fast, feature-rich, and cross-platform
| terminal emulator that uses platform-native UI and GPU
| acceleration.
|
| Now after reading it, the name makes so much sense as well.
| GhosTTY. My first thought was alternative to ghost.org or
| something.
| uncomplexity_ wrote:
| just different tastes i guess
|
| midjourney still has the same thing on their homepage and i dig
| it
| __rito__ wrote:
| Well, it is named GhosTTY. TTY being in the end, it is a
| terminal emulator. That's obvious to me. Just like AlacriTTY,
| PuTTY, KiTTY, etc.
| metaltyphoon wrote:
| I swear this makes 1000% sense but it never occurred to me
| before.
| boomboomsubban wrote:
| I thought it was some modern cowsay with a ghost in the tty.
| zug_zug wrote:
| Yeah I agree. To me the "If you know you know" mentality is a
| negative signal about something, suggesting that something is
| possibly seen as cool/trendy (which is a negative signal
| against being the most practical/utilitarian/unsexy solution).
| crystaln wrote:
| Yeah I was wondering why there's an ascii animation at #1 on
| HN. Flash back to 2008.
| dang wrote:
| Can you please greet the things that are new to you in a more
| welcoming spirit? At least as long as you're posting here. What
| we want on this site (other sites may differ) is a spirit of
| curiosity [1]. If you post in a "you're doing it wrong" or
| "you're not providing me with the information I deserve"
| spirit, that not only isn't the curiosity we're hoping for, it
| dampens the entire thread for everybody.
|
| https://news.ycombinator.com/newsguidelines.html
|
| [1]
| https://hn.algolia.com/?dateRange=all&page=0&prefix=true&sor...
|
| Edit: I just saw https://news.ycombinator.com/item?id=42519739,
| which means you already covered the point, but I'll leave this
| up pour encourager les autres.
| HeliumHydride wrote:
| Will the eventual windows release support GPU shaders like
| Windows terminal does?
| johan914 wrote:
| The default macOS terminal app has CMD UP/DOWN to move to
| previous prompts. This is one of my pet peeves about terminal
| apps, they seem to lack this command?
| slater wrote:
| Not even cmd up/down, just hit up/down key, no cmd needed
| johan914 wrote:
| There's a difference between moving the window and inserting
| text.
| slater wrote:
| Oh i thought you meant "go through previously-entered
| commands"
| m1keil wrote:
| Ghostty supports it (like many other terminals) - it is called
| shell integration and it is supposed to be enabled by default,
| just like in Terminal.app.
| rererereferred wrote:
| It works for me with cmd+shift+up/down. I had it set up with
| the iterm2 shell integration and it just worked.
| djpowers wrote:
| Just for reference, it looks like it's also bound to cmd +
| up/down (without shift). Documented as "jump_to_prompt" here:
| https://ghostty.org/docs/config/keybind/reference#jump_to_pr.
| ..
| uncomplexity_ wrote:
| anyone know if this can be plugged into vscode to replace
| xtermjs?
| pfg_ wrote:
| no. it's planned for the future to make a libghostty that is
| embeddable, and it would be up to someone to make a
| modification for vscode to do that (not sure if it can be done
| with vscode's extension api)
| tristan957 wrote:
| VSCode would switch from xterm.js to a libghostty WASM build.
| cryptozeus wrote:
| You can downvote this but Why they never put a single screen
| shots !
| dchest wrote:
| The whole home page is a screenshot and two buttons.
| mkl wrote:
| But not showing any of the native interface elements that are
| supposed to set this terminal emulator apart.
| oneeyedpigeon wrote:
| The home page is obviously going for 'quirky', but it's mad
| that it doesn't even say "...is a terminal emulator"
| anywhere. At first, I thought Ghostty was an ASCII
| animation library! I guess the name's suffix should've
| clued me in, but that's easy to overlook in a hurry.
| cruffle_duffle wrote:
| Somebody please read this! I thought it was some goofy
| JavaScript demo or something. It wasn't until I clicked
| on the download link that I realized it was something
| else entirely. I was thinking "why does this ghost
| JavaScript demo thing have a download link?" and I
| expected it to go to some GitHub page or something
|
| The homepage is cool but on mobile it isn't at all
| obvious this is software, let alone a terminal emulator.
| If this HN post didn't already have like 1000 votes I
| probably wouldn't have even bothered with testing the
| link. I would have said "cool ghost" and moved on with my
| day.
|
| That being said, I am looking forward to trying this as
| an iterm2 replacement. Iterm2 has been my default
| terminal on Mac since forever... it was probably the
| first hit for "putty for mac" or something, and I
| probably installed it and never even considered trying
| something else. It's always "just worked".
| sss111 wrote:
| Is it mining cryto? Caused my mac to slow down, CPU usage shot up
| to 100%, and it dropped right down after I quit it.
| exabyte wrote:
| Genuinely excited to see this land! Can't wait to try it out.
| This could be the last piece of the puzzle to a nearly flawless
| terminal experience
| unit149 wrote:
| > support native GUIs for configuration in line with our native
| UI philosophy
|
| As a terminal emulator, running and building it from source in
| Wayland as a passive process that exists in the shell, while
| being a method of input-output system call management.
| daft_pink wrote:
| Best. Christmas. Gift. Ever.
| turnsout wrote:
| I ran into some funkiness once I ssh'd into a FreeBSD box. The
| shell history was wonky, and goaccess wouldn't launch at all,
| complaining about the terminal environment, which I've never
| seen. With that said, this looks like an awesome project and I'll
| be following it closely!
| matrixhelix wrote:
| https://ghostty.org/docs/help/terminfo#ssh
| codetrotter wrote:
| When I try to ssh into one of my servers using this terminal I
| get the following: missing or unsuitable
| terminal: xterm-ghostty Connection to xxx.xxx.xxx.xxx
| closed.
|
| (IP address removed by me.)
|
| It turned out that this is associated with how I automatically
| run tmux by having the following kind of config for how I connect
| to that server. Host server3000
| IdentityFile
| ~/.ssh/host_specific/foo/bar/server3000/id_ed25519_baz
| RequestTTY yes RemoteCommand /usr/bin/env tmux new-session
| -A -s '%L'
|
| Whereas if I outcomment the RemoteCommand setting in my
| ~/.ssh/config of the laptop I'm connecting form, I can connect
| fine even using Ghostty as my terminal and from
| env | grep ^TERM=
|
| I get output TERM=xterm-256color
|
| in the initial normal shell.
|
| And if I run tmux, then inside of it from env |
| grep ^TERM=
|
| I get output TERM=tmux-256color
|
| So there seems to be some termcap stuff I'd have to figure out if
| I want to use Ghostty and still be able to run tmux automatically
| in the way I'm currently doing without problem when using the
| Terminal that ships with macOS and ssh'ing into my servers.
| matrixhelix wrote:
| https://ghostty.org/docs/help/terminfo
| codetrotter wrote:
| Thank you. I'll probably go with sticking their suggestion
| into my ssh client config SetEnv
| TERM=xterm-256color
|
| mentioned in the end of your link. I'll put it next to the
| line where I set RemoteCommand and include a comment for
| myself that this SetEnv is for being able to still use
| RemoteCommand tmux thing even when using Ghostty.
| eviks wrote:
| Since this has some plans for being the best, will it add the
| great unique feature of wezterm: scripting config support?
| Kylejeong21 wrote:
| this is way better than using warp (ai gen terminal).
|
| i'd rather use a nice-looking and well designed (UX) terminal
| than have to use a clunky ai native one.
| LambdaComplex wrote:
| Warp has been around since 2020, i.e. since before the
| generative AI craze took off.
|
| Every HN thread about it that I've seen has been full of
| comments that boil down to "this seems cool but I refuse to use
| a terminal emulator that's full of telemetry and requires sign-
| in."
|
| And of _course_ the VC-funded terminal emulator has AI
| shoehorned in now. I shouldn 't be so surprised.
|
| tldr: you're setting a low bar
| terminaltrove wrote:
| We've added Ghostty to the terminals section of Terminal Trove
| for comparison.
|
| https://terminaltrove.com/terminals/ghostty/
|
| You can find all terminals for comparison below and also the list
| of terminals (including Ghostty)
|
| https://terminaltrove.com/compare/terminals/
|
| https://terminaltrove.com/terminals/
| meitham wrote:
| The one feature I clicked for is RtL languages support, could
| that be added to your comparison table please
| terminaltrove wrote:
| We will add this to the table, is there a quick test to check
| if a terminal has RtL / bidirectional language support?
|
| If there are any other features you look for in a terminal
| not on the comparison table please let us know!
| meitham wrote:
| Thanks! Another important factor I find is weather the
| configurations is file based or menu based.
| kseistrup wrote:
| How come TT's categories aren't listed alphabetically?
| terminaltrove wrote:
| Do you mean here?
|
| https://terminaltrove.com/categories/ (1)
|
| Or any other category on the page? (2)
|
| We can change (1) alphabetically if that is what you mean.
| kseistrup wrote:
| Yes, those categories. I should have been more explicit.
|
| I found it confusing to look for a category among the
| unsorted boxes. It would help if they were sorted.
| terminaltrove wrote:
| It is now sorted on the categories section.
|
| https://terminaltrove.com/categories/
| kseistrup wrote:
| Yay, it looks great! Thanks! \o/
| cakealert wrote:
| Should of used QT.
|
| > error(gtk): unable to get current color scheme:
| GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name
| org.freedesktop.portal.Desktop was not provided by any .service
| files
| tristan957 wrote:
| You would have the same problem with Qt. You don't have the
| xdg-desktop-portal and an associated backend running. If you're
| going to build your own Linux system, you should be aware of
| why something is broken before making a complaint to the wrong
| people. In this case, you misconfigured your own system.
| cakealert wrote:
| Odd how a hundred other applications have no issues
| whatsoever then.
|
| This Portal is something from flatpak btw, no other terminal
| depends on it.
|
| This is likely some cancer from GTK that metastasized,
| anything using GTK has to lock it down tight to rely on the
| absolute minimum of "features".
| SSLy wrote:
| Should have used a grammar checker.
| bonniesimon wrote:
| I've tried it out and I can notice that ghostty is a little more
| snappy than Alacritty. I was happy with Alacritty, but I used a
| face a weird issue where the whole terminal freezes. I'm not sure
| if this is a Alacritty issue or tmux issue. I can only confirm
| this by using Ghostty and checking if the same issue happens.
|
| Anyways this is a great piece of software. I've never been this
| hyped for a software ever before. Great work team.
| favadi wrote:
| For some reasons, the font looks thinner compare to Kitty on
| macOS. Not sure if it is a bug or intentional.
| theanirudh wrote:
| Yes, it is. Try setting font-thicken = true
| https://ghostty.org/docs/config/reference#font-thicken
| favadi wrote:
| Thanks, that's exactly what I am used to!
| asdf147 wrote:
| General question, how safe is it to use non-stock os terminals?
| In the end often they need to receiver super user at some point.
| PhilipRoman wrote:
| I would say it's about as safe as using any other program. On
| Linux, by default you will not get any isolation within the
| same user context. So if your account has access to sudo
| (regardless whether with password or not), assume that any
| program you've ever run on that account also has sudo access.
| There are sandboxes and selinux but neither is used
| consistently enough on consumer systems.
| paoda wrote:
| I've been in the beta for quite a while, the only issues I had
| were resolved quite quickly. I never got to contribute that much
| in feedback since I honestly never had anything to complain
| about, outside of not being able to also use ghostty on Windows
| (lol).
|
| Congrats on 1.0! It's been a joy to use I wish everyone can enjoy
| this wonderful piece of software as much as I have!
| microflash wrote:
| Have set it up with Nushell. It's pretty fast while displaying
| really long log files. Going to sit alongside iTerm2 until I get
| comfortable with it.
|
| The only things I miss are (1) right click to copy paste
| selection (akin to Putty), and (2) profiles (I work with
| different shells depending on my projects and use Profiles
| frequently on iTerm2)
| arnath wrote:
| I dunno if this was obvious to everyone but OP is one of the
| founders of Hashicorp
| l0b0 wrote:
| nixpkgs PR: https://github.com/NixOS/nixpkgs/pull/368404
| teroshan wrote:
| Corresponding Nixpkgs-Tracker link, to track if it's merged
| into your branches of interest: https://nixpkgs-
| tracker.ocfox.me/?pr=368404
| iammrpayments wrote:
| I tried and it looks really nice, best christmas gift this year
| yakshaving_jgt wrote:
| Looks nice, but the Quick Terminal isn't instant, so I'll stick
| with iTerm2.
|
| iTerm2 isn't instant either, but they feel about the same[0],
| although with iTerm2 the full screen Quake-mode (Quick Terminal
| equivalent) hides the MacOS menu bar, and Ghostty doesn't.
|
| For my taste, I want a full screen terminal, with no menu bar, no
| delay, and no animations, which I can toggle with a global
| hotkey.
|
| [0]: Actually, scratch that. I tested again, and iTerm2 opens
| more quickly.
| lifeinthevoid wrote:
| This product just breathes craftsmanship and love. Respect and
| thank you!
| tntxtnt wrote:
| > Ghostty is a fast, feature-rich, and cross-platform terminal
| emulator
|
| Doesn't have a binary for Windows so it's not "cross-platform"
| yet.
| isametry wrote:
| The minimum number of platforms for "cross-platform" software
| is by definition two (2).
| sspiff wrote:
| Does this have sixel support?
| matrixhelix wrote:
| No, and there are no plans to support it from the core
| developers. However, if there's a PR, they might consider it.
| It supports Kitty Image Protocol
| danielmartins wrote:
| Looks awesome, amazing work!
|
| Any particular/strong reason for choosing Zig for this?
| yla92 wrote:
| Check "Why Zig" slide from this talk
|
| https://mitchellh.com/writing/ghostty-and-useful-zig-pattern...
| danielmartins wrote:
| Thanks!
| jwr wrote:
| It's the first terminal app that made me switch from Terminal.app
| on my Mac. It gets basically everything right, and doesn't try to
| have every feature. Fantastic work, thank you!
| Alifatisk wrote:
| I couldn't find any screenshots, also, why is this being hyped so
| much? What have I missed?
| d3m0t3p wrote:
| Just try it. I tried and the launch was so smooth that I'm
| keeping it a few days to test it. My current biggest problem is
| that I launch my terminal using the spotlight shortcut
| ([?]-space on mac) and while iterm2 is found when I search for
| term, ghostty isn't.
| metaltyphoon wrote:
| It took a minute for me, but it did find it. Something is off
| with macOS indexing. Any app that you install via brew takes
| a bit to show up.
| d3m0t3p wrote:
| I'm not complaining about the indexing (you can start the
| indexing by starting spotlight on and off). I'm complaining
| about having to search for "ghos..." instead of "term...".
| Because I don't don't like to remember the specific app
| name. But this complaint is the same for everything; when
| searching for Excel, I would like "Numbers" to also show up
| in the results. When looking for vscode I would like
| "Visual Studio code" to also show up, but I need to type
| either code, visual or studio.
| rererereferred wrote:
| Sounds like a feature request for spotlight to add
| aliases or tags. Personally I always keep a terminal
| open.
| itishappy wrote:
| Huh, you've got me curious, and the Windows start menu
| does in fact launch Visual Studio Code when searching for
| "vscode." Color me pleasantly surprised!
| homebrewer wrote:
| I'm wondering about this too. I looked at it and don't see any
| reasons to switch away from kitty, which is just as fast, has
| more features, and has never given me trouble. Kovid is a
| fantastic developer who's very responsive and fixes bugs in
| sometimes literal minutes after they were reported.
| rererereferred wrote:
| I guess the hype is from the series of blogposts about the
| lengths they've gone to make it fast. Also it looks like mac
| doesn't get a lot of native terminals so this has them excited.
| noisy_boy wrote:
| Compiled ok but crashed upon execution: info:
| ghostty version=1.0.1-main+a8e5eef1 info: ghostty build
| optimize=ReleaseFast info: runtime=apprt.Runtime.gtk
| info: font_backend=font.main.Backend.fontconfig_freetype
| info: dependency harfbuzz=8.4.0 info: dependency
| fontconfig=21402 info: renderer=renderer.OpenGL
| info: libxev backend=main.Backend.io_uring info(os):
| setlocale from env result=en_US.utf8 info(gtk): GTK
| version build=4.6.9 runtime=4.6.9 info: optional config
| file not found, not loading
| path=/home/xxxx/.config/ghostty/config info(config):
| default shell source=env value=/usr/bin/bash "vulkan-
| disable" is only available when building GTK with G_ENABLE_DEBUG.
| See GDK_DEBUG=help info(gtk): libadwaita version
| build=1.1.7 runtime=1.1.7 (process:164888): Adwaita-
| WARNING **: 19:33:13.357: Using GtkSettings:gtk-application-
| prefer-dark-theme with libadwaita is unsupported. Please use
| AdwStyleManager:color-scheme instead. error(gtk): unable
| to get current color scheme:
| GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such
| method "ReadOne" info(grid): loaded OpenGL 3.2
| warning(grid): OpenGL version is too old. Ghostty requires OpenGL
| 3.3 error(gtk_surface): surface failed to realize:
| error.OpenGLOutdated info(sentry): sentry envelope does
| not contain crash, discarding
|
| System: OS: Pop!_OS 22.04 LTS x86_64
| Host: 20QVCTO1WW ThinkPad X1 Extreme 2nd Kernel:
| 6.9.3-76060903-generic Uptime: 2 hours, 20 mins
| Packages: 5314 (dpkg), 22 (flatpak) Shell: bash 5.1.16
| Resolution: 3840x2160 DE: Plasma 5.25.5 WM:
| KWin WM Theme: Breeze Theme: [Plasma], Adwaita-
| dark [GTK2/3] Icons: Papirus-Dark [Plasma], Papirus-Dark
| [GTK2/3] Terminal: konsole Terminal Font:
| JetBrains Mono 11 CPU: Intel i7-9750H (12) @ 4.500GHz
| GPU: NVIDIA GeForce GTX 1650 Mobile / Max-Q GPU: Intel
| CoffeeLake-H GT2 [UHD Graphics 630] Memory: 6307MiB /
| 31738MiB
| tylersmith wrote:
| You have OpenGL 3.2 but need 3.3
| nacs wrote:
| Error is a little misleading. OpenGL is likely much higher
| than 3.3 since op is using nvidia gpu.
|
| Problem is that this application uses OpenGL ES for which 3.3
| was only recently even finalized as a standard and most GPUs
| like nvidia don't support.
| nacs wrote:
| Also same issue. Seems it's using a bleeding edge OpenGL ES
| that even nVidia drivers don't support.
| noisy_boy wrote:
| I raised an issue for this: https://github.com/ghostty-
| org/ghostty/issues/3435
| tuananh wrote:
| - xterm still feel faster to me.
|
| - some visual artifacts with the gtk menu
|
| - sometimes prompt got clear when openning 2nd / 3rd windows
|
| - cant get keybinding quick toggle to work
| manmal wrote:
| In case you mean the quick terminal (ctrl+`):
| keybind = global:ctrl+grave_accent=toggle_quick_terminal
| tuananh wrote:
| doesn't work for me. i'm using i3.
|
| olps, it's macOS only feature.
| l-p wrote:
| > - some visual artifacts with the gtk menu
|
| You need a compositor. picom works.
|
| For a proper "native i3 experience" I recommend setting gtk-
| titlebar=false and unbinding tab/pane management keybinds. I
| already have a window manager, I don't need a second one.
|
| I also had to disable adwaita because when it's enabled closing
| a shell with ^D closes all open windows, sometimes it leaves an
| empty window instead.
|
| > - xterm still feel faster to me.
|
| lxterminal also launches 6 times faster, I guess on a slow
| laptop without a dedicated GPU these terminals are not the most
| efficient option.
| tuananh wrote:
| there's a black box after i click the burger menu button.
| tecleandor wrote:
| I've been using Alacritty so I can switch back and forth from my
| work's Mac to my own Linux, and share the config, but I'm testing
| Ghostty and I'm really liking it. And no silly closed AI
| somethingsomething integration.
| Emigre_ wrote:
| I'm excited about the fact that this is written in Zig. I'm a
| Kitty user at the moment, but if this delivers I'll change to
| Ghostty.
| christophilus wrote:
| I use Foot as my terminal and Niri as my WM. It's a great combo.
| Niri handles splits for me, and I don't need tabs. I also turn
| off all window decorations, so my terminal content gets 100% of
| the terminal's screen real estate-- so I don't need a native UI.
| All that said, it looks like Ghosty can be configured to match
| this setup, so I'll give it a try. I just wanted to mention Foot
| to anyone who is running Linux. Foot is a simple, focused
| project.
| conaclos wrote:
| I am a happy foot user and I am considering switching from Sway
| to Niri. What has been your experience with Niri? One thing
| that concerns me about Niri is that it is not wlroots based.
| This means that many tools I accustomed to don't work with
| Niri. Do you have some dedicated tools for screen sharing,
| screen recording, screen printing, multi-monitor management,
| ...?
| christophilus wrote:
| I absolutely love Niri. It has a built-in screen capture
| which is good enough for me. Screensharing works fine from
| Firefox (which is where I do all of my video conferencing). I
| stopped using multiple screens a long time ago, but I do
| occasionally hook my laptop up to my TV, and that works out
| of the box. Though, for stuff like that, I might log into to
| a Gnome + PaperWM session simply because I don't remember how
| to fiddle with things, and I'm not generally trying to
| optimize for my workflow when I'm giving a live talk or
| watching TV.
| ramon156 wrote:
| Is it weird that I never considered foot because of the name?
| At least when you say "alacritty" i understand that it's a
| terminal. When I tell someone I use "foot"... I don't know, it
| doesn't give a good feeling.
| globular-toast wrote:
| What about when you tell someone you "cat" a file or use
| "sudo"? Who cares what normies think?
| aleden wrote:
| What I like about foot is the heuristics governing text
| selection with the mouse. I find that more often than not, if I
| double click with the mouse on some text, what it ends up
| selecting is just the part I need.
| opan wrote:
| I actually have to fight this feature a lot, but I appreciate
| what it's trying to do. For me the issue is I'm often trying
| to triple click to select full IRC lines and it keeps only
| selecting parts of the line because the person had put some
| quotes in part of what they said, and the selection "smartly"
| will only select the area between two quotes, even if those
| quotes were the ending of a pair on the left and start of a
| pair on the right, aka not even truly quoted text is being
| selected, but all the un-quoted text between two pairs of
| quoted text. The solution is to click a different spot,
| usually the timestamp is the safest, but I find I naturally
| drift toward the far right side of the terminal for selecting
| lines, or sometimes somewhere in the middle.
| diimdeep wrote:
| Nice addition.
|
| Slightly more CPU heavy than Kitty.
|
| in MacOS yabai tiling manager has problems dealing with native
| tabs, that's gonna annoy me like with Finder.
|
| also in MacOS try pressing "Cmd + Shift + \", also works in
| Finder, it's there, it's cool, but I never use it.
| rererereferred wrote:
| That's neat but how do I select a panel afterwards? Arrow keys
| do nothing and hjkl start a search.
| crabique wrote:
| On my system it's ctrl+tab to cycle through tabs, then escape
| to open the one that is currently highlighted.
| rauanm wrote:
| I tried to install and play around with it, it's really nice.
|
| Took a bit of tinkering to set a theme and my favourite Pragmata
| Pro, but what ultimately annoys me is the lack of 'turnkey'
| selecting for text.
|
| When I run `Cmd + A`, I want my terminal to make a full text
| selection of an entered command, not of the screen content. Or
| when I run `Option + Shift + Arrow left/right`, I want to select
| words from an entered command, not to type '4D;4C;4D;4C'.
|
| I'm not a vimer or emacser, I want to have normal macos
| experience. For this reason alone I thought it's too early to
| switch and Warp is still great for me.
| rauanm wrote:
| But `ghostty +list-themes` is damn impressive.
| vrnvu wrote:
| Cmd+A to select the entered command isn't standard.
|
| You could try:
|
| - Ctrl+A: Move to the beginning of the line.
|
| - Ctrl+E: Move to the end of the line.
|
| - Ctrl+K: Cut the command from the cursor position to the end.
|
| - Ctrl+U: Cut the command from the cursor to the beginning of
| the line.
|
| - Ctrl+Y: Paste the text back.
|
| This should work in all terminals.
| metaltyphoon wrote:
| Ctrl+W: delete last word
| eviks wrote:
| Good ideas (and possible in Wezterm if shell marks the semantic
| zones, not sure whether possible if not), though not really a
| normal macos experience given mac's default terminal doesn't
| select of an entered command on Cmd+A
| jFriedensreich wrote:
| Am I the only person wondering why we need 100 terminal emulators
| when there are only 2 or 3 solutions to using command line tools
| more like a REPL? (to some degree warp, some bash support in
| hydrogen, advanced edit mode of powershell) I don't care for
| using "fancy" TUIs all i want is better tooling to interact with
| these that does not feel like 1970 and more like the chrome
| console.
| __float wrote:
| > I saw tradeoffs that I didn't like. I saw features that I
| wanted. I saw performance that I could improve. I saw
| stagnation. There are many fantastic terminals out there and
| you should use them if they work for you. But I wanted
| something different and thought maybe others did too.
|
| This motivation is pretty clearly stated in the article.
|
| Some people use "fancy TUIs" (the famous editors vim and emacs
| surely count) and if you don't, feel free to ignore this new
| option.
| CarlitosHighway wrote:
| Unfortunately, launching a fancy TUI like lazydocker inside a
| fresh install of Ghostty will make the TUI exit with an
| error, when the same TUI runs just fine on iTerm, alacritty,
| etc.
| styfle wrote:
| Congratulations!
|
| I was hoping 1.0 would mean CMD+F search would work, but looks
| like that was pushed back to a later release unfortunately.
|
| https://github.com/ghostty-org/ghostty/issues/189#issuecomme...
| rharb wrote:
| Congratulations on making it to the launch!
|
| I really appreciate the levelheadedness of your responses
| regarding Ghostty, and how clear you are to be speaking
| positively for your thing instead of negatively about anyone
| else's.
|
| Going to build it at lunch today and give it a shot :)
| linsomniac wrote:
| Does Ghostty support TiteInhibit? The docs say "if xterm does
| something we should do it", but I don't see any mention of
| "tite".
| rplnt wrote:
| Is there a way to restore session (windows, tabs, paths) after
| (application) start? How is this not default everywhere is beyond
| me (looking at Firefox).
|
| But my main point here would be that the lack of explorable
| configuration, and the docs not having any search, make it quite
| challenging search for this.
| artooro wrote:
| This happens to be exactly what I was looking for in a Terminal
| app. Native UI, fast, and native screen splitting, doesn't try to
| do too much. Five stars
| Gormo wrote:
| Looks interesting. I'm playing around with it on Linux (with
| Xfce), but can't figure out how to get rid of the CSD header bar
| / hamburger menu and use a normal menu bar instead. I see Mac
| screenshots with a normal Mac-style menu bar, but I don't see how
| to enable the equivalent on Linux. The `window-theme` and
| `window-decoration` options do not seem to do anything.
| tux1968 wrote:
| They should work if you exit and restart ghostty.
| Gormo wrote:
| Thanks, that worked. Apparently, the reload-config hotkey
| doesn't always work for certain changes. In this case,
| setting `gtk-titlebar = false` disabled the header bar --
| only issue now is that there is no menu bar at all!
| pilgrim0 wrote:
| I would love to try but it doesn't support Monterey
| rplnt wrote:
| > Split Right | Split Down
|
| Thanks for this. After 7 years of using iterm2 I still don't know
| what will happen with the ambiguous "Split Horizontally | Split
| Vertically". I know the issue is I'm thinking about it and should
| just learn it, but it would be more helpful if it was named
| "Split A | Split B".
|
| (might be a non-native language problem)
| robertlutece wrote:
| I think it ambiguous. vim has vsplit ("Like |:split|, but split
| vertically.") that is "split right", however, wezterm has
| "Split Vertically (Top/Bottom). Split the current pane
| vertically into two panes, by spawning the default program into
| the bottom half"
| dcre wrote:
| I'm a native English speaker and I also have trouble with this.
| When the panes are arranged horizontally, the line dividing
| them is vertical.
| stainablesteel wrote:
| looks really cool! i'm gonna play with it, thanks for this
| awesome project
| quantonganh wrote:
| You mentioned that Ghostty gets around 500 FPS, but I tested it
| myself and only got 160 FPS on M1 Pro (WezTerm gets 400 FPS).
| What can be the reason?
| dabdab44 wrote:
| text is missing left padding on macOS otherwise nice
| poetril wrote:
| There is a config setting for this "window-padding-x" I
| believe.
| xtat wrote:
| My takeaway is that it's mostly useful for apple stuff-- why
| would "platform native" matter on Linux?
| ur-whale wrote:
| You should try it.
|
| I'm on Linux, and first impression is ghostty is really good.
| Speed in particular is impressive.
| aleden wrote:
| I went to ghostty.org and spent a long time staring at that
| animated ghost, and thought of clippy. Except this guy seems to
| have wider range of emotions.
|
| Anyways, I eventually learned this was about a terminal emulator
| (which is awesome), but the ghost on the front page really
| inspired my imagination. I think it would be a good thing to have
| some kind of companion like that, when it's me, by myself,
| constantly surrounded by terminals all day. Is the choice of
| having the ghost be rendered in a text-mode terminal important? I
| think it is for me.
| codedokode wrote:
| I have a traumatic experience with GPU-based GUI. Long time ago I
| tried to run Ubuntu in a VM, and they switched to GPU-based
| rendering. But as VM doesn't have a GPU, the system fell back to
| something called "llvmpipe". The result was that the widgets
| reacted approximately with 30 second lag to every action.
|
| So what I am asking, if you are making a GPU-based rendering
| toolkit, please write also SIMD software fallback _without_
| shaders. Remember how fast Windows 95 was and make it a little
| bit faster.
| pvillano wrote:
| I am asking this in good faith
|
| Why would you not ssh?
| codedokode wrote:
| Because I wanted to see how a new Ubuntu looked. Not to do
| something useful.
| codedokode wrote:
| Also to SSH into a VM you need to setup a second network card
| and to do this you need at least log into a text console.
| yourapostasy wrote:
| Neat, this [1] looks like the project uses vttest [2] to test DEC
| VT terminal compatibility?
|
| [1] https://github.com/ghostty-org/ghostty/blob/main/TODO.md
|
| [2] https://invisible-island.net/vttest/
| CSDude wrote:
| I wanted something as fast as Alacritty that had native tabs,
| could divide horizontal/vertical without tmux. And this seems
| like it!
| lopkeny12ko wrote:
| To be honest, I don't "get" ghostty. I am not really seeing how
| this is so much better than the GNOME terminal that ships with my
| Linux distro.
|
| A lot of people are claiming that ghostty is "faster." I watched
| the lightning talk where the author claims that catting files and
| binaries is faster.
|
| I tried this against ghostty itself after building with zig build
| -Doptimize=ReleaseFast, using: time cat ghostty.
|
| In GNOME terminal, it took 3.340s. In ghostty, it took 16.947s. I
| must be doing something wrong?
| matrixhelix wrote:
| The cool part is that you don't have to "get" Ghostty, you can
| continue using whatever you prefer
| thornewolf wrote:
| i use the base mac/Windows terminals and have never had any
| issues. what are the main things that draw people to
| alternatives?
| ur-whale wrote:
| > what are the main things that draw people to alternatives?
|
| Speed.
| ur-whale wrote:
| Real nice so far.
|
| The fact it does its own window decoration is a bit of a turn-
| off, but:
|
| A quick test of speed against wezterm and gnome-terminal show
| ghostty (on my laptop) to be around 3 times faster than both of
| the other.
|
| Will definitely try it for a couple of weeks.
| geodel wrote:
| I wonder if there is any equivalent of 'iterm2 broadcast input'
| in ghostty. I use this pattern to deploy same application on
| multiple servers or checking logs on multiple servers for same
| service.
| vinhnx wrote:
| Everything about it is so polished, it's hard to believe it's
| just a v1.0.0 release!
|
| The only thing I'm eagerly waiting for now is the implementation
| of search [1], but otherwise, it's absolutely stellar.!
|
| I set Ghostty as my default terminal emulator now.
|
| [1] https://github.com/ghostty-org/ghostty/issues/189
| aizk wrote:
| Wow, I had no idea ghostty was this much of a big deal. Really
| cool!
| brundolf wrote:
| What's the elevator pitch vs other terminals?
| CarlitosHighway wrote:
| Love this in theory but the first time user experience could be
| improved:
|
| $ brew install ghostty
|
| Launch it, don't configure anything, in the new terminal window
| then enter:
|
| $ lazydocker
|
| Response: 2024/12/28 09:04:42 An error occurred! Please create an
| issue at https://github.com/jesseduffield/lazydocker/issues
|
| *exec.ExitError exit status 1
| /home/runner/work/lazydocker/lazydocker/main.go:96 (0x9397d7) /op
| t/hostedtoolcache/go/1.21.13/x64/src/runtime/internal/atomic/type
| s.go:194 (0x43bc1b)
| /opt/hostedtoolcache/go/1.21.13/x64/src/runtime/asm_amd64.s:1650
| (0x46b9e1)
|
| Which does not happen with fresh out of the box Mac Terminals,
| iTerm.
|
| Probably it would be good to have less specific default options
| for people who just want to try it out before starting to
| configure it.
| adamdecaf wrote:
| That's a problem with lazydocker, not ghostty.
|
| Maybe contribute to
| https://github.com/jesseduffield/lazydocker/issues/610 ?
| graynk wrote:
| Looks pretty cool! Unfortunately I can't use it yet, as I am on a
| Ubuntu-based distro (Pop! OS 22.04), so my GTK version is not
| high enough. I imaging that's the case for a lot of people who
| stick to LTS versions. I may check it out on my Mac for work
| though
| bpev wrote:
| So i've basically been a terminal.app purist, but downloaded
| ghostty on a whim because of all the excitement...
|
| I did not realize it would be THAT much faster. I guess I should
| have started using better terminals earlier
| lgxz wrote:
| There are MANY problems with the default configuration. For
| example, the UP/DOWN key doesn't work, the TERM is xterm-
| ghostly...
| mike31fr wrote:
| 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 wrote:
| 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?
| itsn0tm3 wrote:
| 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 wrote:
| Have you ever experienced vim being slow? If so, would you
| know how I could reproduce this?
| anaumann wrote:
| Took me only ten minutes to tweak the config to my liking and
| recreate my color scheme from iterm.
|
| I've been using Ghostty for a day now and it simply works.
| Smooth, seamless and perfectly integrated to the point where this
| should just be the default terminal in macOS.
|
| P.S.: If you want to port your iterm color scheme, set:
|
| window-colorspace = display-p3
|
| for the colors to match.
|
| (And bold-is-bright = true if you set this option in iterm)
| denolfe wrote:
| I took this for a spin today. Coming from a long-time iTerm2
| user, the first thing I noticed was how snappy everything feels,
| especially when resizing the window. The straight-forward
| configuration was extremely nice as well and can be stored in my
| dotfiles now (iTerm was a giant dump of XML).
|
| A few things that keep me from switching to it full time:
|
| - Missing search scrollback (cmd+f). This appears to be coming
| soon: https://github.com/ghostty-org/ghostty/issues/189
|
| - More of a nitpick than anything, but the only way to disable
| cursor blinking is to disable shell integration. Unfortunately,
| this means taking away things like native scrolling and likely
| some other things I don't know about. I see there is a discussion
| here to possibly address this: https://github.com/ghostty-
| org/ghostty/discussions/2812
|
| I feel like this would be a no-brainer switch for me once the
| above are addressed.
___________________________________________________________________
(page generated 2024-12-28 23:02 UTC)