Another couple of weeks have gone by and since finalizing the design of the documentation cards, I have focused more about the underlying structure and testing.
There has been a lot of work put in the gathering and parsing of the information from devhelp so it make sense to make it accessible not just to documentation cards. So documentation provider IdeDocumentation was created to provide the information to any plug in that can make use of it. Now it only gets information from Devhelp but in future it will make it easy to append any other provider of documentation. There is now no reason for the Documentation cards to be part of the Devhelp plugin anymore and it can be plugin on it’s own using the IdeDocumentation to get the information. So generally the new additions to the code made it more open for extensions and accessible to other plugins through
IdeDocumentationInfo * documentation_get_info (IdeDocumentation *doc, gchar *input, IdeDocumentationContext *context);
where the structure IdeDocumentationInfo contains all the information it managed to get from the providers.
In preparation of getting the new feature integrated, I’ve spent some time on testing of the feature. Making sure it works for different types of documentation and you know doesn’t crash. Hope it will be ready to added to main soon and will be available for everyone to try out.