Subject: Re: bug#62371: [PATCH] Fix go-ts-mode incorrect docstring inserted for methods

From: Randy Taylor <[email-masked]>
Date: Sun, 26 Mar 2023 11:44:05 +0000

On Sunday, March 26th, 2023 at 00:34, Eli Zaretskii <[email-masked]> wrote:
> > Date: Sat, 25 Mar 2023 19:37:17 +0000
> 
> > From: Randy Taylor [email-masked]
> > Cc: Evgeni Kolev [email-masked], Dmitry Gutov [email-masked], Yuan Fu [email-masked], [email-masked]
> > 
> > On Saturday, March 25th, 2023 at 08:17, Eli Zaretskii [email-masked] wrote:
> > 
> > > > From: Evgeni Kolev [email-masked]
> > > 
> > > > Date: Wed, 22 Mar 2023 10:05:56 +0200
> > > > 
> > > > The docstring inserted with go-ts-mode's C-c C-d was incorrectly
> > > > prefixed with the receiver "(myStruct).":
> > > > 
> > > > // (myStruct).act
> > > > func (m *myStruct) act () {...}
> > > > 
> > > > The above docstring is not correct because the receiver "myStruct"
> > > > should not be in the docstring.
> > > > 
> > > > The issue is caused by imenu and go-ts-mode--defun-name using the same
> > > > code to determine the defun name. Instead, they should produce
> > > > different results - imenu should show the "myStruct" prefix, but the
> > > > docstring should not.
> > > > 
> > > > This commit fixes the incorrect behavior by introducing an optional
> > > > SKIP-PREFIX parameter to (go-ts-mode--defun-name). Pressing C-c C-d
> > > > now inserts just the method name:
> > > > 
> > > > // act
> > > > func (m *myStruct) act () {...}
> > > > 
> > > > * lisp/progmodes/go-ts-mode.el (go-ts-mode--defun-name): New optional
> > > > parameter SKIP-PREFIX. (go-ts-mode-docstring):
> > > > Call (go-ts-mode--defun-name t) instead of (treesit-defun-name).
> > > 
> > > Thanks.
> > > 
> > > Dmitry, Yuan, Randy: any comments?
> > 
> > I guess my email yesterday didn't make it through or got missed?
> 
> 
> It didn't. But gnu.org had severe DNS problems all day yesterday, so
> many email messages were delivered with a long delay. I wrote the
> above before I saw your response.
> 
> > It looks good to me, feel free to install.
> 
> 
> I tried, but it failed to apply. Evgeni, could you please resubmit,
> relative to the emacs-29 branch?

It's for master, this feature didn't make it in to emacs-29.