Mercurial > cpython-lru_cache-weakref
diff Misc/python-mode.el @ 8628:aea6841ab898 legacy-trunk
(py-comment-indent-function): A replacement for
comment-indent-function's default lambda value (in simple.el), this
version finally kills this nit: auto-filling a comment that starts in
column zero with filladapt turned off would cascade the #'s to the
right.
Now auto-filling seems to work with or without filladapt, and with the
comment starting in any column.
(python-mode): Set comment-indent-function.
| author | Barry Warsaw <barry@python.org> |
|---|---|
| date | Tue, 07 Jul 1998 15:11:24 +0000 |
| parents | 822e0812f20c |
| children | 239492b34f68 |
line wrap: on
line diff
--- a/Misc/python-mode.el Tue Jul 07 14:58:39 1998 +0000 +++ b/Misc/python-mode.el Tue Jul 07 15:11:24 1998 +0000 @@ -979,24 +979,26 @@ (make-local-variable 'comment-end) (make-local-variable 'comment-start-skip) (make-local-variable 'comment-column) + (make-local-variable 'comment-indent-function) (make-local-variable 'indent-region-function) (make-local-variable 'indent-line-function) (make-local-variable 'add-log-current-defun-function) ;; (set-syntax-table py-mode-syntax-table) - (setq major-mode 'python-mode - mode-name "Python" - local-abbrev-table python-mode-abbrev-table - font-lock-defaults '(python-font-lock-keywords) - paragraph-separate "^[ \t]*$" - paragraph-start "^[ \t]*$" - require-final-newline t - comment-start "# " - comment-end "" - comment-start-skip "# *" - comment-column 40 - indent-region-function 'py-indent-region - indent-line-function 'py-indent-line + (setq major-mode 'python-mode + mode-name "Python" + local-abbrev-table python-mode-abbrev-table + font-lock-defaults '(python-font-lock-keywords) + paragraph-separate "^[ \t]*$" + paragraph-start "^[ \t]*$" + require-final-newline t + comment-start "# " + comment-end "" + comment-start-skip "# *" + comment-column 40 + comment-indent-function 'py-comment-indent-function + indent-region-function 'py-indent-region + indent-line-function 'py-indent-line ;; tell add-log.el how to find the current function/method/variable add-log-current-defun-function 'py-current-defun ) @@ -1884,6 +1886,23 @@ py-indent-offset)) )) +(defun py-comment-indent-function () + ;; A better value for comment-indent-function in Python source, this + ;; actually works when filladapt is turned off. Without this, in + ;; that case, comments which start in column zero cascade one + ;; character to the right + (save-excursion + (beginning-of-line) + (let ((eol (py-point 'eol))) + (and comment-start-skip + (re-search-forward comment-start-skip eol t) + (setq eol (match-beginning 0))) + (goto-char eol) + (skip-chars-backward " \t") + (max comment-column (+ (current-column) (if (bolp) 0 1))) + ))) + + (defun py-shift-region (start end count) (save-excursion (goto-char end) (beginning-of-line) (setq end (point))
