From 8fae923b4fa617cc07dfb4b65faff5fdac3fb866 Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Mon, 10 Feb 2014 11:15:51 -0700 Subject: [PATCH] restore "getting started" link This change adjusts the meaning of the 'getting-started document category, which was formerly omitted from the start page. Now, it means a document that is listed at the beginning and at the same level as other documents. (Didn't just revert to the old approach to the "getting started" entry, because it doesn't work right when "racket-index" is installed without "racket-doc".) Closes PR 14348 (cherry picked from commit b9ed6f465ea058812b38f2afd566406b93e8df8b) --- .../getting-started/getting-started.scrbl | 2 +- .../scribblings/getting-started/info.rkt | 2 +- .../racket-doc/scribblings/raco/setup.scrbl | 3 +- .../racket-index/scribblings/main/config.rkt | 3 +- .../scribblings/main/private/manuals.rkt | 37 ++++++++++++------- 5 files changed, 28 insertions(+), 19 deletions(-) diff --git a/pkgs/racket-pkgs/racket-doc/scribblings/getting-started/getting-started.scrbl b/pkgs/racket-pkgs/racket-doc/scribblings/getting-started/getting-started.scrbl index 57e2aab758..6f2909dcda 100644 --- a/pkgs/racket-pkgs/racket-doc/scribblings/getting-started/getting-started.scrbl +++ b/pkgs/racket-pkgs/racket-doc/scribblings/getting-started/getting-started.scrbl @@ -1,7 +1,7 @@ #lang scribble/doc @(require scribble/manual) -@title{Getting Started with Racket} +@title{Getting Started} To get started with Racket, @link["http://racket-lang.org/download/"]{download it} from the web page and diff --git a/pkgs/racket-pkgs/racket-doc/scribblings/getting-started/info.rkt b/pkgs/racket-pkgs/racket-doc/scribblings/getting-started/info.rkt index 27b6ea06f3..26da8be586 100644 --- a/pkgs/racket-pkgs/racket-doc/scribblings/getting-started/info.rkt +++ b/pkgs/racket-pkgs/racket-doc/scribblings/getting-started/info.rkt @@ -1,4 +1,4 @@ #lang info (define scribblings - '(("getting-started.scrbl" () (omit)))) + '(("getting-started.scrbl" () (getting-started)))) diff --git a/pkgs/racket-pkgs/racket-doc/scribblings/raco/setup.scrbl b/pkgs/racket-pkgs/racket-doc/scribblings/raco/setup.scrbl index 2f960e6083..7f4c69cb6a 100644 --- a/pkgs/racket-pkgs/racket-doc/scribblings/raco/setup.scrbl +++ b/pkgs/racket-pkgs/racket-doc/scribblings/raco/setup.scrbl @@ -389,7 +389,8 @@ Optional @filepath{info.rkt} fields trigger additional actions by @itemize[ @item{@racket['getting-started] : High-level, introductory - documentation.} + documentation, typeset at the same level as other + category titles.} @item{@racket['language] : Documentation for a prominent programming language.} diff --git a/pkgs/racket-pkgs/racket-index/scribblings/main/config.rkt b/pkgs/racket-pkgs/racket-index/scribblings/main/config.rkt index 68dce6a2f5..14b2a443b6 100644 --- a/pkgs/racket-pkgs/racket-index/scribblings/main/config.rkt +++ b/pkgs/racket-pkgs/racket-index/scribblings/main/config.rkt @@ -24,8 +24,7 @@ ;; Section definitions for manuals that appear on the start page. (define manual-sections - '((getting-started (link "Getting Started" - (lib "scribblings/main/getting-started.scrbl"))) + '((getting-started #f) (tutorial "Tutorials") (racket-core "Racket Language and Core Libraries") (teaching "Teaching") diff --git a/pkgs/racket-pkgs/racket-index/scribblings/main/private/manuals.rkt b/pkgs/racket-pkgs/racket-index/scribblings/main/private/manuals.rkt index 8a44466c61..dc40b19a90 100644 --- a/pkgs/racket-pkgs/racket-index/scribblings/main/private/manuals.rkt +++ b/pkgs/racket-pkgs/racket-index/scribblings/main/private/manuals.rkt @@ -93,8 +93,8 @@ (lambda content (list (make-flow (list (make-paragraph content)))))] [line - (lambda (spec) - (plain-line (hspace 2) + (lambda (spec indent?) + (plain-line (if indent? (hspace 2) null) (if (element? spec) spec (other-manual spec #:underline? #f))))]) @@ -110,17 +110,23 @@ ;; Drop section if it contains no manuals. null] [else - (list* - (plain-line (hspace 1)) - (plain-line (let loop ([s (sec-label sec)]) - (match s - [(list 'elem parts ...) - (apply elem (map loop parts))] - [(list 'link text doc-mod-path) - (seclink "top" #:doc doc-mod-path #:underline? #f text)] - [(list 'link text doc-mod-path tag) - (seclink tag #:doc doc-mod-path #:underline? #f text)] - [_ s]))) + (append + ;; Spacer + (list (plain-line (hspace 1))) + ;; Section title, if any: + (if (sec-label sec) + (list + (plain-line (let loop ([s (sec-label sec)]) + (match s + [(list 'elem parts ...) + (apply elem (map loop parts))] + [(list 'link text doc-mod-path) + (seclink "top" #:doc doc-mod-path #:underline? #f text)] + [(list 'link text doc-mod-path tag) + (seclink tag #:doc doc-mod-path #:underline? #f text)] + [_ s])))) + null) + ;; Documents in section: (add-sections (sec-cat sec) (lambda (str) @@ -128,7 +134,10 @@ (make-element (if (string=? str "") "sepspace" "septitle") (list 'nbsp str)))) (sort (map (lambda (doc) - (list (cadr doc) (line (cadddr (cdr doc))) (caddr doc))) + (list (cadr doc) + (line (cadddr (cdr doc)) + (and (sec-label sec) #t)) + (caddr doc))) docs) (lambda (ad bd) (if (= (car ad) (car bd))