Skip to content

siduck/st

Folders and files

NameName
Last commit message
Last commit date

Latest commit

a7582f9 · Sep 6, 2024
Jul 6, 2022
Dec 31, 2020
Jul 12, 2022
Aug 31, 2024
Dec 18, 2020
Dec 18, 2020
Dec 18, 2020
Sep 6, 2024
Jul 6, 2022
Jul 19, 2022
Jul 19, 2022
Jul 21, 2022
Dec 18, 2020
Dec 18, 2020
Jun 10, 2021
Jun 10, 2021
Dec 18, 2020
Dec 18, 2020
Dec 18, 2020
Mar 30, 2024
Jul 12, 2022
Jul 12, 2022
Aug 20, 2021
Jul 6, 2022
Jun 10, 2021
Jul 6, 2022
Aug 31, 2024
Feb 27, 2022

Repository files navigation

St (Suckless Terminal)

Xresources live-reload demo



Dependencies

# Void
xbps-install libXft-devel libX11-devel harfbuzz-devel libXext-devel libXrender-devel libXinerama-devel gd-devel

# Debian (and ubuntu probably)
apt install build-essential libxft-dev libharfbuzz-dev libgd-dev

# Nix
nix develop github:siduck/st

# Arch
pacman -S gd

# Fedora (or Red-Hat based)
dnf install gd-devel libXft-devel

# SUSE (or openSUSE)
zypper in -t pattern devel_basis
zypper in gd-devel libXft-devel harfbuzz-devel

# Install font-symbola and libXft-bgra

Try it out!

Before you install st on your system, you might want to try it out first. To do so, simply run (requires Nix) nix run github:siduck/st

Install

git clone https://github.com/siduck/st.git
cd st
(change the compiler if you cant use c99 to compile: sed -i 's/^#\ CC\ =\ c99/CC=gcc/' config.mk)
sudo make install
xrdb merge pathToXresourcesFile

(note : put the xrdb merge command in your wm's autostart or similar)

Using Nix flakes

Add st.url = "github:siduck/st"; to your inputs and install inputs.st.packages."${system}".st-snazzy package

Fonts

  • Install JetbrainsMono Mono Nerd Font or any nerd font from here

Patches:

  • Ligatures
  • sixel (check sixel branch)
  • scrollback
  • Clipboard
  • Alpha(Transparency)
  • Boxdraw
  • patch_column ( doesnt cut text while resizing)
  • font2
  • right click paste
  • st desktop entry
  • newterm
  • anygeometry
  • xresources
  • sync patch ( Better draw timing to reduce flicker/tearing and improve animation smoothness )
  • live reload ( change colors/fonts on the fly )
  • st-swapmouse

Xresources live-reload

# make an alias for this command

alias rel="xrdb merge pathToXresourcesFile && kill -USR1 $(pidof st)"

Ram usage comparison with other terminals and speed test







( note : This benchmark was done on my low-end machine which has a pentium cpu so the speed results might vary )

Default Keybindings

ctrl + shift + c        Copy  
ctrl + shift + v Paste
right click on the terminal ( will paste the copied thing ) (Zoom) alt + comma Zoom in
alt + . Zoom out
alt + g Reset Zoom
(Transparency) alt + s Increase Transparency
alt + a Decrease Transparency
alt + m Reset Transparency
alt + k scroll down alt + j scroll up mod + shift + enter open a new terminal with same cwd ( current working directory )

you can change all of these in config.h

Themes/Fonts used

  • ls-icons: https://github.com/Yash-Handa/logo-ls
  • Xresources: onedark (just xrdb merge xresourcesfile, do this everytime you make any change to xresources file) from this repo itself.
  • Font: JetbrainsMono Nerd Font + material design icon fonts

Screenshots:









Credits