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

From: [email-masked] (GNU bug Tracking System)
Date: Sun, 26 Mar 2023 12:06:02 +0000

Your bug report

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

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
62371: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=62371
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#62371: [PATCH] Fix go-ts-mode incorrect docstring inserted for methods
From: Eli Zaretskii <[email-masked]>
To: Randy Taylor <[email-masked]>
Cc: [email-masked], [email-masked], [email-masked], [email-masked]
Date: Sun, 26 Mar 2023 15:05:48 +0300
List-Id: <debbugs-submit.debbugs.gnu.org>

> Date: Sun, 26 Mar 2023 11:44:05 +0000
> From: Randy Taylor <[email-masked]>
> Cc: [email-masked], [email-masked], [email-masked], [email-masked]
> 
> > > 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.

Thanks, now installed on master, and closing the bug.

Subject: [PATCH] Fix go-ts-mode incorrect docstring inserted for methods
From: Evgeni Kolev <[email-masked]>
To: [email-masked]
Date: Wed, 22 Mar 2023 10:05:56 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

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).