| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
- add CSS for lists
- renderToString now uses showHtml since prettyHtml messes up <pre> sections
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
switch to using the xhtml package
copied Html.hs to Xhtml.hs
and split into sub-modules under Haddock/Backends/Xhtml
and detabify
moved footer into div, got ready for iface change
headers converted to semantic markup
contents in semantic markup
summary as semantic markup
description in semantic markup, info block in header fixed
factored out rendering so during debug it can be readable
(see renderToString)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch introduces:
- A page that displays the documentation in a framed view. The left
side will show a full module index. Clicking a module name will
show it in the right frame. If Javascript is enabled, the left
side is split again to show the modules at the top and a very short
synopsis for the module currently displayed on the right.
- Code to generate the mini-synopsis for each module and the mini
module index ("index-frames.html").
- CSS rules for the mini-synopsis.
- A very small amount of javascript to update the mini-synopsis (but
only if inside a frame.)
Some perhaps controversial things:
- Sharing code was very difficult, so there is a small amount of code
duplication.
- The amount of generated pages has been doubled, since every module
now also gets a mini-synopsis. The overhead should not be too
much, but I haven't checked. Alternatively, the mini-synopsis
could also be generated using Javascript if we properly annotate
the actual synopsis.
|
|
|
|
| |
the base library to work
|
|
|
|
| |
on the base library with IE, the new version guarantees less than O(log n) operations be performed, where n is the number in the list (before was always O(n))
|
| |
|
|
|
|
|
|
| |
haddock.js will be run automatically by Windows when you type
'haddock' if it is found on the PATH, so rename to avoid confusion.
Spotted by Adrian Hey.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In each module, for each "top level" exported entity we add a hyper link to a
corresponding wiki page. The link url gets the name of the exported entity as
a '#'-style anchor, so if there is an anchor in the page with that name then
the users browser should jump directly to it. By "top level" we mean functions,
classes, class members and data types (data, type, newtype), but not data
constructors, class instances or data type class membership.
The link is added at the right of the page and in a small font. Hopefully this
is the right balance of visibility/distraction.
We also include a link to the wiki base url in the contents and index pages.
|
| |
|
|
|
|
|
|
| |
Another attempt at lining up the package names on the contents page.
Now, they line up with Konqueror, and almost line up with Firefox & IE
(different layout in each case).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Attempt to fix the layout of the package names in the contents.
Having tried just about everything, the only thing I can get to work
reliably is to make the package names line up on a fixed offset from
the left margin. This obviously isn't ideal, so anyone else that
would like to have a go at improving it is welcome. One option is to
remove the +/- buttons from the contents list and go back to a plain
table.
The contents page now uses CSS for layout rather than tables. It
seems that most browsers have different interpretations of CSS layout,
so only the simplest things lead to consistent results.
|
|
|
|
| |
Improved spacing of dynamic module tree
|
|
|
|
| |
Fixed CSS for button style. Note that only "0" is a valid measure without a unit!
|
|
|
|
| |
I forgot to add the new +/- images
|
|
|
|
|
| |
make the DHtmlTree in contents page more portable. The +/- buttons are replaced
with new images which looks more beatiful.
|
|
|
|
|
|
|
|
| |
more stuffs
- support for separated compilation of packages
- the contents page now uses DHTML TreeView
- fixed copyFile bug
|
|
|
|
|
|
|
|
| |
Install pictures for +/- pictures, too (JPEG is a strange format for graphics
like this, I would have expected GIF or PNG here.)
Things look fine with Konqueror and Netscape on Linux now, the only downside is
that the cursor doesn't change when positioned above the "button".
|
|
|
|
|
|
| |
Update to the +/- buttons: use a resized image rather than a <button>.
Still seeing some strange effects in Konqueror, so might need to use a
fixed-size image instead.
|
|
|
|
| |
Added the new-born haddock.js to the build process and the documentation.
|
|
|
|
|
|
|
|
|
|
| |
Add support for collaspible parts of the page, with a +/- button and a
bit of JavaScript. Make the instances collapsible, and collapse them
by default.
This makes documentation with long lists of instances (eg. the
Prelude) much easier to read. Maybe we should give other
documentation sections the same treatment.
|
|
|
|
|
|
| |
Fix some of the problems with Haddock generating pages that are too
wide. Now we only specify 'nowrap' when it is necessary to avoid a
code box getting squashed up by the text to the right of it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Index overhaul:
- no more separate type/class and variable/function indices
- the index now makes a distinction between different entities
with the same name. One example is a type constructor with
the same name as a data constructor, but another example is
simply a function with the same name exported by two different
modules. For example, the index entry for 'catch' now looks like
this:
catch
1 (Function) Control.Exception
2 (Function) GHC.Exception, Prelude, System.IO, System.IO.Error
making it clear that there are two different 'catch'es, but one
of them is exported by several modules.
- Each index page now has the index contents (A B C ...) at the top.
Please let me know if you really hate any of this.
|
|
|
|
|
|
|
| |
Install these files in $(datadir), not $(libdir), since they're
architecture independent.
Patch contributed by: Ian Lynagh <igloo@earth.li>.
|
|
|
|
| |
layout tweak.
|
|
|
|
|
|
|
| |
The <TT> and <PRE> environments seem to use a font that is a little
too small in IE. Compensate.
(suggestion from Daan Leijen).
|
|
|
|
|
| |
A debugging version of the style-sheet, which gives some tables
coloured backgrounds so we can see what's going on.
|
|
|
|
|
|
|
|
|
| |
- Put function arguments *before* the doc for the function, as suggested
by Sven Panne. This looks nicer when the function documentation is
long.
- Switch to using bold for binders at the definition site, and use
underline for keywords. This makes the binder stand out more.
|
|
|
|
| |
Rearrange a bit, and add support for tabular datatype rendering
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reworking of the internals to support documenting function arguments
(the Most Wanted new feature by the punters).
The old method of keeping parsed documentation in a Name -> Doc
mapping wasn't going to cut it for anntations on type components,
where there's no name to attach the documentation to, so I've moved to
storing all the documentation in the abstract syntax. Previously some
of the documentation was left in the abstract syntax by the parser,
but was later extracted into the mapping.
In order to avoid having to parameterise the abstract syntax over the
type of documentation stored in it, we have to parse the documentation
at the same time as we parse the Haskell source (well, I suppose we
could store 'Either String Doc' in the HsSyn, but that's clunky). One
upshot is that documentation is now parsed eagerly, and documentation
parse errors are fatal (but have better line numbers in the error
message).
The new story simplifies matters for the code that processes the
source modules, because we don't have to maintain the extra Name->Doc
mapping, and it should improve efficiency a little too.
New features:
- Function arguments and return values can now have doc annotations.
- If you refer to a qualified name in a doc string, eg. 'IO.putStr',
then Haddock will emit a hyperlink even if the identifier is not
in scope, so you don't have to make sure everything referred to
from the documentation is imported.
- several bugs & minor infelicities fixed.
|
|
|
|
| |
Install the auxilliary bits
|
|
|
|
| |
syntax fix
|
|
|
|
|
|
| |
Move the explicit formatting of the little table for the
stability/portability/maintainer info from the HTML into the CSS, and
remove the explicit table size (just right-align it).
|
|
|
|
| |
Add the little lambda icon
|
|
|
|
| |
Use explicit 'px' suffix on pixel sizes; IE seems to prefer them
|
|
|
|
|
| |
Add width property to the title, and add TD.children for the module
contents page.
|
|
|
|
| |
remove underlines on visited links
|
|
This is Haddock, my stab at a Haskell documentation tool. It's not
quite ready for release yet, but I'm putting it in the repository so
others can take a look.
It uses a locally modified version of the hssource parser, extended
with support for GHC extensions and documentation annotations.
|