Code Monkey home page Code Monkey logo

Comments (7)

michaeljones avatar michaeljones commented on June 1, 2024

Thanks for the report. I'll have a look into it at the weekend. It is really great to see you putting Breathe through its paces, sorry it isn't holding up that well!

Michael

from breathe.

abingham avatar abingham commented on June 1, 2024

Don't worry about the bugs, I expect them in 0.6 software! I'm
honestly very happy with how well breathe works. From my point of
view, the important stuff works properly; the problems I've found are
just details that should be easily ironed out.

As I have time, I can lend a hand fixing some of these bugs. If you
have some idea where they lie, it would speed things up a lot if you
pointed me in that direction. (I frankly don't have the time and
energy to learn breathe from the ground up right now.)

Austin

On Mon, Apr 25, 2011 at 9:12 PM, michaeljones
[email protected]
wrote:

Thanks for the report. I'll have a look into it at the weekend. It is really great to see you putting Breathe through its paces, sorry it isn't holding up that well!

Michael

Reply to this email directly or view it on GitHub:
#26 (comment)

from breathe.

michaeljones avatar michaeljones commented on June 1, 2024

Very kind of you to offer to help. It would be great if you could. Unfortunately the remaining 2 of the 3 issues that you've raised so far aren't the best starter issues, but we can try!

If you have the time to look into something briefly, you could try looking at this one. The issue is that we look in the main "index.xml" file generated by doxygen to try to find a element with the "kind" attribute set to "file" and we have a look at its child element to find out if it has the name we're interested in.

The code isn't that smart, it just looks for the first match or maybe the last... Unfortunately, in the basic test case I put together both Util.hpp files appear in the index.xml without any indication of their full file path so we can't make a better judgement on the information there. So we have to look at the "refid" attribute on the element to get the filename of the xml corresponding to that compound. By the looks of it, that xml file has a element with a child which gives the full path so we'll have to check against that.

So, the code you need to look at is mostly in the "breathe/finder" folder, which contains code for iterating over the various nodes in the "index" and "compound" files (found in breathe/finder/doxygen/{index.py,compound.py}). As it iterates, it tries to match what it is finding with the "match_stack" that it is given. The code isn't great and I've been planning on changing it but if you have time to figure out how some of the matchers work you might be able to produce something similar that will first match against the compound for the right name and kind and then open up the compound.xml file and look for the location element and do some kind of test against that.

I'm afraid my description is getting increasingly blurry as I've got half an eye on the time and need to be off to work. If you've not read it there are some developer notes in the documentation which has a broader introduction to breathe.

Depending on how you find the above ramble, please feel free to give it a go or let me know what doesn't make sense or leave it and I'll take a crack at it when I can over the next few days.

Cheers,
Michael

from breathe.

michaeljones avatar michaeljones commented on June 1, 2024

Hi,

For what its worth, in an attempt to sort out the other doxygenfile issue, I'm changing this code quite a bit so if you've not started looking at it, it might be worth waiting a bit.

If you have, then don't worry I'm sure the investigation and changes will be useful.

Cheers,
Michael

from breathe.

abingham avatar abingham commented on June 1, 2024

I haven't had a chance to look yet, so I'll just hold off.

from breathe.

michaeljones avatar michaeljones commented on June 1, 2024

Hi Austin,

I've just pushed some changes that should address this particular issue. I've also updated the docs to show what is needed. You'll just need to use:

.. doxygenfile:: subproj1/Util.hpp

To distinguish. Hope it works. Unfortunately, I haven't addressed the issue that the doxygenfile directive doesn't really output everything you'd like. Next on the list and I've got some ideas but not there yet.

Cheers,
Michael

from breathe.

abingham avatar abingham commented on June 1, 2024

Your fixes seem to fix things. Thanks!

from breathe.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.