When comparing st vs kitty, the Slant community recommends st for most people. In the question“What are the best Linux terminal emulators for low-resource machines?” st is ranked 1st while kitty is ranked 9th. The most important reason people chose st is:
st is built to serve as a lightweight terminal emulator. It's very light and doesn't require many resources to run, making it able to run well on older and low-end machines.
Ranked in these QuestionsQuestion Ranking
Pros
Pro Low memory usage
st is built to serve as a lightweight terminal emulator. It's very light and doesn't require many resources to run, making it able to run well on older and low-end machines.
Pro Extremely simple architecture
st consists of a single C file that takes seconds to recompile. This also makes it very easy to understand and customize.
Pro 24-bit "True Color" support
st supports color escape sequences for a full 16 million 24-bit color spectrum, instead of the typical 256 colors.
Pro Support for fontconfig
There is full XFT (X Free Type interface library) and fallback font support through fontconfig in st. If your selected font is missing a certain glyph or symbol, but one of your other installed fonts has it, it will be shown.
Pro Copyfree licensing
Copyfree licensing implies that the user has the freedom to copy, use, modify, and distribute what he/she possesses.
Pro Image previews
Handles image previews (e.g. in ranger) way better than other terminal emulators.
Pro Patches are great
The patches on the site are great. Scroll back, hide the mouse, etc.
Pro Minimalist
Hackable and lightweight.
Pro Blazing fast
it is extremely responsive and fast, even on older computers.
Pro Clean
The terminal doesn't have any bloated features nobody uses. It is very minimal and extendable.
Pro Extensible Kitten framework
Supports plugins to add features one at a time for those who need them. Examples include Unicode input and side-by-side diffs.
Pro Window tiling
Very elegant keyboard shortcuts for creating and navigating between tiled terminals within each tab with no appreciable lag.
Pro Tabs for multiple instances
Operate several terminals from one window using the tabs feature, allowing you to make simultaneous connections to different remote hosts.
Pro Controlled and configured from the shell prompt within the program itself
No graphical menus to clutter the screen saves system resources and time once you learn that all those options are still available from the command line within the app.
Pro Scrollback buffer viewer
Allows for viewing the scrollback buffer in an external pager of your choice ('less' by default, with support for 'more' and 'most'), a huge benefit for turning actions taken in a live terminal session into a script for efficiency or dissemination or collaborating on workflows.
Cons
Con Configuration requires recompiling
Though recompilation takes seconds, knowledge of C header files is required for customization (though it's pretty easy to do for someone who knows how to edit config files).
Con Text is cut off when resizing windows
In the vanilla build, when reducing windows, lines do not wrap, they are cut off. When the window is made large again, some of the text is missing.
Con Crashes when some characters or colored fonts are displayed
Con No scrollback by default
The best way to perform scrollback is to use a multiplexer (such as tmux, screen, or dvtm) if you want scrollback and reverse-search support.
Con New features means installing patches
Just to get copy/paste support and scrolling, you have to install patches. And it's not that intuitive for a beginner.
Con Internal border/margins
Doesn't support internal margins.
Con Source code edits (aka configs) need to be redone after updating
Con Imperfect fontconfig support for CJK characters
It [st] doesn't seem to use CJK fonts provided by fontconfig while other programs use such fonts.
