summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Gutov <dgutov@yandex.ru>2017-12-20 01:42:49 +0200
committerDmitry Gutov <dgutov@yandex.ru>2017-12-20 01:42:49 +0200
commitb9fbc03b862413bfee2728b1760f959bfc912e56 (patch)
tree8c4cdd7fcf06dea9e91fa76ab5228a250c7ec30b
parent446faf3efa0f2d9ccdaf746348c3173b3eb7be2f (diff)
downloademacs-widen-less.tar.gz
Widen in indent-for-tab-command in the normal case, toowiden-less
Fixing this obvious omission. * lisp/indent.el (indent--funcall-widened): New function. (indent-for-tab-command): Use it.
-rw-r--r--lisp/indent.el11
1 files changed, 7 insertions, 4 deletions
diff --git a/lisp/indent.el b/lisp/indent.el
index ccf0e99c08b..400280f615a 100644
--- a/lisp/indent.el
+++ b/lisp/indent.el
@@ -142,13 +142,11 @@ prefix argument is ignored."
(old-indent (current-indentation)))
;; Indent the line.
- (or (not (eq (funcall indent-line-function) 'noindent))
+ (or (not (eq (indent--funcall-widened indent-line-function) 'noindent))
(indent--default-inside-comment)
(when (or (<= (current-column) (current-indentation))
(not (eq tab-always-indent 'complete)))
- (save-restriction
- (widen)
- (funcall (default-value 'indent-line-function)))))
+ (indent--funcall-widened (default-value 'indent-line-function))))
(cond
;; If the text was already indented right, try completion.
@@ -170,6 +168,11 @@ prefix argument is ignored."
(< (point) end-marker))
(indent-rigidly (point) end-marker indentation-change))))))))))
+(defun indent--funcall-widened (func)
+ (save-restriction
+ (widen)
+ (funcall func)))
+
(defun insert-tab (&optional arg)
(let ((count (prefix-numeric-value arg)))
(if (and abbrev-mode