How I use terminals: Mostly with [[tmux - Terminal Multiplexer]] and lots of weird fonts and colors and mouse interactions. # Wezterm See: [[Wezterm]] Redraw issues: This one has *no redraw issues*! It still follows the annoying trend of only offering configuration files and **no configuration UI**, however they have an excuse - the config is a full programming language. It uses [[Lua]] to make the configuration file very powerful. And the documentation is very good. I still think it should have a GUI for base settings and then the [[Lua]] for extended fun stuff, but no GUI settings is the cool thing to do right now. *Supports ligatures*! ## Dev Interactions I noticed a minor error message that it was generating and did a dive into it to figure out what was going on. Seems that every redraw it asks xdg portal (which uses `dbus`) what the user's theme is (eg light or dark). The dev figured it out and fixed it very quickly. I submitted a build script improvement to add Solus dependencies and a minor documentation fix as well. Both of which were merged. # Hyper Redraw issues: Works fine with *no redraw issues*. Config: Text only, **no configuration UI**. Which is... odd. For the type of "web technology" and shiny design it really seems like it should have a GUI. # Kitty - https://sw.kovidgoyal.net/kitty/ - https://github.com/kovidgoyal/kitty Built with [[3. Reference/Software/Programming Languages/C|C]] and [[Go]] (for some reason) and scripted in [[Python]]. **Redraw issues**: Has weird lag issues on my system, sometimes redraws don't happen. Config: Massive text file, **no configuration UI**, the example file contains a ton of commented out examples # Alacritty - [[Alacritty]] There is **no configuration UI**, configuration is in [[YAML]], and while it is not as giant as Kitty I was not enthused. If not for the redraw issue I may have persevered. **Redraw issues**: Has the same issue as Kitty with redrawing. It was constant and made it completely unusable where every other keypress would not trigger a redraw, but they added a force redraw setting, now it is on par with Kitty. Confirmed problem still present [[2024-03-19]] a year after they closed the original issue. ## Dev Interactions I left a comment about this on the recently closed issue. - https://github.com/alacritty/alacritty/issues/824 In comments since, it is become clear that Alacritty developers have no desire to fix the issue and instead blame [[X11]] for something that most applications do not experience. Apparently they intend to be Wayland-only in the future. > That's completely irrelevant whether they worked or not. > ... > X11 is just not great when it comes to hardware acceleration, because it was never designed with it in mind, so things break like that is not surprising. \- kchibisov, member of the Alacritty organization According to a contributor, the issue with redrawing may be related to NVIDIA drivers somehow, although I do not experience it on all NVIDIA GPU systems. Which is funny because it seems like if it were a driver issue then it would not be an X11 issue, no? # Tabby - https://tabby.sh/ [[Typescript]] and [[Electron.js]] based. **Redraw issues**: Less than Kitty. Only becomes obvious in Vim, but also some of Fish's updates get lost on the terminal, but it is harder to notice. Config: *Does have a GUI config!* And you can export, import, or modify it from [[YAML]] right in the app. Best of both worlds. # Contour - [[Contour Terminal]] Written in [[C++]]. Local build & compile: Terrible dependency management, won't run (looks for some variant of `libyaml-cpp`), won't compile (failing to find QT6). Flatpak works. *No redraw issues!* Has some silly features (not bad) like supporting [[Fira Code]]'s progress bar glyphs regardless of font in use. Config: **No configuration UI**, [[YAML]] only. # Cool Retro Term I mainly got this to play with, and it does not run. Crashes on startup with errors: ``` QQmlApplicationEngine failed to load component qrc:/main.qml:148:5: Type SettingsWindow unavailable qrc:/SettingsWindow.qml:25:1: module "QtQuick.Dialogs" is not installed Cannot load QML interface ``` Seems like the dependencies weren't set up correctly by the package maintainer? # Others I also looked at Yaukue, Tilde, Tilix, etc. One was "looking for maintainers" and written in the [[D]] programming language, the others looked messy or like there were other problems. But hey they couldn't be worse than Alacritty before the timed redraws, right? - [[Warp]] terminal is some kind of AI based nonsense business - [Foot](https://codeberg.org/dnkl/foot) terminal is Wayland-only, written in [[3. Reference/Software/Programming Languages/C|C]], uses simple [[INI]] style config # Gnome Terminal Yeah, it's fine. It has served me well for years. Necromancer's DOS Navigator does not get along with it well and ends up causing text to blink and black on black because Term isn't properly using bright background colors, which is what set me on the hunt for an alternative. It's also been having this issue lately where mouse support gets broken, and I have no idea why, then it comes back after a restart. It's very annoying. **Doesn't support ligatures.**