diff --git a/lisp/indent.el b/lisp/indent.el index 0f6c68d..02ec210 100644 --- a/lisp/indent.el +++ b/lisp/indent.el @@ -593,18 +593,18 @@ indent-relative ;; Is start-column inside a tab on this line? (if (> (current-column) start-column) (backward-char 1)) - (or (looking-at "[ \t]") - unindented-ok - (skip-chars-forward "^ \t" end)) + (unless (looking-at "[ \t]") + (skip-chars-forward "^ \t" end)) (skip-chars-forward " \t" end) (or (= (point) end) (setq indent (current-column)))))) - (if indent - (let ((opoint (point-marker))) - (indent-to indent 0) - (if (> opoint (point)) - (goto-char opoint)) - (move-marker opoint nil)) - (tab-to-tab-stop)))) + (cond (indent + (let ((opoint (point-marker))) + (indent-to indent 0) + (if (> opoint (point)) + (goto-char opoint)) + (move-marker opoint nil))) + (unindented-ok nil) + (t (tab-to-tab-stop))))) (defcustom tab-stop-list nil "List of tab stop positions used by `tab-to-tab-stop'.