\f
* Editing Changes in Emacs 23.1
+** TAB now indents the region if the region is active and
+`transient-mark-mode' is turned on.
+
** C-z now invokes `suspend-frame', C-x C-c now invokes
`save-buffers-kill-terminal'.
+2007-09-22 Dan Nicolaescu <dann@ics.uci.edu>
+
+ * indent.el (indent-for-tab-command): Indent the region if
+ transient-mark-mode and the region is active.
+
2007-09-21 Francesco Potort\e,Al\e(B <pot@gnu.org>
* progmodes/octave-inf.el (inferior-octave-mode): Use add-hook to
(funcall indent-line-function)))
(defun indent-for-tab-command (&optional arg)
- "Indent line in proper way for current major mode or insert a tab.
+ "Indent line or region in proper way for current major mode or insert a tab.
Depending on `tab-always-indent', either insert a tab or indent.
If initial point was within line's indentation, position after
the indentation. Else stay at same point in text.
-The function actually called to indent is determined by the value of
+If `transient-mark-mode' is turned on the region is active,
+indent the region.
+The function actually called to indent the line is determined by the value of
`indent-line-function'."
(interactive "P")
(cond
;; indenting, so we can't pass them to indent-according-to-mode.
((memq indent-line-function '(indent-relative indent-relative-maybe))
(funcall indent-line-function))
- (t ;; The normal case.
+ ;; The region is active, indent it.
+ ((and transient-mark-mode mark-active
+ (not (eq (region-beginning) (region-end))))
+ (indent-region (region-beginning) (region-end)))
+ ;; Indent the line.
+ (t
(indent-according-to-mode))))
(defun insert-tab (&optional arg)