]> git.eshelyaron.com Git - emacs.git/commitdiff
* eshell/em-cmpl.el: Undo accidental part of last commit.
authorStefan Monnier <monnier@iro.umontreal.ca>
Thu, 12 Sep 2013 20:38:35 +0000 (16:38 -0400)
committerStefan Monnier <monnier@iro.umontreal.ca>
Thu, 12 Sep 2013 20:38:35 +0000 (16:38 -0400)
lisp/eshell/em-cmpl.el

index fe7a79cf9526081ca1a61b3c6e6c5c2d65e69515..a940eb5cd367d00bf15957ac025ba442bbb9434d 100644 (file)
@@ -297,16 +297,19 @@ to writing a completion function."
   (define-key eshell-mode-map [(meta tab)] 'eshell-complete-lisp-symbol)
   (define-key eshell-mode-map [(meta control ?i)] 'eshell-complete-lisp-symbol)
   (define-key eshell-command-map [(meta ?h)] 'eshell-completion-help)
+  (define-key eshell-command-map [tab] 'pcomplete-expand-and-complete)
   (define-key eshell-command-map [(control ?i)]
     'pcomplete-expand-and-complete)
   (define-key eshell-command-map [space] 'pcomplete-expand)
   (define-key eshell-command-map [? ] 'pcomplete-expand)
-  (define-key eshell-mode-map [(control ?i)] 'pcomplete)
+  (define-key eshell-mode-map [tab] 'eshell-pcomplete)
+  (define-key eshell-mode-map [(control ?i)] 'eshell-pcomplete)
   (add-hook 'completion-at-point-functions
             #'pcomplete-completions-at-point nil t)
   ;; jww (1999-10-19): Will this work on anything but X?
-  (define-key eshell-mode-map (if (featurep 'xemacs) [iso-left-tab] [backtab])
-    'pcomplete-reverse)
+  (if (featurep 'xemacs)
+      (define-key eshell-mode-map [iso-left-tab] 'pcomplete-reverse)
+    (define-key eshell-mode-map [backtab] 'pcomplete-reverse))
   (define-key eshell-mode-map [(meta ??)] 'pcomplete-list))
 
 (defun eshell-completion-command-name ()
@@ -455,7 +458,16 @@ to writing a completion function."
                        (all-completions filename obarray 'functionp))
                   completions)))))))
 
-(define-obsolete-function-alias 'eshell-pcomplete 'completion-at-point)
+(defun eshell-pcomplete (&optional interactively)
+  "Eshell wrapper for `pcomplete'."
+  (interactive "p")
+  ;; Pretend to be pcomplete so that cycling works (bug#13293).
+  (setq this-command 'pcomplete)
+  (condition-case nil
+      (if interactively
+         (call-interactively 'pcomplete)
+       (pcomplete))
+    (text-read-only (completion-at-point)))) ; Workaround for bug#12838.
 
 (provide 'em-cmpl)