Commit Graph

119 Commits

Author SHA1 Message Date
Samuel Bronson
1dce7e587f scribble/private/manual-form: Implement racketgrammar in terms of racketgrammar*
This is just a refactoring for readability.
2012-10-02 15:06:27 -06:00
Matthew Flatt
5e5e503859 scribble/manual: add #:normalize?' option to deftech' et al. 2012-08-20 17:37:24 -06:00
Robby Findler
5d81b80736 correct spelling error 2012-08-11 22:50:49 -05:00
Robby Findler
8ee76c9547 Add index entries for @defconstructor (and friends). Also add
code that skips over them when building the search indices.
Overall, this means that the only change most people would see
is that multiple constructors in the same class will get a warning
(and there was one of those, so fixed that too).

Also, Rackety. Specifically, transformed this surprising combination
of constructs (where all caps are placeholders for something specific):

((if PRED
     (λ (c mk) BODY2)
     (λ (c mk) BODY1))
 content
 (lambda (tag) BODY3))

into this one:

(define (mk tag) BODY3)
(if PRED
    BODY1{c:=content}
    BODY2{c:=content})
2012-08-11 21:52:48 -05:00
Matthias Felleisen
bf8c30727d fixed small mistake in defform/none from conversion to syntax/parse
merge into v5.3 but ask Matthew for second opinion
2012-07-23 11:35:59 -04:00
Robby Findler
0ee8155527 use a more descriptive name in the identifier generated by define-on-demand
so when it shows up in an error message it doesn't take forever to figure
out which 'val' that is
2012-07-15 08:07:11 -05:00
Matthew Flatt
e8d9d4e9ca improve error handling for `defproc'
Closes PR 12780
2012-07-02 10:07:52 -06:00
Matthew Flatt
6028a60f65 scribble/manual: add #:id' option to defproc'
Also, convert the implementation of `defproc', `defform', etc. to
use `syntax-parse'.
2012-06-25 23:16:33 -06:00
Robby Findler
3afba2d833 adjust defproc* so that it only shows the white background label once, instead
of once per different identifier that it is documenting
2012-06-25 13:42:09 -05:00
Robby Findler
4d7f6d7935 make scribble's part/document/element/etc structs all be #:transparent 2012-06-20 08:22:58 -05:00
Matthew Flatt
5ff3087677 scribble: adjust `def...' box to show a background label in HTML
For example, a syntactic form box is labeled with "SYNTAX". Forms
such as `defform' and `defthing' now support a `#:kind' option
for setting the label.
2012-06-17 09:19:58 +08:00
Eli Barzilay
17090fca4f A bunch of fprintf' -> eprintf' conversions (and a few related things). 2012-05-06 12:06:00 -04:00
Matthias Felleisen
9ef66b80ea add a form to declare a module/library deprecated 2012-04-28 13:25:32 -04:00
Robby Findler
0b71ebecaf adjust the way 'new' is laid out in the documentation to be more DrRacket-like 2012-04-14 14:54:19 -05:00
Matthew Flatt
c5e5a0349a add #:line-number-sep' to codeblock' 2012-04-11 11:49:01 -06:00
David Van Horn
b8d3219b1b Fix contract on filebox to reflect documentation. 2012-02-28 19:40:21 -05:00
Matthew Flatt
ff41a896bc add ffi/com', ffi/unsafe/com' 2012-01-10 18:35:32 -07:00
Matthew Flatt
1b4f13e674 scribble: avoid line-break between "#" and "<void>" 2011-12-18 07:27:32 -07:00
Matthew Flatt
ee775c3cc3 intern strings, etc. only when making syntax objects, not in `read'
Rename `read-intern-literal' to `datum-intern-literal'.

Interning is needed only in `read-syntax' or `datum->syntax' to
set up the invariants that the bytecode compiler needs for cross-module
optimization. When `read'ing numbers from a data file, meanwhile,
interning slows things down a lot and doesn't seem worthwhile.
2011-12-14 16:03:44 -07:00
Matthew Flatt
17504a960e more interning related to Scribble xref 2011-12-10 11:43:58 -07:00
Matthew Flatt
28ee1570ae strip value from 'dep tag
The value isn't used; a 'dep tag is ony to establish
dependencies, and the relevant value is with a 'form or
'def tag. Avoiding the extra value saves another 5% in
cross-reference files.
2011-12-10 11:43:58 -07:00
Matthew Flatt
b2fade9206 read-intern strings generated by Scribble; other interning
This change saves a small amount of space in cross-reference files
and some space in loaded cross-reference information.
It also saves work converting strings to mutable on deserialize,
although the performance difference seems negligible.
2011-12-10 11:43:58 -07:00
Matthew Flatt
7d2914fc8a fix `defform[*]' handling of #:id and grammar production
In @defform*[#:id x1 [(qqq x1)]], for example, `#:id x1' needs to
calcel the default treatment of `x1' within `(qqq x1)' as
a metavariable, while treating `qqq' as a meta-variable.
2011-12-03 10:03:13 -07:00
Matthew Flatt
fca5ceecc9 switch `codeblock' to strings instead of bytes
Also, fix scribble lexer line counting.

Closes PR 12225
2011-11-27 11:06:21 -07:00
Ryan Culpepper
c7f86d276c removed useless requires 2011-09-27 19:28:44 -06:00
Robby Findler
76e55071b0 use new copy-file argument that Matthew provided; this is a better fix than
commit f9e1c41cb0 was for the same problem
2011-09-19 15:19:04 -05:00
Robby Findler
de62ac2f06 minor Rackety 2011-09-18 21:20:27 -05:00
Robby Findler
f9e1c41cb0 Change scribble so that is overwrites the destination file when it makes a .pdf file
instead of copying the file into place. This makes Lion's Preview happier (specifically
it now recognizes the file as a revision of the old one and updates itself instead of
treating it as a new file and opening a second window)
2011-09-18 21:20:27 -05:00
Eli Barzilay
16cd1ad78d Make `defproc' throw an error if two arguments have the same name.
Related to the already fixed PR 12114 and PR 12133, which motivated the
error, and a few additional typos of the same kind.

(Note that it uses the symbols, but that's how they'll render anyway.)
2011-09-16 11:14:18 -04:00
Matthew Flatt
7a2e1aa900 scribble: more nowraps in HTML output
Avoids line-wraps for `examples' output and in function contracts
2011-09-12 19:17:08 -06:00
Matthew Flatt
d3c56c9f13 generalized `begin-for-syntax' 2011-09-08 14:06:00 -06:00
Matthew Flatt
fd0a2e9879 avoid an internal error
Closes PR 12138
2011-09-04 15:55:26 -06:00
Matthew Flatt
0b2beace40 add `schemecommentfont' 2011-09-03 14:57:57 -06:00
Matthew Flatt
b7bad5cc8a fix `racketmod' file box mode 2011-08-24 09:07:13 -06:00
Matthew Flatt
4555254380 add code' to scribble/manual' 2011-08-16 07:53:05 -06:00
Matthew Flatt
c7e7d0d8ff make racket' preserve #t' versus `#true' 2011-08-16 07:53:05 -06:00
Matthew Flatt
a1eaecb337 add an #:escape' clause to all schemeblock'-like forms 2011-08-16 07:53:05 -06:00
Matthew Flatt
cc78030cd2 download LNCS and JFP class files on demand 2011-08-10 08:28:13 -06:00
Matthew Flatt
f34c0329bf scribble/manual: add `current-display-width' parameter 2011-08-08 17:10:54 -06:00
Matthew Flatt
f7fd274e80 fix `defstruct' to use more long-name layout options 2011-08-05 10:03:38 -06:00
Matthew Flatt
ad7fddf878 add column-attributes' support and use it to fix struct' rendering 2011-08-05 10:03:38 -06:00
Matthew Flatt
b7afb3cf8f Scribble: support for "boxable" blocks in Latex output
For example, if you make a multi-column table with a
`racketblock' in each column, then the columns size
to fit the code --- instead of forcing the table width
to match the page width and forcing each column to take
an equal share width.
2011-08-05 10:03:38 -06:00
Matthew Flatt
4ac85de974 Scribble: style adjustments to deter code wrapping
For HTML, the style used in the output of `racketblock' now
disables line wrapping, and the Rkt text styles inherit
line-wrap behavior. This doesn't solve the general problem
of code overflowing the horizontal space, but it makes the
failure mode usefully better.

A new 'vertical-inset nested-flow style is used by
`defproc', `defform', etc. It has no effect for HTML,
but it introduces suitable vertical space for Latex output
(in case you want to use `defproc' in a SIGPLAN-format
paper, for example).
2011-08-05 10:03:37 -06:00
Matthew Flatt
e1b02e08f7 generalize `defform' & co. to better support abstraction 2011-07-07 10:45:43 -06:00
Eli Barzilay
3157955d40 ".ss" -> ".rkt" scan done. 2011-07-02 10:37:53 -04:00
Matthew Flatt
1160d3df62 remove syntax certificates; add syntax taints 2011-06-29 19:15:48 -06:00
Eli Barzilay
a38f384a00 Finish converting scheme' -> racket'.
Everything compiles fine now even if the compatibility bindings are
gone.
2011-06-28 00:45:38 -04:00
Eli Barzilay
ac26fe7554 A ton of @scheme*' -> @racket*' and related updates.
Also, updates some of the mzlib files to point at `racket/*' libraries
rather than to `scheme/*' ones.
2011-06-25 04:08:47 -04:00
Matthew Flatt
52825c68a1 fix `codeblock' handling of spaces
for a chunk that also includes newlines
2011-06-22 07:49:15 -06:00
Matthew Flatt
c8999c2541 adjust `racketmodname' to ignore for-label imports
so that `@racketmodname[lazy], for example, typesets correctly
 when `lazy' is imported for-label
2011-06-15 08:23:33 -06:00