Add a `resource/referrer' abstraction for referrers, on top of plain
resources. (When the referrer is `values', it just returns the plain
resource.) Also add `url-of' to replace `get-resource-path'.
`scribble/html/lang' to `scribble/html'.
Since `foo:' keywords are very common in any code that uses
`scribble/html', it is much more convenient to have it provide the
custom `#%top'. It simplifies code that uses it, for example, files in
`meta/web/common' now use
#lang at-exp racket/base
(require scribble/html)
instead of the (only-in scribble/html/lang #%top) which it used before,
or instead of explicitly quoting all `foo:'s.
necessary modules are now "all.rkt"s; "shard.rkt"s turn to
"resources.rkt".
Also, "navbar.rkt" changes to "all.rkt", since it was doing the same
thing (in addition to setting the navbar).
Ie, the difference between using it as a language and as a module is now
the same in both. Also, improve `scribble/html' (and
`scribble/html/htmllang') by reproviding most of the corresponding text
modules.
Change `meta/web' accordingly, and improve code by making a new langugae
(`#lang meta/web'). This language is similar to `scribble/html' except
that it uses the plain scribble reader (not the `-inside' one), it
doesn't use the customized module-begin feature (that uses
`output-xml'), and it adds all the relevant bits of `meta/web/common'.
(Also, "meta/web/common.rkt" is gone, since it's used only as a language
now.)
This commit has lots of details and binding games, so it's tricky, and
potentially caused some problems. (Took me a while to track many
breakages, so I won't be surprised if there are more.)