#!/bin/csh -f
#
# citekeys - print out all the cite keys in given bib files
#
# usage: 
#    citekeys file.bib... 
#

onintr cleanup

if ($#argv < 1) then
	   echo 'usage: citekeys file.bib...'
	   exit 1
endif

unset files
foreach i ($*)
	if ($i:e == bib) then
 		set file=$i:r
	else
 		set file=$i
	endif
	
	if ($?files) then
		set files=($files,$i)
	else
		set files=($file)
	endif
end

echo creating citekeys.aux for $files

cat > citekeys.aux <<EOF
\relax 
\citation{*}
\bibstyle{citekeys}
\bibdata{$files}
EOF

rm -f citekeys.{log,dvi,bbl,blg}

echo bibtex citekeys
bibtex citekeys

mv citekeys.bbl citekeys.out

echo ""
echo output is in citekeys.out

cleanup:
rm -f citekeys.{tex,aux,log,dvi,bbl,blg}