From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: eshell and after-change-functions Date: Wed, 21 Jul 2010 17:49:41 +0200 Message-ID: References: <27611_1279665215_ZZh045m5ysdni.00_1279665214.3039.14.camel@steed.robot-madness> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1279727411 2884 80.91.229.12 (21 Jul 2010 15:50:11 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Wed, 21 Jul 2010 15:50:11 +0000 (UTC) Cc: John Wiegley , emacs-devel@gnu.org To: Jan Moringen Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Jul 21 17:50:07 2010 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.69) (envelope-from ) id 1ObbYc-0000dU-Ih for ged-emacs-devel@m.gmane.org; Wed, 21 Jul 2010 17:50:06 +0200 Original-Received: from localhost ([127.0.0.1]:33994 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1ObbYc-00073O-72 for ged-emacs-devel@m.gmane.org; Wed, 21 Jul 2010 11:50:06 -0400 Original-Received: from [140.186.70.92] (port=60986 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1ObbYW-000735-Ch for emacs-devel@gnu.org; Wed, 21 Jul 2010 11:50:01 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1ObbYV-00062T-5W for emacs-devel@gnu.org; Wed, 21 Jul 2010 11:50:00 -0400 Original-Received: from pruche.dit.umontreal.ca ([132.204.246.22]:54890) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1ObbYT-00061B-0S; Wed, 21 Jul 2010 11:49:57 -0400 Original-Received: from ceviche.home (vpn-132-204-232-164.acd.umontreal.ca [132.204.232.164]) by pruche.dit.umontreal.ca (8.14.1/8.14.1) with ESMTP id o6LFnlvP019193; Wed, 21 Jul 2010 11:49:49 -0400 Original-Received: by ceviche.home (Postfix, from userid 20848) id 2D392660D2; Wed, 21 Jul 2010 17:49:41 +0200 (CEST) In-Reply-To: <27611_1279665215_ZZh045m5ysdni.00_1279665214.3039.14.camel@steed.robot-madness> (Jan Moringen's message of "Wed, 21 Jul 2010 00:33:34 +0200") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) X-NAI-Spam-Score: 0 X-NAI-Spam-Rules: 1 Rules triggered RV3583=0 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) 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:127624 Archived-At: > The feature in question is sharing interactive buffers like comint, > slime and, well, eshell with other users. The problem is that Rudel > relies on `after-change-functions' to monitor buffer changes and > propagate them to peers, but eshell let-binds this variable to nil in > `eshell-send-input' and `eshell-output-filter'. This prevents buffer > changes performed in these functions from being propagated and > de-synchronizes the session. I cannot find a specific reason for > disabling all after-change functions in the ehsell code and was > wondering if somebody knows why this is necessary. If it is not > necessary, could this maybe be changed? Have you tried to remove the offending let-binding and see what effect it has on Eshell's behavior? The commit logs don't give any help about the reason for these bindings, and looking at the code I can't figure it out myself either, so unless John remembers why they were added, we'll be forced to just "try and pray". Stefan