GNU bug report logs - #66183
elixir-ts-mode test failure

Previous Next

Package: emacs;

Reported by: john muhl <jm <at> pub.pink>

Date: Sun, 24 Sep 2023 18:09:02 UTC

Severity: normal

Done: Yuan Fu <casouri <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Yuan Fu <casouri <at> gmail.com>
To: john muhl <jm <at> pub.pink>
Cc: 66183 <at> debbugs.gnu.org
Subject: bug#66183: elixir-ts-mode test failure
Date: Sun, 24 Sep 2023 20:12:48 -0700
[Message part 1 (text/plain, inline)]

> On Sep 24, 2023, at 9:53 AM, john muhl via Bug reports for GNU Emacs, the Swiss army knife of text editors <bug-gnu-emacs <at> gnu.org> wrote:
> 
> The change in 5cba5ee8905 caused an elixir test to start failing. The
> white space at the start of the test is now in a heex range so pressing
> tab there matches a heex rule instead of the elixir one. Moving the
> dummy range to the end fixes the test.

Thank you. I’ll make sure to remember also running elixir tests when I make a change.

I looked around and found elixir-mode’s language-at-point function works in a way that isn’t what tree-sitter functions expect. Tree-sitter functions expect the major mode to derive language at point by querying the host language and do some pattern matching, rather than using language parser’s range. I took a quick look at elixir’s grammar and came up with this version for a POC. You probably need to adjust it but the idea is there.

With the new language-at-point definition, treesit-language-at can return the correct language, and the test passes again.

Yuan

[example.diff (application/octet-stream, attachment)]

This bug report was last modified 1 year and 226 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.