Subject: bug#78451: 30.0.92; prog-fill-reindent-defun ignores fill-column inside string in emacs-lisp-mode.

From: Stephen Berman <[email-masked]>
Date: Fri, 16 May 2025 10:30:41 +0200

On Fri, 16 May 2025 07:47:42 +0000 Jake <[email-masked]> wrote:

> Hello
>
> `prog-fill-reindent-defun' does not respect the value of fill-column when
> inside a string (e.g. a docstring) in emacs-lisp-mode and
> lisp-interaction-mode.  I checked it is respected in python-mode, c-mode,
> and c++-mode.
>
> From emacs -Q:
> Yank into the *scratch* buffer:
>
> (defun a ()
>   "a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a
> a a a a a a a a a a a a a a a a"
>   nil)
>
> C-x f 30 RET
> Put the point inside the docstring and M-q
> Observe that it is filled to something like column 70 to 75.

That's because lisp-data-mode (which emacs-lisp-mode and
lisp-interaction-mode derive from) binds fill-column to the value of
emacs-lisp-docstring-fill-column, which is 72 by default.

Steve Berman