assign authors to manuals

svn: r11287
This commit is contained in:
Matthew Flatt 2008-08-15 20:16:06 +00:00
parent 42ca979abd
commit 9453aaaccf
37 changed files with 148 additions and 30 deletions

View File

@ -41,6 +41,7 @@
"Guillaume Marceau, "
"Jacob Matthews, "
"Jay McCarthy, "
"Mike T. McHenry, "
"Philippe Meunier, "
"Scott Owens, "
"Jamie Raymond, "

View File

@ -4,6 +4,8 @@
@title{@bold{Embedded GUI}: Widgets within @scheme[editor<%>]}
@author["Mike T. McHenry"]
@defmodule[embedded-gui]
The @schememodname[embedded-gui] library provides a class hierarchy

View File

@ -12,6 +12,8 @@
@title[#:tag "frtime"]{@bold{FrTime}: A Language for Reactive Programs}
@author["Greg Cooper"]
The @scheme[frtime.ss] language supports declarative construction of
reactive systems in a syntax very similar to that of MzScheme. To
interact with FrTime, select FrTime from the "Choose Language" menu.

View File

@ -34,6 +34,8 @@
@title{@bold{Lazy Scheme}}
@author["Eli Barzilay"]
@defmodulelang[lazy]
Lazy Scheme is available as both a language level and a module that

View File

@ -17,6 +17,8 @@
@title{@bold{Macro Debugger}}
@author["Ryan Culpepper"]
The macro-debugger collection contains two tools: a stepper for macro
expansion and a standalone syntax browser. The macro stepper shows the
programmer the expansion of a program as a sequence of rewriting

View File

@ -3,6 +3,8 @@
@title{@bold{MysterX}: Using Windows COM Objects in Scheme}
@author["Paul Steckler"]
@bold{MysterX} is a toolkit for building Windows applications from
@as-index{ActiveX} and COM components, using Scheme as glue code.
Dynamic HTML (DHTML) is used for component presentation and

View File

@ -11,6 +11,8 @@
@title{@bold{MzCOM}: Scheme as a Windows COM Object}
@author["Paul Steckler"]
@exec{MzCOM.exe} is a Windows COM (i.e., Component Object Model) class
wrapper for PLT Scheme.

View File

@ -11,6 +11,8 @@
@title{@bold{Parser Tools}: @exec{lex} and @exec{yacc}-style Parsing}
@author["Scott Owens"]
This documentation assumes familiarity with @exec{lex} and @exec{yacc}
style lexer and parser generators.

View File

@ -14,6 +14,8 @@
@title{@bold{PLaneT}: Automatic Package Distribution}
@author["Jacob Matthews"]
@PLaneT is PLT Scheme's centralized package repository. It consists of
two parts: , which contains packages contributed by users, and
the @PLaneT client, which is built in to PLT Scheme.

View File

@ -7,6 +7,8 @@
@title{@bold{PLoT}: Graph Plotting}
@author["Alexander Friedman" "Jamie Raymond"]
PLoT (a.k.a. PLTplot) provides a basic interface for producing common
types of plots such as line and vector field plots as well as an
advanced interface for producing customized plot types. Additionally,

View File

@ -6,6 +6,8 @@
@title{@exec{mzpp} and @exec{mztext}: Preprocessors}
@author["Eli Barzilay"]
The @filepath{preprocessor} collection defines two Scheme-based
preprocessors for texts that can have embedded Scheme code. The two
processors share a few features, like several command-line flags and

View File

@ -4,6 +4,8 @@
@title{@italic{How to Design Classes} Languages}
@author["Kathryn E. Gray"]
The languages documented in this manual are provided by DrScheme to be
used with the @italic{How to Design Classes} book.

View File

@ -1,3 +1,3 @@
(module info (lib "infotab.ss" "setup")
(define name "PLT Redex")
(define scribblings (list (list "redex.scrbl" (list 'multi-page) (list 'language)))))
(define scribblings (list (list "redex.scrbl" (list 'multi-page) (list 'tool)))))

View File

@ -47,7 +47,9 @@
#'((tech "term") args ...)]
[x (identifier? #'x) #'(tech "term")]))
@title{@bold{PLT Redex}: an embedded DSL for debugging operational semantics}
@title{@bold{Redex}: Debugging Operational Semantics}
@author["Robert Bruce Findler"]
PLT Redex consists of a domain-specific language for specifying
reduction semantics, plus a suite of tools for working with the

View File

@ -79,6 +79,31 @@
;; ----------------------------------------
(provide author
author+email)
(define (author . auths)
(make-styled-paragraph
(let ([nl (make-element 'newline '("\n"))])
(case (length auths)
[(1) auths]
[(2) (list (car auths) nl "and " (cadr auths))]
[else (let ([r (reverse auths)])
(append (add-between (reverse (cdr r))
(make-element #f (list "," nl)))
(list "," nl "and " (car r))))]))
"author"))
(define (author+email name email)
(make-element #f
(list
name
" <"
(regexp-replace* #rx"[.]"
(regexp-replace* #rx"@" email " at ")
" dot ")
">")))
;; ----------------------------------------
(provide intern-taglet
module-path-index->taglet
module-path-prefix->string)

View File

@ -36,6 +36,13 @@
(copy-port (current-input-port) (current-output-port))))
(printf "\\begin{document}\n\\preDoc\n")
(when (part-title-content d)
(let ([m (ormap (lambda (v)
(and (styled-paragraph? v)
(equal? "author" (styled-paragraph-style v))
v))
(flow-paragraphs (part-flow d)))])
(when m
(do-render-paragraph m d ri #t)))
(printf "\\titleAndVersion{")
(render-content (part-title-content d) d ri)
(printf "}{~a}\n"
@ -78,7 +85,9 @@
null))
(define/override (render-paragraph p part ri)
(printf "\n\n")
(do-render-paragraph p part ri #f))
(define/private (do-render-paragraph p part ri author?)
(let ([style (and (styled-paragraph? p)
(let ([s (flatten-style
(styled-paragraph-style p))])
@ -91,13 +100,16 @@
base))
base))
s)))])
(when (string? style)
(printf "\\~a{" style))
(if (toc-paragraph? p)
(printf "\\newpage \\tableofcontents \\newpage")
(super render-paragraph p part ri))
(when (string? style) (printf "}")))
(printf "\n\n")
(unless (and (not author?)
(equal? style "author"))
(printf "\n\n")
(when (string? style)
(printf "\\~a{" style))
(if (toc-paragraph? p)
(printf "\\newpage \\tableofcontents \\newpage")
(super render-paragraph p part ri))
(when (string? style) (printf "}"))
(printf "\n\n")))
null)
(define/override (render-element e part ri)

View File

@ -491,3 +491,17 @@ i {
.noborder img {
border: 0;
}
.author {
position: relative;
float: right;
left: 2em;
top: -3em;
height: 0em;
width: 23em; /* very wide to keep author names on separate lines */
margin: 0em -23em 0em 0em;
font-size: 82%;
}
.author:before {
content: "by ";
}

View File

@ -3,6 +3,8 @@
@title{@bold{DrScheme}: PLT Programming Environment}
@author["Robert Bruce Findler" "PLT Scheme"]
DrScheme is a graphical environment for developing programs using the
PLT Scheme programming languages.

View File

@ -3,6 +3,8 @@
@title{@bold{FFI}: PLT Scheme Foreign Interface}
@author["Eli Barzilay"]
@defmodule[scheme/foreign]
The @schememodname[scheme/foreign] library enables the direct use of

View File

@ -6,6 +6,8 @@
@title{@bold{Framework}: PLT GUI Application Framework}
@(defmodule framework)
@author["Robert Bruce Findler"]
The framework provides a number of mixins, classes and
functions designed to help you build a complete application
program on top of the @scheme[scheme/gui] library.

View File

@ -3,6 +3,8 @@
@title{@bold{GUI}: PLT Graphics Toolkit}
@author["Matthew Flatt" "Robert Bruce Findler" "John Clements"]
@declare-exporting[scheme/gui/base scheme/gui #:use-sources (mred)]
This reference manual describes the GUI toolbox that is part of PLT

View File

@ -5,6 +5,8 @@
@title{@bold{Guide}: PLT Scheme}
@author["Matthew Flatt" "Robert Bruce Findler" "PLT Scheme"]
This guide is intended for programmers who are new to Scheme, new to PLT
Scheme, or new to some part of PLT Scheme. It assumes
programming experience, so if you are new to programming, consider

View File

@ -4,6 +4,8 @@
@title[#:tag-prefix '(lib "scribblings/inside/inside.scrbl")
#:tag "top"]{@bold{Inside}: PLT Scheme C API}
@author["Matthew Flatt"]
This manual describes PLT Scheme's C interface, which allows the
interpreter to be extended by a dynamically-loaded library, or
embedded within an arbitrary C/C++ program. The manual assumes

View File

@ -40,6 +40,8 @@
@title{@bold{More}: Systems Programming with PLT Scheme}
@author["Matthew Flatt"]
In contrast to the impression that @|quick| may give, PLT Scheme is
not just another pretty face. Underneath the graphical facade of
DrScheme lies a sophisticated toolbox for managing threads and
@ -765,8 +767,16 @@ the server updated, visit @tt{http://localhost:8081/sum2}.
@; ----------------------------------------------------------------------
@section{Where to Go From Here}
If you arrived here as part of an introduction to PLT Scheme, then
your next stop is probably @|guide|.
The PLT Scheme distribution includes a production-quality web server
that addresses all of the design points mentioned here and more.
To learn more, see the tutorial @other-manual['(lib
"web-server/scribblings/tutorial/tutorial.scrbl")], the documentation
@other-manual['(lib
"web-server/scribblings/web-server.scrbl")], or the research paper
@cite["Krishnamurthi07"].
Otherwise, if you arrived here as part of an introduction to PLT
Scheme, then your next stop is probably @|guide|.
If the topics covered here are the kind that interest you, see also
@secref["concurrency" #:doc '(lib
@ -780,11 +790,6 @@ Scheme, including papers on MrEd @cite["Flatt99"], memory accounting
@cite["Wick04"], kill-safe abstractions @cite["Flatt04"], and
delimited continuations @cite["Flatt07"].
The PLT Scheme distribution includes a production-quality web server
that addresses all of the design points mentioned here and more
@cite["Krishnamurthi07"]. See @other-manual['(lib
"web-server/scribblings/web-server.scrbl")].
@; ----------------------------------------------------------------------
@(bibliography

View File

@ -2,6 +2,8 @@
@title{@bold{Quick}: An Introduction to PLT Scheme with Pictures}
@author["Matthew Flatt"]
@; ----------------------------------------------------------------------
@(require scribble/manual

View File

@ -17,6 +17,8 @@
@title{@bold{Reference}: PLT Scheme}
@author["Matthew Flatt" "PLT Scheme"]
This manual defines the core PLT Scheme language and describes its
most prominent libraries. The companion manual @|Guide| provides a
friendlier (though less precise and less complete) overview of the

View File

@ -127,6 +127,18 @@ Returns @scheme[#t] if @scheme[v] is an item produced by
visible to the enclosing context). Since this form expands to
@scheme[require], it must be used in a module or top-level context.}
@defproc[(author [author any/c] ...) block?]{
Generates a @scheme[styled-paragraph] to show the author(s) of a
document, where each author is represented by an
@tech{element}. Normally, this function is used after @scheme[title]
for the beginning of a document. See also @scheme[author+email].}
@defproc[(author+email [author elem] [email string?]) element?]{
Combines an author name with an e-mail address, obscuring the e-mail
address slightly to avoid address-harvesting robots.}
@defproc[(module-path-prefix->string [mod-path module-path?])
string?]{

View File

@ -5,6 +5,8 @@
@title{@bold{Scribble}: PLT Documentation Tool}
@author["Matthew Flatt" "Eli Barzilay"]
Scribble is a collection of tools for creating prose documents,
especially those that document libraries, and especially for HTML and
PDF (via LaTeX) output. More generally, it is useful for cases where

View File

@ -5,6 +5,8 @@
@title{@bold{Slideshow}: PLT Figure and Presentation Tools}
@author["Matthew Flatt" "Robert Bruce Findler"]
Slideshow is a library for creating presentation slides. Unlike
Powerpoint, Slideshow provides no WYSIWYG interface for constructing
slides. Instead, like SliTeX, a presentation is generated by a

View File

@ -14,8 +14,10 @@
)
@title{@bold{Plugins}: Extending DrScheme}
@(defmodule drscheme/tool-lib)
@author["Robert Bruce Findler"]
@(defmodule drscheme/tool-lib)
This manual describes DrScheme's tools interface. It assumes
familiarity with

View File

@ -3,6 +3,8 @@
@title{@bold{GL}: 3-D Graphics}
@author["Scott Owens"]
The @schememodname[sgl] libraries provide access to the rendering
functions of @as-index{OpenGL} 1.5 and @as-index{GLU} 1.3
libraries. The @schememodname[sgl] libraries to not address

View File

@ -10,6 +10,8 @@
@title{@bold{Syntax Color}: Utilities}
@author["Scott Owens"]
The @filepath{syntax-color} collection provides the underlying data
structures and some helpful utilities for the @scheme[color:text%]
class of the @other-manual['(lib

View File

@ -12,6 +12,8 @@
@title[#:tag "top"]{@bold{Typed Scheme}: Scheme with Static Types}
@author["Sam Tobin-Hochstadt"]
@(defmodulelang typed-scheme)
Typed Scheme is a Scheme-like language, with a type system that

View File

@ -4,13 +4,14 @@
(for-label web-server/servlet)
"tutorial-util.ss")
@title{@bold{Cont}: Web Applications in PLT Scheme}
@title{@bold{Continue}: Web Applications in PLT Scheme}
By Danny Yoo (dyoo at cs dot wpi dot edu) & Jay McCarthy (jay at cs dot byu dot edu)
@author[(author+email "Danny Yoo" "dyoo@cs.wpi.edu")
(author+email "Jay McCarthy" "jay@cs.byu.edu")]
How do we make dynamic web applications? This tutorial will show how we
can build web applications using PLT Scheme. As our working example,
we'll build a simple web journal (a "blog"). We'll cover how to start
we'll build a simple web journal (a ``blog''). We'll cover how to start
up a web server, how to generate dynamic web content, and how to
interact with the user.
@ -31,8 +32,8 @@ web-server/insta
(body (h1 "Under construction"))))
]
Press the @onscreen{Run} button. If a web browser comes up with an "Under
Construction" page, then clap your hands with delight: you've built
Press the @onscreen{Run} button. If a web browser comes up with an ``Under
Construction'' page, then clap your hands with delight: you've built
your first web application! It doesn't do much yet, but we will get
there. Press the @onscreen{Stop} button to shut the server down for now.

View File

@ -3,7 +3,7 @@
@title[#:tag "web-server-ref"]{@bold{Web Server}: PLT HTTP Server}
By Jay McCarthy (jay@"@"plt-scheme.org)
@author[(author+email "Jay McCarthy" "jay@plt-scheme.org")]
The @web-server collection provides libraries that can be used to
develop Web applications in Scheme.

View File

@ -7,11 +7,6 @@
(define web-server "Web Server")
; XXX Format better
(define (author x)
(elem (hspace 4)
(bold x)))
; XXX Format better
(define (warning . x)
(apply elem "Warning:" x))
@ -26,6 +21,5 @@
scheme/contract
scheme/unit))
web-server
author
warning
href-link)

View File

@ -14,6 +14,8 @@
@title{@bold{XML}: Parsing and Writing}
@author["Paul Graunke"]
@defmodule[xml]
The @schememodname[xml] library provides functions for parsing and