: 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 ;
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 -- )
[
] 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