- From: Norm Tovey-Walsh <norm@saxonica.com>
- Date: Wed, 23 Aug 2023 06:11:17 +0100
- To: LdBeth <andpuke@foxmail.com>
- Cc: public-ixml@w3.org
- Message-ID: <m2fs4auyj6.fsf@saxonica.com>
LdBeth <andpuke@foxmail.com> writes: > 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. It’s very common, generally, for tools that parse things to have a lexer to make the tokens and a parser to parse them. For iXML, the trouble is, I think, that you’d need to either have a fixed set of lexing rules or a language for defining lexing rules. The former would invariably be problematic for some scenarios and the latter would make iXML that much more complicated. > 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. Maybe. Or maybe I just didn’nt hit “tab” in all the right places. The standard emacs mode for RELAX NG produces db.valign.enumeration = ## Aligned on the bottom of the region "bottom" | ## Fooo "middle" | ## Aligned on the top of the region "top" which is probably what I *meant* to have in that file. Sorry for the confusion! Be seeing you, norm -- Norm Tovey-Walsh Saxonica
Received on Wednesday, 23 August 2023 05:18:49 UTC