Open warborn opened 1 month ago
Hi! First of all, thank you for the amazing work with this library.
Thanks ❤️
I got into a rabbit whole not knowing if it has to do with inkjet, autumn, tree-sitter or MDEx itself.
Tree-sitter alone is a huge project, I know the feeling 😆
code snippets in other languages
I just released a replacement of Inkjet, see https://github.com/leandrocp/autumnus That's gonna be the new backend for Autumn, see https://github.com/leandrocp/autumn/pull/32 - this PR is almost done, just need a few more fixes here and there. In short, Autumn will be just a client, all the highlighting is done by Autumnus so if you wanna dig into how it works, that's the repo you wanna look.
Now we have a proper site with more examples https://autumnus.dev/ including C++ and TypeScript and I might add React, TSX and JSX as well.
Can you share some examples of code you'd like to see highlighted?
I'm amazed by Autumnus, you and your team just build something that's almost 4k commits in such a short period of time, is there any way to support you guys? I see that the codebase is mainly C but if there's anything I could to to contribute I would be glad to do so. I'm planning on using MDEx and Autumn for the first independent project of my career and I know I'll be using these libraries a lot.
As for the examples, I added a few to this gist but from what I can see with Autumnus you already covered all of the languages and technologies like Docker, that I wanted to support, thank you very much!
I'm amazed by Autumnus, you and your team just build something that's almost 4k commits in such a short period of time, is there any way to support you guys?
Thanks 🙇🏻♂️ Using the projects, spreading the word, and contributing back are all amazing ways to support :)
Most of the project is C due to the parsers we need to bundle into the project. Either we use a lib that provides the Rust bindings, for eg https://crates.io/crates/tree-sitter-elixir or bundle the parser (C code) and compile it. There are pros and cons on either approaches but the easiest to maintain is adding crates as dependencies (talking about that Autumnus project).
MDEx, through Comrak, can highlight code blocks so that's where Autumnus comes into play. Technically MDEx doesn't need the Autumn Elixir library but it exists in case anyone needs to highlight source code in Elixir.
And just to be clear I wish I could name both Elixir and Rust projects as Autumn but the name was taken 😆
As for the examples, I added a few to this gist but from what I can see with Autumnus you already covered all of the languages and technologies like Docker, that I wanted to support, thank you very much!
Nice, I'm gonna add some more examples. That helps with debugging as well.
Congrats on the release of Autumnus and update to Autumn 🎉
Is going to be a great deal for my app, as soon as I can update I'll let you know how it goes :)
Hey @warborn thanks 🎉 Although I have not updated MDEx to use that version yet, but I'm working on it and should cut a new release soon.
I'm amazed by Autumnus, you and your team just build something that's almost 4k commits in such a short period of time
Not directly related to this issue, but I saw the commit count and was shocked as well. Going back in the git history, it appears there are commits from different tree sitter parsers.
Is the git history include merges from other git repos in order to vendor the parsers?
Actually, kept reading, looks like you do have scripts that pull in the parsers via git, which would explain the commits.
I seemed to have answered my own question, carry on 😅
Initially I used git subtrees to vendorize external parsers which messed up the git history and was not very practical to work with. For example some parsers includes a ton of sample files for testing purposes and some other issues.
So eventually I moved over to a script to download only the files needed for this project. Much simpler and cleaner.
Hi @leandrocp I just saw the update of MDEx, the new features look really nice, interesting things can be accomplished with Pipe and converting from Markdown to JSON thanks!
I also wanted to follow up on the issue, the 5.0
version is supposed to implement Autumnus behind the scenes instead of Inkjet or it's something that will come in the future?
Hi @leandrocp I just saw the update of MDEx, the new features look really nice, interesting things can be accomplished with Pipe and converting from Markdown to JSON thanks!
Thanks 🙇🏼♂️
I also wanted to follow up on the issue, the
5.0
version is supposed to implement Autumnus behind the scenes instead of Inkjet or it's something that will come in the future?
That's coming soon. It was planned for 0.5.0 (that's why I had it mentioned on docs) but I had to cut a release to fix some bugs.
Hi! First of all, thank you for the amazing work with this library. I've been using it for my personal blog for 3 months now and it has been great!
I wrote mostly about Elixir but wanted to diverge and create another project where I need to write code snippets in other languages. Yesterday I tried with a few like the above mentioned in the title but also with C++ for example and seems like most of them end with the code tag being labeled as "plaintext". I got into a rabbit whole not knowing if it has to do with inkjet, autumn, tree-sitter or MDEx itself. I tried to make some changes to the inkjet adapter with no luck.
I'm completely new to Rust but I'm eager to learn and see if I can help somehow, I wanted to submit this issue to see if I could get some guidance into what could be the problem. For what I saw, inkjet mentions it has support for those languages and they have the 0.11.1 version with updated support.
One can reproduce the issue by running one of the examples an writing code in other languages than Elixir, Ruby or Python. I tested in my own project but also using the nimble_publisher.exs and live_view.exs examples with TypeScript or React code.