bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#36733: 27.0.50; Eshell taking long time to enter directory after TA


From: Ivan Kozlov
Subject: bug#36733: 27.0.50; Eshell taking long time to enter directory after TAB completion
Date: Sat, 29 Feb 2020 12:02:30 +0300


29.02.2020, 10:56, "Ivan Kozlov" <kanichos@yandex.ru>:
>Maybe it is eshell that should tell the completion mode to stop when a command 
>has been entered.

Yes, it must be the way.

(defun eshell-send-input (&optional use-region queue-p no-newline)
  "Send the input received to Eshell for parsing and processing.                
                                                                            
After `eshell-last-output-end', sends all text from that marker to              
                                                                            
point as input.  Before that marker, calls `eshell-get-old-input' to            
                                                                            
retrieve old input, copies it to the end of the buffer, and sends it.           
                                                                            
                                                                                
                                                                            
If USE-REGION is non-nil, the current region (between point and mark)           
                                                                            
will be used as input.                                                          
                                                                            
                                                                                
                                                                            
If QUEUE-P is non-nil, input will be queued until the next prompt,              
                                                                            
rather than sent to the currently active process.  If no process, the           
                                                                            
input is processed immediately.                                                 
                                                                            
                                                                                
                                                                            
If NO-NEWLINE is non-nil, the input is sent without an implied final            
                                                                            
newline."
  (interactive "P")
  ;; Note that the input string does not include its terminal newline.          
                                                                            
  (let ((proc-running-p (and (eshell-interactive-process)
                             (not queue-p)))
        (inhibit-point-motion-hooks t)
        (inhibit-modification-hooks t))
+    (completion-in-region-mode -1)
    (unless (and proc-running-p
                 (not (eq (process-status
                           (eshell-interactive-process))
                          'run)))

The bug is gone. With my two changes, all is good.





reply via email to

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