#lang scribble/base @(require scribble/core scribble/manual) @title[#:tag "top" #:version "1.0" #:style 'toc-hidden]{All-Styles Document, Title in ``H2''} @author["Jack" "Jill"] All of this content is within ``maincolumn'', then ``main''. @"\U2192" The version on the top left of this page is in ``versionbox'' and then either span ``versionNoNav'' (no navigation bar, as for single-page rendering) or ``version'' (with navigation bar, as for multi-page rendering). @"\U2192" The author on the top left of this page is in ``SAuthorListBox'', then ``SAuthorList'', and then a span ``author'', where @tt{
} separates multiple authors. @"\U2190" The table-of-contents panels are both in a table ``tocset'': @margin-note{This note is in ``refpara'', then ``refcolumn'', then ``refcontent''.} @itemlist[ @item{The top panel is in ``tocview''. The top panel can have multiple layers of the hierarchy. For a single-page rendering, only one layer is present. For an example of multiple layers when rendering this document to multiple pages, go to @secref["deepest"]. Each layer is in a ``tocviewlist'' that also has the class ``tocviewlisttopspace'' in the case of the first layer. The always-visible name of a layer is in a span ``tocviewtoggle'', but that span is also in a ``tocviewtitle'' in the case of the first layer. Each item under the title is in a ``tocviewsublist'' or a variant: ``tocviewsublistonly'' if only a single item is present, ``tocviewsublistfirst'' for the first item of multi, ``tocviewsublistlast'' for the last item of multiple. Then, each item is in a span ``tocviewlink''. Each section link in the panel is a span ``tocviewlink'' or a span ``tocviewselflink'' if the link corresponds to the current page or on the path to the current page.} @item{A bottom panel is visible here only for a single-page rendering. See its description in @secref["h3"].} ] @margin-note[#:left? #t]{This note is in ``refparaleft'', then ``refcolumnleft'', then ``refcontent''.} Table of contents uses ``toptoclink'' for the top layer, and ``toclink'' for nested levels: @table-of-contents[] @margin-note*{This note is in ``refelem'', then ``refcolumn'', then ``refcontent''.} @margin-note*[#:left? #t]{This note is in ``refelemleft'', then ``refcolumnleft'', then ``refcontent''.} @; ====================================================================== @section[#:tag "h3"]{Section in ``H3''} @"\U2190" For either single-page or multi-page rendering, the table-of-contents column here has two panels. The top panel is described in the @seclink["h3"]{starting prose}. For the bottom panel: @itemlist[ @item{The bottom panel is in a ``tocsub''. For a multi-page rendering, the on-this-page title is in ``tocsubtitle''. The rest is always in a table ``tocsublist''. For each entry, the number part is in a span ``tocsublinknumber'', and the title part in a span, one of the following: ``tocsubseclink'' if the link represents a (sub)section, ``tocnonseclink'' if the link is not a (sub)section but there are (sub)sections in the list (and there is an example target in this section), or ``tocsublink'' if no links represent a (sub)section (see @secref["all-non-sec"]).} ] When a part that corresponds to a page has a @racket['no-toc] style, the top panel of the table-of-contents column is missing and the bottom panel is in a ``tocview'' instead of ``tocsub''. See @secref["no-toc"]. Here is the target for the @toc-target-element[#f @elem{``tocnonseclink''} `(demo (prefixable "non-sec"))] link. @subsection[#:style 'toc]{Subsection in ``H4''} @local-table-of-contents[] @subsubsection[#:tag "deepest"]{Subsubsection in ``H5''} @"\U2190" This page has no on-this-page panel in a multi-page rendering, because there are no numbered subsections, but it has three levels shown in the table-of-contents panel. @subsubsub*section{``SSubSubSubSection''} @subsection{Second Subsection in ``H4''} @; ====================================================================== @section[#:tag "no-toc" #:style 'no-toc]{Suppressed ToC Panel} In multi-page rendering, this page has no gobal table-of-contents panel, because it is suppressed with @racket['no-toc]. @subsection{Subsection} @subsection{Another Subsection} @; ====================================================================== @section[#:tag "all-non-sec"]{Non-Section On-This-Page Links} This section has only non-section targets in the on-this-page panel of a multi-page rendering. Here is the target for the @toc-target-element[#f @elem{``tocsublink'' 1} `(demo (prefixable "non-sec 1"))] link. Here is the target for the @toc-target-element[#f @elem{``tocsublink'' 2} `(demo (prefixable "non-sec 2"))] link. Here is the target for the @as-index{``indexlink''} link in the @seclink["doc-index"]{index} (where ``indexlink'' is used for the index entry and not here). @; ====================================================================== @section{Element Styles} Some spans: @itemlist[ @item{@tt{``stt''}} @item{@elem[#:style 'roman]{``sroman''}} @item{@elem[#:style "slant"]{``slant''}} @item{@elem[#:style 'sf]{``ssanserif''}} @item{@smaller{``Smaller''}} @item{@larger{``Larger''}} @item{``hspace'' is used for forced @hspace[3] space} @item{``url'' is used for URLs: @url{http://racket-lang.org}} @item{@elem[#:style 'no-break]{``nobreak'', which is used to prevent line breaks anywhere in the element so that the element may run too far right}} @item{@italic{italic} directly sets @tt{font-style} to @tt{italic}} @item{@bold{bold} directly sets @tt{font-weight} to @tt{bold}} @item{@elem[#:style 'superscript]{superscript} directly sets @tt{vertical-align} to @tt{super} and @tt{font-size} to @tt{80%}.} @item{@elem[#:style 'subscript]{subscript} directly sets @tt{vertical-align} to @tt{sub} and @tt{font-size} to @tt{80%}.} ] Link spans: @itemlist[ @item{@elemref[#:underline? #f '(prefixable "plain-target")]{``plainlink''} hyperlink to @elemtag['(prefixable "plain-target")]{here}} @item{@deftech{technical term} definitions are simply italicized by default} @item{@tech{technical term} references are in ``techoutside'', then ``techinside''} ] @; ====================================================================== @section{Block Styles} @nested{This paragraph is in a ``SubFlow'' @tt{
}.} @nested[#:style 'inset]{This paragraph is in a plain @tt{
}.} @nested[#:style 'code-inset]{This paragraph is in a ``SCodeFlow'' @tt{
}.} @nested[#:style 'vertical-inset]{This paragraph is in a ``SVInsetFlow'' @tt{
}. This style is useful when space is not normally included between blocks.} @centered{This paragraph is in a ``SCentered'' @tt{
}.} @tabular[#:style 'boxed (list (list @t{A ``boxed'' table.}))] @; ====================================================================== @section{Enumerations} This one is unordered, so it uses @tt{
    }: @itemlist[ @item{six} @item{half-dozen} ] This one is ordered, so it uses @tt{
      }: @itemlist[#:style 'ordered @item{First} @item{Second @itemlist[#:style 'ordered @item{Second, first half} @item{Second, second half @itemlist[#:style 'ordered @item{First half of that} @item{Second half of that @itemlist[#:style 'ordered @item{Thin-slice start} @item{Thin-sliced end} ]} ]} ]} @item{Third} ] This one is ``compact'': @itemlist[ #:style 'compact @item{six} @item{half-dozen} ] This paragraph follows the enumeration above. @; ====================================================================== @section{Paragraph Spacing} This sentence is a paragraph all by itself. @t{This sentence is a paragraph.} @t{This sentence is also a paragraph, but it is connected to the previous paragraph as a compound paragraph by virtue of having no paragraph-breaking space before it, and each paragraph is in a ``SIntraPara'' @tt{
      } instead of a @tt{

      }.} This sentence is a paragraph, as is each of A1, B1, A2, B2, A3, B3a, and B2a in the following table, but B3a and B2a form a compound paragraph. @; @tabular[(list (list "A1" "B1") (list "A2" "B2") (list "A3" @compound-paragraph[plain (list @t{B3a} @t{B3b})]))] @; This sentence is a paragraph, and with the preceding table and paragraph forms a compound paragraph. @nested{ @t{This is a first paragraph in a @tt{

      }.} @t{This is a second paragraph in a @tt{
      }.} } @; ====================================================================== @section{Navigation Bars} For multi-page rendering, this page will have a navigation bar at the top and bottom. The bars are within ``maincolumn'' and ``main''. The tap bar is in ``navsettop'', and the bottom one is in ``navsetbottom''. Within those divs, ``navsetleft'' wraps content to be left-aligned and ``navsetright'' wraps content to be right-aligned. Links that are disabled (such as a next-page link on the last page) are each in a span ``nonavigation''. When a search box is included, then it is in ``searchform'' and then ``searchbox''. If no search box is included, then a ``nosearchform'' @tt{div} is used. Finally, and not part of the nagivation bar, the bottom nagivation bar is followed by a @tt{div} with the name ``contextindicator''. JavaScript code attached to the page copies the @tt{ctxtname} query argument, if any, to the @tt{div} and makes it visible. @; ====================================================================== @index-section[]