Luke's build of st - the simple (suckless) terminal
The suckless terminal (st) with some additional features that make it literally the best terminal emulator ever:
Unique features (using dmenu)
- follow urls by pressing
- copy urls in the same way with
- copy the output of commands with
- scroll with
shiftwhile scrolling the mouse (via scroll).
- OR vim-bindings: scroll up/down in history with
alt-j. Faster with
- zoom/change font size: same bindings as above, but holding down shift as
alt-homereturns to default
- copy text with
alt-c, paste is
- Compatibility with
pywalfor dynamic colors.
- Default gruvbox colors otherwise.
- Transparency/alpha, which is also adjustable from your
- Default font is system "mono" at 14pt, meaning the font will match your system font.
Other st patches
- updated to latest version 0.8.4
Installation for newbs
You should have xlib header files and libharfbuzz build files installed.
git clone https://github.com/LukeSmithxyz/st cd st sudo make install
Note that scroll is automatically pulled and installed when you make this build of st.
Users of Arch-based distros can also install it from the AUR as st-luke-git.
make is required to build.
fontconfig is required for the
default build, since it asks
fontconfig for your system monospace font. It
might be obvious, but
libXft are required as well. Chances are,
you have all of this installed already.
On OpenBSD, be sure to edit
config.mk first and remove
-lrt from the
$LIBS before compiling.
Be sure to have a composite manager (
picom, etc.) running if you
How to configure dynamically with Xresources
For many key variables, this build of
st will look for X settings set in
~/.Xresources. You must run
xrdb on one of these
files to load the settings.
For example, you can define your desired fonts, transparency or colors:
*.font: Liberation Mono:pixelsize=12:antialias=true:autohint=true; *.alpha: 0.9 *.color0: #111 ...
alpha value (for transparency) goes from
0 (transparent) to
(opaque). There is an example
Xdefaults file in this respository.
To be clear about the color settings:
- This build will use gruvbox colors by default and as a fallback.
- If there are Xresources colors defined, those will take priority.
- But if
walhas run in your session, its colors will take priority.
Note that when you run
wal, it will negate the transparency of existing windows, but new windows will continue with the previously defined transparency.
Notes on Emojis and Special Characters
If st crashes when viewing emojis, install libxft-bgra from the AUR.
Note that some special characters may appear truncated if too wide. You might
want to manually set your prefered emoji/special character font to a lower size
config.h file to avoid this. By default, JoyPixels is used at a
smaller size than the usual text.