-
Notifications
You must be signed in to change notification settings - Fork 115
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
[Question] Allow more input formats for Franklin.jl? #999
Comments
Hello @Klafyvel, I think you might want to experiment with Xranklin.jl; basically Franklin's next version (if I find the time to finish up the last few things...). (Also Franklin is in a frozen state until I merge Xranklin into it so working on Franklin for anything else than bug fixes is not a good idea) If I understand properly, what you'd like is to be able to have for instance a folder That function This would still require having one, or several If this kind of sounds like what you might be after, I'd suggest experimenting with a dummy Xranklin repo (happy to help you there if you need a hand), try to write a |
Thank you for that answer! I wasn't aware of Xranklin.jl, I'll give it a look. With the process you describe, would it be possible to change the metadata/page variable definition from Norg (there is a specific metadata bloc in the spec)? For example, from |
well in |
Excellent, I'll try to play with that soon. Thank you for your help! |
Still hacky, but here is an experimental Norg.jl-in-Xranklin.jl website! I guess at some point -when the parser is more advanced- I'll write a proper glue-package that smooths things a little bit, most likely with a custom Franklin.jl code generator. |
Looks pretty good. The If there are things you would have liked to have from Xranklin, let me know, this can be useful to others who may want to do similar things in the future |
Thanks for all your work on this package! To tag on here, it would be great if Xranklin would have an "official" way to use other markdown formats (either the The only hacky thing I need is dummy ".md" files to trigger the RSS feed, because I can't pass the RSS variables through the Quarto qmd file itself. If I could redefine the RSS feed function in utils to look for |
@wklimowicz , there is already a path in Xranklin to hook another markdown to html converter (e.g. CommonMark.jl or anything else even external programs), maybe this is best discussed on the Xranklin repo though. |
I know next to nothing about how Franklin handles files, but what do you think of using Julia type system to handle various file formats? You could have something like a |
Hmm that's an interesting idea. I'd rather carry out this discussion in the Xranklin repo for now as this won't happen in the current state of Franklin. There are a few things to bear in mind but I think it could happen. In the global loop over files (this file: https://github.com/tlienart/Xranklin.jl/blob/main/src/build/build_loop.jl) there's essentially three cases:
For that last one, it calls Then it calls the deeper logic to do the actual file processing: A straightforward modification would be to have this
With A few things not specified in the outline above:
But let's say that a user just wants to have a special path for a few of their files which should be independently processed and the output injected in layout files without code execution or cross-page dependencies, then this should work. |
Hi there!
I am the developper of Norg.jl, a parser for the Norg markup language. The Norg syntax originates from neorg, an org-mode inspired neovim plugin.
Norg.jl aims to eventually cover the whole specification and provide an easy way to deal with .norg files in pure Julia. The main goal is to provide ASTs for developpers to play with, but there are also some code generation capabilities. I would love to be able to use it to write my personnal blog, which uses Franklin.jl.
The hacky way to do that would be to export the ASTs to markdown and then feed them to Franklin.jl. But with the upcoming 1.9 release of Julia, we will soon have the ability to have weak dependencies within packages. This way, one can think of adding support for norg in Franklin.jl at a reasonable cost.
That being said, I understand that it would require some work on the Franklin.jl side, that I am willing contribute to.
What are you thoughts on such a feature?
The text was updated successfully, but these errors were encountered: