From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id QLmjJsRQlGKeNQEAbAwnHQ (envelope-from ) for ; Mon, 30 May 2022 07:06:12 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id uLl2JsRQlGIrVQAAauVa8A (envelope-from ) for ; Mon, 30 May 2022 07:06:12 +0200 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 36E864071F for ; Mon, 30 May 2022 07:06:12 +0200 (CEST) Received: from localhost ([::1]:46690 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nvXbW-0001Od-9S for larch@yhetil.org; Mon, 30 May 2022 01:06:10 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:52332) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nvXaV-0001OU-6A for emacs-orgmode@gnu.org; Mon, 30 May 2022 01:05:07 -0400 Received: from mail-qk1-x730.google.com ([2607:f8b0:4864:20::730]:42969) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nvXaT-0001K4-AZ for emacs-orgmode@gnu.org; Mon, 30 May 2022 01:05:06 -0400 Received: by mail-qk1-x730.google.com with SMTP id b5so1512609qkd.9 for ; Sun, 29 May 2022 22:05:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:in-reply-to:references:date:message-id :mime-version; bh=xGY5HofWTkDWWH5VR9MsmHAdluvWHL4u4rxZfO1x+rQ=; b=WrOqvCZ3c8f0SwF0qyMIqK8Xfn/qEVOtvA9ldsdpOPqIa4vc7kff8lQNqi25VFbEjo alKE7GljIc4IWrpRVudaGhSpy8UIrxl6ZV6y2ADCHP7gYHVGsfYVFXnhda5HXVSqvDC8 HblUIFUpxp8B2DS5g4nK/uTy1EazmDrnvsG1lBVm8J+rARSzuCHl+IIyk8pgmPzANVfd 73AyEnEEnOCcwWNsA/bZYjcq7x/xVv3PyLkAdtNvzNrVulDnyoFgMeuz/hauEhTL4pLB VFP240FV6bseknQ70ygxk/6AjqnEtLYYy6CwE9+DQqZ/gF+CA/F6MKk2jT1djw6uDMZp CrHw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:in-reply-to:references:date :message-id:mime-version; bh=xGY5HofWTkDWWH5VR9MsmHAdluvWHL4u4rxZfO1x+rQ=; b=aqASHawGJv4oEQmk+0CMd3heNOG2paxr077XIZgnxtOx26m5HLiTJL2Cba+ZORMPqc /vjToJUqWdKwW72dUieimvlxfV1hU6VLwAJDDErJxFn2nWXW7LteQ9966ytFhrFIjhq1 RkzqJjW4aks33Iwtu3BqqsSIm8Y/mC0fFDvzMxZF1+VKFfSnFuj1nQ8TnEn2CWbtsZKA p9XdbWmLQVVq3ih7hqmEG3/wObLO477SeN1lgD4gfmoTB6D9cBQHMe0EvPOQ4mZqE7+F jXCmLNFUjrKfFMuHr6e9HjmEyMTkwbx++1dCOWeP+BErBHQgUXime1VFbW5PXXzCbdAS ktFg== X-Gm-Message-State: AOAM531BUpnbzju8KBi8VisR3sDrKZuW+69KPosAFM1bwHZPL4fBzy7o n/H3bvAtRH8nsJssW3U7l+A= X-Google-Smtp-Source: ABdhPJwQbzO7bv19KbGtCP+48lBaeaBKBUrQZcvMJK+c7cAvEBDwb89ZMsCjpGtTiTnTcu9Mmop05g== X-Received: by 2002:a05:620a:1706:b0:6a3:9dc0:7727 with SMTP id az6-20020a05620a170600b006a39dc07727mr24555513qkb.471.1653887104243; Sun, 29 May 2022 22:05:04 -0700 (PDT) Received: from localhost (22.b2.a86c.ip4.static.sl-reverse.com. [108.168.178.34]) by smtp.gmail.com with ESMTPSA id h8-20020a37c448000000b006a6278a2b31sm1746059qkm.75.2022.05.29.22.05.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 29 May 2022 22:05:03 -0700 (PDT) From: Ihor Radchenko To: Arthur Miller Cc: emacs-orgmode@gnu.org Subject: Re: Proposal: 'executable' org-capture-templaes In-Reply-To: References: <87mtf3tui1.fsf@localhost> <87pmjyco0x.fsf@localhost> Date: Mon, 30 May 2022 13:05:43 +0800 Message-ID: <87fskrobiw.fsf@localhost> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=2607:f8b0:4864:20::730; envelope-from=yantar92@gmail.com; helo=mail-qk1-x730.google.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 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_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Migadu-Flow: FLOW_IN X-Migadu-To: larch@yhetil.org X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1653887172; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=xGY5HofWTkDWWH5VR9MsmHAdluvWHL4u4rxZfO1x+rQ=; b=i2e5kZumQ6UbsJFn7excXbZ68Kiz3SUplbognckewZlsCLNSNEsk+rL3A21F1TmAtDKn6E HdQjv6yy0jXRU3PPBF955xrSbbTOg6w5pcrCeNKbi+ukFcGgyAxjpRCvMO6Sr3+GfoGoGS DI2+RQNlatPP6IBlZaRqUCOBVON0KDRDehOK2ecHVT+ArA0vi9rNS2+L5BHIpTE1wisZ04 +E0OPPvICeyOD5Ca4IHIlPqEyhfPMfF7C2PpClo8UgmsYjSqktlrZ0qCQzh/lJvKBLCANY +NFAPqjUEo79ntZxov5BhKzWu56N0sMGk1eH14zhfs0czaRAHHdMtywFihEPWA== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1653887172; a=rsa-sha256; cv=none; b=k8ADiNq6cFPSe6tqQ7Q9t7It0gvRXsx/CFyyDo3JE41qsqYstWGo/6uMtb/3aqKG+GvAnJ cv8Le5NDlebKaytt3n7AQYlJYCl81/oeGOpIZPfIRetnqBig7ZOteqpHftyb4VqXPPTYYU sPAXEYuZiNjN8r802ap3OPEAvmUPfL/5JzDiHj3v47YzeZjKXdesp1yAe3xGnIIQr3qyTE Qa+5msD/+Zwdj4pOqUrlTVcpyN03PERaSpDjl4YX3cUuhkhX6k2PoTDgllvsCO4/8GZOHa HECYncf69o6Q7thqIXd9WxsRLfRN357dep4wBX0WrV2ySBKc8tXtDV9ro1Z6rQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=WrOqvCZ3; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: -5.33 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=WrOqvCZ3; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: 36E864071F X-Spam-Score: -5.33 X-Migadu-Scanner: scn0.migadu.com X-TUID: ZIuovGCZttvx Arthur Miller writes: >> By "generic" I did not mean general-purpose all-functional framework. >> We just need something to remove code duplication in >> org-export-dispatch, org-agenda, org-capture, org-set-tags-command, etc >> They all share pretty similar code to generate dialogues. >> >> As for familiarity, I understand and it is exactly the reason why I >> suggested to factor out the menu code from capture templates. > > I am not really familiar with those other dialogues but org-capture, so I only > had that one in the mind. Yes, I agree if the similar code is used/shared in > several places than it does make sense to refactor it out. This refactoring could be a practical way to get something similar to your proposal into Org core. At least, if the menus are factored out appropriately. The above statement is a hint that patches are welcome :) >> The last one was >> https://orgmode.org/list/8c364693bf6856e60cdd3e8b63ab0c9284d16733.camel@heagren.com >> And we had multiple complaints that Org menus are not searchable and do >> not allow recursive edit. > > I am not sure what complain about searchability is/was, so I should not say much > there, but those are just a list of lists, saved in a well-known place, > org-caputre-templates var, so one can always traverse that list, or search the > menu buffer itself. Anyway thanks for the link, I have read through > that discussion. Seems to me like most of you are in favour of refactoring org > to use transient everywhere? The complaint was mostly from users who wanted to interrupt, say, the capture process, switch to the menu buffer, and search text there using isearch. Similar to what you can do with vanilla *Completions* buffer. Transient has met similar complaints when it was in the process of merging into Emacs core and now transient does support this "searching" possibility. That's why using transient could be an easy way for Org to address such complaints without a need to increase the maintenance burden. However, despite general agreement that Org should switch to transient menus, we will still keep backwards compatibility with the existing menus. So, one way or another, the existing menus will be retained. Ideally, also factored out and possibly merged into Emacs core (as requested by RMS https://orgmode.org/list/E1kIPh1-0001Lu-Rg@fencepost.gnu.org). Best, Ihor