Hi, Olivier and all, picking up from the short chat on #plasma today:
so given kapidox is overcoming the old API dox generating scripts with more proper semantic info... where the old scripts allowed to use random Mainpage.dox at random places in the directories to structure the created documentation (e.g. to group QML "classes" away from C++ classes), kapidox now would need extension of its spec, with semantics needed to talk about QML types and C++ classes to allow proper generation of nicely separated pages. This actually touches a broader problem with the current generated documentation, which right now is centric to the C++ interfaces. Though existing KDE library products have at least interfaces in * C++ * QML * CMake macros [1] and perhaps one day bindings in Python and other languages would be also provided directly with the products and thus it would be great to have their documentation covered as well easily. [1] E.g. KCoreAddon installs a few cmake macros, like kcoreaddons_desktop_to_json, which have nice API dox inside, but there is nothing generated from that on api.kde.org currently, both bad for discoverability or pointing people to things with urls. For a solution: Perhaps at the generation side there could be another level right below the library, for the interface (C++, QML, CMake, ...). So "Product" > "Library" > "Interface", By the example of Plasma Components (https://api.kde.org/frameworks/plasma-framework) there would then be in the header KDE API Reference > The KDE Frameworks > Plasma > QML KDE API Reference > The KDE Frameworks > Plasma > C++ and in the left sidebar there would be another section "Language" (or better term) which would allow to switch to the docs for the other interfaces supported (C++, QML, CMake, ...). On the metainfo.yaml spec side, no idea yet. Cheers Friedrich
