summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2012-12-31 13:28:33 -0800
committerGlenn Morris <rgm@gnu.org>2012-12-31 13:28:33 -0800
commit5ee1772e2c5cff56ff1825b79acdd67dc142bf49 (patch)
tree344889f1b112f4c6ce23af684a99396e542f8b5c
parent4cddca3070934602b0156a5cc260c633f210599c (diff)
downloademacs-5ee1772e2c5cff56ff1825b79acdd67dc142bf49.tar.gz
* eshell/em-cmpl.el (eshell-pcomplete): More thoroughly imitate pcomplete.
Fixes: debbugs:13293
-rw-r--r--lisp/ChangeLog3
-rw-r--r--lisp/eshell/em-cmpl.el10
2 files changed, 10 insertions, 3 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 2a7fc8f7fd4..49496efec69 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,5 +1,8 @@
2012-12-31 Glenn Morris <rgm@gnu.org>
+ * eshell/em-cmpl.el (eshell-pcomplete):
+ More thoroughly imitate pcomplete. (Bug#13293)
+
* files.el (parse-colon-path): Doc fix. (Bug#12351)
Return nil for empty path elements. (Bug#13296)
diff --git a/lisp/eshell/em-cmpl.el b/lisp/eshell/em-cmpl.el
index b4c86e39e86..4705adbae19 100644
--- a/lisp/eshell/em-cmpl.el
+++ b/lisp/eshell/em-cmpl.el
@@ -451,11 +451,15 @@ to writing a completion function."
(all-completions filename obarray 'functionp))
completions)))))))
-(defun eshell-pcomplete ()
+(defun eshell-pcomplete (&optional interactively)
"Eshell wrapper for `pcomplete'."
- (interactive)
+ (interactive "p")
+ ;; Pretend to be pcomplete so that cycling works (bug#13293).
+ (setq this-command 'pcomplete)
(condition-case nil
- (pcomplete)
+ (if interactively
+ (call-interactively 'pcomplete)
+ (pcomplete))
(text-read-only (completion-at-point)))) ; Workaround for bug#12838.
(provide 'em-cmpl)