Is there any way to make left navigation usable by...
# dokka
a
Is there any way to make left navigation usable by NOT listing extensions like this? (It is from my API reference at https://atsushieno.github.io/ktmidi/ktmidi/dev.atsushieno.ktmidi/-ump/index.html ) Note that it is a data class.
i
I don't think it's possible to hide it out of the box: extension properties are part of the package, so they are treated as any other package level declaration If you really wanted, you could write your own Dokka plugin to hide it. If you want to go this route, let me know, I'll share more details ๐Ÿ™‚ An example of a simple plugin can be found in the docs
a
Alright, that was one possible route I had thought of. I'm still feeling good to find that I was not wrong! Thanks for the hint, I'll try to see if can make some changes to the code and build my own version. I kinda used to fork some gradle plugin and publish in my own name :-)
i
Just in case: there's no need to fork Dokka, it's very pluggable as it is. Dokka Plugins are published as separate dependencies (either to maven local or even maven ceentral), mermaid plugin is a good example As for implementing the plugin, you'd need provide your own extension for
navigationPageInstaller
extension point from DokkaBase, and probably override the default value. As to how to implement it, take a look at NavigationPageInstaller and NavigationDataProvider, you can pretty much copy-paste it and only change navigableChildren method to exclude
DProperty
Might be a bit too much to take in now, but it'll make sense as you go along ๐Ÿ™‚
a
Ah, I thought those dokka plugins were only to extend those content outputs. Sure then it'd be much simpler. Thanks!
i
There are extension points all over the codebase, pretty much at all main stages ๐Ÿ™‚ You could even provide a low-level extension that parses Python source files and maps them into Dokka's Documentable model, and then you could pretty much generate documentation with Dokka for Python projects
๐Ÿ™Œ๐Ÿพ 1
๐Ÿ™Œ 1
a
heh, that's beyond my expectation a lot. I might use that in my other projects that kinda involves my own DSL ๐Ÿ™‚