aboutsummaryrefslogtreecommitdiff
path: root/compile
diff options
context:
space:
mode:
Diffstat (limited to 'compile')
-rwxr-xr-xcompile41
1 files changed, 41 insertions, 0 deletions
diff --git a/compile b/compile
new file mode 100755
index 0000000..e707ec9
--- /dev/null
+++ b/compile
@@ -0,0 +1,41 @@
+#!/usr/bin/env sh
+#
+# Compile an OPML including all other OPML files.
+#
+
+# Parameters
+BASENAME="`basename $0`"
+DIRNAME="`dirname $0`"
+OUT="$DIRNAME/all.opml"
+BASE_URL="https://git.fluxo.info/feeds/plain/"
+
+# Header
+cat <<-EOF > $OUT
+<?xml version="1.0"?>
+<opml version="2.0">
+ <head>
+ <title>All Feeds</title>
+ </head>
+ <body>
+EOF
+
+# Contend
+find $DIRNAME -name '*.opml' | while read item; do
+ name="`basename $item .opml`"
+ base="`dirname $item | sed -e 's/^\.//'`"
+
+ # Avoid recursion
+ if [ "$name" = "all" ]; then
+ continue
+ fi
+
+ #echo " <outline type=\"include\" url=\"${item}\" title=\"${base}/${name}\"/>" >> $OUT
+ #echo " <outline type=\"include\" url=\"${item}\"/>" >> $OUT
+ echo " <outline type=\"link\" url=\"${BASE_URL}${base}${name}.opml\" text=\"${base}/${name}\"/>" >> $OUT
+done
+
+# Footer
+cat <<-EOF >> $OUT
+ </body>
+</opml>
+EOF