Mercurial > emacs
changeset 87395:0bcb1aa03dad
(c-indent-line-or-region):
Pass prefix arg to `c-indent-command'. Use `use-region-p'.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Tue, 25 Dec 2007 22:14:07 +0000 |
parents | 06a2cf746b9d |
children | 1073cad4beee |
files | lisp/progmodes/cc-cmds.el |
diffstat | 1 files changed, 10 insertions(+), 9 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/progmodes/cc-cmds.el Tue Dec 25 22:12:56 2007 +0000 +++ b/lisp/progmodes/cc-cmds.el Tue Dec 25 22:14:07 2007 +0000 @@ -3069,16 +3069,17 @@ ;; compiled, e.g. in the menus. (c-region-is-active-p)) -(defun c-indent-line-or-region () - "When the region is active, indent it syntactically. Otherwise -indent the current line syntactically." - ;; Emacs has a variable called mark-active, XEmacs uses region-active-p - (interactive) - (if (and transient-mark-mode mark-active - (not (eq (region-beginning) (region-end)))) +(defun c-indent-line-or-region (&optional arg region) + "Indent active region, current line, or block starting on this line. +In Transient Mark mode, when the region is active, reindent the region. +Othewise, with a prefix argument, rigidly reindent the expression +starting on the current line. +Otherwise reindent just the current line." + (interactive + (list current-prefix-arg (use-region-p))) + (if region (c-indent-region (region-beginning) (region-end)) - (c-indent-line))) - + (c-indent-command arg))) ;; for progress reporting (defvar c-progress-info nil)