About
st is a simple terminal emulator for X from suckless. The base distribution of this software adheres to the suckless philosophy and as a result comes with a very minimal set of features. This fork extends the functionality and appearance of the program through the use of patches and other changes to the codebase.
Features
- Scrollback: scroll back / forward through terminal output with
MOD k / j
. - Column and row reflow: allow column and rows to reflow so output is not cut off after resizing.
- Mousewheel scrollback: scroll back / forward through terminal output with
mousewheel
. - Alpha: change opacity of terminal background.
- Anysize: allows st to resize to any pixel size, makes the inner border size dynamic, and centers the content of the terminal so that the left/right and top/bottom borders are balanced. With this patch, st on a tiling WM will always fill the entire space allocated to it.
- Blinking cursor: change cursor style (currently set to blinking underline).
- Bold is not bright: by default, bold text is rendered with a bold font in the bright variant of the current color. This patch makes bold text rendered simply as bold, leaving the color unaffected.
- External pipe: read and write to st's screen with an external pipe. Can be used with the entire terminal history.
- Copy command output: using dmenu to list and select previous commands, copy output to clipboard using
MOD o
. - Copy url: using dmenu to list and select urls in terminal history, copy url using
MOD y
. - Open url: using dmenu to list and select urls in terminal history, open url using
MOD l
. - Xresources: configure st via Xresources. Pass a USR1 signal to all st processes after updating Xresources to reload the settings on the fly:
pidof st | xargs kill -s USR1
. - Ligatures: correct drawing of ligatures.
- Icon: set NET_WM_ICON with a png image. This can then be read in from another program such as a window manager. The icon used is
st.png
. - Right click paste: pressing right click will paste to terminal.
- Undercurl: support for special underline styles.
Install
Clone this repo and install with rm -rf config.h && sudo make clean install
. Configuration is done via config.def.h so any changes will require the program to be recompiled and installed to take effect.
Screenshots
Keybindings
These are set in config.def.h. The MOD
key is set to Mod1, which I have as alt
on my system.
Keys | Function |
---|---|
MOD k | Scroll up |
MOD j | Scroll down |
MOD u | Scroll up x10 |
MOD d | Scroll down x10 |
MOD l | Open URL |
MOD y | Copy URL |
MOD o | Copy command output |
Control Shift c | Copy to clipboard |
Control Shift v | Paste from clipboard |
Control Shift y | Paste selected |
Control Shift k | Zoom in |
Control Shift j | Zoom out |