Could someone sell me on one of these alternative terminals (kitty, ghostty, wez, etc)? There is probably something I am missing not using GPU backed rendering, but I don’t know what I don’t know.
The main features I use are 1. quick-select the output in the terminal (select files/paths, urls, etc and either copy or paste them at the cursor). This is very useful as you often don't have the foresight to pipe the command to pipe the output of the command to some selection mechanism and even placing text on the line-editor is not that easy by default. 2. view images (sixel or kitty protocol). This is pretty usefu…
How to Obsessively Tune WezTerm
21–30 of 73 posts
Re: How to Obsessively Tune WezTerm
#22Otherwise, it's awesome and my default terminal everywhere.
Re: How to Obsessively Tune WezTerm
#23Earlier quoted context omitted.
All I know is that on MacOS iTerm2 is unmatched. Every few months I go in search of something similar to it (as a backup), and every single time, after trying countless terminals, I give up. The closest I've found is WezTerm, and even that is a pale shadow of Iterm2
I switched from iTerm to WezTerm and haven’t looked back. It feels faster and it’s simpler to configure. I only have a basic use case, though, as tmux does all the heavy work for me. People with an appetite for more features might legitimately prefer iTerm, but I can’t endorse the comment “pale shadow of iTerm” for all use cases.
Re: How to Obsessively Tune WezTerm
#24Could someone sell me on one of these alternative terminals (kitty, ghostty, wez, etc)? There is probably something I am missing not using GPU backed rendering, but I don’t know what I don’t know.
- Access the scrollback buffer in neovim
- Access the last command output in neovim
- Animated cursor trails. It sounds dumb at first but I find that when sharing my screen, the cursor trails help other people keep track of my cursor when using neovim.
Here are my configs to quickly load @screen_scrollback or @last_cmd_output in neovim
map kitty_mod+z launch --stdin-source=@screen_scrollback --type=overlay /bin/zsh -c "nvim +$ +'nnoremap q ZQ'"
map kitty_mod+v launch --stdin-source=@last_cmd_output --type=overlay /bin/zsh -c "nvim +$ +'nnoremap q ZQ'"
Re: How to Obsessively Tune WezTerm
#25The only thing I want from WezTerm is a warning when I'm about to close a tab. The tabs are too small and the x is easy to hit by accident... thousand lines of bash history and temp env vars gone in an instant. Otherwise, it's awesome and my default terminal everywhere.
Re: How to Obsessively Tune WezTerm
#26The only thing I want from WezTerm is a warning when I'm about to close a tab. The tabs are too small and the x is easy to hit by accident... thousand lines of bash history and temp env vars gone in an instant. Otherwise, it's awesome and my default terminal everywhere.
you can configure that...
Re: How to Obsessively Tune WezTerm
#27Earlier quoted context omitted.
you can configure that...
Please show me where. It only works for tabs that have a running process.
Re: How to Obsessively Tune WezTerm
#28By default, WezTerm doesn't have a scrollbar, but you can easily enable it with:
config.enable_scroll_bar = true
But now you always have a scrollbar, just a big line on the side when there's no scrollback or you're in alternate screen mode. Horrible! So, here's an event handler that will automatically hide the scrollbar when not needed, giving it the same behavior as scrollbars in modern applications: -- Hide the scrollbar when there is no scrollback or alternate screen is active
wezterm.on("update-status", function(window, pane)
local overrides = window:get_config_overrides() or {}
local dimensions = pane:get_dimensions()
overrides.enable_scroll_bar = dimensions.scrollback_rows > dimensions.viewport_rows and not pane:is_alt_screen_active()
window:set_config_overrides(overrides)
end)
And that kinda sums up the development philosophy of WezTerm. It has basically all the building blocks you'd ever need with nice APIs. It's set up quite usably by default, but anything that's missing you can probably implement yourself.Re: How to Obsessively Tune WezTerm
#29It's just broken on KDE permanently I guess :/ There have beem tickets about it, and there is an AUR repo with a patch that used to fix it... but :/
Was already worried about the project given that it hasn't seen a new release in quite a long time. Got the feeling that the maintainer has mostly moved on.
Re: How to Obsessively Tune WezTerm
#30Could someone sell me on one of these alternative terminals (kitty, ghostty, wez, etc)? There is probably something I am missing not using GPU backed rendering, but I don’t know what I don’t know.
Kitty and wez both have the ability to present graphics on the terminal which may sound like a solution in search of a problem, but once you start using the capability, it's hard to live without it. Wez is also cross platform so I get to use it on my Linux and Mac and my (Ugh) Windows work machine. Configuration being done in Lua is also something I quite like, but your mileage may vary on that one.
The thing that made me switch to Ghostty was the image support in wez didn't play well with tmux.
After testing wez, kitty, and Ghostty, I ended up going with Ghostty.
I do miss the idea of the whole lua config thing, but since I never did anything with it, I can't treat that as a practical concern.