aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog4
-rw-r--r--lisp/simple.el18
2 files changed, 16 insertions, 6 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index c579642642e..0b233385eb7 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,7 @@
12013-05-16 Leo Liu <sdl.web@gmail.com>
2
3 * simple.el (prog-indent-sexp): Indent enclosing defun.
4
12013-05-15 Glenn Morris <rgm@gnu.org> 52013-05-15 Glenn Morris <rgm@gnu.org>
2 6
3 * cus-start.el (show-trailing-whitespace): Move to editing basics. 7 * cus-start.el (show-trailing-whitespace): Move to editing basics.
diff --git a/lisp/simple.el b/lisp/simple.el
index e4bde7c358c..f81b02b0acf 100644
--- a/lisp/simple.el
+++ b/lisp/simple.el
@@ -380,12 +380,18 @@ Other major modes are defined by comparison with this one."
380 map) 380 map)
381 "Keymap used for programming modes.") 381 "Keymap used for programming modes.")
382 382
383(defun prog-indent-sexp () 383(defun prog-indent-sexp (&optional defun)
384 "Indent the expression after point." 384 "Indent the expression after point.
385 (interactive) 385When interactively called with prefix, indent the enclosing defun
386 (let ((start (point)) 386instead."
387 (end (save-excursion (forward-sexp 1) (point)))) 387 (interactive "P")
388 (indent-region start end nil))) 388 (save-excursion
389 (when defun
390 (end-of-line)
391 (beginning-of-defun))
392 (let ((start (point))
393 (end (progn (forward-sexp 1) (point))))
394 (indent-region start end nil))))
389 395
390(define-derived-mode prog-mode fundamental-mode "Prog" 396(define-derived-mode prog-mode fundamental-mode "Prog"
391 "Major mode for editing programming language source code." 397 "Major mode for editing programming language source code."