SMOLNET PORTAL home about changes
iAdd pptx2md converter. - pointtools - Simple point utilities to hold text presentations.	Err	bitreich.org	70
hgit clone git://bitreich.org/pointtools/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/pointtools/	URL:git://bitreich.org/pointtools/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/pointtools/	bitreich.org	70
1Log	/scm/pointtools/log.gph	bitreich.org	70
1Files	/scm/pointtools/files.gph	bitreich.org	70
1Refs	/scm/pointtools/refs.gph	bitreich.org	70
1Tags	/scm/pointtools/tag	bitreich.org	70
1README	/scm/pointtools/file/README.md.gph	bitreich.org	70
1LICENSE	/scm/pointtools/file/LICENSE.gph	bitreich.org	70
i---	Err	bitreich.org	70
1commit e0d87452da86dd8a57838bcaa8b8c817def194b0	/scm/pointtools/commit/e0d87452da86dd8a57838bcaa8b8c817def194b0.gph	bitreich.org	70
1parent ad95b9aa5689e07c7febceddbc9db5e8574f2699	/scm/pointtools/commit/ad95b9aa5689e07c7febceddbc9db5e8574f2699.gph	bitreich.org	70
hAuthor: Christoph Lohmann <20h@r-36.net>	URL:mailto:20h@r-36.net	bitreich.org	70
iDate:   Sun, 13 Jun 2021 14:41:14 +0200	Err	bitreich.org	70
i	Err	bitreich.org	70
iAdd pptx2md converter.	Err	bitreich.org	70
i	Err	bitreich.org	70
iDiffstat:	Err	bitreich.org	70
i  M Makefile                            |       1 +	Err	bitreich.org	70
i  A bin/pptx2md                         |      55 +++++++++++++++++++++++++++++++	Err	bitreich.org	70
i  A examples/pptx/example.pptx          |       0 	Err	bitreich.org	70
i	Err	bitreich.org	70
i3 files changed, 56 insertions(+), 0 deletions(-)	Err	bitreich.org	70
i---	Err	bitreich.org	70
1diff --git a/Makefile b/Makefile	/scm/pointtools/file/Makefile.gph	bitreich.org	70
i@@ -21,6 +21,7 @@ install:	Err	bitreich.org	70
i         install -m 755 bin/dir2point $(DESTDIR)$(PREFIX)/bin/dir2point	Err	bitreich.org	70
i         install -m 755 bin/md2point  $(DESTDIR)$(PREFIX)/bin/md2point	Err	bitreich.org	70
i         install -m 755 bin/point2pdf $(DESTDIR)$(PREFIX)/bin/point2pdf	Err	bitreich.org	70
i+        install -m 755 bin/pptx2md $(DESTDIR)$(PREFIX)/bin/pptx2md	Err	bitreich.org	70
i         mkdir -p $(DESTDIR)$(MANPREFIX)/man1	Err	bitreich.org	70
i         install -m 644 md2point.1    $(DESTDIR)$(MANPREFIX)/man1/md2point.1	Err	bitreich.org	70
i 	Err	bitreich.org	70
1diff --git a/bin/pptx2md b/bin/pptx2md	/scm/pointtools/file/bin/pptx2md.gph	bitreich.org	70
i@@ -0,0 +1,55 @@	Err	bitreich.org	70
i+#!/bin/sh	Err	bitreich.org	70
i+#	Err	bitreich.org	70
i+# See LICENSE for license details.	Err	bitreich.org	70
i+#	Err	bitreich.org	70
i+# This is based on:	Err	bitreich.org	70
i+#     https://github.com/revan/pptx2md	Err	bitreich.org	70
i+#	Err	bitreich.org	70
i+# The algorithm was simplified to the essence of what the ugly	Err	bitreich.org	70
i+# pptx format is capable of. Microsoft amateurs are unable to use	Err	bitreich.org	70
i+# XML properly.	Err	bitreich.org	70
i+#	Err	bitreich.org	70
i+# Requires: xml2tsv (git://bitreich.org/xml2tsv)	Err	bitreich.org	70
i+#	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+if [ $# -lt 1 ];	Err	bitreich.org	70
i+then	Err	bitreich.org	70
i+        printf "usage: %s file.pptx\n" "$(basename "$0")" >&2	Err	bitreich.org	70
i+        exit 1	Err	bitreich.org	70
i+fi	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+pptxfile="$1"	Err	bitreich.org	70
i+mdfile="$1.md"	Err	bitreich.org	70
i+tmpdir="$(mktemp -u)"	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+unzip -oq -d "${tmpdir}" "${pptxfile}"	Err	bitreich.org	70
i+if [ $? -ne 0 ];	Err	bitreich.org	70
i+then	Err	bitreich.org	70
i+        printf "Failed to extract %s.\n" "${pptxfile}"	Err	bitreich.org	70
i+        exit 1	Err	bitreich.org	70
i+fi	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+for slidefile in ${tmpdir}/ppt/slides/*.xml;	Err	bitreich.org	70
i+do	Err	bitreich.org	70
i+        linenum=0	Err	bitreich.org	70
i+        cat "${slidefile}" \	Err	bitreich.org	70
i+        | xml2tsv 2>/dev/null \	Err	bitreich.org	70
i+        | grep a:r/a:t \	Err	bitreich.org	70
i+        | cut -s -f 2 \	Err	bitreich.org	70
i+        | while read -r line;	Err	bitreich.org	70
i+        do	Err	bitreich.org	70
i+                if [ $linenum -eq 0 ];	Err	bitreich.org	70
i+                then	Err	bitreich.org	70
i+                        printf "## %s\n" "${line}" >> "${mdfile}"	Err	bitreich.org	70
i+                else	Err	bitreich.org	70
i+                        printf "%s\n" "${line}" >> "${mdfile}"	Err	bitreich.org	70
i+                fi	Err	bitreich.org	70
i+                linenum=1	Err	bitreich.org	70
i+        done	Err	bitreich.org	70
i+        printf "\n" >> "${mdfile}"	Err	bitreich.org	70
i+done	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+rm -r "$tmpdir"	Err	bitreich.org	70
i+exit 0	Err	bitreich.org	70
i+	Err	bitreich.org	70
1diff --git a/examples/pptx/example.pptx b/examples/pptx/example.pptx	/scm/pointtools/file/examples/pptx/example.pptx.gph	bitreich.org	70
iBinary files differ.	Err	bitreich.org	70
.
Response: text/plain
Original URLgopher://bitreich.org/0/scm/pointtools/commit/e0d87452da8...
Content-Typetext/plain; charset=utf-8