From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: ttn@gnu.org Newsgroups: gmane.emacs.devel Subject: Re: PATCH: ewoc.el to permit node representation abutment Date: Fri, 05 May 2006 17:43:18 -0400 Message-ID: References: <8764kkty67.fsf-monnier+emacs@gnu.org> Reply-To: ttn@gnu.org NNTP-Posting-Host: main.gmane.org X-Trace: sea.gmane.org 1146865413 31617 80.91.229.2 (5 May 2006 21:43:33 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Fri, 5 May 2006 21:43:33 +0000 (UTC) Cc: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri May 05 23:43:32 2006 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1Fc85D-0002Op-Gj for ged-emacs-devel@m.gmane.org; Fri, 05 May 2006 23:43:31 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Fc85D-0000sj-4I for ged-emacs-devel@m.gmane.org; Fri, 05 May 2006 17:43:31 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Fc851-0000sH-Uy for emacs-devel@gnu.org; Fri, 05 May 2006 17:43:19 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Fc851-0000s3-95 for emacs-devel@gnu.org; Fri, 05 May 2006 17:43:19 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Fc851-0000s0-3w for emacs-devel@gnu.org; Fri, 05 May 2006 17:43:19 -0400 Original-Received: from [67.59.132.6] (helo=mail.agora-net.com) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA:32) (Exim 4.52) id 1Fc85G-0000SH-14 for emacs-devel@gnu.org; Fri, 05 May 2006 17:43:34 -0400 Original-Received: from ttn by mail.agora-net.com with local (Exim 4.50) id 1Fc850-000129-4i; Fri, 05 May 2006 17:43:18 -0400 Original-To: monnier@iro.umontreal.ca In-reply-to: <8764kkty67.fsf-monnier+emacs@gnu.org> (message from Stefan Monnier on Fri, 05 May 2006 09:20:08 -0400) 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:53977 Archived-At: From: Stefan Monnier Date: Fri, 05 May 2006 09:20:08 -0400 Cool. I assume you tested it with the most important case: when the pretty-printer returns the empty string (so you can temporarily hide elements, which is the main reason why I wanted this feature implemented). actually, i didn't test that case (having in mind the munging of text properties and `buffer-invisibility-spec' to implement hiding, instead). i just started pcvs on a smallish project and typed `g' a few times. anyway, looks like it will be handled in the process of solving... The problem case is when we have at the same spot many empty elements, and the one we refresh is one of the middle ones, so the preceding ones shouldn't move but the subsequent ones should. It seems your code doesn't pay attention to this detail and will either move the preceding ones as well or fail to move the subsequent ones. thanks for illustrating a concrete failure scenario. i had vague doubts but now they are firmer. looks like slightly more hair is called for. [eta reduction] it would merit "bugfix" if the header and footer were ever refreshed, but i see that `ewoc-refresh' avoids them -- ugh. (there seem to be many design enhancement opportunities in ewoc.el...) thi