Function: pp-last-sexp
pp-last-sexp is a byte-compiled function defined in pp.el.gz.
Signature
(pp-last-sexp)
Documentation
Read sexp before point. Ignore leading comment characters.
This function has :around advice: evil--preceding-sexp.
Source Code
;; Defined in /usr/src/emacs/lisp/emacs-lisp/pp.el.gz
(defun pp-last-sexp ()
"Read sexp before point. Ignore leading comment characters."
(with-syntax-table emacs-lisp-mode-syntax-table
(let ((pt (point)))
(save-excursion
(forward-sexp -1)
(read
;; If first line is commented, ignore all leading comments:
(if (save-excursion (beginning-of-line) (looking-at-p "[ \t]*;"))
(let ((exp (buffer-substring (point) pt))
(start nil))
(while (string-match "\n[ \t]*;+" exp start)
(setq start (1+ (match-beginning 0))
exp (concat (substring exp 0 start)
(substring exp (match-end 0)))))
exp)
(current-buffer)))))))