Does anyone know much about doxygen?
I am generating a whole bunch of html files from some C++ headers. The per-function documentation pages I get out all have the following element:
<div class="navtab">
....
</div>
which forms a sort of sidebar-style index to all the other functions whose docs were generated from the header.
I don't want this to be present. I thought that GENERATE_TREEVIEW=NO in the config file would suppress it, but it doesn't. (At least, it doesn't using doxygen 1.5.4 or 1.7.4, and I can't find any references online to it being broken. So maybe that isn't what that switch is meant to do, though it sounds like it in the docs.)
DISABLE_INDEX=YES also isn't the right answer - that disables a different bit of auto-generated guff which I also don't want.
Does anyone:
(a) know what GENERATE_TREEVIEW actually governs?
(b) know what switch I need to set to suppress this sidebar-index thing?
(c) as a last resort, have any ideas of how to painlessly remove a div element and all its contents from an html document? (I have no experience of Perl or anything like that, though I suspect I may be about to acquire some if (b) cannot be solved.)
Auxiliary comment: no, I can't just hide the div element using CSS. Well, I can, obviously. But it's not good enough. I actually need that element removed from the html.
I am generating a whole bunch of html files from some C++ headers. The per-function documentation pages I get out all have the following element:
<div class="navtab">
....
</div>
which forms a sort of sidebar-style index to all the other functions whose docs were generated from the header.
I don't want this to be present. I thought that GENERATE_TREEVIEW=NO in the config file would suppress it, but it doesn't. (At least, it doesn't using doxygen 1.5.4 or 1.7.4, and I can't find any references online to it being broken. So maybe that isn't what that switch is meant to do, though it sounds like it in the docs.)
DISABLE_INDEX=YES also isn't the right answer - that disables a different bit of auto-generated guff which I also don't want.
Does anyone:
(a) know what GENERATE_TREEVIEW actually governs?
(b) know what switch I need to set to suppress this sidebar-index thing?
(c) as a last resort, have any ideas of how to painlessly remove a div element and all its contents from an html document? (I have no experience of Perl or anything like that, though I suspect I may be about to acquire some if (b) cannot be solved.)
Auxiliary comment: no, I can't just hide the div element using CSS. Well, I can, obviously. But it's not good enough. I actually need that element removed from the html.
no subject
Date: 2011-08-12 01:49 pm (UTC)What happens if you have USE_INLINE_TREES=YES and GENERATE_TREEVIEW=NO ? Have you got that?
(Oh, and for (b), a painful regex would suffice).
no subject
Date: 2011-08-12 01:59 pm (UTC)(Oh, and for (b), a painful regex would suffice).
... I'm not sure I'm capable of producing a regexp that painful!
I could just about get away with just removing the innermost div element, so wouldn't have to deal with nested elements much, but my regexping skills are possibly still not up to the job. Always time to learn, I suppose :)
no subject
Date: 2011-08-12 02:13 pm (UTC)Are the < div >s aligned to the left or is there indenting? Are the contents of the div indented? If not are there nested divs inside it?
no subject
Date: 2011-08-12 02:28 pm (UTC)I did wonder, so I tried that one as well. Neither seemed to make any difference to the HTML output.
The tags are all indented (using spaces, not tabs). The relevant div has nothing but a table (and of course things you'd expect to find in tables) inside it.
no subject
Date: 2011-08-12 03:08 pm (UTC)Where the spaces between the \n and and < are the same as whatever indentation it is. If you don't want to worry about the possibility of nested div tags you could just use <div class="navtab">(.*?)</div> and then just stick that into your favourite regex capable text editor and do a replace in files.
no subject
Date: 2011-08-12 03:22 pm (UTC)Thanks. I'll have a look at that if I don't get any sense from the doxygen forum I also sent the question to earlier today - if not generating the div in the first place is an option, I'd sooner go with that.
do a replace in files
This will have to be done every time the files are autogenerated, from a makefile. So it needs to be a bit less human-assisted than that :) Once I've comprehended that actual regexp, then hopefully I can communicate it to sed and do it that way.
no subject
Date: 2011-08-12 03:42 pm (UTC)no subject
Date: 2011-08-12 03:50 pm (UTC)(That came under the 'comprehending' part ;)
Cheers.
no subject
Date: 2011-08-12 04:19 pm (UTC)This will be a waste of time, Elizabeth. Sed is purely line-based and won't match over linebreaks.
no subject
Date: 2011-08-13 07:46 am (UTC)no subject
Date: 2011-08-13 08:06 am (UTC)[*] For certain limited values of "know" and "use".
no subject
Date: 2011-08-12 07:45 pm (UTC)no subject
Date: 2011-08-13 06:36 am (UTC)no subject
Date: 2011-08-13 09:39 am (UTC)no subject
Date: 2011-08-13 10:03 am (UTC)I suspect some Perl to modify the output is probably going to be the route of choice.
But on Monday :)
no subject
Date: 2011-08-14 08:33 am (UTC)no subject
Date: 2011-08-12 07:51 pm (UTC)no subject
Date: 2011-08-13 06:38 am (UTC)Which is probably something to do with frames support :( I'm definitely dealing with things beyond my ken, here...
no subject
Date: 2011-08-13 09:38 am (UTC)no subject
Date: 2011-08-12 11:41 pm (UTC)no subject
Date: 2011-08-13 06:40 am (UTC)Shortly afterwards, it builds all those docs into a .chm file using the utterly nasty M$ HTMLHelp, and also into a zip in the format Eclipse understands.
Somewhere between those two stages, I need to remove it. I have no idea if you can call Javascript from a makefile, but it doesn't sound like the natural route to go down to me :)
no subject
Date: 2011-08-13 11:55 am (UTC)