[HN Gopher] Ghostty 1.0
       ___________________________________________________________________
        
       Ghostty 1.0
        
       Author : matrixhelix
       Score  : 561 points
       Date   : 2024-12-26 20:14 UTC (2 hours 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.
        
           | 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.
        
         | brcmthrowaway wrote:
         | What was the last one? Ghidra?
        
       | 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
        
             | 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.
        
         | mrjbq7 wrote:
         | I imagine package managers will start picking this up shortly
         | since it just released publicly.
        
       | 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
        
       | 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.
        
         | 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.
        
         | thomaslutz wrote:
         | Downside is that the quick terminal doesn't support tabs.
         | Unfortunately that's currently a dealbreaker for me.
        
       | 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..
        
       | videlov wrote:
       | I have found the following community site for generating Ghostty
       | config quite helpful https://ghostty.zerebos.com/
        
       | 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...
        
       | 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.
        
       | 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?
        
         | 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.
        
       | baq wrote:
       | > cross-platform
       | 
       | > no Windows download
       | 
       | Um, that's not what cross-platform... used to be I guess? Am I
       | just old?
        
         | qup wrote:
         | How many platforms are required? I noticed it doesn't have an
         | OS/2 download.
        
           | metadaemon wrote:
           | missing z/OS as well...
        
         | loeg wrote:
         | No, cross-platform just means more than one platform. It
         | obviously is that: Mac and Linux.
        
           | BrouteMinou wrote:
           | Obviously! ...
        
         | kermatt wrote:
         | https://github.com/ghostty-org/ghostty#roadmap-and-status
        
         | eikenberry wrote:
         | Windows support is planned.
        
       | 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
        
           | 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.
        
         | Fnoord wrote:
         | I solve that by using zellij locally (I use tmux remotely).
         | Bonus points: I can close or upgrade Alacritty without losing
         | session.
        
       | 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!
        
           | 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.
        
           | 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.
        
           | 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.
        
           | 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.
        
         | 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!
        
         | 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
        
         | 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.
        
         | 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?
        
       | 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.
        
         | dsp_person wrote:
         | AUR not even needed
         | https://archlinux.org/packages/extra/x86_64/ghostty/
        
       | 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
        
         | 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.
        
       | 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.
        
       | 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.
        
       | 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`
        
         | 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.
        
       | 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
        
       | c2xlZXB5Cg1 wrote:
       | Startup time was very bad until I disabled adwaita with
       | gtk-adwaita = false
        
       | 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?
        
       | brcmthrowaway wrote:
       | Could GPT5 or Claude written this from scratch?
        
         | throwaway0665 wrote:
         | of course not
        
       | 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!
        
       | 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 too? (And also reach a bit of your determination, skill
       | and talent)? (no, really, kudos, well done and thanks)
        
       ___________________________________________________________________
       (page generated 2024-12-26 23:00 UTC)