From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: master 388a874 2/4: Do interactive mode tagging for man.el Date: Sat, 20 Feb 2021 09:39:41 +0200 Message-ID: <83h7m71936.fsf@gnu.org> References: <8335xs2grn.fsf@gnu.org> Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="35437"; mail-complaints-to="usenet@ciao.gmane.io" Cc: emacs-devel@gnu.org To: Stefan Kangas Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Feb 20 08:41:04 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 1lDMsy-00098H-0H for ged-emacs-devel@m.gmane-mx.org; Sat, 20 Feb 2021 08:41:04 +0100 Original-Received: from localhost ([::1]:38966 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lDMsx-0005uv-2D for ged-emacs-devel@m.gmane-mx.org; Sat, 20 Feb 2021 02:41:03 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:40828) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lDMrv-0005Nn-63 for emacs-devel@gnu.org; Sat, 20 Feb 2021 02:39:59 -0500 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:40247) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lDMrt-0006AM-4g; Sat, 20 Feb 2021 02:39:58 -0500 Original-Received: from 84.94.185.95.cable.012.net.il ([84.94.185.95]:4848 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1lDMrs-0005fC-Jz; Sat, 20 Feb 2021 02:39:56 -0500 In-Reply-To: (message from Stefan Kangas on Fri, 19 Feb 2021 20:24:49 -0600) 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:265293 Archived-At: > From: Stefan Kangas > Date: Fri, 19 Feb 2021 20:24:49 -0600 > Cc: emacs-devel@gnu.org > > Eli Zaretskii writes: > > > Stefan, did you consider the fact that woman.el defines a different > > mode, but uses some commands from man.el? (I didn't try invoking the > > commands you tagged, so maybe there's no problem.) > > Thanks for catching this. So I think the procedure for tagging should include a mandatory grepping of all the Lisp files to see if the mode or its features are referenced or used anywhere else. > So if we want to keep the tagging, I see two possible workarounds: > > 1) Tag the man-mode commands with both `Man-mode' and `woman-mode'. > > 2) Introduce a new mode, `man-shared-mode', inheriting from > special-mode, that both `Man-mode' and `woman-mode' can inherit > from. Then tag the commands using that. > > Both options have their pros and cons. There's a 3rd option: 3) Put a 'completion-predicate' property on the relevant woman.el commands, so that command-completion-default-include-p does TRT with them even though the modes don't match. I will withhold my opinion for now, and let Lars and others speak up. This is basically the first time we bump into the issues that were discussed here already, but sounded theoretical back then. We now need to fix such an issue with the tagging in practice, and we might as well invest some thinking before we decide which way to go. Because whatever we decide to do now, and the considerations to go into that decision, will be most probably taken as the canonical solution for such situations.