From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Durand Newsgroups: gmane.emacs.devel Subject: Re: [External] : [ELPA] Want to submit two packages "ilist" and "blist" Date: Mon, 20 Sep 2021 07:59:42 +0800 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="40220"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (x86_64-apple-darwin20.5.0) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Mon Sep 20 03:03:39 2021 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mS7id-000AJU-Dn for ged-emacs-devel@m.gmane-mx.org; Mon, 20 Sep 2021 03:03:39 +0200 Original-Received: from localhost ([::1]:53072 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mS7ib-0006eJ-Dk for ged-emacs-devel@m.gmane-mx.org; Sun, 19 Sep 2021 21:03:37 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:44888) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mS6ir-0005w7-NS for emacs-devel@gnu.org; Sun, 19 Sep 2021 19:59:49 -0400 Original-Received: from mail-pj1-x1031.google.com ([2607:f8b0:4864:20::1031]:43636) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mS6io-0006ms-S8 for emacs-devel@gnu.org; Sun, 19 Sep 2021 19:59:49 -0400 Original-Received: by mail-pj1-x1031.google.com with SMTP id k23-20020a17090a591700b001976d2db364so11375114pji.2 for ; Sun, 19 Sep 2021 16:59:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:subject:references:date:in-reply-to:message-id:user-agent :mime-version; bh=M8wOvS0Y5DiwNIoWEtIV1ruZt3WonOqrqflvXZGqcLw=; b=CI200YpdT/ZUo5M9R+kbkhzdwWUmFFshr6szYfdHSSI2nQCIugbaon3EePUOPSlREK ZepnTHrWTdUTtcAejEAq0gEB3zbSb3N79oniE5a++y7k1/OmhBaFVMCXaLHqRcyfX3OQ ZmjBk/w0laF1mXMvZUdRTh0UFa3bMe5+Ig7fqiiE6uPSozUIOHrL3WtY1XYdNvjPl+8F ZkPCK6Qh8WmU5nFPFLrG9+iWFenmyBLzN4FWsOBmGbWhQAMnuF4lHe7nYcsk0dYWv07E y2rSBxp/CJWcXnivydnyUn2ghVYGDCoyCGccGLDlPSJcFAL3rOXh5RyrlLCBIYUnFfOy iI5Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=M8wOvS0Y5DiwNIoWEtIV1ruZt3WonOqrqflvXZGqcLw=; b=inbJZWvVVcHiBmVt8aTNHlEJ90k3ztGXASLO8+JFrMpqGOJWsDK14EQijg1o8Gs0/O yvnnBgduUiwjzROeva8x8maCZJ4iDPAO/Ec+BiSrVk1Znv61QRdfSn0t95W2wfH/D4CY lE7Ho0I7RQyN+89PQn/3S6V0g1/XsbetoN/Gao6S1SdEARpFIyKnMwmRyFDD8p/A31xH IyPBjbZDznG5ecwCcSg6hxXdEA8HDHRSm7RZsaqNjF5YmN5pbQ4h9gq4GIM99NVAXqkD TeLnXq6BEpqhCfZZIErfpkC8CmJWGXMCazLBbYr3c3gpurEQpacfQjRypN8UPRfTHIMx ueNQ== X-Gm-Message-State: AOAM531qve4Q3zJ/IL63RKjJfUwKc7j9q/R7ZF0Xa2hHL0vRdC1qI5h5 wziy8BHHEhjwGGfudah2phd+N5M9vRY= X-Google-Smtp-Source: ABdhPJxwqq44+mAYY6vrQdeIZDhjDnRrGHPk/3691rZsHZJkxVOvAnx5S2KufcZeImhfl3xkbuTEEg== X-Received: by 2002:a17:902:6106:b0:13d:9572:86bb with SMTP id t6-20020a170902610600b0013d957286bbmr11250909plj.26.1632095984590; Sun, 19 Sep 2021 16:59:44 -0700 (PDT) Original-Received: from MacBook-Pro-de-Severe.local.gmail.com (123-193-46-223.dynamic.kbronet.com.tw. [123.193.46.223]) by smtp.gmail.com with ESMTPSA id q11sm11491355pjf.14.2021.09.19.16.59.43 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 19 Sep 2021 16:59:44 -0700 (PDT) In-Reply-To: (Drew Adams's message of "Sun, 19 Sep 2021 17:01:27 +0000") Received-SPF: pass client-ip=2607:f8b0:4864:20::1031; envelope-from=mmemmew@gmail.com; helo=mail-pj1-x1031.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Sun, 19 Sep 2021 21:02:34 -0400 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 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-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:275093 Archived-At: >>>>> On Sun, 19 Sep 2021 17:01:27 +0000, Drew Adams said: >> I have written two Emacs pacakges, called "ilist" and "blist" >> (the former is the "engine", and hence a dependency, of the >> latter). Now I am thinking about submitting the packages to GNU >> ELPA. >> >> The package "blist" is to display the list of bookmarks, in the >> sense of "bookmark.el", in a similar way as Ibuffer. Drew> As the author of Bookmark+, I want to say that I'm positively Drew> impressed by your attention to documenting, which I can tell Drew> just by looking at the provided PDFs. Drew> And I commend the features the doc describes. Drew> From just reading that doc, it appears that all of the Blist Drew> features are already features of Bookmark+. (Of course, Blist Drew> is young.) I have seen your library before writing BList. But my main motivation was the Ibuffer-like display, and Bookmark+ does not seem to provide one (at least I cannot tell from its docs), so I wrote BList anyways. :) Drew> That's _good_. It suggests that such features are in fact Drew> helpful (it corroborates having them in Bookmark+). Drew> It's also a bit disappointing to me, though, as I was hoping Drew> to find some new features that I might want to consider for Drew> possible addition or adaptation to Bookmark+, to improve it. Drew> But I haven't found any that are missing, so far. Well, Bookmark+ is already huge and provides many useful functionalities. I would surprised if my simple package has any new features. ;P That being said, have you looked into `blist-select' and `blist-select-manner'? I think that is probably the "strangest" feature of this package, and hence the most likely to be new. It might be fun anyways. :) Drew> It's no doubt worth my looking at the code too at some point, Drew> to see if there are undocumented features or if there's Drew> something else to be learned from what you've done. Drew> So Bravo! Thanks for your attention to bookmark presentation. Drew> And thanks in particular for the good job documenting what Drew> you've created. ___ Thanks for the appreciation. :D Drew> A minor hiccup we both might want to work around: Drew> Emacs 28 replaced the hard-coded string "*Bookmark List*" as Drew> the name of the list buffer with the defconst Drew> `bookmark-bmenu-buffer' with that string value. Drew> Both Bookmark+ and blist.el use that "constant", which means Drew> they use the same buffer. It might be good for our code to Drew> use different variables for the buffer name. E.g., I could Drew> add and use a user option `bmkp-bmenu-buffer', whose default Drew> value is that of `bookmark-bmenu-buffer'. And you could do Drew> similarly. (Just a suggestion.) ___ Sure, I will do so. Thanks for the suggestion. Drew> A minor suggestion for `blist-filter-groups': Instead of just Drew> telling users to put the default group at the end of the Drew> groups list, you might want to either do that automatically or Drew> provide an easy way to do that in the Customize UI. I am still thinking of better ways to do that indeed. Maybe I can use a function to produce the filter groups automatically. I am not familiar with the Customize UI though, so I will have to look up how to make it easy in the Customize UI. Drew> [BTW, you (and users) can directly use the many existing Drew> Bookmark+ type predicates in Blist filter groups: e.g., Drew> `bmkp-info-bookmark-p' for Info bookmarks, Drew> `bmkp-dired-bookmark-p' for Dired bookmarks, Drew> `bmkp-desktop-bookmark-p' for Desktop bookmarks,... I am not using Bookmark+ myself. Surely I can recommend to use Bookmark+ features in the documentations / README. Or are you suggesting for blist to depend on and extend Bookmark+? Drew> With Bookmark+ there are no named groups, but you can sort by Drew> bookmark kind using `s k'. You can sort in many (23) ways; Drew> sorting by bookmark type is one way. ] ___ Drew> It's interesting that you took as your point of departure Drew> Ibuffer. (And it's no doubt useful to have built blist.el on Drew> top of the more general ilist.el.) I really like Ibuffer: it makes managing buffers simple and easy. :D By the way, I thought I would like to display registers by ilist in a similar way (and adapt in another of my package "rlist"), but after some experiments that kind of display does not look good for registers to me, so I am still estimating the possibilities. (rlist can be found here: ) Drew> I took Dired as one of my points of departure, for the Drew> bookmark-list display. The UI is very close to that of Dired. Drew> But I think that Ibuffer itself took the Dired UI as a Drew> starting point, so there's a lot of similarity between where Drew> you ended up and where I did, wrt the UI. Indeed. Drew> Just as I might learn something looking at what you've done, I Drew> invite you to look at what Bookmark+ does, if you're Drew> interested. Drew> https://www.emacswiki.org/emacs/BookmarkPlus Sure, I will look into that in the coming future. -- Durand