st is a simple terminal implementation for X.

dwm & st -- two essential suckless applications

What is wrong with xterm?

xterm is bloated and unmaintainable. Here’s an excerpt from the README:

                Abandon All Hope, Ye Who Enter Here


This is undoubtedly the most ugly program in the distribution.  It was one of
the first "serious" programs ported, and still has a lot of historical baggage.
Ideally, there would be a general tty widget and then vt102 and tek4014 
subwidgets so that they could be used in other programs.  We are trying to 
clean things up as we go, but there is still a lot of work to do.

Needless to say things have not changed, it’s still ugly. It has over 65K lines of code and emulates obscure and obsolete terminals you will never need. The popular alternative, rxvt has only 32K lines of code. This is just too much for something as simple as a terminal emulator; it’s yet another example of code complexity.

Current state

See the “goals” section for a list of features that will (or won’t) be implemented.

Configuration

The configuration is done in config.h (like in dwm). You can define:

Common Problems

1. random program complains that st is unknown/not recognised/unsupported/whatever!

It means that st doesn’t have any terminfo entry on your system. Chances are you did not make install. If you just want to test it without installing it, you can manualy run tic -s st.info in st dir. It will compile st.info into a fully working local terminfo description. You can delete it when you're done.

2. Nothing works, and nothing is said about an unknown terminal!

3. I get some weird glitches/visual bug on random program!

Try lauching it with a different TERM: $ TERM=xterm myapp. toe(1) will give you a list of available terminals, but you'll most likely switch between xterm, st or st-256color. The default value for TERM can be changed in config.h (TNAME).

If all else fails, send an email to a contributor/ML explaining your problem in detail.

Links

Download

Development

st is actively developed. You can browse its source code repository or get a copy using Mercurial with the following command:

hg clone http://hg.suckless.org/st

Contributors