Jan van Dijk 2007-12-12 10:33:50 UTC In our plasma modelling group we have been happy doxygen users for a long time now. After all these years of using doxygen, we feel that one feature is still missing: LaTeX-style bibliography support (a \cite command). In my (C++) code, I would like to be able to write: /** Nifty class implements the Nifty algorithm that has been * discussed in \cite{Dijk2007/1}. */ struct NiftyClass { // ... }; Dijk2007/1 would be a BibTeX entry, declared in a bibtex file myrefs.bib, say. (The fact that Doxygen uses this file, and perhaps others as well, could be configured in the .doxy file, or somewhere else.) The idea is that doxygen compiles a bibliographic reference from the .bib files and the\cite commands. That would be a separate HTML page, similar to those generated by the \todo and \bug tags. Then, in the doxygen-output (in particular the HTML-docs) for the NiftyClass we would see something like: Nifty class implements the Nifty algorithm that has been discussed in [42]. Where [42] would be a clickable reference to the appropriate anchor on the generated bibliography page. Could such feature be considered? We would welcome it very much! Dimitri van Heesch 2007-12-12 19:16:02 UTC *** Bug 503235 has been marked as a duplicate of this bug. *** Dimitri van Heesch 2007-12-12 19:16:38 UTC *** Bug 503237 has been marked as a duplicate of this bug. *** Jan van Dijk 2011-03-01 13:31:42 UTC I spotted two more duplicates: 317328 and 635562. (The former is older, but seems to refer to Latex output only.) That adds up to four, indicating that this feature is desired for real. I really hope somebody with knowledge of Doxygen's internals will pick this up. Thanks. BTW: I seem to recall that Dimitri has responded to this enhancement request, and confirmed it. Now It appears that the bug is unconfirmed ... and those comments are nowhere to be seen. David Munger 2011-07-25 01:53:33 UTC I proposed a patch for BibTeX support here: https://bugzilla.gnome.org/show_bug.cgi?id=635562#c1 Dimitri van Heesch 2011-07-28 18:45:37 UTC Thanks David, a variant of your patch has been included in the latest subversion update. Dimitri van Heesch 2011-07-28 18:46:53 UTC *** Bug 635562 has been marked as a duplicate of this bug. *** Dimitri van Heesch 2011-07-28 18:47:43 UTC *** Bug 317328 has been marked as a duplicate of this bug. *** Jan van Dijk 2011-08-08 12:36:29 UTC I have just started to play with this. Thanks a lot, this is what we have been wishing for for a long time! I have a few comments, though. They look like simple issues to fix for somebody who knows what he is doing: * Specifying an absolute path as argument of CITE_BIB_FILES results in problems. As an example, "CITE_BIB_FILES = /home/jan/src/gum-cvs/doc/refs/plreflst.bib" resulted in: "error: could not write to file /home/jan/src/test_doxygen/bib/doxygen_bibtex_28135_/home/jan/src/gum-cvs/doc/refs/plreflst.bib" and similar errors. * Something like \cite VanDijk2011/2 will not work, since the argument of \cite is parsed as a LABELID, it will stop parsing at the '/' character. It would be nice if this were changed, since using '/' (or ':', for that matter), followed by an index is quite common among BibTex users. Otherwise, would it be possible to allow \cite "VanDijk2011/2" instead? It would not be nice if users have to modify all their .bib files to use (e.g.) VanDijk2011_2 instead. * url={blabla} lines in bibtex files are not handled correctly. They result in the message "citelist:4: warning: Found unknown command \rev'". Indeed, in the files doxygen.bst and doxygen_bst.h (line 156) I see that \rev is emitted. Should that have been \ref? I blindly tried that change, but this results in other errors: "citelist:4: warning: unable to resolve reference to CITEREF_' for \ref command". Thanks again, With kind regards, Jan. Dimitri van Heesch 2011-08-14 14:05:28 UTC This bug was previously marked ASSIGNED, which means it should be fixed in doxygen version 1.7.5. Please verify if this is indeed the case. Reopen the bug if you think it is not fixed and please include any additional information that you think can be relevant. Jan van Dijk 2011-08-14 14:31:27 UTC I just checked with trunk (revision 773) and I still observe the three issues that I mentioned in comment #8. Therefore, I reopened this bug. Dimitri van Heesch 2011-10-01 21:42:41 UTC Confirmed. Should be fixed in the next subversion update. Dimitri van Heesch 2011-12-03 18:22:57 UTC This bug was previously marked ASSIGNED, which means it should be fixed in doxygen version 1.7.6. Please verify if this is indeed the case. Reopen the bug if you think it is not fixed and please include any additional information that you think can be relevant. david.coeurjolly 2012-02-20 13:32:11 UTC Hi all, I'm still having issues with cite command (svn doxygen release 1.7.6.1-20120122): - my cite commands and the bibtex file are correctly parsed/handled in the latex output (result is perfect) - in the HTML output * \cite generates correct links (e.g. html/citelist.html#CITEREF_MyKey) * however, the citelist.html page is empty (header/footer but no "content") When I look at the doxygen outputs, nothing special appears (hop.txt is std output and hop2.txt is std:cerr) : %%%> grep cite hop.txt hop2.txt hop.txt:Generating docs for page citelist... hop2.txt:citelist:3: warning: expected
instead! hop2.txt:citelist:4: warning: unexpected end of comment while looking for a html description title Nothing appears if I "grep" on "bib". Any idea ? Guillaume Lazzara 2013-03-07 13:44:49 UTC Thanks for this feature. I encounter two problems though: - Something like \cite sauvola.00.pr will not work, only the first word will be taken into account. - citelist pages wont be generated when a tag file is used. The tagfile usually already specifies a page citelist Bibliographic References citelist and this prevents the new citelist from being written. The result are broken links in the documentation.