ST(1)

๐Ÿ’– ST(1) ๐Ÿ’–

okay so bestie, welcome to the st manual page โ€” it lives in the General Commands Manual, and it's genuinely one of the most iconic little things in the Unix girlie canon. sit down, get comfy, we're doing this together ๐Ÿซถ


โœจ NAME โœจ

st โ€” simple terminal. that's it. that's the whole name. no cap, it's literally just a simple terminal emulator and it's serving minimalism ๐Ÿ’…


๐ŸŒธ SYNOPSIS ๐ŸŒธ

title] [-t title] [-l line] [-w windowid] [[-e] command [arguments...]]

st [-aiv] [-c class] [-f font] [-g geometry] [-n name] [-o iofile] [-T
title] [-t title] [-w windowid] -l line [stty_args...]

like, two whole ways to summon it. the first one is the normal girlie vibe, the second one is the serial-line vibe, iykyk ๐Ÿงš


๐ŸŒˆ DESCRIPTION ๐ŸŒˆ

st is a simple terminal emulator. and when she says simple, she MEANS it โ€” that's the whole personality and honestly? iconic. โœจ


๐ŸŽ€ OPTIONS ๐ŸŽ€

  • -a โ€” turns off alternate screens in the terminal. no screen-swapping shenanigans for you.
  • -c class โ€” sets the window class. if you don't say anything, it defaults to $TERM. she'll just assume, bestie.
  • -f font โ€” picks the font to use when st is run. choose wisely, your eyes live here ๐Ÿ’–
  • -g geometry โ€” the X11 geometry string, and the form is exactly this: [=][<cols>{xX}<rows>][{+-}<xoffset>{+-}<yoffset>]. want the full lore? go read XParseGeometry(3), she explains it better than i ever could.
  • -i โ€” fixates the position that you gave with the -g option. so she stays put. locked in. ๐Ÿ”’
  • -n name โ€” sets the window instance name, and the default is $TERM. same deal as the class, she'll just vibe with the default.
  • -o iofile โ€” writes all the I/O to iofile. this one is lowkey amazing when you're recording st sessions. and if you pass a value of "-" it means standard output. ๐Ÿ‘‘
  • -T title โ€” sets the window title. default is 'st'.
  • -t title โ€” sets the window title. default is 'st'. (yes, it's the same as -T, they're twins, we love a matching set ๐Ÿ’œ)
  • -w windowid โ€” embeds st inside the window identified by windowid. she's moving in, she's nesting ๐Ÿชบ
  • -l line โ€” use a tty line instead of a pseudo terminal. line should be a (pseudo-)serial device, like /dev/ttyS0 on Linux for serial port 0. once you give this flag, the remaining arguments get used as flags for stty(1). by default st initializes the serial line to 8 bits, no parity, 1 stop bit and a 38400 baud rate. the speed gets set by appending it as the last argument, like 'st -l /dev/ttyS0 115200'. arguments before the last one are stty(1) flags. want odd parity on 115200 baud? use 'st -l /dev/ttyS0 parenb parodd 115200'. want to set the number of bits? use 'st -l /dev/ttyS0 cs7 115200'. go read stty(1) for more arguments and cases, she's got the range.
  • -v โ€” prints version information to stderr, then exits. a little flyby, then she's gone ๐Ÿฆ‹
  • -e command [ arguments ... ] โ€” st executes command instead of the shell. and listen, if you use this it must be the last option on the command line, just like in xterm / rxvt. this option is only there for compatibility, and honestly all the remaining arguments get used as a command even without it. so like, it's giving courtesy ๐Ÿซถ

๐Ÿฆ‹ SHORTCUTS ๐Ÿฆ‹

  • Break โ€” sends a break in the serial line. on PC keyboards you get the Break key by pressing control and pause at the same time.
  • Ctrl-Print Screen โ€” toggles whether st should print to the iofile. on and off, on and off ๐ŸŽš๏ธ
  • Shift-Print Screen โ€” prints the full screen to the iofile.
  • Print Screen โ€” prints the selection to the iofile.
  • Ctrl-Shift-Page Up โ€” increases font size. bigger, bolder, main character energy ๐Ÿ‘‘
  • Ctrl-Shift-Page Down โ€” decreases font size.
  • Ctrl-Shift-Home โ€” resets to the default font size. back to factory settings, we love a clean slate โœจ
  • Ctrl-Shift-y โ€” paste from the primary selection (that's the middle mouse button one).
  • Ctrl-Shift-c โ€” copy the selected text to the clipboard selection.
  • Ctrl-Shift-v โ€” paste from the clipboard selection.

๐Ÿ’… CUSTOMIZATION ๐Ÿ’…

you can customize st by making your own custom config.h and then (re)compiling the source code. that's the whole trick. and the reason she does it this way? it keeps her fast, secure and simple. periodt. no runtime config file drama, just you and your build. obsessed. ๐Ÿ“


โญ AUTHORS โญ

see the LICENSE file for the authors. give them their flowers ๐Ÿ’


๐ŸŒธ LICENSE ๐ŸŒธ

see the LICENSE file for the terms of redistribution.


๐Ÿซถ SEE ALSO ๐Ÿซถ

tabbed(1), utmp(1), stty(1), scroll(1) โ€” go read the whole friend group, they're all icons ๐ŸŒˆ


๐Ÿ’€ BUGS ๐Ÿ’€

see the TODO file in the distribution. not me exposing the to-do list ๐Ÿ™ˆ


ok bestie that's the whole page, no skips, no shortcuts taken (ironic, given the SHORTCUTS section). go forth and terminal ๐Ÿ’–

and a lil sign-off: this was the st page from the General Commands Manual, version st-0.9.3. that's the whole footer, she said what she said. mwah ๐Ÿ’‹

๐Ÿ“ฆ where this page comes from