emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/emacs-24 r110918: * lisp/eshell/em-cmpl.el


From: Stefan Monnier
Subject: [Emacs-diffs] /srv/bzr/emacs/emacs-24 r110918: * lisp/eshell/em-cmpl.el (eshell-pcomplete): Refine fix for bug#12838:
Date: Mon, 19 Nov 2012 14:22:07 -0500
User-agent: Bazaar (2.5.0)

------------------------------------------------------------
revno: 110918
fixes bug: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=12838
committer: Stefan Monnier <address@hidden>
branch nick: emacs-24
timestamp: Mon 2012-11-19 14:22:07 -0500
message:
  * lisp/eshell/em-cmpl.el (eshell-pcomplete): Refine fix for bug#12838:
  Fallback on completion-at-point rather than
  pcomplete-expand-and-complete, and only if pcomplete actually failed.
  (eshell-cmpl-initialize): Setup completion-at-point.
  * lisp/pcomplete.el (pcomplete--entries): Obey pcomplete-ignore-case.
modified:
  lisp/ChangeLog
  lisp/eshell/em-cmpl.el
  lisp/pcomplete.el
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2012-11-19 17:02:20 +0000
+++ b/lisp/ChangeLog    2012-11-19 19:22:07 +0000
@@ -1,5 +1,12 @@
 2012-11-19  Stefan Monnier  <address@hidden>
 
+       * eshell/em-cmpl.el (eshell-pcomplete): Refine fix for bug#12838:
+       Fallback on completion-at-point rather than
+       pcomplete-expand-and-complete, and only if pcomplete actually failed.
+       (eshell-cmpl-initialize): Setup completion-at-point.
+
+       * pcomplete.el (pcomplete--entries): Obey pcomplete-ignore-case.
+
        * emacs-lisp/ert.el (ert--expand-should-1): Adapt to cl-lib.
 
 2012-11-19  Michael Albinus  <address@hidden>

=== modified file 'lisp/eshell/em-cmpl.el'
--- a/lisp/eshell/em-cmpl.el    2012-11-15 07:59:46 +0000
+++ b/lisp/eshell/em-cmpl.el    2012-11-19 19:22:07 +0000
@@ -297,6 +297,8 @@
   (define-key eshell-command-map [? ] 'pcomplete-expand)
   (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?
   (if (featurep 'xemacs)
       (define-key eshell-mode-map [iso-left-tab] 'pcomplete-reverse)
@@ -452,9 +454,9 @@
 (defun eshell-pcomplete ()
   "Eshell wrapper for `pcomplete'."
   (interactive)
-  (if eshell-cmpl-ignore-case
-      (pcomplete-expand-and-complete)  ; hack workaround for bug#12838
-    (pcomplete)))
+  (condition-case nil
+      (pcomplete)
+    (text-read-only (completion-at-point)))) ; Workaround for bug#12838.
 
 (provide 'em-cmpl)
 

=== modified file 'lisp/pcomplete.el'
--- a/lisp/pcomplete.el 2012-09-28 16:02:31 +0000
+++ b/lisp/pcomplete.el 2012-11-19 19:22:07 +0000
@@ -833,7 +833,8 @@
                       . ,(lambda (comps)
                            (sort comps pcomplete-compare-entry-function)))
                      ,@(cdr (completion-file-name-table s p a)))
-        (let ((completion-ignored-extensions nil))
+        (let ((completion-ignored-extensions nil)
+             (completion-ignore-case pcomplete-ignore-case))
           (completion-table-with-predicate
            #'comint-completion-file-name-table pred 'strict s p a))))))
 


reply via email to

[Prev in Thread] Current Thread [Next in Thread]