# HG changeset patch # User Stefan Monnier # Date 1047683480 0 # Node ID f94aa8667875576dfc2329d6aaf96391810c7e1a # Parent d2526c7c1f0d6c400c43c60201d0b9fa0aa87287 (indent-for-tab-command): If tab-always-indent is non-nil and the user hits TAB a second time, just insert a tab. diff -r d2526c7c1f0d -r f94aa8667875 lisp/indent.el --- a/lisp/indent.el Fri Mar 14 23:05:10 2003 +0000 +++ b/lisp/indent.el Fri Mar 14 23:11:20 2003 +0000 @@ -49,7 +49,7 @@ "*Controls the operation of the TAB key. If t, hitting TAB always just indents the current line. If nil, hitting TAB indents the current line if point is at the left margin - or in the line's indentation, otherwise it insert a `real' tab character." + or in the line's indentation, otherwise it insert a \"real\" tab character." :group 'indent :type '(choice (const nil) (const t) (const always))) @@ -87,7 +87,8 @@ ;; so we force it to always insert a tab here. (eq indent-line-function 'indent-to-left-margin) (and (not tab-always-indent) - (> (current-column) (current-indentation)))) + (or (> (current-column) (current-indentation)) + (eq this-command last-command)))) (insert-tab arg)) ;; Those functions are meant specifically for tabbing and not for ;; indenting, so we can't pass them to indent-according-to-mode. @@ -172,7 +173,7 @@ ((and force (< cc lm)) (indent-to-left-margin))))) -;; This is the default indent-line-function, +;; This used to be the default indent-line-function, ;; used in Fundamental Mode, Text Mode, etc. (defun indent-to-left-margin () "Indent current line to the column given by `current-left-margin'."