draft/ol2dot.rb
branchecjdr
changeset 92 bdef1afd1170
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/draft/ol2dot.rb	Wed Aug 30 21:32:44 2006 -0400
@@ -0,0 +1,27 @@
+#!/usr/bin/ruby
+
+Header_RE = /^(\*+)\s+(.*)/
+parents = ["#{ARGV[0]}"]
+
+print "digraph \"#{parents[0]}\" {\n"
+
+while gets
+  if $_ =~ Header_RE
+    title = $2
+    level = $1.length()
+    next if title =~ /^Emacs Variables/
+    if level > parents.length()
+      [level..parents.length()].each do |i| parents.push("") end
+    end
+    if level < parents.length()
+      parents = parents[0..level-1]
+    end
+    parents.push(title)
+    print "// #{parents.join(",")}\n"
+    if parents.length() > 1
+      print "\"#{parents[-2]}\" -> \"#{parents[-1]}\";\n"
+    end
+  end
+end
+
+print "}\n"