]> git.lyx.org Git - lyx.git/blob - development/HTML/HTML.notes
8b7f9e116e917b4c884dbdf50e9468f17fc8afc5
[lyx.git] / development / HTML / HTML.notes
1 The main output routines now more or less work.
2
3 Known issues:
4 - InsetLine normally appears in a standard environment, which puts <hr /> inside
5         <p>, in violation of the DTD. I guess we could close the paragraph and then do
6         the <hr />, but isn't there a better solution? There's actually a LyX bug here, 
7         I think, since a line surely ought not appear in a normal paragraph?
8 - The code that manages the nesting of tags is pretty primitive. It needs a lot
9         of work.
10
11 These insets are basically done, though there are probably issues here and there,
12         and there are even some FIXMEs:
13         Bibitem, Branch, Collapsable, Footnote, Hyperlink, Label, Line, Note, 
14         Newline, Newpage, Quotes, Space, SpecialChar
15
16 These insets do nothing for XHTML:
17         ERT, OptArg, Phantom
18
19 These insets work but still need work:
20         InsetBibtex: There are a few issues here. One is that the output is not very
21                 nice. This will be solved, though, by a patch of mine I seem to have forgotten
22                 to finish. To get output that accorded with the BibTeX style, of course, we'd 
23                 have to parse the bbl file. I don't know if that's worth it.
24                 Another issue concerns cross-references. At the moment, we simply use the
25                 xref information for every entry, rather than listing the xref separately and
26                 then referencing it. That should not be terribly hard, but it would take a bit
27                 of work.
28         InsetBox: We need a Length::asHTML() method and the like, but it basically works.
29                 though the CSS isn't there yet.
30         InsetCitation: This has two limitations as of 11 VI 2009. The first is that we
31                 ignore the citation style and output square brackets, no matter what. The
32                 second is that, with BibTeX, we simply use the BibTeX key as the citation
33                 string, thus ignoring numerical, author-year, etc. It will not be too hard
34                 to make numerical work. To do this, we need to collect information on the
35                 used citations, alphabetize them, and then assign numerical labels via the
36                 BibTeXInfo::label() method. A similar strategy will work for author-year and
37                 the like, but calculating labels will be more complex---unless we just parse
38                 the bbl file, which of course is the only fully general solution.
39
40 These insets do not work but should be completely straightforward:
41         Caption, Flex (uses collapsable)
42
43
44 May need to make use here of TocWidget::itemInset, which should then be moved
45 to TocBackend.
46
47 These do not yet work and need some attention:
48         InsetCommand: By default does nothing. That may be right?
49         InsetExternal: I don't understand these so am not sure what to do.
50         InsetFloat: This will need some work, again because I do not really understand
51                 what these are meant to do. Presumably, we'll just use a div or something, but
52                 it's not clear what subfloat means, etc.
53         InsetGraphics: This should be fairly straightforward, but I'll need to learn a bit
54                 about export formats, etc, to get it completely right. We'll also want to make
55                 some use of the params, eg, on width and height. I guess there is also some
56                 issue about converting the graphics formats?
57         InsetInclude: I think we just want to include it, straightforwardly. Probably will
58                 base this more on the latex() routine, then. Another possibility, maybe with a
59                 flag of some sort, would be to do it as a separate file, to which we link.
60         InsetIndex and InsetPrintIndex: An "advanced" case. What really would be cool 
61                 would be to collect all of these and then write the index as a series of links 
62                 back to the occurrences. But not now.
63         InsetInfo: Probably skip it.
64         InsetListings: Probably just output it as <pre>.
65         InsetMarginal: Fine, but will need CSS.
66         InsetNomencl and InsetPrintNomencl: Also "advanced".
67         InsetRef: Presumably, this is an internal link. But what should the text be, and how
68                 should we get it? Probably some validation thing again, where labels tell us where 
69                 they are. Alternatively, we could parse the aux file.
70         InsetTabular: This shouldn't be too hard, but will need doing.
71         InsetTOC: Here again, validation might do the trick, but I'm not sure. Or perhaps some
72                 kind of post-processing? Another option, maybe the best option, would be just to use
73                 the information we already have in the TOC.
74         InsetVSpace: This will be easy, once we have the Length::asHTML() method.
75         InsetWrap: This should be simple enough, probably a div and some CSS, but I'm not sure
76                 precisely what this is supposed to do.
77
78 MATH
79         Regarding math, the view seems to be that we should in the first instance just use what
80         we get from instant preview and copy those over to the output directory, and then try
81         to make MathML work.