st

Active

Overview

st is a simple terminal emulator for X11/Xorg developed by the suckless.org project. It is designed as a lightweight replacement for xterm and urxvt, prioritizing minimalism and efficiency over feature bloat. The project emphasizes writing clean, maintainable code and avoiding unnecessary complexity, making it suitable for users who prefer bare-bones terminal functionality and want to understand or customize their tools.

Key Features

  • Lightweight Implementation - Minimal codebase designed to be simple and easy to understand and modify
  • 256 Color Support - Supports 256 colors and true color (24-bit) output for modern terminal applications
  • VT10X Escape Sequences - Emulates most VT10X escape sequences for compatibility with legacy and modern applications
  • UTF-8 Support - Full UTF-8 character encoding support for international text and emoji
  • X11 Copy/Paste - Native X11 clipboard integration for seamless copy and paste operations
  • Anti-aliased Fonts - Renders fonts with anti-aliasing and supports font fallback for missing glyphs
  • Dynamic Resizing - Supports window resizing with proper terminal reflow
  • Customizable Shortcuts - Keyboard shortcuts can be configured through source code modification
  • Line Drawing Support - Supports line drawing characters for terminal-based graphics

Pricing

PlanPriceIncludes
Free$0Full source code, all features, unlimited use

Platforms & Requirements

st runs on Linux systems with X11/Xorg. It requires libX11, libXft, and a C compiler for building from source. The application is limited to X11-based systems and does not support Wayland, macOS, or Windows natively, though it may be compiled on BSD systems.

Integrations & Ecosystem

  • tmux (synchronized rendering support)
  • X11 clipboard
  • fontconfig (font selection)
  • Git (for version control of custom builds)

Alternatives

AppDifference
xtermOlder, more feature-rich terminal emulator with broader compatibility but significantly larger codebase
urxvt (rxvt-unicode)Lightweight alternative with Unicode support and Perl scripting, but more complex than st
kittyModern GPU-accelerated terminal with advanced features like image support, but heavier resource usage
alacrittyGPU-accelerated terminal written in Rust with focus on performance, but requires more dependencies

Reputation

st is respected within the minimalist and Unix philosophy communities for its commitment to simplicity and code clarity. Users appreciate its lightweight footprint and ease of customization through source code modification. However, it has limited appeal to mainstream users due to its X11-only support, lack of Wayland compatibility, and requirement to compile from source. The project's philosophy of 'software that sucks less' resonates with developers who value understanding their tools but may alienate those seeking out-of-the-box functionality.

Sources (10)
  1. https://www.youtube.com/watch?v=hCPMa5KyHf0
  2. https://st.suckless.org
  3. https://martijnvos.dev/setting-up-the-st-terminal/
  4. https://wiki.archlinux.org/title/St
  5. https://github.com/BeanGreen247/st
  6. https://dev.to/suntong/st-the-suckless-simple-terminal-v09-4klf
  7. https://st.suckless.org/patches/sync/
  8. https://st.suckless.org/patches/
  9. https://st.suckless.org/patches/alpha/
  10. https://suckless.org