diff options
author | Eli Zaretskii <eliz@gnu.org> | 2013-05-16 12:58:56 +0300 |
---|---|---|
committer | Eli Zaretskii <eliz@gnu.org> | 2013-05-16 12:58:56 +0300 |
commit | a9519e2685d19b13ce4e3e1ba13f97569013627e (patch) | |
tree | 6a9e0e35514c400749f23c891e9a95577fb9bfc1 /lisp/simple.el | |
parent | 3946d31b7bcf2a7dceacb86598823360f457cd19 (diff) | |
parent | 2d4bf34b5b83b3728b2fb18a72536f3e14afcf34 (diff) | |
download | emacs-a9519e2685d19b13ce4e3e1ba13f97569013627e.tar.gz emacs-a9519e2685d19b13ce4e3e1ba13f97569013627e.tar.bz2 emacs-a9519e2685d19b13ce4e3e1ba13f97569013627e.zip |
Merge from trunk.
Diffstat (limited to 'lisp/simple.el')
-rw-r--r-- | lisp/simple.el | 18 |
1 files changed, 12 insertions, 6 deletions
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." map) "Keymap used for programming modes.") -(defun prog-indent-sexp () - "Indent the expression after point." - (interactive) - (let ((start (point)) - (end (save-excursion (forward-sexp 1) (point)))) - (indent-region start end nil))) +(defun prog-indent-sexp (&optional defun) + "Indent the expression after point. +When interactively called with prefix, indent the enclosing defun +instead." + (interactive "P") + (save-excursion + (when defun + (end-of-line) + (beginning-of-defun)) + (let ((start (point)) + (end (progn (forward-sexp 1) (point)))) + (indent-region start end nil)))) (define-derived-mode prog-mode fundamental-mode "Prog" "Major mode for editing programming language source code." |