Top
Best
New

Posted by zdw 1 day ago

Arborium: Tree-sitter code highlighting with Native and WASM targets(arborium.bearcove.eu)
216 points | 42 commentspage 2
divyeshio 20 hours ago|
This is cool! How does it compares with Shiki or Highlighter.js in terms of performance?
f311a 20 hours ago||
I had to wait for about 10 seconds for it to load on my crappy mobile connection.

They also load 1 mb of fonts. In total, this page is close to 3 mb.

Also, when you select a language, the grammar file gets downloaded twice.

mintflow 1 day ago||
Great project, I really love tree-sitter, recently I added a ini variant config profile support to my app, and just use gemini to write a grammar and combine it with another great project called runestone to support highlight the config profile, the total progress is quite smooth.
teo_zero 1 day ago||
Sorry, but I can't understand what this actually is. A library, a stand-alone tool, a Rust crate? What users does it target? Text editors, website creators?
GolDDranks 1 day ago||
It's a Rust library (comprised of a bunch of crates) that wraps a high-performance, high-accuracy syntax highlighter (called Tree-sitter) with vetted support for almost 100 programming/markup languages.

You can use it as a normal Rust library, or you can use the JavaScript/WASM wrapper to highlight source code on a web page.

oersted 1 day ago|||
> high-accuracy syntax highlighter (called Tree-sitter)

Just wanted to note that tree-sitter is lower-level and more general: it's an incremental parser that is specialised for gracefully and efficiently parsing partially-correct code snippets or code being edited live.

It's an important building block of the highlighter, but it needs more on top to complete the package. It can be used for anything that requires awareness of code structure in an editor.

debugnik 19 hours ago|||
If only it were usable for really-correct parsing. In my experience error recovery is so aggressive it will accept broken ASTs without marking any node as an error. Plus, you can't really solve some ambiguities without C-based lexer hacks.

I wonder if targeting the Tree-sitter ABI directly could be a viable way to write more accurate parsers in an actual programming language while piggybacking on the ecosystem. Could tree-sitter's runtime ABI be adapted for GLL parsers instead of GLR? I haven't looked deep into it yet.

conartist6 17 hours ago||
Now you're in my wheelhouse! Come check out https://github.com/bablr-lang/. I'm gearing up for a big release announcement here once I fix these bugs and ship all the latest code.
GolDDranks 1 day ago|||
Thanks for the correction!
gorjusborg 18 hours ago|||
Is the 'regex hater club' subtitle related to using regex to 'parse' rather than using something like tree-sitter that actually parses?

I also had a hard time understanding the context given just the link.

joshka 1 day ago|||
See https://fasterthanli.me/articles/my-gift-to-the-rust-docs-te...
jasonjmcghee 1 day ago|||
GitHub repo is a bit more helpful, but users or building of text editors that use tree-sitter.

Or... website text editors which historically have had imperfect syntax highlighting.

Notice the Zed sponsorship.

https://github.com/bearcove/arborium

tombh 21 hours ago||
> Batteries-included tree-sitter grammar collection with HTML rendering and WASM support.

That's the best one sentence description there is and it's at the top of the Github README. I think that would fit nice at the top of https://arborium.bearcove.eu too

discord9 1 day ago|||
I think this gives some context?:https://fasterthanli.me/articles/my-gift-to-the-rust-docs-te... TLDR: for rust doc highlighting stuff in document
Rodmine 1 day ago||
Not for you then. You don't need to understand everything.
unrealhoang 1 day ago||
The get started section seems to be broken or missing content.
virajk_31 1 day ago||
This is cool, was looking for something similar
simonjustice 10 hours ago|
[dead]