Skip to content

Instantly share code, notes, and snippets.

@ryseto
Last active August 29, 2015 14:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ryseto/b82ee0042764b04f3b00 to your computer and use it in GitHub Desktop.
Save ryseto/b82ee0042764b04f3b00 to your computer and use it in GitHub Desktop.
latexdiff_dropbox.sh
#!/bin/sh
my_typesetter="latexmk"
my_latexdiff="latexdiff"
orig_file=`basename $1 .tex`
if [ ! -f $orig_file.tex ]; then
echo "PDF file is not found."
exit
fi
echo "Input the version:"
read pub_version
pub_dir="${HOME}/Dropbox/Public/"
pub_pdf="${pub_dir}/${orig_file}_ver${pub_version}.pdf"
y_or_n=""
if [ -f $pub_pdf ]; then
while [ "$y_or_n" != "y" -a "$y_or_n" != "n" ]; do
echo "ver. $pub_version already exists. Overwrite?(y/n)"
read y_or_n
done
else
y_or_n="y"
fi
if [ "$y_or_n" = "y" ]; then
$my_typesetter $orig_file
cp $orig_file.pdf $pub_dir
cp $orig_file.pdf $pub_pdf
if [ ! -f ../ver${pub_version} ]; then
mkdir ../ver${pub_version}
fi
cp *.tex ../ver${pub_version}/
cp *.bib ../ver${pub_version}/
cp *.pdf ../ver${pub_version}/
cp -r figs ../ver${pub_version}/
echo "Completed publishing"
y_or_n=""
while [ "$y_or_n" != "y" -a "$y_or_n" != "n" ]; do
echo "Make the diff-PDF?(y/n)"
read y_or_n
done
if [ "$y_or_n" = "y" ]; then
echo "Which version to be compared?:"
read pub_version_previous
old="../ver${pub_version_previous}/${orig_file}.tex"
if [ -f $old ]; then
echo $old exists!
else
exit
fi
new="../ver${pub_version}/${orig_file}.tex"
diff_texfile="${orig_file}_diff_${pub_version_previous}_${pub_version}"
$my_latexdiff --flatten $old $new > ${diff_texfile}.tex
$my_typesetter ${diff_texfile}.tex && \
mv ${diff_texfile}.pdf $pub_dir/ && \
rm ${diff_texfile}[._N]*
fi
else
echo "Not generated"
fi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment