summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r--lisp/emacs-lisp/pp.el5
1 files changed, 4 insertions, 1 deletions
diff --git a/lisp/emacs-lisp/pp.el b/lisp/emacs-lisp/pp.el
index b48f44545bf..26c77d6b047 100644
--- a/lisp/emacs-lisp/pp.el
+++ b/lisp/emacs-lisp/pp.el
@@ -198,7 +198,10 @@ it inserts and pretty-prints that arg at point."
;; reduce the indentation depth.
;; Similarly, we prefer to cut before a "." than after
;; it because it reduces the indentation depth.
- (skip-chars-backward " \t({[',.")
+ (while (not (zerop (skip-chars-backward " \t({[',.")))
+ (and (memq (char-before) '(?# ?s ?f))
+ (looking-back "#[sf]?" (- (point) 2))
+ (goto-char (match-beginning 0))))
(if (bolp)
;; The sexp already starts on its own line.
(progn (goto-char beg) nil)