UEBERZUGPP(1)

πŸ“¦ version 2.9.10, in arch rolling, nixos 26.05, nixpkgs unstable

πŸ’… UEBERZUGPP(1) β€” aka the ueberzugpp manual, but make it make sense ✨

okay so bestie, welcome to the General Commands Manual entry for ueberzugpp β€” yes that's the real manual name, we're doing this properly πŸŽ€


🌸 NAME 🌸

ueberzugpp β€” display images in a terminal πŸ’–


✨ SYNOPSIS ✨

ueberzugpp [options]

that's it. that's the whole vibe check. πŸ’…


πŸ¦‹ DESCRIPTION πŸ¦‹

so ueberzugpp is a program made to display images in a terminal β€” and it does it with an IPC. that's the whole thing, no cap. main character energy, honestly. 🌈


πŸŽ€ OPTIONS πŸŽ€

  • -h, --help β€” shows the help text. classic. iconic. 🫢
  • --version β€” shows the version. πŸ‘‘
  • --use-escape-codes β€” use escape codes to get the terminal capabilities ✨
  • --no-stdin β€” do not listen on stdin for commands πŸ™ˆ
  • --no-cache β€” disables caching of resized images πŸ’€
  • --no-opencv β€” don't use OpenCV, use Libvips instead πŸ“
  • -o, --output β€” the image output method. valid values for this include:
    • x11 (may not be available if disabled in compilation 😭)
    • sixel
    • kitty
    • iterm2
    • wayland (may not be available if disabled in compilation 😭)
    • chafa
  • -p, --parser β€” UNUSED, only present for backwards compatibility. literally just vibing there 🧚
  • -l, --loader β€” UNUSED, only present for backwards compatibility. also just vibing 🧚

⭐ STDIN ⭐

ueberzugpp reads commands through stdin. or through the unix socket located at /tmp/ueberzug_.sock πŸ”₯

commands should be in JSON form, as described in the JSON IPC section below πŸ‘‡


πŸ’œ JSON IPC πŸ’œ

there are two actions: add and remove. only two. that's the whole menu πŸ“

🌸 add 🌸

action json schema πŸŽ€

Requried Keys

yes, that's spelled Requried in the original and I'm keeping it, it's part of the lore now πŸ’€
  • action (string) β€” should be add
  • path (string) β€” the path to the image to use
  • identifier (string) β€” an identifier for the image, so that it can be removed with the remove action

One of width/height, or max_width/max_height β€” pick a lane bestie, you need one of these pairs πŸ‘‘

  • width (integer) β€” width of the image
  • max_width (integer) β€” maximum width of the image
  • height (integer) β€” height of the image
  • max_height (integer) β€” maximum height of the image
  • x (integer) β€” the column position in the terminal
  • y (integer) β€” the row position in the terminal

Optional keys

  • scaler (string) β€” can be fit_contain or forced_cover. both base the scale on whichever is larger β€” the width, or the height of the image ✨

🌈 remove 🌈

action json schema πŸ’–

Requried Keys

  • action (string) β€” should be remove
  • identifier (string) β€” the identifier of the image to remove

πŸ”₯ EXAMPLE πŸ”₯

okay so for this example to actually work: create a fifo file named fifo, and have an image in the current folder named image.png 🫢

ueberzugpp layer -o sixel < fifo &
echo '{"path": "./image.png", "action": "add", "identifier": "image",
"x": 0, "y": 0, "width": 20, "height": 20}' > fifo

slay. that's the whole demo. go off πŸ’…βœ¨


reminder bestie: the x11 and wayland outputs might not even exist for you if they were disabled in compilation β€” so if it's giving nothing, that's why 😭

and that's the manual πŸ’– this was Ueberzugpp 2.9.10, dated 2023 May β€” mwah, love you, bye πŸŽ€πŸ¦‹πŸ’œ

πŸ“¦ where this page comes from