From 1f431b305fb4fabb7691d44df353a1300b1d818b Mon Sep 17 00:00:00 2001
From: Doug Coleman <doug.coleman@gmail.com>
Date: Thu, 4 Sep 2008 02:03:04 -0500
Subject: [PATCH] print out doc links after listing words

---
 basis/tools/scaffold/scaffold.factor | 20 ++++++++++++++------
 1 file changed, 14 insertions(+), 6 deletions(-)

diff --git a/basis/tools/scaffold/scaffold.factor b/basis/tools/scaffold/scaffold.factor
index 50e02b93a5..84636dc106 100644
--- a/basis/tools/scaffold/scaffold.factor
+++ b/basis/tools/scaffold/scaffold.factor
@@ -146,16 +146,14 @@ ERROR: no-vocab vocab ;
 
 : help-header. ( word -- )
     "HELP: " write name>> print ;
-PRIVATE>
 
-: help. ( word -- )
+: (help.) ( word -- )
     [ help-header. ] [ $values. ] [ $description. ] tri ;
 
-<PRIVATE
 : help-file-string ( str1 -- str2 )
     [
         [ "IN: " write print nl ]
-        [ words natural-sort [ help. nl ] each ]
+        [ words natural-sort [ (help.) nl ] each ]
         [ "ARTICLE: " write unparse dup write bl print ";" print nl ]
         [ "ABOUT: " write unparse print ] quad
     ] with-string-writer ;
@@ -189,6 +187,15 @@ PRIVATE>
     dup find-vocab-root [ no-vocab ] unless ;
 PRIVATE>
 
+: link-vocab ( vocab -- )
+    check-vocab
+    "Edit documentation: " write
+    [ find-vocab-root ] keep
+    [ append-path ] keep "-docs.factor" append append-path
+    <pathname> . ;
+
+: help. ( word -- )
+    [ (help.) ] [ nl vocabulary>> link-vocab ] bi ;
 
 : scaffold-help ( vocab-root string -- )
     [
@@ -199,9 +206,10 @@ PRIVATE>
     ] with-scaffold ;
 
 : scaffold-undocumented ( string -- )
-    words
+    dup words
     [ [ "help" word-prop ] [ predicate? ] bi or not ] filter
-    natural-sort [ help. nl ] each ;
+    natural-sort [ (help.) nl ] each
+    link-vocab ;
 
 : scaffold-vocab ( vocab-root string -- )
     prepare-scaffold