diff --git a/lisp/eshell/em-cmpl.el b/lisp/eshell/em-cmpl.el index cbfe0b8154..2352dac7e7 100644 --- a/lisp/eshell/em-cmpl.el +++ b/lisp/eshell/em-cmpl.el @@ -377,8 +377,12 @@ eshell-complete-parse-arguments (cl-assert (eq (car result) 'quote)) (cadr result)) arg))) - (if (numberp val) - (setq val (number-to-string val))) + (cond ((numberp val) + (setq val (number-to-string val))) + ;; expand .../ etc that only eshell understands to + ;; standard ../../ + ((string-match "\\.\\.\\.+/" val) + (setq val (eshell-expand-multiple-dots val)))) (or val ""))) args) posns)))