From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: John Wiegley Newsgroups: gmane.emacs.devel Subject: Re: amd@gnu.org: eshell and external commands Date: Thu, 09 Aug 2007 12:44:56 -0600 Message-ID: References: <87zm11iqlv.fsf@stupidchicken.com> <873aysr987.fsf@stupidchicken.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1186685313 32625 80.91.229.12 (9 Aug 2007 18:48:33 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Thu, 9 Aug 2007 18:48:33 +0000 (UTC) Cc: "Alfred M. Szmidt" , rms@gnu.org, emacs-devel@gnu.org To: Chong Yidong Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Aug 09 20:48:31 2007 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1IJD3f-0001ER-7H for ged-emacs-devel@m.gmane.org; Thu, 09 Aug 2007 20:48:31 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IJD3e-0003Nu-O7 for ged-emacs-devel@m.gmane.org; Thu, 09 Aug 2007 14:48:30 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IJD3b-0003Np-Ri for emacs-devel@gnu.org; Thu, 09 Aug 2007 14:48:27 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IJD3Y-0003NV-GL for emacs-devel@gnu.org; Thu, 09 Aug 2007 14:48:26 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IJD3Y-0003NN-AY for emacs-devel@gnu.org; Thu, 09 Aug 2007 14:48:24 -0400 Original-Received: from fyodor.hcoop.net ([64.20.38.170]) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IJD3Q-00061m-N5; Thu, 09 Aug 2007 14:48:16 -0400 Original-Received: from 71-214-59-49.clsp.qwest.net ([71.214.59.49] helo=Hermes.localhost) by fyodor.hcoop.net with esmtpsa (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.63) (envelope-from ) id 1IJD4l-00006z-6u; Thu, 09 Aug 2007 14:49:39 -0400 Original-Received: by Hermes.localhost (Postfix, from userid 501) id 8083136C5B7; Thu, 9 Aug 2007 12:44:57 -0600 (MDT) In-Reply-To: <873aysr987.fsf@stupidchicken.com> (Chong Yidong's message of "Thu\, 09 Aug 2007 11\:58\:00 -0400") User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.1 (darwin) X-Detected-Kernel: Linux 2.4-2.6 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:76263 Archived-At: Chong Yidong writes: > I thought so at first, but after trying out, I don't notice any observable > slowdown for using eshell-eval-command for the eshell/* lisp commands. This is likely due to the speed of your machine. When I was using my old Pentium III laptop, the slowdown was so exaggerated that I finally sought the cause -- which resulted in this fix. > I don't know how to hack the code to implement the deferment behavior for > "fallback to external programs" commands. Do you have an idea how to do it? You know, something you could do is to traverse the Lisp tree at the point of decision looking for the symbol `eshell-external-command'. If it's found, use eshell-eval-command rather than eval. That way, the slowdown is only suffered for external commands, which are going to be slow anyway because of the necessary invocation of an external process. John