]> git.donarmstrong.com Git - bin.git/blob - dropbox_to_read
7ea896ad6886801a2866356f1d3a815ca9af5bcc
[bin.git] / dropbox_to_read
1 #!/bin/bash
2
3
4 if [ "$(basename "$0")" == "dropbox_to_read" ]; then
5     TMPDIR="$(mktemp -d)"
6     PDF_FILE=$(bibtex_to_paper --only-print "$1")
7     mkdir -p "$TMPDIR/a"
8     mkdir -p "$TMPDIR/b"
9     cp -l "$PDF_FILE" "$TMPDIR/a/file.pdf";
10     if [ -e "${PDF_FILE}.annot" ]; then
11         cp "$PDF_FILE" "$TMPDIR/b/file.pdf";
12         chmod u+w "$TMPDIR/b/file.pdf"
13         qprint -d "${PDF_FILE}.annot" | patch -d "$TMPDIR/b" --binary;
14     else
15         cp "$PDF_FILE" "$TMPDIR/b/file.pdf";
16         chmod u+w "$TMPDIR/b/file.pdf"
17     fi;
18     cp "$TMPDIR/b/file.pdf" ~/Dropbox/research_papers/to_read/"$(basename "$PDF_FILE")";
19     rm -f "$TMPDIR/a/file.pdf"
20     rm -f "$TMPDIR/b/file.pdf"
21     rmdir "$TMPDIR/a" "$TMPDIR/b" "$TMPDIR"
22 fi;
23
24 if [ "$(basename "$0")" == "dropbox_read" ]; then
25     #echo "Currently not implemented";
26     # exit 1;
27     while IFS= read -r -d '' file; do
28         unset IFS
29         PDF_FILE="$(bibtex_to_paper --only-print --search-by-file "$(basename "$file")")"
30         if [ -n "$PDF_FILE" ]; then
31             ( set -e
32               TMPDIR="$(mktemp -d)"
33               mkdir -p "$TMPDIR/a";
34               mkdir -p "$TMPDIR/b";
35               cp -l "${PDF_FILE}" "$TMPDIR/a/file.pdf";
36               chmod u+w "$TMPDIR/a/file.pdf"
37               cp -l "$file" "$TMPDIR/b/file.pdf";
38               echo "${PDF_FILE}.annot";
39               (cd "$TMPDIR";
40                diff -Nura a b ) | qprint --encode --binary > "${PDF_FILE}.annot"
41               rm -f "$TMPDIR/a/file.pdf"
42               rm -f "$TMPDIR/b/file.pdf"
43               rmdir "$TMPDIR/a" "$TMPDIR/b" "$TMPDIR"
44               mv "$file" ~/Dropbox/research_papers/annotations_recorded
45             );
46         fi;
47     done < <(find ~/Dropbox/research_papers/read/ -type f -print0)
48 fi;