#! /bin/bash
#Find all snippets defined in snippets file
#TODO IF -f find only this snippet -v show snippet info
snipDir="$HOME/.vim/snippets/";
cd $snipDir
#echo "snipDir=$snipDir";
snippets=`ls -x *.snippets`;
#echo "Snippets = $snippets";
list_snippets_for() {
    fileNamePath="$snipDir/$1";
    fileName="$1";
    fileName="$(basename $fileName)"
    if [ ! -f "$fileNamePath" ]
        then
        echo "ERROR: FILE: $file.snippets DOES NOT EXIST!!";
        exit 1;
    else
        egrep "^snippet|^#" ~/.vim/snippets/$fileName | awk '/^#/ {comment = comment $0} /^snippet/ {print $0 "\t\t" comment; comment=""}'
        #egrep "^snippet|^#" ~/.vim/snippets/$fileName ;
    fi
    return 0;
}

#snippets=`ls -x *.snippets | sed -e "s/.snippets//"`;
snippets=`ls -x *.snippets `;
echo "SNIPP=". $snippets;
args="$@";
if [ "$1" == "" ]
then
    echo "You must specify at least one file type as an argument to $0"
    echo "Available Snippets: ";
    echo "====================================================================================";
    echo "$snippets"
    echo "====================================================================================";
    echo "USAGE: $0 fileName[.snippets] [snippetName] ";
    exit
elif [ "$1" == "all" ] 
then
    snippets=$snippets;
else
    snippets="$1.snippets";
fi
#echo PHP_EOL."SEARCHING: $snippets".PHP_EOL;
echo "";

#snippets="_.snippets jq.snippets";
#snippets="jq.snippets";
banLine="============================";

argc=$#;
for filetype in $snippets
do
    
    #echo `echo $filetype | awk '{print toupper($0)}'`
    #echo "$banLine Snippets for".`echo $filetype | awk '{print $0}'`.$banLine;
    #fileName="$banLine "`echo $filetype | awk '{print $0}' `$banLine;
    fileName=`echo $filetype | awk '{print $0}' `;
    #echo "$banLine "`echo $filetype | awk '{print $0}' `$banLine;
    echo "$banLine START -" $fileName $banLine;
    #echo "filetype=$filetype";
		echo "chk fileName=$fileName" + " searchFor=$searchFor";
		searchFor='html5';
		found=` grep -q "^snippet $searchFor" $fileName `;
		echo "found=$found - rc = $?";
		if [ $? = 0 ] ;
		then
				awk "/snippet $searchFor/,/^endsnippet/" $fileName
		fi

	#    list_snippets_for $filetype 
			echo "$banLine " $fileName - END $banLine;
			echo "";
	done
