libctru
libctru copied to clipboard
Enable offline documentation by providing docsets
Hello, I've gotten very frustrated at doxygen's search feature not showing me the suitable functions for my objectives right away (be it because the name of the function doesn't start exactly by the search string or by being slow at doing it's job, it's laggy).
So I've found an article in hackernews promoting the wonders of offline documentation and showed docsets as a simple but effective option at doing so(while they were created for apple computers, with the right apps, like zeal which is free and cross platform, one can make full use of them in any computer). I did some research and came up with the knowledge needed to make doxygen generate the raw docsets and a way to index them and make them proper usable
This PR request sets the workflow to provide the docsets in artifacts, but they could probably be moved somehow to releases.
I don't see the point in uploading the docs as CI artifacts (which expires after at most 90 days), you are probably better off just downloading a zip of the gh-pages branch.
What is docset? The docsetutil repo you are using says it is a re-upload of the docsetutil binary from Xcode, which afaict was marked as deprecated in 8.3 (and removed in 9.3): https://developer.apple.com/library/archive/releasenotes/DeveloperTools/RN-Xcode/Chapters/Introduction.html#//apple_ref/doc/uid/TP40001051
I don't see the point in uploading the docs as CI artifacts (which expires after at most 90 days), you are probably better off just downloading a zip of the gh-pages branch.
What is docset? The docsetutil repo you are using says it is a re-upload of the docsetutil binary from Xcode, which afaict was marked as deprecated in 8.3 (and removed in 9.3): https://developer.apple.com/library/archive/releasenotes/DeveloperTools/RN-Xcode/Chapters/Introduction.html#//apple_ref/doc/uid/TP40001051
You're kinda correct in both affirmations, I wanted to leave to you however you want to distribute the docset so I made it a minimal artifact thing, but I can easily make it create a release with the docset.
In regards to the docset, while docsetutil is deprecated the format itself is used by several offline documentation utilities(Zeal, Dash and others), the format bundles the html files with a sqlite database for indexing(improved search) and the utility merely makes it easier to get the job done. When used to it's full potential, the format allows for feeds, which auto updates documentation when a new release comes up.