about summary refs log tree commit diff
path: root/Documentation/howto-index.sh
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/howto-index.sh')
-rwxr-xr-xDocumentation/howto-index.sh56
1 files changed, 56 insertions, 0 deletions
diff --git a/Documentation/howto-index.sh b/Documentation/howto-index.sh
new file mode 100755
index 0000000000..167b363668
--- /dev/null
+++ b/Documentation/howto-index.sh
@@ -0,0 +1,56 @@
+#!/bin/sh
+
+cat <<\EOF
+Git Howto Index
+===============
+
+Here is a collection of mailing list postings made by various
+people describing how they use Git in their workflow.
+
+EOF
+
+for txt
+do
+	title=$(expr "$txt" : '.*/\(.*\)\.txt$')
+	from=$(sed -ne '
+	/^$/q
+	/^From:[ 	]/{
+		s///
+		s/^[ 	]*//
+		s/[ 	]*$//
+		s/^/by /
+		p
+	}
+	' "$txt")
+
+	abstract=$(sed -ne '
+	/^Abstract:[ 	]/{
+		s/^[^ 	]*//
+		x
+		s/.*//
+		x
+		: again
+		/^[ 	]/{
+			s/^[ 	]*//
+			H
+			n
+			b again
+		}
+		x
+		p
+		q
+	}' "$txt")
+
+	if grep 'Content-type: text/asciidoc' >/dev/null $txt
+	then
+		file=$(expr "$txt" : '\(.*\)\.txt$').html
+	else
+		file="$txt"
+	fi
+
+	echo "* link:$file[$title] $from
+$abstract
+
+"
+
+done