diff options
Diffstat (limited to '')
| -rw-r--r-- | pkgs/scripts/merge-pdfs.nix | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/pkgs/scripts/merge-pdfs.nix b/pkgs/scripts/merge-pdfs.nix index 584505a..cb7d678 100644 --- a/pkgs/scripts/merge-pdfs.nix +++ b/pkgs/scripts/merge-pdfs.nix @@ -1,16 +1,20 @@ -{ writeShellScriptBin, pdftk, ... }: +{ + writeShellScriptBin, + pdftk, + ... +}: writeShellScriptBin "merge-pdfs" '' set -e export PATH="$PATH:${pdftk}/bin" - + if [ $# -lt 3 ]; then echo "Usage: $0 <output> <PDFs...>" >&2 exit 1 fi - + OUTPUT="$1" shift - + WORKDIR="$HOME/vtmp/merge-pdfs.$$" BOOKMARKS="$WORKDIR/bookmarks.txt" FMT="BookmarkBegin @@ -18,9 +22,9 @@ writeShellScriptBin "merge-pdfs" '' BookmarkLevel: 1 BookmarkPageNumber: 1 " - + mkdir "$WORKDIR" - + N=0 for SOURCE in "$@"; do BASE="$(basename "$SOURCE")" @@ -28,7 +32,7 @@ writeShellScriptBin "merge-pdfs" '' pdftk "$SOURCE" update_info "$BOOKMARKS" output "$WORKDIR/"$(printf "%04d" $N).pdf N=$((N+1)) done - + pdftk "$WORKDIR"/*.pdf cat output "$OUTPUT" rm -r "$WORKDIR" '' |
