commit cf3e0ef3eb7f80bb19d3ee8e3a0d56b08439ed27
parent 949c5776c8e818b03c871be340e392245b0f445e
Author: Matthew Flatt <mflatt@racket-lang.org>
Date: Wed, 8 Jan 2014 07:30:59 -0700
scribblings config: 'keep-style and 'no-search flag, 'omit-start section
The 'keep-style avoids imposing the Racket manual style on a
document, while 'no-search omits the search box. The 'omit-start
section is like 'omit, but the document is still indexed and
available for cross-references.
Also, recognize a 'prefixable tag shape so that the set of tags
hat support prefixing is extensible.
original commit: c4f4ba4ca38c05e8beff1546a8df69617c25821c
Diffstat:
2 files changed, 31 insertions(+), 12 deletions(-)
diff --git a/pkgs/scribble-pkgs/scribble-doc/scribblings/scribble/core.scrbl b/pkgs/scribble-pkgs/scribble-doc/scribblings/scribble/core.scrbl
@@ -243,17 +243,32 @@ of the second half of the tag.
A part can have a @deftech{tag prefix}, which is effectively added
onto the second item within each tag whose first item is
-@racket['part] or @racket['tech]. The prefix is added to a string
-value by creating a list containing the prefix and string, and it is
-added to a list value using @racket[cons]; a prefix is not added to a
-@racket[generated-tag] instance. The prefix is used for reference
-outside the part, including the use of tags in the part's
-@racket[tags] field. Typically, a document's main part has a tag
-prefix that applies to the whole document; references to sections and
-defined terms within the document from other documents must include the prefix,
-while references within the same document omit the prefix. Part
-prefixes can be used within a document as well, to help disambiguate
-references within the document.
+@racket['part], @racket['tech], or @racket['cite], or whose second
+item is a list that starts with @racket['prefixable]:
+
+@itemlist[
+
+ @item{The prefix is added to a string second item by creating a list
+ containing the prefix and string.}
+
+ @item{The prefix is added to a list second item after @racket['part],
+ @racket['tech], or @racket['cite] using @racket[cons].}
+
+ @item{The prefix is added to a second item that starts
+ @racket['prefixable] by adding it to the list after
+ @racket['prefixable].}
+
+ @item{A prefix is not added to a @racket[generated-tag] item.}
+
+]
+
+The prefix is used for reference outside the part, including the use
+of tags in the part's @racket[tags] field. Typically, a document's
+main part has a tag prefix that applies to the whole document;
+references to sections and defined terms within the document from
+other documents must include the prefix, while references within the
+same document omit the prefix. Part prefixes can be used within a
+document as well, to help disambiguate references within the document.
Some procedures accept a ``tag'' that is just the string part of the
full tag, where the symbol part is supplied automatically. For
diff --git a/pkgs/scribble-pkgs/scribble-lib/scribble/base-render.rkt b/pkgs/scribble-pkgs/scribble-lib/scribble/base-render.rkt
@@ -583,7 +583,11 @@
[(index-entry)
(let ([v (convert-key prefix (cadr k))])
(if (eq? v (cadr k)) k (list 'index-entry v)))]
- [else k]))
+ [else
+ (if (and (pair? (cadr k))
+ (eq? 'prefixable (caadr k)))
+ (list (car k) (list* 'prefixable prefix (cdadr k)))
+ k)]))
(define/public (collect-part-tags d ci number)
(for ([t (part-tags d)])