From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: [ELPA] New package: hierarchy Date: Mon, 23 Oct 2017 08:03:56 -0400 Message-ID: References: <87sheh8wuv.fsf@cassou.me> <87po9ewaoz.fsf@cassou.me> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1508760671 23589 195.159.176.226 (23 Oct 2017 12:11:11 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Mon, 23 Oct 2017 12:11:11 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) Cc: emacs-devel@gnu.org To: Damien Cassou Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Oct 23 14:11:06 2017 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e6bZR-0005Tj-V3 for ged-emacs-devel@m.gmane.org; Mon, 23 Oct 2017 14:11:06 +0200 Original-Received: from localhost ([::1]:38478 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1e6bZZ-0003A4-DA for ged-emacs-devel@m.gmane.org; Mon, 23 Oct 2017 08:11:13 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:42038) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1e6bSe-0006xw-AC for emacs-devel@gnu.org; Mon, 23 Oct 2017 08:04:09 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1e6bSY-0000IW-BA for emacs-devel@gnu.org; Mon, 23 Oct 2017 08:04:04 -0400 Original-Received: from pmta31.teksavvy.com ([76.10.157.38]:40539) by eggs.gnu.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.71) (envelope-from ) id 1e6bSY-0000Hx-5q for emacs-devel@gnu.org; Mon, 23 Oct 2017 08:03:58 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2GkCgAE2u1Z/4AFNJ1cHAEBBAEBCgEBg?= =?us-ascii?q?19kbieJB4YGjk6BeTEBlgeBTkMvhEdJBAIChExCFgECAQEBAQEBAQNoKIJmBEY?= =?us-ascii?q?pLwEBAQEBAQEBAQEBAQEBARoCDV4BBAFWIwULCzQSFBgNJIorCBCuJ4sfAQEBA?= =?us-ascii?q?QYCASAFgy6FQIMqinoFoWaHZINkBYs8hXqDTIdGlzUmCyeBWzQhCDKDLYR7JDa?= =?us-ascii?q?LegEBAQ?= X-IPAS-Result: =?us-ascii?q?A2GkCgAE2u1Z/4AFNJ1cHAEBBAEBCgEBg19kbieJB4YGjk6?= =?us-ascii?q?BeTEBlgeBTkMvhEdJBAIChExCFgECAQEBAQEBAQNoKIJmBEYpLwEBAQEBAQEBA?= =?us-ascii?q?QEBAQEBARoCDV4BBAFWIwULCzQSFBgNJIorCBCuJ4sfAQEBAQYCASAFgy6FQIM?= =?us-ascii?q?qinoFoWaHZINkBYs8hXqDTIdGlzUmCyeBWzQhCDKDLYR7JDaLegEBAQ?= X-IronPort-AV: E=Sophos;i="5.43,422,1503374400"; d="scan'208";a="7012783" Original-Received: from 157-52-5-128.cpe.teksavvy.com (HELO pastel.home) ([157.52.5.128]) by smtp.teksavvy.com with ESMTP; 23 Oct 2017 08:03:57 -0400 Original-Received: by pastel.home (Postfix, from userid 20848) id DE8BF621F8; Mon, 23 Oct 2017 08:03:56 -0400 (EDT) In-Reply-To: <87po9ewaoz.fsf@cassou.me> (Damien Cassou's message of "Mon, 23 Oct 2017 10:05:48 +0200") X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 76.10.157.38 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:219700 Archived-At: >> How would it work if you wanted to use it to navigate your local >> file-system (where the complete hierarchy might be extremely and >> costly to create)? > This is implemented here > https://github.com/DamienCassou/hierarchy/blob/master/examples/hierarchy-examples-fs.el. > But, as you expect, this is not usable for a complete file system > (displaying ~/.emacs.d takes 4 seconds on my fast computer). >> Is there some way to construct (and display) it >> lazily? > could you please share your ideas at > https://github.com/DamienCassou/hierarchy/issues/49? I don't really have any precise idea in this respect. I'm just thinking it should be able to display the top-level nodes without looking at the subtrees if they're not themselves displayed (yet). Basically, design it on the assumption that your hierarchy might be your complete filesystem, yet it should respond "instantaneously". >> Looking at the code I get the impression that it would be nice to split >> it into 3 parts: > by parts, you mean files? Not necessarily, no: AFAICT your code is currently split into 2 parts, so my proposal is to add an API based on generic functions between the two so the display code can be used with other representations of a tree. Stefan