I've been enjoying tree-sitter, using it for a larger project now. I found it more intuitive than peg, but certainly comes with more... weight (entire subfolder, bindings, build process etc) and is more verbose. But can simplify syntax highlighting and other editor related things. Zed uses it extensively, and all you need are queries for each of the features (https://zed.dev/docs/extensions/languages)
Miette is responsible for actually rendering the error messages you see- which was new to me, but have always appreciated how that style of error looks and is so much more helpful than "[1:23]"
Miette is responsible for actually rendering the error messages you see- which was new to me, but have always appreciated how that style of error looks and is so much more helpful than "[1:23]"