- From: LdBeth <andpuke@foxmail.com>
- Date: Tue, 22 Aug 2023 13:44:28 -0500
- To: Norm Tovey-Walsh <norm@saxonica.com>
- Cc: ixml <public-ixml@w3.org>
Incidentally, I made a treesit parser for RelaxNG compact syntax recently for Emacs 29, https://github.com/LdBeth/tree-sitter-rnc The corresponding emacs mode resides in my config file. https://github.com/LdBeth/InfernoEmacs/blob/master/core/rnc-ts-mode.el Working on the tree sitter grammar is a lot similar to using IXML, except the special handling of comment and token lexer which I think could potentially benefit IXML. What bothered me a little bit is indentation convention of RelaxNG compact, I implemented it to resemble all examples in the RelaxNG tutorial, and most of the DocBook 5 RNC grammar. There are some edge cases about `##` documentation annotation that I don't know how to write the indentation rule: db.valign.enumeration = ## Aligned on the bottom of the region "bottom" | ## Fooo "middle" | ## Aligned on the top of the region "top" Although I guess that's caused by that fact RNC is converted from the XML RelaxNG file. Best wishes, LdBeth >>>>> In <m2wmxpd2rc.fsf@saxonica.com> >>>>> Norm Tovey-Walsh <norm@saxonica.com> wrote: > [1 <text/plain; utf-8 (quoted-printable)>] > Hello, > Since Emacs 29 has introduced support for tree-sitter, IĒve taken a > keener interest :-) > My first humble foray into a tree-sitter grammar for Invisible XML > (which would, for example, enable accurate syntax highlighting in > tree-sitter-aware editors) is here: > https://github.com/nineml/tree-sitter-ixml/ > I know almost nothing about tree-sitter, so caveat forker. > ItĒs got a couple of actual bugs and I havenĒt been able to make it > syntax highlight anything successfully yet, but it was an amusing > diversion on Sunday afternoon. IĒll come back to it again when I > understand (or understand how to understand) tree-sitter a little > better. > Comments, suggestions, and pull requests most welcome! > Be seeing you, > norm > -- > Norm Tovey-Walsh > Saxonica > [2 signature.asc <application/pgp-signature (7bit)>] > No public key for 831226476F0BFD3B created at 2023-08-20T12:47:51-0500 using EDDSA
Received on Tuesday, 22 August 2023 18:49:52 UTC