aboutsummaryrefslogtreecommitdiff
path: root/src/Haddock/Backends/Html.hs
Commit message (Collapse)AuthorAgeFilesLines
* Change the representation of DocNamesDavid Waern2008-02-091-50/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ross Paterson reported a bug where links would point to the defining module instead of the "best" module for an identifier (e.g Int pointing to GHC.Base instead of Data.Int). This patch fixes this problem by refactoring the way renamed names are represented. Instead of representing them by: > data DocName = Link Name | NoLink Name they are now represented as such: > data DocName = Documented Name Module | Undocumented Name and the the link-env looks like this: > type LinkEnv = Map Name Module There are several reasons for this. First of all, the bug was caused by changing the module part of Names during the renaming process, without changing the Unique field. This caused names to be overwritten during the loading of .haddock files (which caches names using the NameCache of the GHC session). So we might create new Uniques during renaming to fix this (but I'm not sure that would be problem-free). Instead, we just keep the Name and add the Module where the name is best documented, since it can be useful to keep the original Name around (for e.g. source-code location info and for users of the Haddock API). Also, the names Link/NoLink don't really make sense, since wether to use links or not is entirely up to the users of DocName. In the process of following this change into H.Backends.Html I removed the assumption that binder names are Undocumented (which was just an unnecessary assumption, the OccName is the only thing needed to render these). This will probably make it possible to get rid of the renamer and replace it with a traversal from SYB or Uniplate. Since DocName has changed, InterfaceFile has changed so this patch also increments the file-format version. No backwards-compatibility is implemented.
* Manual merge of a patch to the 0.8 branchDavid Waern2008-01-061-9/+11
| | | | | | | Thu Dec 6 15:00:10 CET 2007 Simon Marlow <simonmar@microsoft.com> * Source links must point to the original module, not the referring module
* Source links must point to the original module, not the referring moduleSimon Marlow2007-12-061-3/+11
|
* Fix a bug (use ppTyName instead of ppName to print names in type apps)David Waern2007-12-081-1/+1
|
* Fix rendering of class operatorsDavid Waern2007-12-081-42/+26
|
* Fix rendering of instance heads to handle infix operatorsDavid Waern2007-12-081-13/+22
| | | | | This is also a refactoring to share this code for rendering predicates.
* Use ppParendType when printing types args in predicatesDavid Waern2007-12-081-4/+5
|
* Add ppLParendTypes/ppLParendTypeDavid Waern2007-12-081-4/+9
|
* Code layout changesDavid Waern2007-12-081-2/+2
|
* Handle class operators correctly when rendering predicatesDavid Waern2007-12-081-1/+15
|
* addition of type equality support (at least for HTML generation)Wolfgang Jeltsch2007-12-031-0/+1
|
* Make the search box in a form so that enter does the default searchNeil Mitchell2007-01-121-4/+6
|
* Fix conflictsDavid Waern2007-11-111-22/+16
|
* Rewrite much of the index searching code, previously was too slow to execute ↵Neil Mitchell2007-01-121-3/+13
| | | | 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))
* Change from tabs to spaces in the ppHtmlIndex functionNeil Mitchell2007-01-111-19/+25
|
* Manual merge of old patch:David Waern2007-11-111-6/+15
| | | | | | Sat Apr 21 04:36:43 CEST 2007 Roberto Zunino <zunrob@users.sf.net> * URL expansion for %%, %L, %{LINE}
* added substitution %{FILE///c}Conal Elliott2007-02-141-0/+3
|
* Fix conflictsDavid Waern2007-11-111-30/+21
|
* Do not create empty tables for data declarations which don't have any ↵Neil Mitchell2007-02-061-9/+23
| | | | constructors, instances or comments. Gets better HTML 4.01 compliance
* Make the index be in case-insensitive alphabetic orderNeil Mitchell2007-01-111-1/+1
|
* Fix conflictsDavid Waern2007-11-111-4/+2
|
* Delete more stuff that is no longer requiredNeil Mitchell2007-01-111-2/+2
|
* Delete dead code, now there is only one index pageNeil Mitchell2007-01-111-26/+0
|
* Add searching on the index pageNeil Mitchell2007-01-111-3/+11
|
* Never do spliting index files into manyNeil Mitchell2007-01-111-12/+1
|
* Fix conflictsDavid Waern2007-11-111-2/+4
|
* Do not generate an empty table if there are no exports, this fixes a ↵Neil Mitchell2006-09-291-6/+6
| | | | <table></table> tag being generated, which is not valid HTML 4.01
* Do some refactoring in the html backendDavid Waern2007-11-111-52/+61
| | | | | | | | | This also merges an old patch by Augustsson: Wed Jul 12 19:54:36 CEST 2006 lennart.augustsson@credit-suisse.com * Print type definitions like signatures if given arrows.
* Remove lDocLinkName and its use in Html backendDavid Waern2007-11-111-5/+1
|
* FIX: contents and index should include external package modules when ↵David Waern2007-11-101-2/+2
| | | | --gen-contents/--gen-index
* Introduce InstalledInterface structure and add more stuff to the .haddock filesDavid Waern2007-11-101-9/+10
| | | | | | | We introduce InstalledInterface capturing the part of Interface that is stored in the interface files. We change the ppHtmlContents and ppHtmllIndex to take this structure instead of a partial Interface. We add stuff like the doc map and exported names to the .haddock file (via InstalledInterface).
* Make it possible to run haddock on itselfDavid Waern2007-10-241-2/+2
|
* FIX: double arrows in constructor contextsDavid Waern2007-10-021-1/+1
|
* Take care when pp tyvars - add parens on symsDavid Waern2007-09-291-4/+13
|
* WibbleDavid Waern2007-09-291-1/+1
|
* FIX: do not quote varsym type operatorsDavid Waern2007-09-291-1/+1
|
* Use isLexConSym/isLexVarSym from OccNameDavid Waern2007-09-291-4/+4
|
* Use isSymOcc from OccName instead of isConSymDavid Waern2007-09-291-2/+2
|
* FIX: prefix types used as operators should be quotedDavid Waern2007-09-291-1/+14
|
* FIX: consym data headers with more than two variablesDavid Waern2007-09-291-6/+27
|
* Rename HaddockModule to InterfaceDavid Waern2007-08-301-60/+62
|
* Rename HaddockModule to Interface and a few more refactoringsDavid Waern2007-08-291-11/+11
|
* Major refactoringDavid Waern2007-08-291-0/+1510