emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r112599: * simple.el (prog-indent-sex


From: Leo Liu
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r112599: * simple.el (prog-indent-sexp): Indent enclosing defun.
Date: Thu, 16 May 2013 11:41:52 +0800
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 112599
committer: Leo Liu <address@hidden>
branch nick: trunk
timestamp: Thu 2013-05-16 11:41:52 +0800
message:
  * simple.el (prog-indent-sexp): Indent enclosing defun.
modified:
  lisp/ChangeLog
  lisp/simple.el
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2013-05-15 23:55:41 +0000
+++ b/lisp/ChangeLog    2013-05-16 03:41:52 +0000
@@ -1,3 +1,7 @@
+2013-05-16  Leo Liu  <address@hidden>
+
+       * simple.el (prog-indent-sexp): Indent enclosing defun.
+
 2013-05-15  Glenn Morris  <address@hidden>
 
        * cus-start.el (show-trailing-whitespace): Move to editing basics.

=== modified file 'lisp/simple.el'
--- a/lisp/simple.el    2013-05-08 18:05:40 +0000
+++ b/lisp/simple.el    2013-05-16 03:41:52 +0000
@@ -380,12 +380,18 @@
     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."


reply via email to

[Prev in Thread] Current Thread [Next in Thread]