Skip to content

Instantly share code, notes, and snippets.

@pocco81
Forked from blueyed/xterm-bg.sh
Created March 28, 2021 23:06
Show Gist options
  • Save pocco81/a141a757e7fd3551d54c50b33bf29319 to your computer and use it in GitHub Desktop.
Save pocco81/a141a757e7fd3551d54c50b33bf29319 to your computer and use it in GitHub Desktop.
Query background setting from terminal (xterm / rxvt-unicode)
#!/bin/sh
#
# Query a property from the terminal, e.g. background color.
#
# XTerm Operating System Commands
# "ESC ] Ps;Pt ST"
oldstty=$(stty -g)
# What to query?
# 11: text background
Ps=${1:-11}
stty raw -echo min 0 time 0
# stty raw -echo min 0 time 1
printf "\033]$Ps;?\033\\"
# xterm needs the sleep (or "time 1", but that is 1/10th second).
sleep 0.00000001
read -r answer
# echo $answer | cat -A
result=${answer#*;}
stty $oldstty
# Remove escape at the end.
echo $result | sed 's/[^rgb:0-9a-f/]\+$//'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment