diff options
| author | Dmitry Gutov | 2017-12-20 01:42:49 +0200 |
|---|---|---|
| committer | Dmitry Gutov | 2017-12-20 01:42:49 +0200 |
| commit | b9fbc03b862413bfee2728b1760f959bfc912e56 (patch) | |
| tree | 8c4cdd7fcf06dea9e91fa76ab5228a250c7ec30b | |
| parent | 446faf3efa0f2d9ccdaf746348c3173b3eb7be2f (diff) | |
| download | emacs-widen-less.tar.gz emacs-widen-less.zip | |
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.el | 11 |
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." | |||
| 142 | (old-indent (current-indentation))) | 142 | (old-indent (current-indentation))) |
| 143 | 143 | ||
| 144 | ;; Indent the line. | 144 | ;; Indent the line. |
| 145 | (or (not (eq (funcall indent-line-function) 'noindent)) | 145 | (or (not (eq (indent--funcall-widened indent-line-function) 'noindent)) |
| 146 | (indent--default-inside-comment) | 146 | (indent--default-inside-comment) |
| 147 | (when (or (<= (current-column) (current-indentation)) | 147 | (when (or (<= (current-column) (current-indentation)) |
| 148 | (not (eq tab-always-indent 'complete))) | 148 | (not (eq tab-always-indent 'complete))) |
| 149 | (save-restriction | 149 | (indent--funcall-widened (default-value 'indent-line-function)))) |
| 150 | (widen) | ||
| 151 | (funcall (default-value 'indent-line-function))))) | ||
| 152 | 150 | ||
| 153 | (cond | 151 | (cond |
| 154 | ;; If the text was already indented right, try completion. | 152 | ;; If the text was already indented right, try completion. |
| @@ -170,6 +168,11 @@ prefix argument is ignored." | |||
| 170 | (< (point) end-marker)) | 168 | (< (point) end-marker)) |
| 171 | (indent-rigidly (point) end-marker indentation-change)))))))))) | 169 | (indent-rigidly (point) end-marker indentation-change)))))))))) |
| 172 | 170 | ||
| 171 | (defun indent--funcall-widened (func) | ||
| 172 | (save-restriction | ||
| 173 | (widen) | ||
| 174 | (funcall func))) | ||
| 175 | |||
| 173 | (defun insert-tab (&optional arg) | 176 | (defun insert-tab (&optional arg) |
| 174 | (let ((count (prefix-numeric-value arg))) | 177 | (let ((count (prefix-numeric-value arg))) |
| 175 | (if (and abbrev-mode | 178 | (if (and abbrev-mode |