From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Charles Choi Newsgroups: gmane.emacs.devel Subject: Re: Request to distribute Casual packages on NonGNU ELPA Date: Wed, 25 Sep 2024 13:05:22 -0700 Message-ID: References: <8B0830CA-6995-454C-BC5A-E4247E259CE9@gmail.com> <87a5fvsi0x.fsf@posteo.net> Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3776.700.51.11.1\)) Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="18571"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Stefan Kangas , Stefan Monnier , Philip Kaludercic To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Wed Sep 25 22:06:46 2024 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 1stYHd-0004gj-Ji for ged-emacs-devel@m.gmane-mx.org; Wed, 25 Sep 2024 22:06:45 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1stYGd-00086J-Il; Wed, 25 Sep 2024 16:05:43 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1stYGb-00085z-6B for emacs-devel@gnu.org; Wed, 25 Sep 2024 16:05:42 -0400 Original-Received: from mail-pl1-x633.google.com ([2607:f8b0:4864:20::633]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1stYGY-0002BD-8f for emacs-devel@gnu.org; Wed, 25 Sep 2024 16:05:39 -0400 Original-Received: by mail-pl1-x633.google.com with SMTP id d9443c01a7336-20536dcc6e9so1143355ad.2 for ; Wed, 25 Sep 2024 13:05:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1727294736; x=1727899536; darn=gnu.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=1K+rAU0aMIA42EiT0j0CZdDJXglIMpiBuePk/UqI9pU=; b=lMzTjxH+73Y4gzhDyAIAuk1e52yCnEEwLYqRXABiMw9Bl8F9tIOzfKZ9tG8t5wCM5x odM9S9O0dbfyhtt1oxQvqDusGf/4Ux2coD32rO4T2P3mQsejNv3tRnqeQdiUALdEwmvv vtFCfr6f2/NDGhMskf65eJNym9IyZM16v4N7uOhyAYyDBTtTxpqabDUyKZDA8w9EZBDF Z1nB6fxnPq5OFoRxbJvTowyCjLTJE4qhN8s1SJeKysJjsNYwxoboGT+l1NNAIgDLtvI6 yxC1wBvOqViv3mrwi3W0hii5UUAXYkya9NvN7VdezFxxJgn4rJj1/LMNEY24Q2xo/AiB y54A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1727294736; x=1727899536; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=1K+rAU0aMIA42EiT0j0CZdDJXglIMpiBuePk/UqI9pU=; b=ECY7+ZG+9otBAC5YzU4gSI6Q/unpXlvCPxLD8cHBunRzyGIVvpTDfCVRtPZnTvNdfk oDina6jlc7gmerklqAN6AiugHXiPiQRfh09h09K6FLmpflml4Lg/noSsgGoa6XGgoztg euP6DgN3xCxrwDn23/h8+5SvDQ8fbiStJ22xC4gpEQJrOGDCTuROI7cCuL+HvLX1j1FV wIAVwugZQfkz1Lh696WmCwQJ6bQnsMF+xNZpEw+pmazM6CgwcafMvHTDgdI71RYBsNkn bQyTFMjs+KdjDOdLKrP9Le0lzJ6Yh9MzY8/IW9M4kSdmsYTOTg95X/ul0optMAxZlp6q inEg== X-Gm-Message-State: AOJu0YyH9lRkgTH7PT6JYtvqS0ob0MSqilJ98r71jHgkWIGFYeyj0b1e hWub7ebcpGM17GevxoBHBrhJdJyotg1ckpCQl8wHJMErJhynhFhAEeVaQMlE X-Google-Smtp-Source: AGHT+IHrLRMEHDAZzIdlvK4C72WM1Gw1mQE6jkseWk46CdhtasWkkv18KI2RuceFN9vBX6SGZjA8fQ== X-Received: by 2002:a17:903:1112:b0:206:9536:9778 with SMTP id d9443c01a7336-20afc43d729mr46447455ad.19.1727294735482; Wed, 25 Sep 2024 13:05:35 -0700 (PDT) Original-Received: from smtpclient.apple ([2600:380:856e:fc86:45b:8bc8:9f2e:aabd]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-20b05a0e276sm12572545ad.161.2024.09.25.13.05.33 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 25 Sep 2024 13:05:34 -0700 (PDT) In-Reply-To: <87a5fvsi0x.fsf@posteo.net> X-Mailer: Apple Mail (2.3776.700.51.11.1) Received-SPF: pass client-ip=2607:f8b0:4864:20::633; envelope-from=kickingvegas@gmail.com; helo=mail-pl1-x633.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, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 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-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:324086 Archived-At: Philip -=20 Thanks for responding. My answers to your questions as follows: > I haven't tried the code yet, and reviewing these will take some time, > but my understanding that this is reinventing a lot of Emacs > functionality using Transient, right? The Casual packages should be viewed as user interface porcelains to = existing Emacs functionality and takes great effort to not "reinvent" = nor re-implement existing commands and their associated variables. No = functions are advised by Casual. The Casual packages do however = re-imagine the interactive user interfaces to said commands and = variables as keyboard-driven menus. > Do you have any preferred or recommended order in which you think that = I > should review the code? =46rom the names I am guessing that = casual-lib is > a dependency that the others share? casual-lib is a common library to all the Casual packages. It is = recommended that this package be reviewed first. casual-suite is an = umbrella package that includes all Casual packages and as such should be = reviewed last. At current there are 13 Casual packages to review. Here's a recommended = order of review that skews toward the simpler packages to be reviewed = earlier. That said the only strict guidance is to review casual-lib = first and casual-suite last. https://github.com/kickingvegas/casual-lib/ https://github.com/kickingvegas/casual-isearch/ https://github.com/kickingvegas/casual-symbol-overlay/ https://github.com/kickingvegas/casual-avy/ https://github.com/kickingvegas/casual-re-builder/ https://github.com/kickingvegas/casual-dired/ https://github.com/kickingvegas/casual-bookmarks/ https://github.com/kickingvegas/casual-calc/ https://github.com/kickingvegas/casual-ibuffer/ https://github.com/kickingvegas/casual-info/ https://github.com/kickingvegas/casual-agenda/ https://github.com/kickingvegas/casual-editkit/ https://github.com/kickingvegas/casual-suite/ > Another question that I can only raise now as I haven't looked at the > code in greater detail yet is how deep the transient dependency goes. > Would it be possible to re-use quick-help instead? I had sketched > something along those lines a few months back, where a map could bind = a > pseudo-key to return a `help-quick-sections' like structure. The > advantage is that you only have to list commands and descriptions, > without trying to bind key again inside of Transient, as I understand = it > being the case right now. The Casual packages use Transient to implement keyboard-driven menus = with opinionated bindings. I consider these binding decisions to be core = to the value of Casual in that they support a truly hand-crafted user = experience. I have no interest in refactoring their behavior to use = quick-help, nor in maintaining strict conformance to existing default = command bindings. That said, many existing default command bindings are = supported in Casual. If any of these positions are a block to = publication on NonGNU ELPA, I will retract my request for review. = Hopefully though this is not the case as I have the greatest enthusiasm = to see these packages being reviewed and published on ELPA. All my best - Charles =E2=80=94 Charles Y. Choi, Ph.D. kickingvegas@gmail.com