#! /bin/sh DIR="mygallery" GEOM="200x200" INMAX="5" IMD=($*) IMT=(png gif jpg jpeg PNG GIF JPG JPEG) function trans() { echo $1 | \ tr -d '.' | \ tr -d '/' } if [[ -z ${IMD[*]} ]]; then IMD=(`pwd`) fi if [[ -e $DIR ]]; then echo "gallery directory already exists" exit 1 fi echo "starting..." mkdir $DIR || exit 1 if [[ -e mylist ]]; then cp mylist $DIR/list echo "using custom image list" fi for D in ${IMD[*]}; do for I in ${IMT[*]}; do ls $D/*.$I >> $DIR/list 2> /dev/null done done cd $DIR FNUM=1 LNUM=`cat list | wc -l` MIN=`cat list | head -n 1` MAX=`tac list | head -n 1` for I in `cat list`; do echo -ne "\033[sgenerating page ${FNUM}/${LNUM}\033[u" FNUM=`echo "$FNUM + 1" | bc` N="`trans $I`.html" PREV=`grep -B 1 "$I" list | grep -v "$I"` NEXT=`grep -A 1 "$I" list | grep -v "$I"` echo -e "\n
\n\n
" > $N
echo "first " >> $N
if [[ -n $PREV ]]; then
echo "previous " >> $N
fi
echo "index " >> $N
if [[ -n $NEXT ]]; then
echo "next " >> $N
fi
echo "last" >> $N
echo -e "
gallery of ${IMD[*]}
" > index.html
for T in `cat list`; do
echo -ne "\033[sindex thumbnail ${FNUM}/${LNUM}\033[u"
FNUM=`echo "$FNUM + 1" | bc`
cp $T ./thumbs/thumb_`trans $T`
mogrify -geometry $GEOM ./thumbs/thumb_`trans $T`
echo " " >> index.html
if [[ $COU -eq $INMAX ]]; then
echo "
" >> index.html
COU=1
else
COU=`echo "$COU + 1" | bc`
fi
done
echo -e "