aboutsummaryrefslogtreecommitdiff
path: root/compile
diff options
context:
space:
mode:
Diffstat (limited to 'compile')
-rwxr-xr-xcompile40
1 files changed, 40 insertions, 0 deletions
diff --git a/compile b/compile
new file mode 100755
index 0000000..899a761
--- /dev/null
+++ b/compile
@@ -0,0 +1,40 @@
+#!/usr/bin/env sh
+#
+# Compile an OPML including all other OPML files.
+#
+
+# Parameters
+BASENAME="`basename $0`"
+DIRNAME="`dirname $0`"
+OUT="$DIRNAME/all.opml"
+
+# Header
+cat <<-EOF > $OUT
+<?xml version="1.0"?>
+<opml version="1.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`"
+
+ # Avoid recursion
+ if [ "$name" = "all" ]; then
+ continue
+ fi
+
+ #echo " <outline type=\"include\" xmlUrl=\"${item}\" title=\"${base}/${name}\"/>" >> $OUT
+ echo " <outline type=\"include\" xmlUrl=\"${item}\"/>" >> $OUT
+done
+
+# Footer
+cat <<-EOF >> $OUT
+ </outline>
+ </body>
+</opml>
+EOF