Moja instalacja to Emacs 24.4.1, Linux, kod źródłowy Pythona otwarty w buforze, tryb Pythona 0.24.4 (dostarczany z Emacsem), kolumna wypełnienia ustawiony na 70, styl python-fill-docstring ustawiony na zero. Nazywam fill-paragraph (M-q) z wewnątrz metody docstring metody klasy, aby ponownie sformatować docstring tak, że żadna linia nie będzie dłuższa niż 70 znaków. Ale pierwsza linia docstrukcji jest zawsze dłuższa. Wygląda na to, że wcięcie (8 spacji) nie jest uwzględniane w obliczaniu długości linii. Co mogę zrobić, aby ograniczyć długość linii do 70? Czy powinienem zamiast tego używać python-mode.el?Jak ograniczyć pierwszy wiersz w doctrings Pythona do maksymalnej długości wiersza podczas wypełniania akapitu w Emacs?
przykład:
class MyClass(object):
def my_method(self):
"""Some long line with more than 70 characters in the docstring. Some more text."""
po m-Q, w docstring wygląda następująco. Pierwsza linia metoda docstring kończy się w kolumnie 78 (i druga linia nie jest wcięty, ale to inna kwestia):
class MyClass(object):
def my_method(self):
"""Some long line with more than 70 characters in the docstring. Some
more text."""
Ale o długości linii 70 powinno być tak:
class MyClass(object):
def my_method(self):
"""Some long line with more than 70 characters in the
docstring. Some more text."""
Ten sam problem z trybem Emacs 24.5.1 i Python 0.24.5. Istnieje zgłoszenie błędu: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=20860. – holger