diff options
Diffstat (limited to 'lisp/indent.el')
-rw-r--r-- | lisp/indent.el | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/lisp/indent.el b/lisp/indent.el index 5c5270b07c4..285b8e2038f 100644 --- a/lisp/indent.el +++ b/lisp/indent.el @@ -83,22 +83,23 @@ This variable has no effect unless `tab-always-indent' is `complete'." (const :tag "Unless at a word, parenthesis, or punctuation." 'word-or-paren-or-punct)) :version "27.1") +(defvar indent-line-ignored-functions '(indent-relative + indent-relative-maybe + indent-relative-first-indent-point) + "Values that are ignored by `indent-according-to-mode'.") (defun indent-according-to-mode () "Indent line in proper way for current major mode. Normally, this is done by calling the function specified by the variable `indent-line-function'. However, if the value of that -variable is `indent-relative' or `indent-relative-first-indent-point', +variable is present in the `indent-line-ignored-functions' variable, handle it specially (since those functions are used for tabbing); in that case, indent by aligning to the previous non-blank line." (interactive) (save-restriction (widen) (syntax-propertize (line-end-position)) - (if (memq indent-line-function - '(indent-relative - indent-relative-maybe - indent-relative-first-indent-point)) + (if (memq indent-line-function indent-line-ignored-functions) ;; These functions are used for tabbing, but can't be used for ;; indenting. Replace with something ad-hoc. (let ((column (save-excursion @@ -249,7 +250,8 @@ It is activated by calling `indent-rigidly' interactively.") If called interactively with no prefix argument, activate a transient mode in which the indentation can be adjusted interactively by typing \\<indent-rigidly-map>\\[indent-rigidly-left], \\[indent-rigidly-right], \\[indent-rigidly-left-to-tab-stop], or \\[indent-rigidly-right-to-tab-stop]. -Typing any other key exits this mode. If `transient-mark-mode' is enabled, +Typing any other key exits this mode, and this key is then +acted upon as normally. If `transient-mark-mode' is enabled, exiting also deactivates the mark. If called from a program, or interactively with prefix ARG, @@ -523,7 +525,7 @@ From the beginning of the line, moves past the left-margin indentation, the fill-prefix, and any indentation used for centering or right-justifying the line, but does not move past any whitespace that was explicitly inserted \(such as a tab used to indent the first line of a paragraph)." - (interactive "p") + (interactive "^p") (beginning-of-line n) (skip-chars-forward " \t") ;; Skip over fill-prefix. |