aboutsummaryrefslogtreecommitdiff
path: root/scripts/.local/bin/personal/wrapper/pdfunite
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/.local/bin/personal/wrapper/pdfunite')
-rwxr-xr-xscripts/.local/bin/personal/wrapper/pdfunite35
1 files changed, 35 insertions, 0 deletions
diff --git a/scripts/.local/bin/personal/wrapper/pdfunite b/scripts/.local/bin/personal/wrapper/pdfunite
new file mode 100755
index 0000000..87f368a
--- /dev/null
+++ b/scripts/.local/bin/personal/wrapper/pdfunite
@@ -0,0 +1,35 @@
+#!/bin/env python
+
+import sys
+import subprocess
+
+def main():
+ output = "pdfunite.pdf"
+ files = []
+
+ for i, arg in zip(range(len(sys.argv)), sys.argv):
+ if i == 0:
+ continue
+
+ if arg == "-o":
+ # output = '_'.join(sys.argv[i + 1 : len(sys.argv)])
+ output = str(sys.argv[i + 1])
+ continue
+ if not arg.startswith("-") and sys.argv[i - 1] != "-o":
+ files.append(arg)
+
+ convert_to_pdf = ["jpg", "jpeg", "png"]
+
+ for i, file in zip(range(len(files)), files):
+ for extension in convert_to_pdf:
+ if file.endswith(extension):
+ tmpfile = f"/tmp/{file.replace('/', '_')}.pdf"
+ subprocess.run(["convert", file, tmpfile])
+ files[i] = tmpfile
+
+ cmd_str = f"/usr/bin/pdfunite {' '.join(files)} {output}"
+ subprocess.run(cmd_str, shell=True)
+
+if __name__ == "__main__":
+ main()
+