From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Jan Moringen Newsgroups: gmane.emacs.devel Subject: eshell and after-change-functions Date: Wed, 21 Jul 2010 00:33:34 +0200 Message-ID: <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=UTF-8 Content-Transfer-Encoding: 7BIT X-Trace: dough.gmane.org 1279665282 11050 80.91.229.12 (20 Jul 2010 22:34:42 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Tue, 20 Jul 2010 22:34:42 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Jul 21 00:34:41 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 1ObLOb-0005uY-HM for ged-emacs-devel@m.gmane.org; Wed, 21 Jul 2010 00:34:41 +0200 Original-Received: from localhost ([127.0.0.1]:59999 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1ObLOa-00068o-Tx for ged-emacs-devel@m.gmane.org; Tue, 20 Jul 2010 18:34:40 -0400 Original-Received: from [140.186.70.92] (port=48476 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1ObLNc-0005fh-Lb for emacs-devel@gnu.org; Tue, 20 Jul 2010 18:33:41 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1ObLNb-0008SB-9t for emacs-devel@gnu.org; Tue, 20 Jul 2010 18:33:40 -0400 Original-Received: from mux1-unibi-smtp.hrz.uni-bielefeld.de ([129.70.204.65]:64015) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1ObLNb-0008RS-4z for emacs-devel@gnu.org; Tue, 20 Jul 2010 18:33:39 -0400 Original-Received: from pmxchannel-daemon.mux1-unibi-smtp.hrz.uni-bielefeld.de by mux1-unibi-smtp.hrz.uni-bielefeld.de (Sun Java(tm) System Messaging Server 6.3-6.03 (built Mar 14 2008; 32bit)) id <0L5V00I00NZZZ400@mux1-unibi-smtp.hrz.uni-bielefeld.de> for emacs-devel@gnu.org; Wed, 21 Jul 2010 00:33:35 +0200 (CEST) Original-Received: from [192.168.2.100] ([212.100.58.210]) by mux1-unibi-smtp.hrz.uni-bielefeld.de (Sun Java(tm) System Messaging Server 6.3-6.03 (built Mar 14 2008; 32bit)) with ESMTPPSA id <0L5V00HRRNZYAX40@mux1-unibi-smtp.hrz.uni-bielefeld.de> for emacs-devel@gnu.org; Wed, 21 Jul 2010 00:33:35 +0200 (CEST) X-Mailer: Evolution 2.30.2 X-EnvFrom: jan.moringen@uni-bielefeld.de X-PMX-Version: 5.5.9.395186, Antispam-Engine: 2.7.2.376379, Antispam-Data: 2010.7.20.222115, pmx9 X-Connecting-IP: 212.100.58.210 X-detected-operating-system: by eggs.gnu.org: Solaris 10 (beta) 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:127615 Archived-At: Hi, while working on a new feature for Rudel (an environment for realtime collaborative editing in Emacs, [1]), I encountered a problem that has its root cause in some eshell code, which I can't understand. 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? Thanks in advance. Kind regards, Jan [1] http://rudel.sourceforge.net