--- Begin Message ---
Subject: |
27.0.91; beginning-of-defun doesn't work inside React markup in js-jsx-mode |
Date: |
Mon, 1 Jun 2020 10:59:50 -0700 |
With a file App.js that looks like:
import * as React from "react";
import { render } from "react-dom";
const App = () => {
return (
<div>
<h1 id="abc">hello</h1>
<SearchParams />
</div>
);
};
render(<App />, document.getElementById("root"));
If you open the file in JS mode (Emacs 27), and move point inside of
"abc", calling
M-: (c-beginning-of-defun)
gives the following error:
Debugger entered--Lisp error: (wrong-type-argument hash-table-p nil)
copy-hash-table(nil)
c-forward-<>-arglist(nil)
c-backward-<>-arglist(nil nil)
c-looking-at-decl-block(99 nil)
c-most-enclosing-decl-block((117 99 88 (40 . 50)))
c-widen-to-enclosing-decl-scope((117 99 88 (40 . 50)) 1 234)
c-beginning-of-defun()
eval((c-beginning-of-defun) t)
eval-_expression_((c-beginning-of-defun) nil nil 127)
funcall-interactively(eval-_expression_ (c-beginning-of-defun) nil nil 127)
call-interactively(eval-_expression_ nil nil)
command-execute(eval-_expression_)
Manually invoking C-M-a inside the double quotes should end the same way.
In GNU Emacs 27.0.91 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.20)
Windowing system distributor 'The X.Org Foundation', version 11.0.12008000
System Description: NixOS 20.09 (Nightingale)
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#41649: 27.0.91; beginning-of-defun doesn't work inside React markup in js-jsx-mode |
Date: |
Sun, 7 Jun 2020 15:23:20 +0000 |
Hello, Brian and Dmitry.
On Thu, Jun 04, 2020 at 09:40:34 -0700, Brian Leung wrote:
> It works for me also. Thanks.
> On Thu, Jun 4, 2020 at 9:26 AM Dmitry Gutov <dgutov@yandex.ru> wrote:
> > On 04.06.2020 19:23, Alan Mackenzie wrote:
> > > Would you please try out the following patch, which ought to fix the
> > > problem the patch should fix.
> > I tried it a few days ago, and it indeed seemed to fix the reported
> > scenario.
OK, that's good, thanks.
Thinking about it, and considering how many js-mode settings get amended
by this patch, it is fairly complicated. So, it really is too late for
the emacs-27 branch. So I've committed the patch to master.
I'm closing the bug with this post.
--
Alan Mackenzie (Nuremberg, Germany).
--- End Message ---