From fe2e0ab47508f37f3a93bfe64c366ff5b4e29255 Mon Sep 17 00:00:00 2001 From: Mitja Felicijan Date: Thu, 25 May 2023 14:40:15 +0200 Subject: Note: xterm color palette --- content/notes/show-xterm-colors.md | 84 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 content/notes/show-xterm-colors.md (limited to 'content/notes/show-xterm-colors.md') diff --git a/content/notes/show-xterm-colors.md b/content/notes/show-xterm-colors.md new file mode 100644 index 0000000..fc7280b --- /dev/null +++ b/content/notes/show-xterm-colors.md @@ -0,0 +1,84 @@ +--- +title: Display xterm color palette +url: write-iso-usb.html +date: 2023-05-25 +type: notes +draft: false +tags: [linux, xterm, palette] +--- + +- `bash xterm-palette.sh` - will show you number of max colors available +- `bash xterm-palette.sh -v` - will create a list of all colors with codes + +![xterm color palette](/notes/xterm-palette.png) + +```sh +#!/usr/bin/env bash +# xterm-palette.sh + +trap 'tput sgr0' exit # Clean up even if user hits ^C + +function setfg () { + printf '\e[38;5;%dm' $1 +} + +function setbg () { + printf '\e[48;5;%dm' $1 +} + +function showcolors() { + # Given an integer, display that many colors + for ((i=0; i<$1; i++)) + do + printf '%4d ' $i + setbg $i + tput el + tput sgr0 + echo + done + tput sgr0 el +} + +# First, test if terminal supports OSC 4 at all. +printf '\e]4;%d;?\a' 0 +read -d $'\a' -s -t 0.1