#! /bin/zsh # A script to make using 256 colors in zsh less painful. # P.C. Shyamshankar # Copied from http://github.com/sykora/etc/blob/master/zsh/functions/spectrum/ typeset -Ag FX FG BG FX=( reset "%{%}" bold "%{%}" no-bold "%{%}" italic "%{%}" no-italic "%{%}" underline "%{%}" no-underline "%{%}" blink "%{%}" no-blink "%{%}" reverse "%{%}" no-reverse "%{%}" ) for color in {000..255}; do FG[$color]="%{[38;5;${color}m%}" BG[$color]="%{[48;5;${color}m%}" done # Show all 256 colors with color number function spectrum_ls() { typeset -a colors for i in {000..255}; do colors+="%F{$i}███ Color $i ███%f " done print -P -c -- $colors } # Show all 256 colors where the background is set to specific color function spectrum_bls() { typeset -a colors for i in {000..255}; do colors+="$BG[$i] Color $i %{$reset_color%} " done print -P -c -- $colors }