unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#21254: 24.5; python.el: Docstring fill-paragraph not working with style pep-257-nn
@ 2015-08-13 11:52 Holger Schmidt
  2019-09-26 12:04 ` Stefan Kangas
  2023-02-27 10:58 ` Daniel Martín via Bug reports for GNU Emacs, the Swiss army knife of text editors
  0 siblings, 2 replies; 3+ messages in thread
From: Holger Schmidt @ 2015-08-13 11:52 UTC (permalink / raw)
  To: 21254

I write a docstring of a class method in a buffer with Python mode.
python-fill-docstring-style is set to 'pep-257-nn.  The
cursor is at the end of the docstring after the three quotes.
fill-paragraph does nothing, but it should format the docstring.

I move the cursor inside the docstring.  fill-paragraph formats the
docstring with four errors: There is no newline after the first
sentence, the first line is longer (72) than fill-column (70), the
second line and following lines are not indented (but start at column 0),
there is no newline at the end.  A second fill-paragraph adds the
missing newline at the end.

Example (the docstring is one long line):

class MyClass(object):
    def __init__(self):
        """Class initialization.  According to PEP 257 there should be a newline after the first sentence.  Following sentences are indented by 8 spaces in this case.  With python-fill-docstring-style set to 'pep-257-nn there should be a newline at the end."""
        pass

This should be formatted like this:

class MyClass(object):
    def __init__(self):
        """Class initialization.

        According to PEP 257 there should be a newline after the first
        sentence.  Following sentences are indented by 8 spaces in
        this case.  With python-fill-docstring-style set to
        'pep-257-nn there should be a newline at the end.
        """
        pass

But the result is this (fill-paragraph (M-q) inside docstring):

class MyClass(object):
    def __init__(self):
        """Class initialization.  According to PEP 257 there should be a
newline after the first sentence.  Following sentences are indented by
8 spaces in this case.  With python-fill-docstring-style set to
'pep-257-nn there should be a newline at the end."""
        pass


In GNU Emacs 24.5.1 (x86_64-unknown-linux-gnu, GTK+ Version 2.10.4)
 of 2015-08-13 on l53
Windowing system distributor `The X.Org Foundation', version 11.0.70101000
System Description:	CentOS release 5.11 (Final)

Configured using:
 `configure --prefix=/local/emacs-24.5'

Important settings:
  value of $LC_ALL: en_US.UTF-8
  value of $LANG: C
  value of $XMODIFIERS: @im=none
  locale-coding-system: utf-8-unix

Major mode: Python

Minor modes in effect:
  flyspell-mode: t
  show-paren-mode: t
  fci-mode: t
  flymake-mode: t
  tabbar-mwheel-mode: t
  tabbar-mode: t
  which-function-mode: t
  global-auto-revert-mode: t
  delete-selection-mode: t
  tooltip-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent messages:
Starting new Ispell process /usr/bin/aspell with default dictionary...
9: E901 TokenError: EOF in multi-line string [5 times]
Mark set
Auto-saving...
9: E901 TokenError: EOF in multi-line string [9 times]
End of buffer
Saving file /home/schmidth/abc.py...
Wrote /home/schmidth/abc.py
80: E501 line too long (260 > 79 characters) [3 times]
Undo! [2 times]

Load-path shadows:
/home/schmidth/main/trunk/emacs/site-lisp/css-mode hides /local/emacs-24.5/share/emacs/24.5/lisp/textmodes/css-mode
/home/schmidth/main/trunk/emacs/site-lisp/verilog-mode hides /local/emacs-24.5/share/emacs/24.5/lisp/progmodes/verilog-mode
/home/schmidth/main/trunk/emacs/site-lisp/flymake hides /local/emacs-24.5/share/emacs/24.5/lisp/progmodes/flymake

Features:
(shadow sort mail-extr emacsbug message format-spec rfc822 mailabbrev
gmm-utils mailheader sendmail add-log vc-dispatcher vc-svn flyspell
ispell python json disp-table paren cus-start cus-load
fill-column-indicator edmacro kmacro flymake compile comint ansi-color
mediawiki derived url-cache cl-macs cl gv ring mm-url gnus gnus-ems
nnheader mail-utils wid-edit mml easymenu mml-sec mm-decode mm-bodies
mm-encode url-http tls url url-proxy url-privacy url-expand url-methods
url-history mailcap url-auth mail-parse rfc2231 rfc2047 rfc2045
ietf-drums url-cookie url-domsuf url-util url-parse auth-source eieio
byte-opt bytecomp byte-compile cl-extra cl-loaddefs cl-lib cconv
eieio-core gnus-util mm-util help-fns mail-prsvr password-cache url-gw
url-vars tabbar easy-mmode redo+ which-func imenu autorevert filenotify
delsel xemacs-theme time-date tooltip electric uniquify ediff-hook
vc-hooks lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image
regexp-opt fringe tabulated-list newcomment lisp-mode prog-mode register
page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock
font-lock syntax facemenu font-core frame cham georgian utf-8-lang
misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew
greek romanian slovak czech european ethiopic indian cyrillic chinese
case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer nadvice
loaddefs button faces cus-face macroexp files text-properties overlay
sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote make-network-process dbusbind
dynamic-setting system-font-setting font-render-setting move-toolbar gtk
x-toolkit x multi-tty emacs)

Memory information:
((conses 16 156269 7595)
 (symbols 48 25223 0)
 (miscs 40 340 817)
 (strings 32 29661 3447)
 (string-bytes 1 881207)
 (vectors 16 15256)
 (vector-slots 8 452487 8536)
 (floats 8 105 248)
 (intervals 56 377 31)
 (buffers 960 14)
 (heap 1024 423219 13302))






^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2023-02-27 10:58 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-08-13 11:52 bug#21254: 24.5; python.el: Docstring fill-paragraph not working with style pep-257-nn Holger Schmidt
2019-09-26 12:04 ` Stefan Kangas
2023-02-27 10:58 ` Daniel Martín via Bug reports for GNU Emacs, the Swiss army knife of text editors

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).