emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master 72b1379f079: Increase `emacs-lisp-docstring-fill-column` to 72


From: Stefan Kangas
Subject: master 72b1379f079: Increase `emacs-lisp-docstring-fill-column` to 72
Date: Fri, 2 Feb 2024 07:35:05 -0500 (EST)

branch: master
commit 72b1379f0795a5e2e9c57615c0b1d78c0b97cd1f
Author: Stefan Kangas <stefankangas@gmail.com>
Commit: Stefan Kangas <stefankangas@gmail.com>

    Increase `emacs-lisp-docstring-fill-column` to 72
    
    Monitors are wider now than when these defaults were first set, and it
    is useful to take better advantage of that, to fit text on fewer lines.
    Yet, it has repeatedly been shown that overly long lines reduce
    readability:
       "A reasonable guideline would be 55 to 75 characters per line."[1]
    
    We also don't want to disfavor narrow displays, like mobile phones; a
    more promising direction here might be to automatically word wrap
    docstrings and make their maximum width customizable.  That might
    require a new docstring format, however.
    
    Bumping it by 7 characters, from 65 to 72, seems a reasonable compromise
    for now.  Consideration was given to increasing it to 70 or 75, but 72
    happens to be a commonly recommended maximum line width elsewhere (see
    Fortran 66, Python docstrings, commit message recommendations, etc.),
    and we might as well do the same.
    
    This change was discussed in:
    https://lists.gnu.org/r/emacs-devel/2022-07/msg00217.html
    
    [1] "Optimal Line Length in Reading — A Literature Review", Nanavati and
        Bias, Visible Language, Vol. 39 No. 2 (2005).
        https://journals.uc.edu/index.php/vl/article/view/5765
    
    * lisp/emacs-lisp/lisp-mode.el (emacs-lisp-docstring-fill-column):
    * .dir-locals.el (fill-column, emacs-lisp-docstring-fill-column):
    Bump default to 72.
---
 .dir-locals.el               | 4 ++--
 etc/NEWS                     | 5 +++++
 lisp/emacs-lisp/lisp-mode.el | 5 +++--
 3 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/.dir-locals.el b/.dir-locals.el
index ce7febca851..1f08c882e0b 100644
--- a/.dir-locals.el
+++ b/.dir-locals.el
@@ -3,8 +3,8 @@
 
 ((nil . ((tab-width . 8)
          (sentence-end-double-space . t)
-         (fill-column . 70)
-        (emacs-lisp-docstring-fill-column . 65)
+         (fill-column . 72)
+        (emacs-lisp-docstring-fill-column . 72)
          (vc-git-annotate-switches . "-w")
          (bug-reference-url-format . "https://debbugs.gnu.org/%s";)
         (diff-add-log-use-relative-names . t)
diff --git a/etc/NEWS b/etc/NEWS
index 9bd4d0f631b..5b3d7dec8a6 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -1170,6 +1170,11 @@ Previously, the '@' character, which normally has 
'symbol' syntax,
 would combine with a following Lisp symbol and interfere with symbol
 searching.
 
+---
+*** 'emacs-lisp-docstring-fill-column' now defaults to 72.
+It was previously 65.  The new default formats documentation strings to
+fit on fewer lines without negatively impacting readability.
+
 ** CPerl mode
 
 ---
diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el
index ca207ff548d..ad0525e24be 100644
--- a/lisp/emacs-lisp/lisp-mode.el
+++ b/lisp/emacs-lisp/lisp-mode.el
@@ -1420,14 +1420,15 @@ A prefix argument specifies pretty-printing."
 
 ;;;; Lisp paragraph filling commands.
 
-(defcustom emacs-lisp-docstring-fill-column 65
+(defcustom emacs-lisp-docstring-fill-column 72
   "Value of `fill-column' to use when filling a docstring.
 Any non-integer value means do not use a different value of
 `fill-column' when filling docstrings."
   :type '(choice (integer)
                  (const :tag "Use the current `fill-column'" t))
   :safe (lambda (x) (or (eq x t) (integerp x)))
-  :group 'lisp)
+  :group 'lisp
+  :version "30.1")
 
 (defun lisp-fill-paragraph (&optional justify)
   "Like \\[fill-paragraph], but handle Emacs Lisp comments and docstrings.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]