Commit Graph

1014 Commits

Author SHA1 Message Date
Matthew Flatt
5ab048bb5c scribble/decode: fix contract on `decode-compound-paragraph'
Add a test suite that at least tries each export of `scribble/decode'.

Merge to v5.3.2
2013-01-09 18:52:16 -07:00
Greg Hendershott
4d3a5bad04 Use Racket lexer for code blocks.
Had been specifying Scheme lexer for code blocks, while waiting for
new Racket lexer to wend its way from Pygments to Pygments.rb to
Linguist to GitHub.

That day is almost here: Linguist will soon update and deploy to
GitHub.  And Racket 5.3.2 is about to release.  As a result, I think
this is the correct time to switch to the Racket lexer: It should be
live on GitHub by the time people are using Racket 5.3.2.

/cc @rmculpepper -- I think this commit should go into the 5.3.2
release.
2013-01-09 18:52:16 -07:00
Matthew Flatt
3e8b6b9866 scribble: add +m' / ++main-xref-in' flag
The `+m' flag is a long-overdue shorthand for `++xref-in setup/xref
load-collections-xref', which links to installed documentation in
the same way as DrRacket's "Scribble HTML" button.

That is, use `+m' to link to installed documentation,

  scribble +m mine.scrbl

instead of the previously recommended

  scribble ++xref-in setup/xref load-collections-xref mine.scrbl

Merge to 5.3.2
2013-01-08 16:25:28 -07:00
Robby Findler
87d25ba02a adjust scribble/lp language so drracket syntax colors it properly
Also fix a spelling mistake (now that spell checking works) and Rackety
2013-01-04 21:39:11 -06:00
Robby Findler
9b6272674e tweak the latex rendering of ╔ and company 2012-12-30 21:11:38 -06:00
Robby Findler
022e252f45 add support for ╔ ═ ╗ ║ ╚ and ╝ to the latex renderer
Also, Rackety
2012-12-29 11:31:17 -06:00
Matthew Flatt
3f6b30a569 scibble: repair related to recent `scribble/tag' contracts 2012-12-27 12:49:30 -06:00
Robby Findler
353da62843 added make-module-language-tag and use it and make-section-tag
in a few places
2012-12-27 11:10:40 -06:00
Matthew Flatt
f29230f8f2 add `scribble/tag' and clean up some tag-related documentation and functions
Includes the addition of `make-section-tag' and `taglet?' to
`scribble/base'.
2012-12-27 09:24:14 -06:00
Greg Hendershott
faeba879e2 Fix bug with pound signs used to mark sections.
Also update tests/scribble/markdown-docs files accordingly.
2012-12-19 19:32:00 -07:00
Greg Hendershott
a3800cdc94 Render Scribble margin-note as Markdown block-quote.
More precisely, do this for nested flows with the "refcontent" style.

For instance this Scribble:

    @margin-note{Note: This is a note. Let's make it long enough that the
    markdown output will have to line-wrap, to make sure the > mark starts
    each line properly.}

Will render as this Markdown:

    > Note: This is a note. Let's make it long enough that the markdown output
    > will have to line-wrap, to make sure the > mark starts each line
    > properly.

A site like GitHub.com will render this in a block-quote style
suitable for notes:

> Note: This is a note. Let's make it long enough that the markdown output
> will have to line-wrap, to make sure the > mark starts each line
> properly.
2012-12-19 19:31:15 -07:00
Matthew Flatt
130c989888 scribble: encode URLs in 'unreserved mode 2012-12-17 07:09:27 -07:00
Matthew Flatt
6eef00a312 raco setup: fix problem with doc index database
When a tag is serializable but not `write'--`read' invariant,
then it needs to be serialized and deserialized.

Also, clarify and check in `tag?' that a tag should be
serializable.
2012-12-13 15:45:48 -07:00
Danny Yoo
db280d0941 Add scribble/doclang2 with keyword support for customization, and documentation. 2012-12-13 12:50:27 -07:00
Greg Hendershott
00a5bf63b1 Render italic and bold in Markdown.
Scribble => Markdown
  @bold{text}    **text**
@italic{text}     _text_
2012-12-12 20:58:44 -07:00
Greg Hendershott
dbffc840a9 Render @hyperlink in Markdown.
Render Scribble like

    @hyperlink["url" "content"]

as Markdown like

    [content](url)

Note that this only works for `@hyperlink`. The motivation is to
preserve content the author has explicitly written. (Previously,
`markdown-render.rkt` was discarding this; `text-render.rkt` still
does so.)

This does _not_ attempt to handle everything that `html-render.rkt`
would automatically generate and render as `<a>`. It simply can't --
things like hotlinked Racket keywords in code blocks simply won't work
in Markdown.
2012-12-11 12:40:54 -07:00
Matthew Flatt
490a474e0e fix comments
I had it all backwards: DrRacket went from "increment" to Greek
capital delta (which makes a lot more sense).
2012-12-10 10:27:44 -07:00
Matthew Flatt
fc112ccd46 scribble: render "incremement" and some other chars for Latex/PDF
This change was prompted by the change to DrRacket's "\Delta"
to produce the Unicode "increment" character.
2012-12-10 10:20:32 -07:00
Greg Hendershott
6aa6dc0400 Add a Markdown rendering mode to Scribble.
Uses "Github flavored markdown". Specifically, code blocks are opened
using ```scheme so that Github will lex and format them as Scheme code
rather than generic monospace.

Note: I would have used ```racket, but we are still waiting for the
pygments.rb project to pull again from pygments-main -- to which I
contributed a Racket lexer back in August. After pygments.rb pulls,
can update this to use ```racket instead.
2012-12-09 15:17:36 -07:00
David Van Horn
0dfcf634ed Change latex render units from px (pdflatex specific) to bp (tex).
The px unit is a pdflatex specific adjustable unit that is 1 bp (big
point = 1/72in) by default.  This commit changes the latex renderer to
use bp which is a standard TeX unit equivalent to the default px
value.  This change allows .tex files generated by scribble to work
with other latex engines such as xelatex.

http://nwalsh.com/tex/texhelp/Plain.html#dimensions
http://tex.stackexchange.com/questions/41370/what-are-the-possible-dimensions-sizes-units-latex-understands

Here is a small test of using scribble and xelatex:

$ cat try.scrbl
@(require scriblib/figure redex/reduction-semantics redex/pict)
@(define-language L)
@(render-term L (term 1))

$ scribble --latex try.scrbl ; xelatex try
2012-12-07 06:53:45 -06:00
Matthew Flatt
bd16f1e302 scribble HTML: no extra breaking at the end of an identifier 2012-11-29 07:18:30 -07:00
Sam Tobin-Hochstadt
d6b0dfcd04 Switch to use almost-standard DOCTYPE for Scribble.
Also switches scribble search trampoline to standard DOCTYPE.

Scribble's HTML output currently relies on the quirks-mode
box model for layout of the many tables used in rendering.
However, Scribble doesn't need the rest of the changes in
browser quirks modes, so we choose a DOCTYPE that just
changes the box model.

It's non-obvious how to replicated this formatting with CSS
in standard-mode rendering.  Probably a better long term
solution is to move away from table-based layout.

See further discussion on GitHub pull request 158 here:
  https://github.com/plt/racket/pull/158
2012-11-29 07:06:52 -07:00
Robby Findler
e7c6222142 improve the 'method' syntax error so it gives a hint which argument is which 2012-11-28 13:12:28 -06:00
Asumu Takikawa
3e81924f84 Fix nav separator for Opera
Commit 8653bc6792 caused
the doc navigation to render oddly on Opera due to how
it handles &nbsp;. This commit retains the spacing
for text browsers, but fixes the navigation on Opera.
2012-11-27 18:03:40 -05:00
Matthew Flatt
36bfae9497 adjust some comments to further clarify 2012-11-27 08:07:27 -07:00
Samuel Bronson
3ee6248daa scribble/html-render: clarify mangling of entities: &mdash; &lang; &rang; 2012-11-27 08:04:42 -07:00
Samuel Bronson
5a216cc4ce scribble: Rename attribute pltdoc -> data-pltdoc, which is valid in HTML5.
(pltdoc isn't valid in any version of HTML.)
2012-11-27 07:55:43 -07:00
Samuel Bronson
a66fa77e2e Typo fix in content-type: text-html -> text/html 2012-11-27 07:55:36 -07:00
Samuel Bronson
e157041497 scribble/html-render: comment nits 2012-11-27 07:55:23 -07:00
Samuel Bronson
8653bc6792 scribble/html-render: Add missing sep-element for non-CSS browsers 2012-11-27 07:55:16 -07:00
Samuel Bronson
11df3f9b20 scribble/html-render: Fix typo in error message 2012-11-27 07:55:08 -07:00
Samuel Bronson
45bdaa131d scribble/racket.css: Avoid excessive line-height in some cases
(In particular, when the default line-height for "monospace" is smaller than for the main font.)
2012-11-27 07:54:05 -07:00
Matthew Flatt
24f358a5d7 scribble latex: work around `\href{...#...}{...}' as a macro argument
The `math' document build was failing because `\marginpar' does not
like `\href{...#...}{...}' as an argument.
2012-11-25 06:24:51 -07:00
Matthew Flatt
9888fac99e raco setup: move doc dependency and duplicate checking to database
This change makes document building --- and specially incremental
document building --- more scalable. The global duplicate-definition
check is handled by a database query, for example.
2012-11-23 20:07:49 -07:00
Matthew Flatt
a73dc50224 break cross-reference info for document into pieces
For example, the cross-reference information for the
Reference is now broken into about 16 pieces, so that
resolving a cross-reference into the Reference doesn't
require loading all cross-reference information for
the Reference.

Every document is split into two pieces, so that the title
of a document is roughly in its own piece. That way,
re-building the page of all installed documentation can be more
scalable (after some further changes).
2012-11-23 18:44:51 -07:00
Matthew Flatt
693ff33bfc serialize bluebox tables
Typically, the bluebox table includes keys that have interned parts,
so serialization can save space both on disk and in memory when the
bluebox information is reloaded.
2012-11-23 18:44:51 -07:00
Matthew Flatt
8c1b5db815 raco setup: build database mapping doc tags to "out.sxref"s
The `xref' produced by `setup/xref' uses the database to delay
loading "out.sxref"s, which cuts 64-bit DrRacket's initial
footprint by around 50MB (i.e., about 20%).
2012-11-23 18:44:50 -07:00
Matthew Flatt
a830f77403 scribble: more control over version formatting
Add "Version" in front of a version name via `.version:before' or
`.versionNoNav:before' and `\SVersionBefore', so that they can
be configured through overriding CSS or Latex macro declarations.

Also, improve the documentation for how the `#:version' argument
of `title' is propagated to a `part' style property.

Closes PR 13227
2012-11-02 07:45:57 -06:00
Matthew Flatt
008f476210 Scribble PDF/Latex: Hangul support 2012-11-02 07:45:57 -06:00
Matthew Flatt
739aa11404 Scribble Latex/PDF: use tocstyle only if it's available 2012-11-01 09:29:26 -06:00
Robby Findler
54301ad5ed fix apparent type error in the definition of in-plt? 2012-10-27 18:37:59 -05:00
Matthew Flatt
c7d3de435f scribble Latex/PDF: use the `tocstyle' package
Fixes the spacing of section numbers for a section like N.M where
both N and M have two digits.
2012-10-27 09:24:02 -06:00
Samuel Bronson
a624d8de15 Misc improvements to the doc search JavaScript code
* Stamp "plt-index.js" with the path of its generator.

* Fix most of the "use strict" and js2-mode warnings in scribble's
  JavaScript.

* Some code improvements in the generating code too.

(With some edits by Eli.)
2012-10-10 11:05:25 -04:00
Matthew Flatt
6a82c8bb7c Scribble Latex: more complete and consistent handling of accented letters 2012-10-10 07:13:05 -06:00
Matthew Flatt
de9ccea7f1 Scribble: add some macron accents for Latex
Merge to v5.3.1
2012-10-10 06:49:01 -06:00
Manu
e7db0bdac4 Added CSS rules for printing. 2012-10-05 11:15:59 -04:00
Matthew Flatt
683e72e9e3 scribble: make `linebreak' work more for Latex/PDF rendering 2012-10-04 06:40:36 -06:00
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
44e55689a2 Scribble overview: mention tables comments, and pictures 2012-09-23 11:53:30 -05:00
Matthew Flatt
cb041850f4 scribble: decode a lone ` as a left "curly quote"
Also, add 'lsquo as allowed content.

Omitting the ` conversion in the first place was over-conservative.
There's a backward-compatibility issue with this addition (i.e., a
document might contain a backquote in a decoded context that is
meant to be rendered as a backquote), but the potential problems
seem minor.
2012-09-21 07:37:30 -06:00