30 lines
585 B
Bash
30 lines
585 B
Bash
#!/bin/bash
|
|
source ./.bash_colors > /dev/null
|
|
|
|
pxview()
|
|
{
|
|
|
|
path="$1"
|
|
bmpx="$(cat "$path")"
|
|
palette=($(echo "$bmpx" | sed '1!d'))
|
|
bmpx="$(echo "$bmpx" | sed '1d')"
|
|
line1="$(echo "$bmpx" | sed '1!d')"
|
|
width=$(( $(echo "$line1" | wc -m) - 1 ))
|
|
background="${palette[0]}"
|
|
|
|
#declare -p path palette bmpx width background
|
|
if [ $# > 1 ]; then
|
|
eval "$(for pal in "${@:2}";do printf 'palette%s ' "$pal";done)"
|
|
# declare -p palette
|
|
fi
|
|
|
|
echo "$bmpx" | while read row; do
|
|
echo "$row" | while IFS= read -rN1 px; do
|
|
# echo ch: '"'$px'"'
|
|
COL.square ${palette[$px]}
|
|
done
|
|
echo ${COL[0]}
|
|
done
|
|
|
|
}
|