164 |
(interactive (list (prefix-numeric-value current-prefix-arg) t)) |
(interactive (list (prefix-numeric-value current-prefix-arg) t)) |
165 |
(beginning-of-line n) |
(beginning-of-line n) |
166 |
(skip-chars-forward " \t") |
(skip-chars-forward " \t") |
167 |
(let ((lm (current-left-margin)) |
(if (minibufferp (current-buffer)) |
168 |
(cc (current-column))) |
(if (save-excursion (beginning-of-line) (bobp)) |
169 |
(cond ((> cc lm) |
(goto-char (minibuffer-prompt-end)) |
170 |
(if (> (move-to-column lm force) lm) |
(beginning-of-line)) |
171 |
;; If lm is in a tab and we are not forcing, move before tab |
(let ((lm (current-left-margin)) |
172 |
(backward-char 1))) |
(cc (current-column))) |
173 |
((and force (< cc lm)) |
(cond ((> cc lm) |
174 |
(indent-to-left-margin))))) |
(if (> (move-to-column lm force) lm) |
175 |
|
;; If lm is in a tab and we are not forcing, move before tab |
176 |
|
(backward-char 1))) |
177 |
|
((and force (< cc lm)) |
178 |
|
(indent-to-left-margin)))))) |
179 |
|
|
180 |
;; This used to be the default indent-line-function, |
;; This used to be the default indent-line-function, |
181 |
;; used in Fundamental Mode, Text Mode, etc. |
;; used in Fundamental Mode, Text Mode, etc. |