-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Next stage in the plugin architecture #631
Comments
Thanks @Michael-F-Bryan for getting started with this, and for involving us :)! For me the top-priority would be to allow preprocessors to be standalone programs, using a plugin mechanism similar to what renderers can already do. Right after that, and to my mind a very low hanging delicious fruit, is to allow iterate section more comfortably, while supporting 'standard' error handling. This should read as 'not what this preprocessor example' has to do. And here is where I would already make the cut, just because this would already solve all the problems I had while working on Besides that, I do like the simplicity of it, which also means I like the tree chapters form, reflecting clearly the My general driving forces are
|
I'm going to copy across the conversation from #626 (comment). It's quite relevant to this issue. @Michael-F-Bryan #626 (comment)
@Michael-F-Bryan #626 (comment)
|
I am curious what the appetite for breaking up the Currently if you want to build a preprocessor you are required to bring all filesystem portions of It seems silly to have to compile In my head the overall structure might look something like this
By moving these items into their own library crates, you would eliminate the need for these extra dependencies. Sorry if this isn't the appropriate place to make this comment. I would be happy to participate in a similar conversation elsewhere or open a new issue to discuss this further. |
For a blog post I am working I have have set up what I described above as a fork or the current master. You can find it here. |
We merged a deliberately minimal
Preprocessor
phase in #532, so it might be time to start thinking of how the concept of a preprocessor can be extended.After looking through @Byron's example preprocessor (#629) it's pretty obvious that the API for accessing a book's contents less than ideal, and making the
Book
API more ergonomic will probably go a long way in allowing third parties to create their own plugins.This is more of a discussion thread so we can throw around ideas and opinions. @Byron, @sorin-davidoi, @azerupi and anyone else who's interested, feel free to chime in with ideas or suggestions 😁
To get the ball rolling I think a couple things we could do are:
sections
item inside aBook
so people can manually walk through aBook
's contentsSUMMARY.md
file may become easier because we can avoid the ugly recursion needed to append items to a chapter.The text was updated successfully, but these errors were encountered: