From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Ihor Radchenko Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Sep 2020 14:20:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 43308@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.159974760018711 (code B ref -1); Thu, 10 Sep 2020 14:20:02 +0000 Received: (at submit) by debbugs.gnu.org; 10 Sep 2020 14:20:00 +0000 Received: from localhost ([127.0.0.1]:40846 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kGNQd-0004rj-OS for submit@debbugs.gnu.org; Thu, 10 Sep 2020 10:20:00 -0400 Received: from lists.gnu.org ([209.51.188.17]:45864) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kGNQb-0004rb-TY for submit@debbugs.gnu.org; Thu, 10 Sep 2020 10:19:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:50592) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kGNQb-0004k8-MI for bug-gnu-emacs@gnu.org; Thu, 10 Sep 2020 10:19:57 -0400 Received: from mail-pf1-x42e.google.com ([2607:f8b0:4864:20::42e]:34680) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kGNQZ-0006ak-MF for bug-gnu-emacs@gnu.org; Thu, 10 Sep 2020 10:19:57 -0400 Received: by mail-pf1-x42e.google.com with SMTP id v196so4849242pfc.1 for ; Thu, 10 Sep 2020 07:19:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id:mime-version; bh=w+lNdTjAyaY404CkepRTyN1nLSKzQrzmhZRe2wGhUas=; b=tIBnhE2NnNnLI9DSVErwaAbGFC04woIRO38Kwf2CYfMGy75yTSKcHSd52XMp1deBxK Qfb54J+2LmM0HBMCzn4mUTBBL4EMbuHu6Ola0ZuGdldTsWE3Wo+KDJIxxrzr7ikt3x6X XmuPMU4HxQVM+pCZrDzkMxNkrTXHU80baVsv9p9mxJMEnCIrASNCKqqfIBQ86H7dEknG thE5CHw3ys4Wk+VKzOp6gR9W42/xlNARo6L7oh15Ep/UvXLV5V82nFjlwzhaSqIbnbIw 5chnn+oe51n70ARjh4HFe9IhaeR1XIY+cVsE1FSMJPrmuldt39kexkG+0Z8dU/+xy+6/ GDIg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:mime-version; bh=w+lNdTjAyaY404CkepRTyN1nLSKzQrzmhZRe2wGhUas=; b=n2oULx4zDeN/6e+0G6H2LUlsLD55EPAJ+GwN1TUeJ+KoUuORUtM21cWCXL5zikD72+ qFrQJLKZZRPSdXSrZHrtR7Dr6ANQJtffGXsJ4yG9ugNEFqMK8PUjCA0qsszye6f2sVIS rLxCysA7WEKvGFL3/yD4+Yn3W6r2Lty7Qv38JLqrRE6da0k5ewSdDVbX87Znjv/HoiqS CM4N6e3IdDwHS4pHfO5FH3PgLuZKUCw4HfkQOrjfKQPRZNINvCUru7e2xx9G3Lu+OHNR ub3CuLnsuPRrcXXUPlNaqtMgXFGjyixIb22e1d7V/xVBl8bFdzrfeAT1xBT2jII8Qz5Q 154Q== X-Gm-Message-State: AOAM531403uqO5uYUKXKsH7fdneTSMsvghT60hgxMdovMDiG+6ZhEt2H nlVoDM9HRS0zKgzBLRYXnqNWb3e9RMJ7x8jv X-Google-Smtp-Source: ABdhPJzPLTmFqpAu36gk4Mb8JrHfPLFSPMPVbU0jVu4GF71eNMAkBtE7/71CXk1Pe2aOO9JYmBioZw== X-Received: by 2002:a63:242:: with SMTP id 63mr4513251pgc.375.1599747593578; Thu, 10 Sep 2020 07:19:53 -0700 (PDT) Received: from localhost ([104.250.131.79]) by smtp.gmail.com with ESMTPSA id b144sm5990644pfb.48.2020.09.10.07.19.52 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 10 Sep 2020 07:19:52 -0700 (PDT) From: Ihor Radchenko Date: Thu, 10 Sep 2020 22:18:51 +0800 Message-ID: <87zh5xiuk4.fsf@localhost> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=2607:f8b0:4864:20::42e; envelope-from=yantar92@gmail.com; helo=mail-pf1-x42e.google.com X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache. That's all we know. X-Spam_score_int: -17 X-Spam_score: -1.8 X-Spam_bar: - X-Spam_report: (-1.8 / 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 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 0.9 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.1 (--) Following up with "Changes for emacs 28" discussion about improving menu [1] Source: http://ergoemacs.org/emacs/modernization_menu.html The following menus seems to be more confusing than helpful: - Edit->Search menu->String Forward - Edit->Search menu->String Backwards - Edit->Search menu->Regexp Forward - Edit->Search menu->Regexp Backwards - Edit->Search menu->Repeat Forward - Edit->Search menu->Repeat Backwards In most of other applications, the search functionality is squeezed into single search dialogue, providing searching forward, backwards, and repeating search together (via next/prev buttons). Current Emacs menu forces the user to click Edit->Search menu->... multiple times to repeat the search. That is not a pleasant experience. Also, the functionality of the above menu items seems to be strictly inferior in comparison with isearch items from Edit->Search->Incremental search sub-menu. The only apparent advantage is that user would not need to know that moving to next/prev match is C-s/C-r. The article suggests to remove the above Search menu items completely and replace them by incremental search versions. I would also add that we can show transient next match/previous match toolbar icons to assist users, unfamiliar with key bindings. Though need to make sure that these new toolbar icons can be easily associated with the search process. For example, we may show additional toolbar at the bottom (above the mini-buffer isearch prompt) with only these two new toolbar icons (maybe also "exit search" icon). Also, the article suggests to rename "Forward/Backward String..." into "Search Forward/Backwards...", which sounds reasonable since non-programmer users may be confused by the meaning of word "String". Finally, find "Search tagged files..." and the following "Repeat" menu confusing. What does "tagged files" mean? I tried to click it, got a prompt about regex, then prompt about tag table (what is it?). Finally, I got error "File ~/TAGS does not exist". This made me recall vague memory about Emacs manual talking about some kind of completion feature for large code projects - something I never used. The above is my actual first impression. The menu seems useless for me, though may have a value for programmers. However, I have two suggestions: 1. Menu items do not show the key binding (is in Incremental search menu). I think that showing bindings is generally a great idea for discoverability 2. There is currently no way to understand what some unfamiliar menus do except blindly trying. As I explained about, it does not always help. Probably, Emacs could show some kind of tooltip on top of menu items, explaining what it does in more details. Also, it would be cool to be able to move to Manual page talking about topic relevant to the menu item (on right click?). Best, Ihor [1] https://lists.gnu.org/archive/html/emacs-devel/2020-09/msg00410.html In GNU Emacs 28.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.20, cairo version 1.16.0) of 2020-08-15 built on localhost Repository revision: f712cdbe9e9bdca3d4c7c27e9ac59686ab4c7620 Repository branch: master Windowing system distributor 'The X.Org Foundation', version 11.0.12008000 System Description: Gentoo/Linux From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Sep 2020 15:00:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Ihor Radchenko Cc: 43308@debbugs.gnu.org Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.159974995922371 (code B ref 43308); Thu, 10 Sep 2020 15:00:02 +0000 Received: (at 43308) by debbugs.gnu.org; 10 Sep 2020 14:59:19 +0000 Received: from localhost ([127.0.0.1]:40909 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kGO2h-0005ol-16 for submit@debbugs.gnu.org; Thu, 10 Sep 2020 10:59:19 -0400 Received: from eggs.gnu.org ([209.51.188.92]:57870) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kGO2f-0005oY-5q for 43308@debbugs.gnu.org; Thu, 10 Sep 2020 10:59:17 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:60239) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kGO2Z-0003Z9-RL; Thu, 10 Sep 2020 10:59:11 -0400 Received: from [176.228.60.248] (port=1615 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kGO2W-0003HG-7b; Thu, 10 Sep 2020 10:59:08 -0400 Date: Thu, 10 Sep 2020 17:59:12 +0300 Message-Id: <831rj9k79b.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: <87zh5xiuk4.fsf@localhost> (message from Ihor Radchenko on Thu, 10 Sep 2020 22:18:51 +0800) References: <87zh5xiuk4.fsf@localhost> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Ihor Radchenko > Date: Thu, 10 Sep 2020 22:18:51 +0800 > > The following menus seems to be more confusing than helpful: > - Edit->Search menu->String Forward > - Edit->Search menu->String Backwards > - Edit->Search menu->Regexp Forward > - Edit->Search menu->Regexp Backwards > - Edit->Search menu->Repeat Forward > - Edit->Search menu->Repeat Backwards I disagree. Many applications have only the non-incremental search commands, so removing them will leave the user who are used to those with the incremental variant, which might be confusing for people who have no experience with comparable commands. > In most of other applications, the search functionality is squeezed into > single search dialogue, providing searching forward, backwards, and > repeating search together (via next/prev buttons). > Current Emacs menu forces the user to click Edit->Search menu->... > multiple times to repeat the search. That is not a pleasant experience. If you are suggesting a "repeat last search" menu item, it could be a useful idea. But removing those items because we don't have a simple repeat item is a step in the wrong direction, IMO. > Also, the functionality of the above menu items seems to be strictly > inferior in comparison with isearch items from Edit->Search->Incremental > search sub-menu. See above: it is there for those who are not familiar enough with the incremental variants. Please don't forget that the menu bar targets mainly newcomers, so judging it from the POV of a veteran Emacs user might yield incorrect conclusions. > I would also add that we can show transient next match/previous match > toolbar icons to assist users, unfamiliar with key bindings. Please show the code. Please also keep in mind that changes on the tool bar require redrawing of the tool bar, which could cause unpleasant flickering. We need to consider this potential downside. > Also, the article suggests to rename "Forward/Backward String..." into > "Search Forward/Backwards...", which sounds reasonable since > non-programmer users may be confused by the meaning of word "String". The "Search" part is in the parent menu item, so repeating it would be a waste of space, which is at premium here. If people agree that removing "String" will help, maybe we could do that. But please note that "String" contrasts with "Regexp" in the next items; if we remove it, won't that be less clear? > Finally, find "Search tagged files..." and the following "Repeat" menu > confusing. What does "tagged files" mean? Feel free to suggest a better name for the item and/or a better help string. > I tried to click it, got a prompt about regex, then prompt about tag > table (what is it?). Finally, I got error "File ~/TAGS does not > exist". This made me recall vague memory about Emacs manual talking > about some kind of completion feature for large code projects - > something I never used. Did you try "C-h k" before selecting that? This would display the documentation of that command. It's a canonical way of learning about menu items that don't explain themselves enough at first reading. (Of course if we can make them more self-explanatory, it's better.) > 1. Menu items do not show the key binding (is in Incremental search > menu). I think that showing bindings is generally a great idea for > discoverability If there's no key binding shown in the menu, it means the command invoked by the menu item doesn't have a key. When there's a key binding, the machinery that displays the menu adds them automatically. > 2. There is currently no way to understand what some unfamiliar menus do > except blindly trying. See above: "C-h k" is the way to understand that. Thanks. From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Stefan Kangas Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Sep 2020 15:39:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii , Ihor Radchenko Cc: 43308@debbugs.gnu.org Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.159975229226071 (code B ref 43308); Thu, 10 Sep 2020 15:39:01 +0000 Received: (at 43308) by debbugs.gnu.org; 10 Sep 2020 15:38:12 +0000 Received: from localhost ([127.0.0.1]:40962 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kGOeK-0006mQ-67 for submit@debbugs.gnu.org; Thu, 10 Sep 2020 11:38:12 -0400 Received: from mail-ej1-f48.google.com ([209.85.218.48]:37527) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kGOeI-0006mD-SE for 43308@debbugs.gnu.org; Thu, 10 Sep 2020 11:38:11 -0400 Received: by mail-ej1-f48.google.com with SMTP id nw23so9376562ejb.4 for <43308@debbugs.gnu.org>; Thu, 10 Sep 2020 08:38:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:in-reply-to:references:mime-version:date:message-id:subject:to :cc; bh=Ur5g8Iyn7NzR7557wb9MEeR0muXTtz7QpmsNFnYeCcc=; b=Yv9VjRL/XHklDSFVo0dbQ/Gi5nUE/ts7SZ1ZMsbAEt83v2RbPg4zWR3d3plo9eRkdT yEs+ZHGZecClWTRX/WuFHokje/Qf6CX2NOfYhGiQOG5VJNcLhP4UPRb7jivxIe8/Z7Dm IP6mb4mD2+o+msfGK2DrxU/oiqNx8XauEgZ32TKoQVudsQPn+2DcqF+4Ivc4pAEX8kNy e1uAmjV5wbyLzbXe9JcmRAQ9IY+6sS5FCVZ2oh8L5Jl8w/ySHeok0pRgaGNr7T0KnqOv 8geS06DC7AJDkSmbRIbyu23xIfmlp+pT9TYAFcXIMN+nsqmSRF9obPsAhGTxorDwBm9y uMgw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:in-reply-to:references:mime-version:date :message-id:subject:to:cc; bh=Ur5g8Iyn7NzR7557wb9MEeR0muXTtz7QpmsNFnYeCcc=; b=NNEPVU9c4w96F3ugB0HjIeLaxh+L+/RNdCdeLa2ueNLi1ngUaBO8dS2U1gSc/G+jb3 F0KwPOKO9oBxNoHt585MP8d1rMrdWZnSTWarXExifDgOQWwXPtwxo9v3Gq+S+UdtXjHF +x9oE96IB7dGb0KnaN5Vj8zlznB+QETptrQjLKROSsj9Xom0imJhyT4xT3dCccWnuiw2 /YaPIjz2cLR1O+NV9V6hlRsA3e/2d2/AdVGOsfhfu1825GwuMil9mBkqqJzmWJY+u0UZ 9Taw4CnUrsIaOoIzEHHUGyM4s405nS3Ay8KwBvwZAzt2Q/cIRAsYjCesfMoQVN7xkfMo 5Y7w== X-Gm-Message-State: AOAM533npcHvNGW8v8KA1uRxu1h7T8yjlo62HX40TMNNI/ppXHx8r03p i3HZoheN355b45JDoFjS5IcIFpRYHlvs3eun/h4= X-Google-Smtp-Source: ABdhPJyxMQuUJMQtvoju121Nffnl6R519DHDQx9VM3ZrGbLjc8AimPeeZiX7wZdrmzAf5kzhOFwY3VT4D+l+7E5z2JQ= X-Received: by 2002:a17:906:1b15:: with SMTP id o21mr9237904ejg.377.1599752284790; Thu, 10 Sep 2020 08:38:04 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Thu, 10 Sep 2020 08:38:04 -0700 From: Stefan Kangas In-Reply-To: <831rj9k79b.fsf@gnu.org> References: <87zh5xiuk4.fsf@localhost> <831rj9k79b.fsf@gnu.org> MIME-Version: 1.0 Date: Thu, 10 Sep 2020 08:38:04 -0700 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Eli Zaretskii writes: > I disagree. Many applications have only the non-incremental search > commands, so removing them will leave the user who are used to those > with the incremental variant, which might be confusing for people who > have no experience with comparable commands. I think this is less of a concern these days. The applications you talk about also have search dialog boxes, which make the non-incremental search actually useful. Firefox also has incremental search by default, which many (most?) of our users will already be familiar with. >> In most of other applications, the search functionality is squeezed into >> single search dialogue, providing searching forward, backwards, and >> repeating search together (via next/prev buttons). >> Current Emacs menu forces the user to click Edit->Search menu->... >> multiple times to repeat the search. That is not a pleasant experience. > > If you are suggesting a "repeat last search" menu item, it could be a > useful idea. But removing those items because we don't have a simple > repeat item is a step in the wrong direction, IMO. This is a separate discussion, I think, but on graphical displays I would ideally like to see a user interface like the one in C-f Firefox. It shows clickable buttons for next/previous match, toggles for "Match Case", "Whole Words" and how many matches there are. >> I would also add that we can show transient next match/previous match >> toolbar icons to assist users, unfamiliar with key bindings. > > Please show the code. Please also keep in mind that changes on the > tool bar require redrawing of the tool bar, which could cause > unpleasant flickering. We need to consider this potential downside. Alternatively, see my suggestion about doing it like Firefox above. IMHO, the tool bar is not a place where you would expect to find this. >> Also, the article suggests to rename "Forward/Backward String..." into >> "Search Forward/Backwards...", which sounds reasonable since >> non-programmer users may be confused by the meaning of word "String". > > The "Search" part is in the parent menu item, so repeating it would be > a waste of space, which is at premium here. > > If people agree that removing "String" will help, maybe we could do > that. But please note that "String" contrasts with "Regexp" in the > next items; if we remove it, won't that be less clear? I think removing it is fine. Already saying "Regexp" makes it clear that this is the odd one out. (IIRC, this is what you find in other software: the regexp case is the one with a special mention, otherwise it's just called "Search".) >> Finally, find "Search tagged files..." and the following "Repeat" menu >> confusing. What does "tagged files" mean? > > Feel free to suggest a better name for the item and/or a better help > string. We could perhaps move it to a menu related to tags functionality? Just an idea. >> 1. Menu items do not show the key binding (is in Incremental search >> menu). I think that showing bindings is generally a great idea for >> discoverability > > If there's no key binding shown in the menu, it means the command > invoked by the menu item doesn't have a key. When there's a key > binding, the machinery that displays the menu adds them automatically. Right. The problem here is that these commands are specifically designed to be run from the menu. Is there any way to work around that? >> 2. There is currently no way to understand what some unfamiliar menus do >> except blindly trying. > > See above: "C-h k" is the way to understand that. Maybe this should be clarified more in the doc string of C-h k. I never realized you can use "C-h k" to find out more about menu options, but I suppose it makes sense now that you mention it. Perhaps we could add a special command under the "Help" menu that says "Help for menu" that when clicked runs C-h k with a special message in the mini-buffer "Click the menu command you want help for"? From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Sep 2020 15:52:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Stefan Kangas Cc: 43308@debbugs.gnu.org, yantar92@gmail.com Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.159975307527301 (code B ref 43308); Thu, 10 Sep 2020 15:52:01 +0000 Received: (at 43308) by debbugs.gnu.org; 10 Sep 2020 15:51:15 +0000 Received: from localhost ([127.0.0.1]:40979 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kGOqx-00076H-DA for submit@debbugs.gnu.org; Thu, 10 Sep 2020 11:51:15 -0400 Received: from eggs.gnu.org ([209.51.188.92]:43258) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kGOqw-000765-5g for 43308@debbugs.gnu.org; Thu, 10 Sep 2020 11:51:14 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:33030) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kGOqq-0003ei-Ln; Thu, 10 Sep 2020 11:51:08 -0400 Received: from [176.228.60.248] (port=4930 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kGOqp-0000sN-KF; Thu, 10 Sep 2020 11:51:08 -0400 Date: Thu, 10 Sep 2020 18:51:12 +0300 Message-Id: <83sgbpiqa7.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: (message from Stefan Kangas on Thu, 10 Sep 2020 08:38:04 -0700) References: <87zh5xiuk4.fsf@localhost> <831rj9k79b.fsf@gnu.org> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Stefan Kangas > Date: Thu, 10 Sep 2020 08:38:04 -0700 > Cc: 43308@debbugs.gnu.org > > Eli Zaretskii writes: > > > I disagree. Many applications have only the non-incremental search > > commands, so removing them will leave the user who are used to those > > with the incremental variant, which might be confusing for people who > > have no experience with comparable commands. > > I think this is less of a concern these days. In what way is this less of a concern? > The applications you talk about also have search dialog boxes, which > make the non-incremental search actually useful. That's true in some cases, but not in all of them. And the dialog is not really relevant here: the issue I raise is with the concept of incremental searching being unfamiliar. > Firefox also has incremental search by default, which many (most?) of > our users will already be familiar with. Some applications added incremental search, but many don't have it, and probably never will. Simple editors are in that class. > > If you are suggesting a "repeat last search" menu item, it could be a > > useful idea. But removing those items because we don't have a simple > > repeat item is a step in the wrong direction, IMO. > > This is a separate discussion, I think, but on graphical displays I > would ideally like to see a user interface like the one in C-f Firefox. > It shows clickable buttons for next/previous match, toggles for "Match > Case", "Whole Words" and how many matches there are. Improving the (non-existing) search dialog is a separate discussion. If you want to work on such a dialog, please do. but that is not what we are talking here. The proposal on the table is to remove non-incremental search commands from the Search menu. let's stay focused on that issue, okay? > > Feel free to suggest a better name for the item and/or a better help > > string. > > We could perhaps move it to a menu related to tags functionality? Just > an idea. No, I think this is fundamentally a search command. TAGS is just an aid. > >> 1. Menu items do not show the key binding (is in Incremental search > >> menu). I think that showing bindings is generally a great idea for > >> discoverability > > > > If there's no key binding shown in the menu, it means the command > > invoked by the menu item doesn't have a key. When there's a key > > binding, the machinery that displays the menu adds them automatically. > > Right. The problem here is that these commands are specifically > designed to be run from the menu. Is there any way to work around that? What kind of workaround do you have in mind? > >> 2. There is currently no way to understand what some unfamiliar menus do > >> except blindly trying. > > > > See above: "C-h k" is the way to understand that. > > Maybe this should be clarified more in the doc string of C-h k. I never > realized you can use "C-h k" to find out more about menu options, but I > suppose it makes sense now that you mention it. There's something new to learn about Emacs every day ;-) > Perhaps we could add a special command under the "Help" menu that says > "Help for menu" that when clicked runs C-h k with a special message in > the mini-buffer "Click the menu command you want help for"? I don't mind, if this will really help this to be more discoverable. (Of course Xah Lee thinks that our Help menu is too large as it is...) From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Stefan Kangas Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Sep 2020 16:20:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii Cc: 43308@debbugs.gnu.org, yantar92@gmail.com Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.15997547545841 (code B ref 43308); Thu, 10 Sep 2020 16:20:02 +0000 Received: (at 43308) by debbugs.gnu.org; 10 Sep 2020 16:19:14 +0000 Received: from localhost ([127.0.0.1]:41017 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kGPI1-0001W9-RD for submit@debbugs.gnu.org; Thu, 10 Sep 2020 12:19:14 -0400 Received: from mail-ed1-f54.google.com ([209.85.208.54]:39948) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kGPI0-0001Vw-Et for 43308@debbugs.gnu.org; Thu, 10 Sep 2020 12:19:13 -0400 Received: by mail-ed1-f54.google.com with SMTP id t16so6906862edw.7 for <43308@debbugs.gnu.org>; Thu, 10 Sep 2020 09:19:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:in-reply-to:references:mime-version:date:message-id:subject:to :cc; bh=6PfrBSkV/Er3t34Pg4zicOj3UYUQNqi9LJ0aEIjLGtQ=; b=aYxcWQ4ztImtNHNkoph9kqrY4bNCzp9Kb2jHkTKV0pJ4H3z5PBRhDZwiYM59+X+Tf0 JvjAjoqr2eInOHOekiERiHCHQjb+cJtSe/HYqFTQaWDfjZ/gd+fHHV3I/huB6IipIoy7 J6yWqtVE2FhQvG29YimM1pmZ0GZil6RUkjw12/q0bF5wJta9HJ3rpSBbwTKzvUoizHXX efsyh/iOrhyPrZvoEgvh0bDolICLRTMSOpvl2WjJnFWtQ0c6BvktIx89kDSSw1l8oEvB nAe9Qd2Y9R5XgoS+Kq/2V9PsTPR0HviSvdQ2KGuTyYxEK9Sr7mCDS9HeKWw4JvxUNgNJ wsWA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:in-reply-to:references:mime-version:date :message-id:subject:to:cc; bh=6PfrBSkV/Er3t34Pg4zicOj3UYUQNqi9LJ0aEIjLGtQ=; b=HWXWBexMQmRbZon5rmZN7P1enOJCMEkFkI+cwEIqB+LC7mUESSgYix6IzAGTjO5Y4y nkA+ydPBfqB0YWNPDLeaXHuOwP4hxEBaPMacT62JjctvofR9fSkwANDm5qeUBc0fHPD/ TlD9YYvnFtx0GpYFUu5JV3XTlhiPGywzCpuOxSQqjA6owFJxQcT4X9ZIdj8v+jAJgpDY 2UuQgN/SI34fEIjhc6821gUhqTST1R2pq3tY6lrmOAPLOZyA/LTIkJKTadMqsHKa0Jx1 kFtDxxTlZ5b8abajLmrxlYSP+XuGGB4+tAQ57S6pJResM9N5cpc/fO8U8HFoNTk1q+H9 fLzw== X-Gm-Message-State: AOAM530QL2EMfSvtsRJiDLbCAxW2Hv5JNQc/z/nqF5lIHr5TTyu6RH4q a2DPEX1kryQG15a37Ijr2Yx39mCSukCmy8eg5bU= X-Google-Smtp-Source: ABdhPJxe7BCDWbAuIZUO/GAZ/Y/i4Y/V3I0gHzvmJ7hpCSjD0A3BBKEhqIZ1z/09G0pFi83zjyq8ci1hpK3kpK4ZCD0= X-Received: by 2002:a50:ce06:: with SMTP id y6mr10265247edi.273.1599754746561; Thu, 10 Sep 2020 09:19:06 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Thu, 10 Sep 2020 09:19:05 -0700 From: Stefan Kangas In-Reply-To: <83sgbpiqa7.fsf@gnu.org> References: <87zh5xiuk4.fsf@localhost> <831rj9k79b.fsf@gnu.org> <83sgbpiqa7.fsf@gnu.org> MIME-Version: 1.0 Date: Thu, 10 Sep 2020 09:19:05 -0700 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Eli Zaretskii writes: >> > I disagree. Many applications have only the non-incremental search >> > commands, so removing them will leave the user who are used to those >> > with the incremental variant, which might be confusing for people who >> > have no experience with comparable commands. >> >> I think this is less of a concern these days. > > In what way is this less of a concern? Users are more familiar with incremental search, for example from Firefox. I checked, and Chromium also has it, and IIRC so does Safari. Assuming that our users have used any of those web browsers, they will already have had exposure to incremental search. In any case, even if they haven't, the feature will quickly be learned once you start using it. >> > If there's no key binding shown in the menu, it means the command >> > invoked by the menu item doesn't have a key. When there's a key >> > binding, the machinery that displays the menu adds them automatically. >> >> Right. The problem here is that these commands are specifically >> designed to be run from the menu. Is there any way to work around that? > > What kind of workaround do you have in mind? I'm not sure. Either we add specific workarounds for them in the menu code, or we make sure the original commands are adapted to suit this task. But it would be good to show the keybindings, since one of the main purposes of the menu is to make functionality discoverable. From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Sep 2020 16:31:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Stefan Kangas Cc: 43308@debbugs.gnu.org, yantar92@gmail.com Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.15997554076939 (code B ref 43308); Thu, 10 Sep 2020 16:31:01 +0000 Received: (at 43308) by debbugs.gnu.org; 10 Sep 2020 16:30:07 +0000 Received: from localhost ([127.0.0.1]:41024 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kGPSY-0001nr-SG for submit@debbugs.gnu.org; Thu, 10 Sep 2020 12:30:07 -0400 Received: from eggs.gnu.org ([209.51.188.92]:52562) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kGPSW-0001lo-Dc for 43308@debbugs.gnu.org; Thu, 10 Sep 2020 12:30:05 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:33885) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kGPSR-00009u-50; Thu, 10 Sep 2020 12:29:59 -0400 Received: from [176.228.60.248] (port=3380 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kGPSQ-0006pj-HJ; Thu, 10 Sep 2020 12:29:58 -0400 Date: Thu, 10 Sep 2020 19:30:02 +0300 Message-Id: <83r1r9iohh.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: (message from Stefan Kangas on Thu, 10 Sep 2020 09:19:05 -0700) References: <87zh5xiuk4.fsf@localhost> <831rj9k79b.fsf@gnu.org> <83sgbpiqa7.fsf@gnu.org> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Stefan Kangas > Date: Thu, 10 Sep 2020 09:19:05 -0700 > Cc: yantar92@gmail.com, 43308@debbugs.gnu.org > > >> I think this is less of a concern these days. > > > > In what way is this less of a concern? > > Users are more familiar with incremental search, for example from > Firefox. I checked, and Chromium also has it, and IIRC so does Safari. > Assuming that our users have used any of those web browsers, they will > already have had exposure to incremental search. The example apps you show are not editors. > In any case, even if they haven't, the feature will quickly be learned > once you start using it. The menus are supposed to help first-time users, with little or no experience in using Emacs. Once they start using the incremental search, the menus are probably not for them anymore. > >> Right. The problem here is that these commands are specifically > >> designed to be run from the menu. Is there any way to work around that? > > > > What kind of workaround do you have in mind? > > I'm not sure. Either we add specific workarounds for them in the menu > code, or we make sure the original commands are adapted to suit this > task. But it would be good to show the keybindings, since one of the > main purposes of the menu is to make functionality discoverable. The problem is that the key sequence invokes a different command. About the only solution I see is to mention the keyboard equivalent in the doc string of the command invoked by the menu. From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Sep 2020 16:39:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: stefankangas@gmail.com Cc: 43308@debbugs.gnu.org, yantar92@gmail.com Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.15997558957733 (code B ref 43308); Thu, 10 Sep 2020 16:39:02 +0000 Received: (at 43308) by debbugs.gnu.org; 10 Sep 2020 16:38:15 +0000 Received: from localhost ([127.0.0.1]:41055 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kGPaR-00020e-Hl for submit@debbugs.gnu.org; Thu, 10 Sep 2020 12:38:15 -0400 Received: from eggs.gnu.org ([209.51.188.92]:54586) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kGPaP-00020R-Ps for 43308@debbugs.gnu.org; Thu, 10 Sep 2020 12:38:14 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:33980) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kGPaK-0001Qv-GN; Thu, 10 Sep 2020 12:38:08 -0400 Received: from [176.228.60.248] (port=3882 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kGPaJ-0002KM-Ft; Thu, 10 Sep 2020 12:38:08 -0400 Date: Thu, 10 Sep 2020 19:38:12 +0300 Message-Id: <83pn6tio3v.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: <83r1r9iohh.fsf@gnu.org> (message from Eli Zaretskii on Thu, 10 Sep 2020 19:30:02 +0300) References: <87zh5xiuk4.fsf@localhost> <831rj9k79b.fsf@gnu.org> <83sgbpiqa7.fsf@gnu.org> <83r1r9iohh.fsf@gnu.org> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Date: Thu, 10 Sep 2020 19:30:02 +0300 > From: Eli Zaretskii > Cc: 43308@debbugs.gnu.org, yantar92@gmail.com > > > Users are more familiar with incremental search, for example from > > Firefox. I checked, and Chromium also has it, and IIRC so does Safari. > > Assuming that our users have used any of those web browsers, they will > > already have had exposure to incremental search. > > The example apps you show are not editors. And, btw, their incremental search works subtly differently: once you click the Next or Previous button, typing characters doesn't necessarily modify the search string, you need to click in the search field for that. So even if the user has some experience with these browsers, they won't necessarily feel at home with Emacs's Isearch. From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Sep 2020 18:38:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii Cc: 43308@debbugs.gnu.org, Stefan Kangas , yantar92@gmail.com Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.159976307018830 (code B ref 43308); Thu, 10 Sep 2020 18:38:01 +0000 Received: (at 43308) by debbugs.gnu.org; 10 Sep 2020 18:37:50 +0000 Received: from localhost ([127.0.0.1]:41176 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kGRSA-0004td-50 for submit@debbugs.gnu.org; Thu, 10 Sep 2020 14:37:50 -0400 Received: from relay9-d.mail.gandi.net ([217.70.183.199]:55493) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kGRS8-0004tR-8M for 43308@debbugs.gnu.org; Thu, 10 Sep 2020 14:37:48 -0400 X-Originating-IP: 91.129.97.241 Received: from mail.gandi.net (m91-129-97-241.cust.tele2.ee [91.129.97.241]) (Authenticated sender: juri@linkov.net) by relay9-d.mail.gandi.net (Postfix) with ESMTPSA id 86CC0FF80A; Thu, 10 Sep 2020 18:37:40 +0000 (UTC) From: Juri Linkov Organization: LINKOV.NET References: <87zh5xiuk4.fsf@localhost> <831rj9k79b.fsf@gnu.org> <83sgbpiqa7.fsf@gnu.org> Date: Thu, 10 Sep 2020 21:36:31 +0300 In-Reply-To: <83sgbpiqa7.fsf@gnu.org> (Eli Zaretskii's message of "Thu, 10 Sep 2020 18:51:12 +0300") Message-ID: <87mu1xa380.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) >> > If you are suggesting a "repeat last search" menu item, it could be a >> > useful idea. But removing those items because we don't have a simple >> > repeat item is a step in the wrong direction, IMO. >> >> This is a separate discussion, I think, but on graphical displays I >> would ideally like to see a user interface like the one in C-f Firefox. >> It shows clickable buttons for next/previous match, toggles for "Match >> Case", "Whole Words" and how many matches there are. > > Improving the (non-existing) search dialog is a separate discussion. > If you want to work on such a dialog, please do. but that is not what > we are talking here. I think there is no need in such dialog because when Isearch is active, there is the isearch-specific tool-bar and Isearch submenu in the menu bar. > The proposal on the table is to remove non-incremental search commands > from the Search menu. There is a menu item in the Isearch submenu named "Nonincremental search". But it you really don't want to remove nonincremental menu items from the Edit menu then they could be swapped with incremental menu items, i.e. to promote incremental menu items higher, and demote nonincremental menu items deeper to the submenu where currently more often used incremental menu items are located. From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Sep 2020 18:46:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 43308@debbugs.gnu.org, stefankangas@gmail.com, yantar92@gmail.com Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.159976355819616 (code B ref 43308); Thu, 10 Sep 2020 18:46:02 +0000 Received: (at 43308) by debbugs.gnu.org; 10 Sep 2020 18:45:58 +0000 Received: from localhost ([127.0.0.1]:41202 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kGRa2-00056K-9l for submit@debbugs.gnu.org; Thu, 10 Sep 2020 14:45:58 -0400 Received: from eggs.gnu.org ([209.51.188.92]:60804) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kGRa1-000568-Ie for 43308@debbugs.gnu.org; Thu, 10 Sep 2020 14:45:57 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:36626) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kGRZv-0006OJ-EC; Thu, 10 Sep 2020 14:45:51 -0400 Received: from [176.228.60.248] (port=3727 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kGRZt-0000OX-Dg; Thu, 10 Sep 2020 14:45:50 -0400 Date: Thu, 10 Sep 2020 21:45:54 +0300 Message-Id: <83imclii71.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: <87mu1xa380.fsf@mail.linkov.net> (message from Juri Linkov on Thu, 10 Sep 2020 21:36:31 +0300) References: <87zh5xiuk4.fsf@localhost> <831rj9k79b.fsf@gnu.org> <83sgbpiqa7.fsf@gnu.org> <87mu1xa380.fsf@mail.linkov.net> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Juri Linkov > Cc: Stefan Kangas , 43308@debbugs.gnu.org, > yantar92@gmail.com > Date: Thu, 10 Sep 2020 21:36:31 +0300 > > But it you really don't want to remove nonincremental menu items from > the Edit menu then they could be swapped with incremental menu items, > i.e. to promote incremental menu items higher, and demote nonincremental > menu items deeper to the submenu where currently more often used > incremental menu items are located. That'd be the opposite of what the menu should be doing, which is putting the easier and more familiar commands closer to the top level. From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Sep 2020 19:16:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii Cc: 43308@debbugs.gnu.org, stefankangas@gmail.com, yantar92@gmail.com Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.159976530322274 (code B ref 43308); Thu, 10 Sep 2020 19:16:03 +0000 Received: (at 43308) by debbugs.gnu.org; 10 Sep 2020 19:15:03 +0000 Received: from localhost ([127.0.0.1]:41233 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kGS2B-0005nB-BJ for submit@debbugs.gnu.org; Thu, 10 Sep 2020 15:15:03 -0400 Received: from relay3-d.mail.gandi.net ([217.70.183.195]:43843) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kGS29-0005mQ-8v for 43308@debbugs.gnu.org; Thu, 10 Sep 2020 15:15:01 -0400 X-Originating-IP: 91.129.97.241 Received: from mail.gandi.net (m91-129-97-241.cust.tele2.ee [91.129.97.241]) (Authenticated sender: juri@linkov.net) by relay3-d.mail.gandi.net (Postfix) with ESMTPSA id B2ECD60006; Thu, 10 Sep 2020 19:14:53 +0000 (UTC) From: Juri Linkov Organization: LINKOV.NET References: <87zh5xiuk4.fsf@localhost> <831rj9k79b.fsf@gnu.org> <83sgbpiqa7.fsf@gnu.org> <87mu1xa380.fsf@mail.linkov.net> <83imclii71.fsf@gnu.org> Date: Thu, 10 Sep 2020 22:14:00 +0300 In-Reply-To: <83imclii71.fsf@gnu.org> (Eli Zaretskii's message of "Thu, 10 Sep 2020 21:45:54 +0300") Message-ID: <87wo1178cn.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) >> But it you really don't want to remove nonincremental menu items from >> the Edit menu then they could be swapped with incremental menu items, >> i.e. to promote incremental menu items higher, and demote nonincremental >> menu items deeper to the submenu where currently more often used >> incremental menu items are located. > > That'd be the opposite of what the menu should be doing, which is > putting the easier and more familiar commands closer to the top level. TUTORIAL teaches about incremental commands: * SEARCHING ----------- The Emacs search command is "incremental". This means that the search happens while you type in the string to search for. The command to initiate a search is C-s for forward search, and C-r for reverse search. BUT WAIT! Don't try them now. When you type C-s you'll notice that the string "I-search" appears as a prompt in the echo area. This tells you that Emacs is in what is called an incremental search waiting for you to type the thing that you want to search for. terminates a search. Did you see what happened? Emacs, in an incremental search, tries to go to the occurrence of the string that you've typed out so far. To go to the next occurrence of "cursor" just type C-s again. If no such occurrence exists, Emacs beeps and tells you the search is currently "failing". C-g would also terminate the search. If you are in the middle of an incremental search and type , the ... so this is what newbies need to know and use from the menu. From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Sep 2020 19:45:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 43308@debbugs.gnu.org, stefankangas@gmail.com, yantar92@gmail.com Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.159976704624971 (code B ref 43308); Thu, 10 Sep 2020 19:45:02 +0000 Received: (at 43308) by debbugs.gnu.org; 10 Sep 2020 19:44:06 +0000 Received: from localhost ([127.0.0.1]:41290 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kGSUI-0006Uh-KD for submit@debbugs.gnu.org; Thu, 10 Sep 2020 15:44:06 -0400 Received: from eggs.gnu.org ([209.51.188.92]:49082) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kGSUH-0006U6-R8 for 43308@debbugs.gnu.org; Thu, 10 Sep 2020 15:44:06 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:38176) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kGSUB-0008MB-OP; Thu, 10 Sep 2020 15:43:59 -0400 Received: from [176.228.60.248] (port=3387 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kGSUB-0003Yy-38; Thu, 10 Sep 2020 15:43:59 -0400 Date: Thu, 10 Sep 2020 22:44:04 +0300 Message-Id: <83d02tifi3.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: <87wo1178cn.fsf@mail.linkov.net> (message from Juri Linkov on Thu, 10 Sep 2020 22:14:00 +0300) References: <87zh5xiuk4.fsf@localhost> <831rj9k79b.fsf@gnu.org> <83sgbpiqa7.fsf@gnu.org> <87mu1xa380.fsf@mail.linkov.net> <83imclii71.fsf@gnu.org> <87wo1178cn.fsf@mail.linkov.net> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Juri Linkov > Cc: stefankangas@gmail.com, 43308@debbugs.gnu.org, yantar92@gmail.com > Date: Thu, 10 Sep 2020 22:14:00 +0300 > > >> But it you really don't want to remove nonincremental menu items from > >> the Edit menu then they could be swapped with incremental menu items, > >> i.e. to promote incremental menu items higher, and demote nonincremental > >> menu items deeper to the submenu where currently more often used > >> incremental menu items are located. > > > > That'd be the opposite of what the menu should be doing, which is > > putting the easier and more familiar commands closer to the top level. > > TUTORIAL teaches about incremental commands: Once again, menus are for those who don't read the documentation, but just start Emacs and want to do something useful. From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Ihor Radchenko Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 13 Sep 2020 10:10:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 43308@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.159999179728514 (code B ref -1); Sun, 13 Sep 2020 10:10:01 +0000 Received: (at submit) by debbugs.gnu.org; 13 Sep 2020 10:09:57 +0000 Received: from localhost ([127.0.0.1]:49531 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kHOxI-0007Pp-IH for submit@debbugs.gnu.org; Sun, 13 Sep 2020 06:09:57 -0400 Received: from lists.gnu.org ([209.51.188.17]:45772) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kHOxG-0007Pg-5H for submit@debbugs.gnu.org; Sun, 13 Sep 2020 06:09:55 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:57826) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kHOxG-0004Pn-0X for bug-gnu-emacs@gnu.org; Sun, 13 Sep 2020 06:09:54 -0400 Received: from mail-pf1-x433.google.com ([2607:f8b0:4864:20::433]:38902) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kHOxD-0002UT-C8 for bug-gnu-emacs@gnu.org; Sun, 13 Sep 2020 06:09:53 -0400 Received: by mail-pf1-x433.google.com with SMTP id l126so10211624pfd.5 for ; Sun, 13 Sep 2020 03:09:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:in-reply-to:references:date:message-id:mime-version; bh=n8OVxHBWStpVjZQIu0ntW8IgJa+2B7Tp25HteUXkCwA=; b=rH48z9i06B01jXU1v2c25eh/bupessjS3mXiTgRmhRuFtVMnoMV6ntBsui7jug9Won WduNg3U0b7u8hCfyp8bQWW/5bPgH7VRCmz/TOrVJZwto0QsSuStsrucWayAVOJ7mBEt7 ebi/0rLaiNNaTk44+gQc/VA5ULjxWk5lFc5tu84oBzJyEcdYHGSQxyrVDmnK4HiRM+eI Po5OBjccfEae+0LIOGJZA0RbWpaUW23zG7yAL5jKBVjTM99iOJOPfoHaA4qVgFI2vZhZ 6JmC/8rlbA8OAjIz975vmOoIfSrlJc/U9KjMoMUO9PCC4sjpCsUbcUnWy68++sWhXode tozA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:in-reply-to:references:date :message-id:mime-version; bh=n8OVxHBWStpVjZQIu0ntW8IgJa+2B7Tp25HteUXkCwA=; b=FCS4fQF27GiYirE5bT4BxWLdeieOe7PPLH4yeqASgF98ifXYccJGx73QpF+EmBjHsr b0r613xDXUtSigLDmKdhtyzMTYJnpED+cDeD3ZqjzL6k+LTNjTu5S0AwMxAEjDJH029O i8XsHfaoNPlD1OsYuKWAB485Pa1Ob1mjPmUEdaHtSTRKC9akE/VNiOmQ/k5i1SF/+9zq IluFlDVjqR+UG//9i7rTY/GWNUU8zx2bdSFnx4R4wJwleIAaW7iG72+EQ40yzgAbS70d ELviv/6djCs0H6fMvq4R4LKR6com6r7CKmTJBktaCBjv4aIP1cXezeJo3st9vKfk616+ Gurw== X-Gm-Message-State: AOAM531Yw4JWsELtP4ybZ5ER0aw8lQiIimWzdo51r24Sg8PgJq7MzFMY qJHNmKbDAucJVcdJTsIbaINiiBsRJAxqtU5g X-Google-Smtp-Source: ABdhPJwMJi9GPA80iYkcl6C4etwhsf4rrTKzyV2rJHcd7FhkFcxPlxO33+E6mWmtGLJRP8FfvEEa8w== X-Received: by 2002:a63:de56:: with SMTP id y22mr7514959pgi.166.1599991788418; Sun, 13 Sep 2020 03:09:48 -0700 (PDT) Received: from localhost ([210.3.160.230]) by smtp.gmail.com with ESMTPSA id x140sm7134916pfc.211.2020.09.13.03.09.46 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 13 Sep 2020 03:09:47 -0700 (PDT) From: Ihor Radchenko In-Reply-To: <87zh5xiuk4.fsf@localhost> References: <87zh5xiuk4.fsf@localhost> Date: Sun, 13 Sep 2020 18:08:47 +0800 Message-ID: <87r1r6at00.fsf@localhost> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=2607:f8b0:4864:20::433; envelope-from=yantar92@gmail.com; helo=mail-pf1-x433.google.com X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache. That's all we know. X-Spam_score_int: -17 X-Spam_score: -1.8 X-Spam_bar: - X-Spam_report: (-1.8 / 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 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.1 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.1 (--) It seems that the opinions are a bit split here, so I am try to summarise the current state of the discussion in this message and refine my suggestions from original bug report. First of all, let me clarify on the purpose of the menu/toolbar as I understand it. I tried to make sure that it is consistent with opinions of others, but feel free to reply if you disagree. Target users: 1. Menu is designed for users unfamiliar with Emacs concepts 2. Moreover, we do not expect those users to read Emacs manual or even tutorial 3. All the users are expected to know functionality, which is common among modern editor apps 4. Menu does not try to show all possible functionality of Emacs, just the most important (otherwise, people will be lost in too many menu items) The aims of the menu: 1. Show people Emacs equivalents text editing functions they would expect to use from other editors 2. Provide an indication how to switch to Emacs-specific commands (by indicating key bindings and command help) 3. Provide the most important Emacs-specific commands, which can be useful even though they have no equivalent in other editors Now, let me go through my original proposal and put in into the context of the above principles, while taking into account the comments on this bug report. ---------- 1. Replacing non-interactive search by interactive search ---------- There seems to be controversy on this part of the proposal: Eli Zaretskii (Thu. 22:59) > I disagree. Many applications have only the non-incremental search > commands, so removing them will leave the user who are used to those > with the incremental variant, which might be confusing for people who > have no experience with comparable commands. Stefan Kangas (Thu. 23:38) replying to previous message > I think this is less of a concern these days. > > The applications you talk about also have search dialog boxes, which > make the non-incremental search actually useful. > > Firefox also has incremental search by default, which many (most?) of > our users will already be familiar with. Eli Zaretskii (Thu. 23:51) replying to previous message >> The applications you talk about also have search dialog boxes, which >> make the non-incremental search actually useful. > > That's true in some cases, but not in all of them. And the dialog is > not really relevant here: the issue I raise is with the concept of > incremental searching being unfamiliar. > >> Firefox also has incremental search by default, which many (most?) of >> our users will already be familiar with. > > Some applications added incremental search, but many don't have it, > and probably never will. Simple editors are in that class. Stefan Kangas (Fri. 00:19) replying to previous message >> In what way is this less of a concern? > > Users are more familiar with incremental search, for example from > Firefox. I checked, and Chromium also has it, and IIRC so does Safari. > Assuming that our users have used any of those web browsers, they will > already have had exposure to incremental search. > > In any case, even if they haven't, the feature will quickly be learned > once you start using it. Eli Zaretskii (Fri. 00:30) replying to previous message > > > In what way is this less of a concern? > > > > Users are more familiar with incremental search, for example from > > Firefox. I checked, and Chromium also has it, and IIRC so does Safari. > > Assuming that our users have used any of those web browsers, they will > > already have had exposure to incremental search. > > The example apps you show are not editors. > > And, btw, their incremental search works subtly differently: once you > click the Next or Previous button, typing characters doesn't > necessarily modify the search string, you need to click in the search > field for that. > > So even if the user has some experience with these browsers, they > won't necessarily feel at home with Emacs's Isearch. > > > In any case, even if they haven't, the feature will quickly be learned > > once you start using it. > > The menus are supposed to help first-time users, with little or no > experience in using Emacs. Once they start using the incremental > search, the menus are probably not for them anymore. My reply: The above comment that incremental search may be unfamiliar is a valid concern. However, non-interactive search is not commonly used in Emacs by people who get some minimal experience (correct me if I am wrong). We are promoting the command that may be relatively easy to used for the user, but it does not help the user to learn the more common and powerful Emacs equivalent (which is isearch). As Stefan Kangas mentioned, we can expect that users are somehow familiar with incremental search concept from browsers. People unfamiliar with browsers are very uncommon case - if we start to consider all such possibilities, menu will grow into duplicate of custom interface (in terms to overly too many features). It was also mentioned that isearch behaves differently from what users might expect. However, the non-interactive search also behaves very differently - users cannot go to next/previous match easily. They have to go to menu->edit->search->repeat forward/backwards. On the contrary, isearch does provide forward/backward search buttons at least (though they are located far from the entered search string - in the toolbar). I would argue that isearch does a better (not ideal though) job creating familiar interface. Therefore, I would favour isearch over the non-interactive version. ----------- 2. Showing next match/previous match toolbar icons to assist users, unfamiliar with key bindings ----------- When writing this suggestion, I did not know that these icons are already shown on the toolbar. In fact, toolbar during isearch does even better job - it provides next/prev match _and_ more useful commands from isearch-mode-map. Moreover, it even gives a button to show help buffer about isearch. There is no such toolbar functionality for non-interactive search though. Eli Zaretskii (Thu. 22:59) > > I would also add that we can show transient next match/previous match > > toolbar icons to assist users, unfamiliar with key bindings. > > Please show the code. Please also keep in mind that changes on the > tool bar require redrawing of the tool bar, which could cause > unpleasant flickering. We need to consider this potential downside. Stefan Kangas (Thu. 23:38) replying to previous message > >> repeating search together (via next/prev buttons). > >> Current Emacs menu forces the user to click Edit->Search menu->... > >> multiple times to repeat the search. That is not a pleasant experience. > > > > If you are suggesting a "repeat last search" menu item, it could be a > > useful idea. But removing those items because we don't have a simple > > repeat item is a step in the wrong direction, IMO. > > This is a separate discussion, I think, but on graphical displays I > would ideally like to see a user interface like the one in C-f Firefox. > It shows clickable buttons for next/previous match, toggles for "Match > Case", "Whole Words" and how many matches there are. Eli Zaretskii (Thu. 23:51) replying to previous comment > > > repeat item is a step in the wrong direction, IMO. > > > > This is a separate discussion, I think, but on graphical displays I > > would ideally like to see a user interface like the one in C-f Firefox. > > It shows clickable buttons for next/previous match, toggles for "Match > > Case", "Whole Words" and how many matches there are. > > Improving the (non-existing) search dialog is a separate discussion. > If you want to work on such a dialog, please do. but that is not what > we are talking here. The proposal on the table is to remove > non-incremental search commands from the Search menu. let's stay > focused on that issue, okay? My reply: I think I need to clarify that by showing toolbar buttons during search, I proposed something similar to C-f in Firefox - buttons for prev/next search are shown right above/below the input box for search string. In the case of Emacs, that would mean showing prev/next match toolbar buttons right above the minibuffer. Moreover, as I mentioned earlier, there is already toolbar functionality for isearch. If the toolbar was moved to the bottom of the frame during isearch, it would be sufficient to achieve what I had in mind. Current top position is very easy to miss (I did miss it even though I was looking into isearch menu item specifically). I believe that the same functionality can be implemented for non-interactive search - we can reuse the same toolbar as in isearch. Moreover, having prev/next match buttons will effectively provide the following separate menu items in a single search command (or maybe in two commands for forward/backward search): - Edit->Search menu->String Forward - Edit->Search menu->String Backwards - Edit->Search menu->Regexp Forward - Edit->Search menu->Regexp Backwards - Edit->Search menu->Repeat Forward - Edit->Search menu->Repeat Backwards Same with isearch, I believe that the toolbar position would better be right above the minibuffer. On the flickering issue: Does it exist with the current toolbar for isearch? If there no bug reports on it, it is probably just hypothetical and we should not care about it. ---------- 3. Renaming Forward/Backward string to Search forward/backward ---------- Eli Zaretskii (Thu. 22:59) > > Also, the article suggests to rename "Forward/Backward String..." into > > "Search Forward/Backwards...", which sounds reasonable since > > non-programmer users may be confused by the meaning of word "String". > > The "Search" part is in the parent menu item, so repeating it would be > a waste of space, which is at premium here. > > If people agree that removing "String" will help, maybe we could do > that. But please note that "String" contrasts with "Regexp" in the > next items; if we remove it, won't that be less clear? Stefan Kangas (Thu. 23:38) replying to previous message > > The "Search" part is in the parent menu item, so repeating it would be > > a waste of space, which is at premium here. > > > > If people agree that removing "String" will help, maybe we could do > > that. But please note that "String" contrasts with "Regexp" in the > > next items; if we remove it, won't that be less clear? > > I think removing it is fine. Already saying "Regexp" makes it clear > that this is the odd one out. > > (IIRC, this is what you find in other software: the regexp case is the > one with a special mention, otherwise it's just called "Search".) My reply: No space will be wasted when renaming "Forward/Backward string" to "Search forward/backward". The char count is the same. But, as I said we add an extra benefit of not using word that is potentially confusing for non-programmers. ------ 4. Unfamiliar "Search tagged files..." command and other menu items, that user is not familiar with (yet) ------ Eli Zaretskii (Thu. 22:59) > > Finally, find "Search tagged files..." and the following "Repeat" menu > > confusing. What does "tagged files" mean? > > Feel free to suggest a better name for the item and/or a better help > string. > > I tried to click it, got a prompt about regex, then prompt about tag > > table (what is it?). Finally, I got error "File ~/TAGS does not > > exist". This made me recall vague memory about Emacs manual talking > > about some kind of completion feature for large code projects - > > something I never used. > > Did you try "C-h k" before selecting that? This would display the > documentation of that command. It's a canonical way of learning about > menu items that don't explain themselves enough at first reading. (Of > course if we can make them more self-explanatory, it's better.) My reply: > Feel free to suggest a better name for the item and/or a better help > string. I cannot suggest a better name since I have no idea how the TAGS functionality works. I just wanted to point out that it was confusing for me. I never had to deal with big multi-file projects where TAGS search is needed. > Did you try "C-h k" before selecting that? This would display the > documentation of that command. It's a canonical way of learning about > menu items that don't explain themselves enough at first reading. (Of > course if we can make them more self-explanatory, it's better.) As you said in another message: > Once again, menus are for those who don't read the documentation, but > just start Emacs and want to do something useful. We cannot expect the user to know about "C-h k". My concrete suggestion is using the tooltip to hint the user how to get more information about the command. The tooltip is already showing a short (yet longer than menu item name) command description. I suggest to add something like "Use mouse-3 (middle click) to get more information" and bind mouse-3 to show help buffer on the command. Best, Ihor Ihor Radchenko writes: > Following up with "Changes for emacs 28" discussion about improving menu > [1] > > Source: http://ergoemacs.org/emacs/modernization_menu.html > > The following menus seems to be more confusing than helpful: > - Edit->Search menu->String Forward > - Edit->Search menu->String Backwards > - Edit->Search menu->Regexp Forward > - Edit->Search menu->Regexp Backwards > - Edit->Search menu->Repeat Forward > - Edit->Search menu->Repeat Backwards > > In most of other applications, the search functionality is squeezed into > single search dialogue, providing searching forward, backwards, and > repeating search together (via next/prev buttons). > Current Emacs menu forces the user to click Edit->Search menu->... > multiple times to repeat the search. That is not a pleasant experience. > > Also, the functionality of the above menu items seems to be strictly > inferior in comparison with isearch items from Edit->Search->Incremental > search sub-menu. The only apparent advantage is that user would not need > to know that moving to next/prev match is C-s/C-r. > > The article suggests to remove the above Search menu items completely > and replace them by incremental search versions. > > I would also add that we can show transient next match/previous match > toolbar icons to assist users, unfamiliar with key bindings. Though need > to make sure that these new toolbar icons can be easily associated with > the search process. For example, we may show additional toolbar at the > bottom (above the mini-buffer isearch prompt) with only these two new > toolbar icons (maybe also "exit search" icon). > > Also, the article suggests to rename "Forward/Backward String..." into > "Search Forward/Backwards...", which sounds reasonable since > non-programmer users may be confused by the meaning of word "String". > > Finally, find "Search tagged files..." and the following "Repeat" menu > confusing. What does "tagged files" mean? I tried to click it, got a > prompt about regex, then prompt about tag table (what is it?). Finally, > I got error "File ~/TAGS does not exist". This made me recall vague > memory about Emacs manual talking about some kind of completion feature > for large code projects - something I never used. > > The above is my actual first impression. The menu seems useless for me, > though may have a value for programmers. However, I have two > suggestions: > > 1. Menu items do not show the key binding (is in Incremental search > menu). I think that showing bindings is generally a great idea for > discoverability > > 2. There is currently no way to understand what some unfamiliar menus do > except blindly trying. As I explained about, it does not always help. > Probably, Emacs could show some kind of tooltip on top of menu items, > explaining what it does in more details. Also, it would be cool to be > able to move to Manual page talking about topic relevant to the menu > item (on right click?). > > Best, > Ihor > > > [1] https://lists.gnu.org/archive/html/emacs-devel/2020-09/msg00410.html > > In GNU Emacs 28.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.20, cairo version 1.16.0) > of 2020-08-15 built on localhost > Repository revision: f712cdbe9e9bdca3d4c7c27e9ac59686ab4c7620 > Repository branch: master > Windowing system distributor 'The X.Org Foundation', version 11.0.12008000 > System Description: Gentoo/Linux From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Ihor Radchenko Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 20 Sep 2020 07:17:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii , Juri Linkov Cc: 43308@debbugs.gnu.org, stefankangas@gmail.com Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.160058618528989 (code B ref 43308); Sun, 20 Sep 2020 07:17:02 +0000 Received: (at 43308) by debbugs.gnu.org; 20 Sep 2020 07:16:25 +0000 Received: from localhost ([127.0.0.1]:48580 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kJtaD-0007XU-0t for submit@debbugs.gnu.org; Sun, 20 Sep 2020 03:16:25 -0400 Received: from mail-qt1-f175.google.com ([209.85.160.175]:39821) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kJtaA-0007XG-3A for 43308@debbugs.gnu.org; Sun, 20 Sep 2020 03:16:23 -0400 Received: by mail-qt1-f175.google.com with SMTP id h6so9539980qtd.6 for <43308@debbugs.gnu.org>; Sun, 20 Sep 2020 00:16:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:in-reply-to:references:date:message-id :mime-version; bh=cWIF0DFB5DatJlGoNLlVhDEtzv1K3IBvoY5dhgDZgHA=; b=k4MDK0oh7a8HyRKCZGIsnKAWd5xsnunZDa5ywrbiRBi99D8SetgTAaLh3xjjAjYzvx GlvEBRaC2kCvDvQ6pVORAk8Dx9D4I001IfwAk7iqymaDZVoLoijrLlK/+rcY+4GY3QD0 1jmYLlNqlONtYa0W68Kgwz3abmhikufWtS2tJlA41p6JXvQOvbHHSlfmKku9W3z2jLzG 1+3Bj/WCAp9pIwOE8O1QO5P4/jDyf9ssdGNciivJm03KcZZdHOuwx7cAIMxbTRssRVvn 9l/ebeIWgi/yyOKsB5F5q9ovVeG3cV7hhAnXUs/9B3FtlW7dOUnQ0P/n/AsAyOb8zaG4 Pb9g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:in-reply-to:references:date :message-id:mime-version; bh=cWIF0DFB5DatJlGoNLlVhDEtzv1K3IBvoY5dhgDZgHA=; b=mEcu++QHK7nS+p/K8MYCvC+dXjvQYH+6q+oeJnttxg+NEdNWiYT/9yJZgw/1QBILM/ NErkLfJYmGbuj/+e8f0pfm4dy+Gggo+FXzq4F/fauX98yU+Mq35mnSN5HTWg4qcwHIg9 6h+c3yABvYNe9baWLsANyux6w3jmTIKdN5e6muHDQw2Jl6dky7keiAzyVTWTXPIGv6mx /8EVY2dpby2EIk5myp2Y+Jt2n0opdu+A5nr8l6EZmib0+1ZyaEU5kvuHEeQxHKZ21fHK ekE711sBJaAP/D47FZJTmgeDESSdIPfNc+VRpCmYpd9iWwYVTpYvffhTMLK6E9eI+bTT y8gg== X-Gm-Message-State: AOAM533CxHwVK5Y5UGJ/lbiYRH2qIbXhqsZnMc4bfe6B1Kta/8HeUjdW f+O79inrsevEKHbXA5QkSio= X-Google-Smtp-Source: ABdhPJw1XLxG7cbTRN3JjjrhZQd8xzS+kQNuAHp+Dkmz8hryc3s88GpM+Voz+IxMGGRGp7Wdr/i3aQ== X-Received: by 2002:aed:2703:: with SMTP id n3mr40955231qtd.235.1600586176336; Sun, 20 Sep 2020 00:16:16 -0700 (PDT) Received: from localhost ([208.167.241.222]) by smtp.gmail.com with ESMTPSA id s15sm6060014qkj.21.2020.09.20.00.16.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 20 Sep 2020 00:16:15 -0700 (PDT) From: Ihor Radchenko In-Reply-To: <83d02tifi3.fsf@gnu.org> References: <87zh5xiuk4.fsf@localhost> <831rj9k79b.fsf@gnu.org> <83sgbpiqa7.fsf@gnu.org> <87mu1xa380.fsf@mail.linkov.net> <83imclii71.fsf@gnu.org> <87wo1178cn.fsf@mail.linkov.net> <83d02tifi3.fsf@gnu.org> Date: Sun, 20 Sep 2020 15:15:10 +0800 Message-ID: <87ft7cx6kh.fsf@localhost> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 1.2 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: It seems that the opinions are a bit split here, so I will try to summarise the current state of the discussion in this message and refine my suggestions from original bug report. First of all, let me clarify on the purpose of the menu/toolbar as I understand it. I tried to make sure that it is consistent with opinions of others, but feel free to reply if you disagree. Content analysis details: (1.2 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (yantar92[at]gmail.com) -0.0 SPF_PASS SPF: sender matches SPF record 0.2 FREEMAIL_ENVFROM_END_DIGIT Envelope-from freemail username ends in digit (yantar92[at]gmail.com) 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [209.85.160.175 listed in list.dnswl.org] -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) [209.85.160.175 listed in wl.mailspike.net] 1.0 FREEMAIL_REPLY From and body contain different freemails X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.8 (/) It seems that the opinions are a bit split here, so I will try to summarise the current state of the discussion in this message and refine my suggestions from original bug report. First of all, let me clarify on the purpose of the menu/toolbar as I understand it. I tried to make sure that it is consistent with opinions of others, but feel free to reply if you disagree. Target users: 1. Menu is designed for users unfamiliar with Emacs concepts 2. Moreover, we do not expect those users to read Emacs manual or even tutorial 3. All the users are expected to know functionality, which is common among modern editor apps 4. Menu does not try to show all possible functionality of Emacs, just the most important (otherwise, people will be lost in too many menu items) The aims of the menu: 1. Show people Emacs equivalents text editing functions they would expect to use from other editors 2. Provide an indication how to switch to Emacs-specific commands (by indicating key bindings and command help) 3. Provide the most important Emacs-specific commands, which can be useful even though they have no equivalent in other editors Now, let me go through my original proposal and put in into the context of the above principles, while taking into account the comments on this bug report. ---------- 1. Replacing non-interactive search by interactive search ---------- There seems to be controversy on this part of the proposal: Eli Zaretskii (Thu. 22:59) > I disagree. Many applications have only the non-incremental search > commands, so removing them will leave the user who are used to those > with the incremental variant, which might be confusing for people who > have no experience with comparable commands. Stefan Kangas (Thu. 23:38) replying to previous message > I think this is less of a concern these days. > The applications you talk about also have search dialog boxes, which > make the non-incremental search actually useful. > > Firefox also has incremental search by default, which many (most?) of > our users will already be familiar with. Eli Zaretskii (Thu. 23:51) replying to previous message >> The applications you talk about also have search dialog boxes, which >> make the non-incremental search actually useful. [ 7 more citation lines. Click/Enter to show. ] > > That's true in some cases, but not in all of them. And the dialog is > not really relevant here: the issue I raise is with the concept of > incremental searching being unfamiliar. > >> Firefox also has incremental search by default, which many (most?) of >> our users will already be familiar with. > > Some applications added incremental search, but many don't have it, > and probably never will. Simple editors are in that class. Stefan Kangas (Fri. 00:19) replying to previous message >> In what way is this less of a concern? > Users are more familiar with incremental search, for example from [ 3 more citation lines. Click/Enter to show. ] > Firefox. I checked, and Chromium also has it, and IIRC so does Safari. > Assuming that our users have used any of those web browsers, they will > already have had exposure to incremental search. > > In any case, even if they haven't, the feature will quickly be learned > once you start using it. Eli Zaretskii (Fri. 00:30) replying to previous message > > > In what way is this less of a concern? > > Users are more familiar with incremental search, for example from [ 17 more citation lines. Click/Enter to show. ] > > Firefox. I checked, and Chromium also has it, and IIRC so does Safari. > > Assuming that our users have used any of those web browsers, they will > > already have had exposure to incremental search. > > The example apps you show are not editors. > > And, btw, their incremental search works subtly differently: once you > click the Next or Previous button, typing characters doesn't > necessarily modify the search string, you need to click in the search > field for that. > > So even if the user has some experience with these browsers, they > won't necessarily feel at home with Emacs's Isearch. > > > In any case, even if they haven't, the feature will quickly be learned > > once you start using it. > > The menus are supposed to help first-time users, with little or no > experience in using Emacs. Once they start using the incremental > search, the menus are probably not for them anymore. My reply: The above comment that incremental search may be unfamiliar is a valid concern. However, non-interactive search is not commonly used in Emacs by people who get some minimal experience (correct me if I am wrong). We are promoting the command that may be relatively easy to used for the user, but it does not help the user to learn the more common and powerful Emacs equivalent (which is isearch). As Stefan Kangas mentioned, we can expect that users are somehow familiar with incremental search concept from browsers. People unfamiliar with browsers are very uncommon case - if we start to consider all such possibilities, menu will grow into duplicate of custom interface (in terms to overly too many features). It was also mentioned that isearch behaves differently from what users might expect. However, the non-interactive search also behaves very differently - users cannot go to next/previous match easily. They have to go to menu->edit->search->repeat forward/backwards. On the contrary, isearch does provide forward/backward search buttons at least (though they are located far from the entered search string - in the toolbar). I would argue that isearch does a better (not ideal though) job creating familiar interface. Therefore, I would favour isearch over the non-interactive version. ----------- 2. Showing next match/previous match toolbar icons to assist users, unfamiliar with key bindings ----------- When writing this suggestion, I did not know that these icons are already shown on the toolbar. In fact, toolbar during isearch does even better job - it provides next/prev match _and_ more useful commands from isearch-mode-map. Moreover, it even gives a button to show help buffer about isearch. There is no such toolbar functionality for non-interactive search though. Eli Zaretskii (Thu. 22:59) > > I would also add that we can show transient next match/previous match > > toolbar icons to assist users, unfamiliar with key bindings. > > Please show the code. Please also keep in mind that changes on the > tool bar require redrawing of the tool bar, which could cause > unpleasant flickering. We need to consider this potential downside. Stefan Kangas (Thu. 23:38) replying to previous message > >> repeating search together (via next/prev buttons). > >> Current Emacs menu forces the user to click Edit->Search menu->... [ 7 more citation lines. Click/Enter to show. ] > >> multiple times to repeat the search. That is not a pleasant experience. > > > > If you are suggesting a "repeat last search" menu item, it could be a > > useful idea. But removing those items because we don't have a simple > > repeat item is a step in the wrong direction, IMO. > > This is a separate discussion, I think, but on graphical displays I > would ideally like to see a user interface like the one in C-f Firefox. > It shows clickable buttons for next/previous match, toggles for "Match > Case", "Whole Words" and how many matches there are. Eli Zaretskii (Thu. 23:51) replying to previous comment > > > repeat item is a step in the wrong direction, IMO. > > This is a separate discussion, I think, but on graphical displays I [ 6 more citation lines. Click/Enter to show. ] > > would ideally like to see a user interface like the one in C-f Firefox. > > It shows clickable buttons for next/previous match, toggles for "Match > > Case", "Whole Words" and how many matches there are. > > Improving the (non-existing) search dialog is a separate discussion. > If you want to work on such a dialog, please do. but that is not what > we are talking here. The proposal on the table is to remove > non-incremental search commands from the Search menu. let's stay > focused on that issue, okay? My reply: I think I need to clarify that by showing toolbar buttons during search, I proposed something similar to C-f in Firefox - buttons for prev/next search are shown right above/below the input box for search string. In the case of Emacs, that would mean showing prev/next match toolbar buttons right above the minibuffer. Moreover, as I mentioned earlier, there is already toolbar functionality for isearch. If the toolbar was moved to the bottom of the frame during isearch, it would be sufficient to achieve what I had in mind. Current top position is very easy to miss (I did miss it even though I was looking into isearch menu item specifically). I believe that the same functionality can be implemented for non-interactive search - we can reuse the same toolbar as in isearch. Moreover, having prev/next match buttons will effectively provide the following separate menu items in a single search command (or maybe in two commands for forward/backward search): - Edit->Search menu->String Forward - Edit->Search menu->String Backwards - Edit->Search menu->Regexp Forward - Edit->Search menu->Regexp Backwards - Edit->Search menu->Repeat Forward - Edit->Search menu->Repeat Backwards Same with isearch, I believe that the toolbar position would better be right above the minibuffer. On the flickering issue: Does it exist with the current toolbar for isearch? If there no bug reports on it, it is probably just hypothetical and we should not care about it. ---------- 3. Renaming Forward/Backward string to Search forward/backward ---------- Eli Zaretskii (Thu. 22:59) > > Also, the article suggests to rename "Forward/Backward String..." into > > "Search Forward/Backwards...", which sounds reasonable since [ 5 more citation lines. Click/Enter to show. ] > > non-programmer users may be confused by the meaning of word "String". > > The "Search" part is in the parent menu item, so repeating it would be > a waste of space, which is at premium here. > > If people agree that removing "String" will help, maybe we could do > that. But please note that "String" contrasts with "Regexp" in the > next items; if we remove it, won't that be less clear? Stefan Kangas (Thu. 23:38) replying to previous message > > The "Search" part is in the parent menu item, so repeating it would be > > a waste of space, which is at premium here. [ 7 more citation lines. Click/Enter to show. ] > > > > If people agree that removing "String" will help, maybe we could do > > that. But please note that "String" contrasts with "Regexp" in the > > next items; if we remove it, won't that be less clear? > > I think removing it is fine. Already saying "Regexp" makes it clear > that this is the odd one out. > > (IIRC, this is what you find in other software: the regexp case is the > one with a special mention, otherwise it's just called "Search".) My reply: No space will be wasted when renaming "Forward/Backward string" to "Search forward/backward". The char count is the same. But, as I said we add an extra benefit of not using word that is potentially confusing for non-programmers. ------ 4. Unfamiliar "Search tagged files..." command and other menu items, that user is not familiar with (yet) ------ Eli Zaretskii (Thu. 22:59) > > Finally, find "Search tagged files..." and the following "Repeat" menu > > confusing. What does "tagged files" mean? [ 11 more citation lines. Click/Enter to show. ] > > Feel free to suggest a better name for the item and/or a better help > string. > > I tried to click it, got a prompt about regex, then prompt about tag > > table (what is it?). Finally, I got error "File ~/TAGS does not > > exist". This made me recall vague memory about Emacs manual talking > > about some kind of completion feature for large code projects - > > something I never used. > > Did you try "C-h k" before selecting that? This would display the > documentation of that command. It's a canonical way of learning about > menu items that don't explain themselves enough at first reading. (Of > course if we can make them more self-explanatory, it's better.) My reply: > Feel free to suggest a better name for the item and/or a better help > string. I cannot suggest a better name since I have no idea how the TAGS functionality works. I just wanted to point out that it was confusing for me. I never had to deal with big multi-file projects where TAGS search is needed. > Did you try "C-h k" before selecting that? This would display the > documentation of that command. It's a canonical way of learning about > menu items that don't explain themselves enough at first reading. (Of > course if we can make them more self-explanatory, it's better.) As you said in another message: > Once again, menus are for those who don't read the documentation, but > just start Emacs and want to do something useful. We cannot expect the user to know about "C-h k". My concrete suggestion is using the tooltip to hint the user how to get more information about the command. The tooltip is already showing a short (yet longer than menu item name) command description. I suggest to add something like "Use mouse-3 (middle click) to get more information" and bind mouse-3 to show help buffer on the command. Best, Ihor Eli Zaretskii writes: >> From: Juri Linkov >> Cc: stefankangas@gmail.com, 43308@debbugs.gnu.org, yantar92@gmail.com >> Date: Thu, 10 Sep 2020 22:14:00 +0300 >> >> >> But it you really don't want to remove nonincremental menu items from >> >> the Edit menu then they could be swapped with incremental menu items, >> >> i.e. to promote incremental menu items higher, and demote nonincremental >> >> menu items deeper to the submenu where currently more often used >> >> incremental menu items are located. >> > >> > That'd be the opposite of what the menu should be doing, which is >> > putting the easier and more familiar commands closer to the top level. >> >> TUTORIAL teaches about incremental commands: > > Once again, menus are for those who don't read the documentation, but > just start Emacs and want to do something useful. From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 20 Sep 2020 08:11:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Ihor Radchenko Cc: 43308@debbugs.gnu.org, stefankangas@gmail.com, juri@linkov.net Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.16005894371672 (code B ref 43308); Sun, 20 Sep 2020 08:11:02 +0000 Received: (at 43308) by debbugs.gnu.org; 20 Sep 2020 08:10:37 +0000 Received: from localhost ([127.0.0.1]:48611 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kJuQf-0000Qt-Dd for submit@debbugs.gnu.org; Sun, 20 Sep 2020 04:10:37 -0400 Received: from eggs.gnu.org ([209.51.188.92]:37954) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kJuQZ-0000Qe-VC for 43308@debbugs.gnu.org; Sun, 20 Sep 2020 04:10:35 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:60003) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kJuQU-0002lQ-46; Sun, 20 Sep 2020 04:10:26 -0400 Received: from [176.228.60.248] (port=3627 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kJuQP-0001Ib-BB; Sun, 20 Sep 2020 04:10:25 -0400 Date: Sun, 20 Sep 2020 11:10:19 +0300 Message-Id: <83bli027is.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: <87ft7cx6kh.fsf@localhost> (message from Ihor Radchenko on Sun, 20 Sep 2020 15:15:10 +0800) References: <87zh5xiuk4.fsf@localhost> <831rj9k79b.fsf@gnu.org> <83sgbpiqa7.fsf@gnu.org> <87mu1xa380.fsf@mail.linkov.net> <83imclii71.fsf@gnu.org> <87wo1178cn.fsf@mail.linkov.net> <83d02tifi3.fsf@gnu.org> <87ft7cx6kh.fsf@localhost> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Ihor Radchenko > Cc: stefankangas@gmail.com, 43308@debbugs.gnu.org > Date: Sun, 20 Sep 2020 15:15:10 +0800 > > It seems that the opinions are a bit split here, so I will try to > summarise the current state of the discussion in this message and refine > my suggestions from original bug report. Thanks, but this method of summarizing the discussion by repeating most of it is not useful. It makes the "summary" very long and tedious to read. A summary should just show the main arguments without citing the OPs. People who want more details can always read the archives. > First of all, let me clarify on the purpose of the menu/toolbar as I > understand it. I tried to make sure that it is consistent with opinions > of others, but feel free to reply if you disagree. I don't think there's disagreement about the principles. When you posted them the last time, I don't think anyone objected. So I see no need to reiterate them. > Therefore, I would favour isearch over the non-interactive version. And I'm against it. Where does that leave us? More generally, how is it useful to keep repeating your opinions which are clearly not agreed to by at least some? A useful step would be to propose some compromise, or modify your proposal in some other way that might take away some of the objections. And what are we actually arguing about here? Both non-incremental and incremental search commands are already in the menus. The proposal to _remove_ the non-incremental commands is based on some (unproven) assumptions, so it runs a risk of adversely affecting users which those assumptions failed to consider. Why take that risk? I've seen no answer to that question. I agree that incremental search is more powerful, but your principles don't (and shouldn't, IMO) state that we want to show there only the most powerful commands. So having both is having the best of all worlds, and I see no reason to change that. > It was also mentioned that isearch behaves differently from what users > might expect. However, the non-interactive search also behaves very > differently - users cannot go to next/previous match easily. This can be fixed by providing tool-bar buttons for repeated search, or reusing the buttons we already have for incremental search. It's a separate issue that is easy to fix, and no one objected to providing this. So it doesn't have to be an argument regarding the main issue here. > ----------- > 2. Showing next match/previous match toolbar icons to assist users, unfamiliar with key bindings > ----------- > > When writing this suggestion, I did not know that these icons are > already shown on the toolbar. In fact, toolbar during isearch does even > better job - it provides next/prev match _and_ more useful commands from > isearch-mode-map. Moreover, it even gives a button to show help buffer > about isearch. > > There is no such toolbar functionality for non-interactive search > though. Let's add it, then. This would be a good improvement, I think. > I think I need to clarify that by showing toolbar buttons during search, > I proposed something similar to C-f in Firefox - buttons for prev/next > search are shown right above/below the input box for search string. Firefox is just one application. Other applications show the next/prev match just below the tool bar, above the text area. I see no reason why we couldn't do the latter. > Moreover, as I mentioned earlier, there is already toolbar functionality > for isearch. If the toolbar was moved to the bottom of the frame during > isearch, it would be sufficient to achieve what I had in mind. Current > top position is very easy to miss (I did miss it even though I was > looking into isearch menu item specifically). Moving the tool bar downwards is a non-starter in the context of this discussion. It means a very serious redesign of the Emacs display, and will confuse many users. It makes little sense to make such significant changes, for a minor issue like this one, because we insist on following the example of Firefox, instead of reusing what we already have. > Same with isearch, I believe that the toolbar position would better be > right above the minibuffer. We will not do this, not because of the search commands. Feel free to start a more general discussion of moving the tool bar to below the windows, but let's not complicate this particular discussion by such grandiose and radical ideas. > We cannot expect the user to know about "C-h k". But we can expect them to know about the corresponding item in the Help menu. > My concrete suggestion is using the tooltip to hint the user how to get > more information about the command. Improving tooltips is of course welcome. Please suggest text you think will be more helpful. Thanks. From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 20 Sep 2020 16:27:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii , Ihor Radchenko Cc: 43308@debbugs.gnu.org, stefankangas@gmail.com, juri@linkov.net Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.160061919120836 (code B ref 43308); Sun, 20 Sep 2020 16:27:01 +0000 Received: (at 43308) by debbugs.gnu.org; 20 Sep 2020 16:26:31 +0000 Received: from localhost ([127.0.0.1]:52476 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kK2AZ-0005Q0-IX for submit@debbugs.gnu.org; Sun, 20 Sep 2020 12:26:31 -0400 Received: from userp2130.oracle.com ([156.151.31.86]:53464) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kK2AX-0005Pn-RN for 43308@debbugs.gnu.org; Sun, 20 Sep 2020 12:26:30 -0400 Received: from pps.filterd (userp2130.oracle.com [127.0.0.1]) by userp2130.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 08KGNrEm059584; Sun, 20 Sep 2020 16:26:24 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=mime-version : message-id : date : from : sender : to : cc : subject : references : in-reply-to : content-type; s=corp-2020-01-29; bh=a5yFjjf9Cav6FTo0UlEF0FZv7eV4iXZaWsEjMEjT2uM=; b=m/GkeXtmjfC2sGqXFv9KEsDGY1MajYvumCSOz2eV6eXq+1C/7fgCt8kpi5Ajq/p4EWYd /kGKs0dRrKTqcEop5XoXw0fB/wVSocFzI/fHG7DPUI/JCnN6EjxEUo0+CTPkaBbl5s+Y Rcj7yPwhyGyM6kEI73rRrTz9f00vcDfE29VKIVZP6aWOau6lV6O35HHLFH3jLO71JBd0 ddQMRH3UEicJWT7KCVUF8l/eBTYnmooll/EZSd0WOimdSsx3riQQRkDmEClrxV75krt4 DygvKMvHDvybL2J4NmEuBPCNFIp2DCgbgBydhejBXFs1WA16kNvlK2rgK7/7KT1ihcjz Gw== Received: from aserp3020.oracle.com (aserp3020.oracle.com [141.146.126.70]) by userp2130.oracle.com with ESMTP id 33n9dqtp2x-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Sun, 20 Sep 2020 16:26:23 +0000 Received: from pps.filterd (aserp3020.oracle.com [127.0.0.1]) by aserp3020.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 08KGPmoF168662; Sun, 20 Sep 2020 16:26:23 GMT Received: from aserv0121.oracle.com (aserv0121.oracle.com [141.146.126.235]) by aserp3020.oracle.com with ESMTP id 33nuvxbq7v-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Sun, 20 Sep 2020 16:26:22 +0000 Received: from abhmp0006.oracle.com (abhmp0006.oracle.com [141.146.116.12]) by aserv0121.oracle.com (8.14.4/8.13.8) with ESMTP id 08KGQGA5006870; Sun, 20 Sep 2020 16:26:16 GMT MIME-Version: 1.0 Message-ID: <498f6be5-f1ab-4f82-9cf1-ed5893f10ea1@default> Date: Sun, 20 Sep 2020 09:26:13 -0700 (PDT) From: Drew Adams References: <<87zh5xiuk4.fsf@localhost>> <<831rj9k79b.fsf@gnu.org>> <> <<83sgbpiqa7.fsf@gnu.org>> <<87mu1xa380.fsf@mail.linkov.net>> <<83imclii71.fsf@gnu.org>> <<87wo1178cn.fsf@mail.linkov.net>> <<83d02tifi3.fsf@gnu.org>> <<87ft7cx6kh.fsf@localhost>> <<83bli027is.fsf@gnu.org>> In-Reply-To: <<83bli027is.fsf@gnu.org>> X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9.1 (1003210) [OL 16.0.5056.0 (x86)] Content-Type: multipart/mixed; boundary="__16006191759147394abhmp0006.oracle.com" X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9750 signatures=668679 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 phishscore=0 malwarescore=0 mlxscore=0 suspectscore=0 adultscore=0 mlxlogscore=999 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2006250000 definitions=main-2009200145 X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9750 signatures=668679 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 mlxlogscore=999 phishscore=0 priorityscore=1501 malwarescore=0 mlxscore=0 impostorscore=0 clxscore=1011 lowpriorityscore=0 suspectscore=0 spamscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2006250000 definitions=main-2009200144 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" --__16006191759147394abhmp0006.oracle.com Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable FWIW: Attached are screenshots showing the Search menu that I use, in menu-bar+.el. The only thing in the screenshots that isn't vanilla is submenu Search > Icicles. The rest is all vanilla. There are 5 submenus (besides Icicles). You can see how I deal with forward & backward, with with incremental & nonincremental, and with repeated nonincremental (forward & backward). I think it's pretty clear for users. (I used to have nonincremental items at top level, but moved them to a submenu because their use is less common now. Admittedly, if someone uses this a lot then accessing via submenu is less efficient.) __________ Search Incremental Search > Nonincremental Search > Replace > Xref > Tags > __________ Files Regexp (`grep')... This Buffer Regexp... Buffers Regexp... Buffers Regexp for Bufname Regexp... __________ The last 3 items are for `occur', `multi-occur', and `multi-occur-in-matching-buffers'. --__16006191759147394abhmp0006.oracle.com Content-Type: image/png; name="drew-emacs-menubar-Search-Incremental-Search.png" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="drew-emacs-menubar-Search-Incremental-Search.png" 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 HfzWiywU/wENZF3q8bOt4gAAAABJRU5ErkJggg== --__16006191759147394abhmp0006.oracle.com Content-Type: image/png; name="drew-emacs-menubar-Search-Nonincremental-Search.png" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="drew-emacs-menubar-Search-Nonincremental-Search.png" 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 FmOo2wAAAABJRU5ErkJggg== --__16006191759147394abhmp0006.oracle.com Content-Type: image/png; name="drew-emacs-menubar-Search-Replace.png" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="drew-emacs-menubar-Search-Replace.png" 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 P8K98rfJfWO0zV1r8zyh9WyaifTF5P6MEUIq4eX3I1yM8ZpE5CK/MV44/Jw1TTKFsRbSF5Mr44W9 P6uRUTjMEM/5uvwtmlZO6z+fa+gmfWFe/8yosWCEEPJ05+v/wf1uPYSEKQCALxj5poSovfXkgIxd MQUtTIDV/ncjzoqJbgoC5ScHbMAaCHU2a7cmTSztycGT1kmz6FSqvFmSCSFyabOcmrKWUZhrc7Xl ZtJLKTFBJcSUKQXs6djr2WkYxsRt0bbczJUxZdk9JhFCCLH8VZgrY26zk7ZFYl81LTvv/G/RSRNp W8u8KoJc2TqS8mNkTHur36GbrTBe2fDNNcnHr7K21977tThZLc53uEPjhKg3JqBgG8BnpAxFBTfj lUaj0Wg0Cin1bflx2bUJk95tNCr8QaLTY5zti7SLWbs06YXoIk+4VYnIpU3CL9rCk2iuoTOKY5Uw yx6NdjTyztaz8zBOTJ9n17VUoWFhjNXhZAGOq98JU7mo5taV8njlgqq5Jvn4JS/KlWc148+FajOJ LHXSteGd04vz6fAsFyoGg0XXGxt6Rb26ffN9FGzD4CFhaiRM5VI2fzmnZcvkUla7H+zpTn7vNdPR 68d7C5aiVDo8yyU9Umtu89UynKSbWbs2sWfcjDynyy1u5iGpDemLL3bmv3/w252fr2U/au6ouaUw PX0+V5nZn/6r8zqw3IZ2UuvZNBN7V0QuZdWUq8ckIhf5lfq7xhyl1ZmNV+eXHRe7qR/HN43O3f8W nglTpybWBsZqchySxpahh2M7CwnT6CLPqpfgfUQWbh+Yzimjuf6eTzHppTFuFVfeAHxDS0jJwpye bWJuxNkyN2eU9xnJSSljvtQ2doUxijeb/2MVnUpZ81cdztqtSTs8Kky1GaeXUqIosvEbbXzVy8Ic R/jFKJNe44kxWhvL0h57PXtj0kupMhc0FX0qI/SepBAT2jQpkxDZpquOzrOQBUFqo3M3naUymQBb 1r46TKupee4ZUx0qLrqdAF+Ebh5JUud6406rtU07nEsBs3tluFMTt6L0dgu8bcX5TWvDaSRKnlOZ aHqraU7uY2DSu3qAiIJtAN9QIg/lVqE5smakIJn0bkWfQm1PVXj9HqzAQUK9r2gzXunsxC86lRK1 vb+bWbs16ZHoVIq0deealAlyhF9LM0QLHhyCt+giz4pqtrMv6zma0/KrWqtdbVk8JhFCWL4QuK1M Soipwq77GojmGoWUqI+LMK07d+nItHLawqR39TmbV5N1SFRwM3DDuH7o8W0H3er34+elDHU7YN+k zG+a/6/WG+sTEqTQyEXN70qCwKRtW4X+QWLvwqVDvTLceF8kKbUHlybG25bhZKiESFi1J61Yu2l3 l4XIHFlz3K/cRyILkeAmScXXcq2XpY0xEClDbU/5+t4JONXw+PkuOB4/u+yow92/Z7MeBv1f2NO6 ej2+7KBrg3n8vKkQxTvUl1b1Uyqinh9oP9ioXUaL2uM2lR79z5G1hr7ZuHUobYus6f2c6TTSrYly +rYq2T5ACDHOlpj0Gs+KDte25MdllwvvHiMhhBASX2y1LO2OgTABtq0yIwDwBynTQSGlt2iuQBId lDf0cNb+d6YW9iTJQiT4eAlx20kYQOjG8pW26mXc6o3bqYpXi10KqbLpli63Dj0qwz1qnl2K0l0K vM3cU/+tCvKNaZ7F2G2MAQXbAEPAUi9vZBN6oOUNtic3ax86UwvbN+Z7dKC3fJ5WcKw3br8qPpor pIxbP9069KoMdxsDIZ0VpZu5B00tRtLuwNqCe0cBfM/8yxB9/m2IAc66/wa+sNFcA1enoH0+Dt2Y AOvxM4BMerdRcckFmkQXjc+4ddj0vhFBeYxBFua4sULFXtdkCcqafyZR49ypx0hafdKsrTG4Z20B AADAt/wcurnUG3dWrW0qPHLr0KMy3LXm2b0ovY0C76bifH123gX5TYvlUozdzhiMi25t/6YAAAAA DJyPQze3euNOq7Wji7wWD7kUMLtXhrs08ShKb6vA21ycb+E1krZWTrtjQME2AADAUOr3j4MMha7r tDto2F5xfhcjaacJCrZh4PDjIAAAXahWqwjdmlh+F67jpu1HWq3n09VIWo5BKdg+7bcdg9+daOhW q9V63icAwGC98cYbBKGbTvkZW02q68rw4/+s4vFHclp/2hFOGVx1AwDoAkI3ABgMhG4AAF0YzNMU AAAAAKA7CN0AAAAAhgZCNwAAAIChgdANAAAAYGggdAMAAAAYGgjdAAAAAIYGQjcAAACAodHX0E3K UA4ykvLAc/ND5a1NHKfYyULE3Gubj0/XWqmzsL3slH0Bu+wGoDekjNuu0P6OdYrY9k9t8aVMW4eL Nj92zCYAAC29MvPn//y3//vfixcvEkJ+//33ns/g3Llz+v+ZGKcI1fiN8UJj7y7HcVyMIeSovJ6v T3CxpkcAMDH1Ey0dldfzl3Nqn0lqfXr6QahVS1mYnn60UDncWo4xzS87JxdNy8WFajOJLJWcDdNd dQZwXHKR3/jX88Zb9o1QFua+brzx/FWnXa5f6vV6fw47hBBCZCHy1uSKsXNyXKiWfTI6G6YJkYv8 /qUPW+6nbX7smE0AALzV6/W+hm46uchvkKTpa8M1dGufpQs6PFLjP622it2Oyuv58+/pgZrtZees y8WMUjufbV5A7AaDIhf5ZxfY8vpT654gf8N99oicodBNOyn7nDXeY2LajonQDQCGSL1e99W9bnrO 00gyWDIORr6jrSwEG2Ca+9Bzs7IQoYJcmYgJiqIyku2lbUCmOSrtlaG0kXAau6J/Nzr1Zl8syZo5 bm4iCxHTfI1XykIan0eeBhTxJZ4Vt81bqrTKEX4p7tmq1b5muT/B74lXaZUrp5bafayv96I572Lm Ntj1AOCE+eiq252Vh5P3D7eWuVBt4YOv1USjcdoqC5HI3kLlcGuZ40IvynTYdiprueomZYKfjue2 bjLq3Eynvtrn2PAsl6R2lCRrjKGtLwkhshAJbsaVGXKhB5ORYoiLMeSovJ7f2//Dtft7zXlVy3Ip Z/r/dUuZr0tvRMpQiQNefX/kXvCDf5JxtQfHJmx4gtqZv/siORum1WsJf39fWVErd/LqGmw3YQyn nFzk9y9xH199qG4xhBBCpNWZZ9eys+Rb1wvdrfY1WYgEubGCfndCNjLZ+cbWv6tu0urMxvhf7rqO z3yA8Fg0j11M/ubeheze1rL9Xg1cdQOAnvPXVTeWX1POi6OLPFt+7HTmql3Ciqadz6DFhHrimxBT hVz0WMORVjmijUgZk+nSRXzR9RReH8McWWvsah9z603aFlnT+7lCquUAmPQaT7hVyfYBQkiqoM2P Sa/xrHgbp/9ACGHSS6nyZknZGGThttjOFSiPfU1a5Qhf0fcvZWPb9vmVN53pAlnz1cJWi+ayizHp nLaWmPRSihw8wZ4HACfHR6GbKbVISPPBj7kRZ8WEd3ImVWioKoHbx8vjSNsiKXNBPQsS5MpuQ3Uc QyFV5lb1+bv1Jj85sHbGBNgWTYjy7SAmqITtK1hLECufuTLW5ZLD6ROd0mI3ubRZTk1Zz2rMhZcZ ibTa16Rt0bYHMFfGhidaYdK7jUajUeHZ5mmtFs1jFzMiwoTY+0EDAJj4KGFqZG+Oyuv5R1eVNKmR caDDs2oGY4GvNadnrF3Q5ryiY8KUaWpjeWktFlU4tXFbLiYWqs0kiiHv3n68t+C2IlwHQAgh5OlO fvc5O8PpuZim1AxyNWBsBMwotT59f4Qb/YH7dvLLW2HavB3rld/6Jua5rzXtvd1tbH0sU3i6k997 zVYuZFp+010ZXovmvotJGSo431jQ7m2o6Z/DTggAPefXClPn0I0QonynJPWgzNynPaQyykWtfZij JY/QzfFw7zQf1+ViRk3jdOvN/r5pdG5NlLvozucqM/vTf9VXg1zkV+rvGsOSVmc2Xp0/RrUsnALG pk9ffLEz//2D3+78fC37UZhup6jbdV9r2jLlUrbz0uz+hW50eKS28MF/W0NQx9DNc9FcdzG5lM1f zmnlq3Ipqx29ELoBQO/56163FqSMOX3jlbIkhBBZmOO0xBATYPXkpZRpM53BpJdSZS5oquXMdHrn mNLFnCC798bciLPqR+yjcx2ALMxxhF+MKve8zZlGJSaMHxlNiCy/GCVKIiciyE7/gTOESS+lRFFk 4zdaB1je+1rzlqlskD0cbK9Fc4WUmGi91bdcNMddjBDjBg9ZmDPfWqHDbggAvTM8oRsTOFALAIKb 8YpzDYJeIkAFubFCQ/0Qk94tpNRJ21OO97g4ieYaejOKCm4G2vjOs3exyGuRmUtvTHq3whPtljbr 6BybSJmgXpxgig0JIYTlC4HbRpnGbrs/hgBnQ3QqRdr7iYxW+1o016jwB8aWGa/4fmOL5hqNwpjl 3tExp0om70Vz3sWUk6igVpxkKjUCADgJ5/5x+PyPL56Pjo4SQl6+fNnzGZw/PzzRoQ9IGep2oJsv wq4bAgxEtVrFYQcAoFPVanUw97qBM8vP0XUGd9XAcOnvg7AAAE6JobrX7ZSyPBE7QfQsLwAAAEAz JEwBYACQMAUA6EK1WsUBDgAAAGBoIHQDAAAAGBoI3QAAAACGBkI3AAAAgKGB0A0AAABgaCB0AwAA ABgaCN0AAAAAhka/QzdZiJh+grbdxy9rrdRHP9teHp/ld3F72TEAnE44aADAoPT7QVhH5fX85Vxj 7y7HcVySWp+efhDiYt4PfpKF6elHC5XDreUY0/yyF+QivzFeUEfFhWoziSyVxEOlAE7OsD8ICwcN ABiIer0+iNCtPqEGa3R4pMZ/Wm0Vux2V1/Pn39MDNdvLXpCL/AZJasNgRqmdzzYv4DAMcHJOQ+iG gwYA9J0vnmHKBpRjn5Qxp09lIUJlJOXfIFcmYoKiqIxke2l81p6AVdorOY2MRMzpjfaStGNX9NDQ qX9i61JSx+vaRBYippyK8UpZbOPzbaaQAcBvcNAAgL4Y6FU3KRP8dDy3dZMhhBC5yO9f+lA7adU+ x4ZnuSS1oyRZYwxtfUkIkYVIcDNeOdxa5jgu9GAyUgxxMYYcldfze/t/uPb/7d1PaNtYHgfwF6d2 MkmjpE6Zbcvs7oBofchha4Jy6p5cTAJlD0FNGfZQndwt2siHPQTNYQ9zESEtJN71IaHsiFJ2Z2c1 yS6kExDxJTCX0UxdKO4m7oi5tae04O1pGdo56L8jWU78R3b7/SBoZD89vacHTz+9p1c/3NtamaP1 Yiazt2gkmn6tJWfqHo09D9DGhOznnxlpAvInqkCxFcn8/PyD9K2vyWUzB99DmJkr1O7te68Xbs4k zSnfLz5JEqLvSKt31x9dfbi/tdL0FDJA33unRt3QaQBAt0Q06iaz5sMiK3NKIdtSXuqaSKQN3uy0 snmJkbft59j5PO/0ZtYTcZbnfbs4u1Q5slErWWmC8le3Zcb1eUHhQotE8xsSEdfUugSEEE6xzkfz GxIjL+MhGqAPoNMAgChEEbpxSs1UTi23tjJL3ZaJJqbtVV5pUXO+dKYv6Nl5RmYbn8oslcJp4pqd LCh//VnFPTtCCJ1iwotE80uczFKszC25w0drythIc3Hq2FcBAKKATgMAohDtu25teV50IkGD3zge zZdqtbJUcb8i5y9bUDiZdafxy18/0IKzaFAko7P2dLsA0N/QaQBAV0W/TIF4n0RNId2chU4xpPKs yciP5ku1cniomM07aYLyP/K5U94GRdKLOXFKKUtEzLmLoB24X2Peln0vCAD0LHQaANBF0YZuejEn aty1LCGE0CnGnnVQBVZuKgOaX+I0Me1ahCX4xWWq4H4iDuvkjExzRT04f3p2ntGcvtRd3sAi6cWc SKR81nh9xd0POw/sqsDKjJTPEmM9Waao+/0BAL0FnQYAdE+kyxSotDilWBMDNF9SOPOr7WtliQnJ xZQt1OzDKCq9mZr1icvoVIW1EsyXw1dGZPOS1ckG5E/zpbJErLdTvOX1PUQV0vZ7xq5unhBCGElJ LTsLN0r+yygAoIeh0wCAbhn4av/5r18/v3TpEiHkzZs3bT9BLNYLc7IdpwrUcqp8gg70xAcC9LVq tfqedzvoNADgBKrVah90cH1AFeoX8WPxtgAABsNJREFUgAEANIBOAwBOCqHbCXl+fJoliu/CVgAA CzoNAGgLTJgCQAQwYQoAcAKYMAUAAADoJwjdACBKsQ6Iuk4AAB0U6/ivNAMAAABAmwz8u/T8o3G8 6wYAXVWtVqMuAgBAX0LoBgDRe/z48eqDfxFCEkNDpxJDg6cGBwbQdQAA1Pt4mAxs7j//FVaYAkCk njx5svr3rxKJxCg1Pjw6Go8nBtB1AAAccekD/OcgANADnj59+pd//uf0xMTZcxfGziQTQ8OxQXQd AAD1fjNKBm/88U8T///f5OQkIeTt27dtP8fAgGchhF7MfHx1UbLsUgs3Z5KhmVhHvZgW5+gju61T BSp9Q3K0LeN2ar3Wbbn4UemLNoITOzw8/O7gh7GJM2fPX0j+4hw1kRyhqJHTY9iwYcOGzb39NHmh 26HbK+3++i8Ltb17oiiKC9T969e/D70F68Xr1/+7WN7fWpmjj+62g74jfXlZMUslTr+4wd5pLqzp nnbUug0XPzp90EbQgsPDw+/2fzg9Pn7mww/HJs4Mj4zEE0On4nFs2LBh680tMTwcTwx1fyOk66Nu r7T764dXzHghOXP+hfRpNSx8eKXdX4/9zg4d6nbbQd+RviQLVjHoS9TunzfjvRUXtKPWbbj40emD NoIWvHz58tun1dExajx5dnRsPJ4Yig0ODsRi2LBhw9abW4QdZvRvkzAp42asClSmqFuf6sUMJajG v2lRIzJLUZSg1u06aU12Dsbxxm8GCipx/3yg6ywNTF20gxW//EldlqpZ3sBD9GLGKbFrz6i2k96v dGG1dmV8tOINHeviW1/YZ647xOciqYJ5bZxi6p69BlcsXC+1EQAAQHdEOuqmCulPLxe2fk8TQoi+ I31z9g/WKIqVjpm5KS5Qu8Y83xyd9O4SQvRiJr05X97fWhFFcfr7q5mdaXGOJq+0++t734z89uHe 1socrRczmb1FI9H0ay05UzdW4xnRMaYIP//MSBOQP1EFiq1I5ufnH6RvfU0umzn4HsLMXKF2b997 vXBzJmlOQn7xSZIQfUdavbv+6OrD/a2VoFlM/1qLU4o993knc9U8yltxb1u0ePGNL+6umoWdfrF4 62/mnKX+jwfxO3tbK/UTsfqOtHr3RyP9ArV7+9ai9Mi1ZycLuMh91EbQosPDw2+fVkfGxqjk5Mjp sVPxeLQPtQAAPSuKzlFmzdELVuaUQralvNQ1kUgbvHkXzeYlRt62B1bm87xze7WGaLI873vPtUuV Ixu1kpUmKH91W2ZcnxcULrRINL8hEXFNrUtACOEU63w0vyEx8nLYqI66JhKpbF864yin3t6KB1Tz pBffrnY2LzHagW6WoGCdkeaXOFJ55tSAWzK+ovklrm7PTNawEX0L3wdtBAAA0BFRhG6cUjOVU8vN TOsFU7dloolpe64uLWrOl858Gj07z8hs41OZpVI4TVyzkwXlrz+ruKfrCKFTTHiRaH6Jk1mKla34 xWDNWhppLk41VWvP2Ql9ccoVLnm/863myS++N3PnpM58Iiu703tqV7dnaNiIfoXvhzYCAADojGin JNoygOEEIwa/oSSaL9VqZaniflnMX7agcDLrTuOXv34QFF00LpIRPfjFL93XxtEjVaCo9OZ8uWZG VsfPoZlGtL0/bQQAAFCvF94m8RskCrnvWugU45mca5yYL9XK4dFKNu+kCcr/yOdOeRsUSS/mxCml LBEx5y6CNetICPEbUfOpyJFTHBlhaloLF99zdmdCUX9WOV4RjtWIht5vIwAAgM6INnTTizlR465l CSGETjH2NJgqeCfdAtH8EqeJadeqQMEvLlMF9xBNaGTEL3GacecOyp+enWc05+buLm9gkfRiTiRS Pmu8T+UODJwRJFVgZUbKh7yCdvQURs6Nj6rX8sX3sCIhvZgLnO8M0GQj+hwTdRvpxYyx3PToHwAA AJ0R6TIFKi1OKdZMFc2XFM78avtaWWJCcjFlCzX7MIpKb6ZmfeIyOlVhrQTz5fCX87N5ybrrB+RP 86WyRKzXpbzl9T1EFdL2i++uuIMQQhhJSS07awdKgUsMPLU2p3+tSjVzFCFtvvgmI9BJWwsIjj9h 2lQj1h/T620EAADQCfgN0/ZQBWo51XT81I4D4bjQRr2sWq3+Vdk+e/7CR/TFyXMXhj8YiQ0ORl0o AIBe9F7EVR2nCvUrEqHXoI0AAOCdgNDthJz/pp+iKJYojddEQhTQRgAA8O7BhCkARA8TpgAATYoN hKcBAAAAgJ7gGRKLdUBUFQMAAAB498Ta/4PzAAAAANAZ5rtuURcDAN53eNcNAKAZPwMFY5pLhkOl wAAAAABJRU5ErkJggg== --__16006191759147394abhmp0006.oracle.com Content-Type: image/png; name="drew-emacs-menubar-Search-Xref.png" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="drew-emacs-menubar-Search-Xref.png" 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 AAb3PzywqOchgOy2AAAAAElFTkSuQmCC --__16006191759147394abhmp0006.oracle.com Content-Type: image/png; name="drew-emacs-menubar-Search-Tags.png" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="drew-emacs-menubar-Search-Tags.png" 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 --__16006191759147394abhmp0006.oracle.com-- From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 21 Sep 2020 19:15:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Drew Adams Cc: 43308@debbugs.gnu.org, Eli Zaretskii , Ihor Radchenko , stefankangas@gmail.com Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.160071566930394 (code B ref 43308); Mon, 21 Sep 2020 19:15:02 +0000 Received: (at 43308) by debbugs.gnu.org; 21 Sep 2020 19:14:29 +0000 Received: from localhost ([127.0.0.1]:56250 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKRGf-0007uA-7l for submit@debbugs.gnu.org; Mon, 21 Sep 2020 15:14:29 -0400 Received: from relay11.mail.gandi.net ([217.70.178.231]:43673) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKRGc-0007tq-5u for 43308@debbugs.gnu.org; Mon, 21 Sep 2020 15:14:27 -0400 Received: from mail.gandi.net (m91-129-108-13.cust.tele2.ee [91.129.108.13]) (Authenticated sender: juri@linkov.net) by relay11.mail.gandi.net (Postfix) with ESMTPSA id A47A8100003; Mon, 21 Sep 2020 19:14:17 +0000 (UTC) From: Juri Linkov Organization: LINKOV.NET References: <87zh5xiuk4.fsf@localhost>> <831rj9k79b.fsf@gnu.org>> > <83sgbpiqa7.fsf@gnu.org>> <87mu1xa380.fsf@mail.linkov.net>> <83imclii71.fsf@gnu.org>> <87wo1178cn.fsf@mail.linkov.net>> <83d02tifi3.fsf@gnu.org>> <87ft7cx6kh.fsf@localhost>> <83bli027is.fsf@gnu.org>> <498f6be5-f1ab-4f82-9cf1-ed5893f10ea1@default> Date: Mon, 21 Sep 2020 22:05:02 +0300 In-Reply-To: <498f6be5-f1ab-4f82-9cf1-ed5893f10ea1@default> (Drew Adams's message of "Sun, 20 Sep 2020 09:26:13 -0700 (PDT)") Message-ID: <87wo0nbln5.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) > (I used to have nonincremental items at top level, > but moved them to a submenu because their use is > less common now. Admittedly, if someone uses this a > lot then accessing via submenu is less efficient.) Why no keybindings are shown for nonincremental menu items? They still have keybindings, e.g. nonincremental forward search can be started with 'C-s RET', nonincremental backward search with 'C-r RET', nonincremental regexp search 'C-M-s RET', etc. From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Andreas Schwab Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 21 Sep 2020 19:30:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 43308@debbugs.gnu.org, Ihor Radchenko , Drew Adams , stefankangas@gmail.com Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.16007165877859 (code B ref 43308); Mon, 21 Sep 2020 19:30:02 +0000 Received: (at 43308) by debbugs.gnu.org; 21 Sep 2020 19:29:47 +0000 Received: from localhost ([127.0.0.1]:56329 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKRVT-00022h-A6 for submit@debbugs.gnu.org; Mon, 21 Sep 2020 15:29:47 -0400 Received: from mail-out.m-online.net ([212.18.0.10]:42631) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKRVR-00022Y-8b for 43308@debbugs.gnu.org; Mon, 21 Sep 2020 15:29:46 -0400 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 4BwDzC62mVz1rtMh; Mon, 21 Sep 2020 21:29:43 +0200 (CEST) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 4BwDzC3QYkz1qqkV; Mon, 21 Sep 2020 21:29:43 +0200 (CEST) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id 8Lnfkyf-pgq6; Mon, 21 Sep 2020 21:29:42 +0200 (CEST) X-Auth-Info: OnOIwas2OtxWhamRnfKDsuFPrHoQTYRbf24yHTzTxySe/8tK7dfpxrVZXjY4hXrU Received: from igel.home (ppp-46-244-179-243.dynamic.mnet-online.de [46.244.179.243]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPSA; Mon, 21 Sep 2020 21:29:42 +0200 (CEST) Received: by igel.home (Postfix, from userid 1000) id 220EA2C28DF; Mon, 21 Sep 2020 21:29:42 +0200 (CEST) From: Andreas Schwab References: <87zh5xiuk4.fsf@localhost>> <831rj9k79b.fsf@gnu.org>> > <83sgbpiqa7.fsf@gnu.org>> <87mu1xa380.fsf@mail.linkov.net>> <83imclii71.fsf@gnu.org>> <87wo1178cn.fsf@mail.linkov.net>> <83d02tifi3.fsf@gnu.org>> <87ft7cx6kh.fsf@localhost>> <83bli027is.fsf@gnu.org>> <498f6be5-f1ab-4f82-9cf1-ed5893f10ea1@default> <87wo0nbln5.fsf@mail.linkov.net> X-Yow: Am I accompanied by a PARENT or GUARDIAN? Date: Mon, 21 Sep 2020 21:29:42 +0200 In-Reply-To: <87wo0nbln5.fsf@mail.linkov.net> (Juri Linkov's message of "Mon, 21 Sep 2020 22:05:02 +0300") Message-ID: <87zh5jylll.fsf@igel.home> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.4 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.4 (-) On Sep 21 2020, Juri Linkov wrote: > Why no keybindings are shown for nonincremental menu items? > They still have keybindings, e.g. nonincremental forward search > can be started with 'C-s RET', nonincremental backward search > with 'C-r RET', nonincremental regexp search 'C-M-s RET', etc. Those are not ordinary key bindings that can be discovered by where-is-internal (which doesn't know about any temporary use of overriding(-terminal)-local-map). Andreas. -- Andreas Schwab, schwab@linux-m68k.org GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510 2552 DF73 E780 A9DA AEC1 "And now for something completely different." From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 21 Sep 2020 19:33:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 43308@debbugs.gnu.org, Eli Zaretskii , Ihor Radchenko , stefankangas@gmail.com Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.16007167758293 (code B ref 43308); Mon, 21 Sep 2020 19:33:01 +0000 Received: (at 43308) by debbugs.gnu.org; 21 Sep 2020 19:32:55 +0000 Received: from localhost ([127.0.0.1]:56347 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKRYV-00029h-CJ for submit@debbugs.gnu.org; Mon, 21 Sep 2020 15:32:55 -0400 Received: from aserp2120.oracle.com ([141.146.126.78]:59640) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKRYS-00029K-FX for 43308@debbugs.gnu.org; Mon, 21 Sep 2020 15:32:54 -0400 Received: from pps.filterd (aserp2120.oracle.com [127.0.0.1]) by aserp2120.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 08LJF7MM105998; Mon, 21 Sep 2020 19:32:46 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=mime-version : message-id : date : from : sender : to : cc : subject : references : in-reply-to : content-type : content-transfer-encoding; s=corp-2020-01-29; bh=YZsg8zHjDQr67qp8ZB8lYJZxDkwPkBiOnRaH6ZmU3Nc=; b=p9oy4/zWA0sERWVdMqNGvK7g+/iY7TUS6W4tl47b/+w5oZriN3TNanvt9m2cLCpR04mj EwVSStgxEL2RpNpKOxZEsgLYJjM4A95jxeG65OMz4hDJo6+0w2heeyeCcihKwlBEqvKx AA/e5qp7JdfWG9PMw5CeUPf2pAA96sXhWNjRc5HKumi22dh40XMoxMtLGwyxDzQHT80A AW2FiawKVnjRQxiFzWAfnB9zCTCb8mXJdPj5zeepnQLFgAXvEWDQ+USyEiaPSgaCUzYo /C21r3gvfF/d6Xzqtj51CYtiYNZA2vzQDVPhI+cTbOO0mMil4i2b1TmpjE8AeBvyJN5E 4A== Received: from userp3020.oracle.com (userp3020.oracle.com [156.151.31.79]) by aserp2120.oracle.com with ESMTP id 33n9xkrfua-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Mon, 21 Sep 2020 19:32:46 +0000 Received: from pps.filterd (userp3020.oracle.com [127.0.0.1]) by userp3020.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 08LJUK5i164848; Mon, 21 Sep 2020 19:30:45 GMT Received: from userv0122.oracle.com (userv0122.oracle.com [156.151.31.75]) by userp3020.oracle.com with ESMTP id 33nurrccv3-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 21 Sep 2020 19:30:45 +0000 Received: from abhmp0001.oracle.com (abhmp0001.oracle.com [141.146.116.7]) by userv0122.oracle.com (8.14.4/8.14.4) with ESMTP id 08LJUims020768; Mon, 21 Sep 2020 19:30:44 GMT MIME-Version: 1.0 Message-ID: <6e21964e-a580-45ef-943f-a8ea97e58eef@default> Date: Mon, 21 Sep 2020 12:30:43 -0700 (PDT) From: Drew Adams References: <87zh5xiuk4.fsf@localhost>> <831rj9k79b.fsf@gnu.org>> > <83sgbpiqa7.fsf@gnu.org>> <87mu1xa380.fsf@mail.linkov.net>> <83imclii71.fsf@gnu.org>> <87wo1178cn.fsf@mail.linkov.net>> <83d02tifi3.fsf@gnu.org>> <87ft7cx6kh.fsf@localhost>> <83bli027is.fsf@gnu.org>> <498f6be5-f1ab-4f82-9cf1-ed5893f10ea1@default> <87wo0nbln5.fsf@mail.linkov.net> In-Reply-To: <87wo0nbln5.fsf@mail.linkov.net> X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9.1 (1003210) [OL 16.0.5056.0 (x86)] Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9751 signatures=668679 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 malwarescore=0 phishscore=0 mlxlogscore=999 bulkscore=0 mlxscore=0 suspectscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2006250000 definitions=main-2009210141 X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9751 signatures=668679 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 lowpriorityscore=0 malwarescore=0 suspectscore=0 priorityscore=1501 adultscore=0 spamscore=0 clxscore=1015 mlxlogscore=999 bulkscore=0 mlxscore=0 phishscore=0 impostorscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2006250000 definitions=main-2009210140 X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > > (I used to have nonincremental items at top level, > > but moved them to a submenu because their use is > > less common now. Admittedly, if someone uses this a > > lot then accessing via submenu is less efficient.) >=20 > Why no keybindings are shown for nonincremental menu items? > They still have keybindings, e.g. nonincremental forward search > can be started with 'C-s RET', nonincremental backward search > with 'C-r RET', nonincremental regexp search 'C-M-s RET', etc. I suppose I could add some explicitly, with :keys. That makes sense. Unfortunately, none show up automatically. It would be good to somehow fix that. E.g., `C-h f nonincremental-search-forward': nonincremental-search-forward is an interactive compiled Lisp function in 'menu-bar.el'. It is bound to . (nonincremental-search-forward &optional STRING BACKWARD) Read a string and search for it nonincrementally. From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 21 Sep 2020 19:40:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Andreas Schwab , Juri Linkov Cc: 43308@debbugs.gnu.org, Ihor Radchenko , stefankangas@gmail.com Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.16007171679062 (code B ref 43308); Mon, 21 Sep 2020 19:40:02 +0000 Received: (at 43308) by debbugs.gnu.org; 21 Sep 2020 19:39:27 +0000 Received: from localhost ([127.0.0.1]:56381 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKReo-0002M5-SK for submit@debbugs.gnu.org; Mon, 21 Sep 2020 15:39:27 -0400 Received: from userp2120.oracle.com ([156.151.31.85]:55640) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKRel-0002Ld-EU for 43308@debbugs.gnu.org; Mon, 21 Sep 2020 15:39:23 -0400 Received: from pps.filterd (userp2120.oracle.com [127.0.0.1]) by userp2120.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 08LJccR7101211; Mon, 21 Sep 2020 19:39:17 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=mime-version : message-id : date : from : sender : to : cc : subject : references : in-reply-to : content-type : content-transfer-encoding; s=corp-2020-01-29; bh=6XD/M2vs+3lTIfytnnC4ZpF1N8xraq7XFQSeGnAJp4M=; b=ZTMQ0pD9HNUxyo2OGz2xj8wNRXzO4ztrH7H0gNu3K6iABE4bt2AgBVSE1qyWzlBDR0Nu zai7bKPDTWYX+UVJtkSGjFOaonPPksuG3wlNsDps12J6uYwP2/QEzh31V4wWOqNaNmXu 7sEbINAVWxwFlF9jweZNj9ZODb0iw0a5xubcGBVWuxlYrifhXw6fvi8/+tr4NngNtcy8 Kul9g0/h2+jPs3ErzRItylNb/Dbjuhmx9aTvrLWm2JS215iJZUyZUx1j07NH7a8HRhZR AGir2KPO6cdVHq6O2a+TCPeCgoC2VKPsJIXhaaK24brGqkTTVSsJoY/A8oh8yPKssB6U RQ== Received: from aserp3030.oracle.com (aserp3030.oracle.com [141.146.126.71]) by userp2120.oracle.com with ESMTP id 33ndnu895p-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Mon, 21 Sep 2020 19:39:17 +0000 Received: from pps.filterd (aserp3030.oracle.com [127.0.0.1]) by aserp3030.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 08LJUNwV162038; Mon, 21 Sep 2020 19:39:16 GMT Received: from aserv0121.oracle.com (aserv0121.oracle.com [141.146.126.235]) by aserp3030.oracle.com with ESMTP id 33nujm5vfm-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 21 Sep 2020 19:39:16 +0000 Received: from abhmp0001.oracle.com (abhmp0001.oracle.com [141.146.116.7]) by aserv0121.oracle.com (8.14.4/8.13.8) with ESMTP id 08LJdF2i020027; Mon, 21 Sep 2020 19:39:15 GMT MIME-Version: 1.0 Message-ID: <484244ce-cac9-4b79-93ab-c014ca8033b0@default> Date: Mon, 21 Sep 2020 12:39:13 -0700 (PDT) From: Drew Adams References: <87zh5xiuk4.fsf@localhost>> <831rj9k79b.fsf@gnu.org>> > <83sgbpiqa7.fsf@gnu.org>> <87mu1xa380.fsf@mail.linkov.net>> <83imclii71.fsf@gnu.org>> <87wo1178cn.fsf@mail.linkov.net>> <83d02tifi3.fsf@gnu.org>> <87ft7cx6kh.fsf@localhost>> <83bli027is.fsf@gnu.org>> <498f6be5-f1ab-4f82-9cf1-ed5893f10ea1@default> <87wo0nbln5.fsf@mail.linkov.net> <87zh5jylll.fsf@igel.home> In-Reply-To: <87zh5jylll.fsf@igel.home> X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9.1 (1003210) [OL 16.0.5056.0 (x86)] Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9751 signatures=668679 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 malwarescore=0 mlxlogscore=999 phishscore=0 adultscore=0 spamscore=0 suspectscore=0 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2006250000 definitions=main-2009210141 X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9751 signatures=668679 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 priorityscore=1501 malwarescore=0 lowpriorityscore=0 phishscore=0 adultscore=0 suspectscore=0 bulkscore=0 clxscore=1015 impostorscore=0 mlxlogscore=999 mlxscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2006250000 definitions=main-2009210142 X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Those are not ordinary key bindings that can be discovered by > where-is-internal (which doesn't know about any temporary use of > overriding(-terminal)-local-map). Right. (where-is-internal 'nonincremental-search-forward) ; =3D=3D> ([menu-bar edit search search-forward]) From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 21 Sep 2020 19:45:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 43308@debbugs.gnu.org, yantar92@gmail.com, drew.adams@oracle.com, stefankangas@gmail.com Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.16007174649554 (code B ref 43308); Mon, 21 Sep 2020 19:45:02 +0000 Received: (at 43308) by debbugs.gnu.org; 21 Sep 2020 19:44:24 +0000 Received: from localhost ([127.0.0.1]:56389 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKRjc-0002U2-HW for submit@debbugs.gnu.org; Mon, 21 Sep 2020 15:44:24 -0400 Received: from eggs.gnu.org ([209.51.188.92]:45230) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKRja-0002Tp-Mj for 43308@debbugs.gnu.org; Mon, 21 Sep 2020 15:44:23 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:35538) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kKRjT-00007i-9o; Mon, 21 Sep 2020 15:44:16 -0400 Received: from [176.228.60.248] (port=3721 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kKRjS-0007Fk-Nu; Mon, 21 Sep 2020 15:44:15 -0400 Date: Mon, 21 Sep 2020 22:44:16 +0300 Message-Id: <838sd2ykxb.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: <87wo0nbln5.fsf@mail.linkov.net> (message from Juri Linkov on Mon, 21 Sep 2020 22:05:02 +0300) References: <87zh5xiuk4.fsf@localhost>> <831rj9k79b.fsf@gnu.org>> > <83sgbpiqa7.fsf@gnu.org>> <87mu1xa380.fsf@mail.linkov.net>> <83imclii71.fsf@gnu.org>> <87wo1178cn.fsf@mail.linkov.net>> <83d02tifi3.fsf@gnu.org>> <87ft7cx6kh.fsf@localhost>> <83bli027is.fsf@gnu.org>> <498f6be5-f1ab-4f82-9cf1-ed5893f10ea1@default> <87wo0nbln5.fsf@mail.linkov.net> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Juri Linkov > Cc: Eli Zaretskii , Ihor Radchenko , > 43308@debbugs.gnu.org, stefankangas@gmail.com > Date: Mon, 21 Sep 2020 22:05:02 +0300 > > Why no keybindings are shown for nonincremental menu items? As usual, because the menu invokes different commands, not those for which key sequences exist. From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 21 Sep 2020 21:16:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 43308@debbugs.gnu.org, Ihor Radchenko , stefankangas@gmail.com Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.16007229302288 (code B ref 43308); Mon, 21 Sep 2020 21:16:01 +0000 Received: (at 43308) by debbugs.gnu.org; 21 Sep 2020 21:15:30 +0000 Received: from localhost ([127.0.0.1]:56492 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKT9m-0000aq-0i for submit@debbugs.gnu.org; Mon, 21 Sep 2020 17:15:30 -0400 Received: from aserp2130.oracle.com ([141.146.126.79]:43294) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKT9f-0000aG-W8 for 43308@debbugs.gnu.org; Mon, 21 Sep 2020 17:15:25 -0400 Received: from pps.filterd (aserp2130.oracle.com [127.0.0.1]) by aserp2130.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 08LL5bpg108761; Mon, 21 Sep 2020 21:15:18 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=mime-version : message-id : date : from : sender : to : cc : subject : references : in-reply-to : content-type : content-transfer-encoding; s=corp-2020-01-29; bh=f/5FH5OdJcxdq/9cvVgThPVbb+23BpXjWWaxRmVE5Jg=; b=MqBGJXx+XgpDuX9ZI0q8EhWmif6uZVL6k+WDV2Ea25dnexpi1B4JxFpGHqSHEZs5Iyaf cnQs42C/x+RahntYrEN5tPNJaBvYXgfrbSM6sGU9iF2sK9D0hNtnUiHK5nNuDI5gADqW BO1wlGCt2se5prO9uctj3iu1QL9KSB3OvlomITzaYSYYeqiaq+nMGCkQ5aTBiESqHwRq B9JJVRh2mscjkQLEBv0XVVgNyvdH1vVzrzbZYsh7ky/OkrEZ55waMhoGeszVMC4XX6p9 oT5EnLZsPSjqdfoCBfVvWDx+j0Y3CIOSSl1HtoX8CnXg6dYhSJOfH+n8BV7ljvRR23g2 3g== Received: from aserp3020.oracle.com (aserp3020.oracle.com [141.146.126.70]) by aserp2130.oracle.com with ESMTP id 33n7gabrpv-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Mon, 21 Sep 2020 21:15:18 +0000 Received: from pps.filterd (aserp3020.oracle.com [127.0.0.1]) by aserp3020.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 08LL63oQ157363; Mon, 21 Sep 2020 21:15:17 GMT Received: from userv0121.oracle.com (userv0121.oracle.com [156.151.31.72]) by aserp3020.oracle.com with ESMTP id 33nuw1wwa9-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 21 Sep 2020 21:15:17 +0000 Received: from abhmp0001.oracle.com (abhmp0001.oracle.com [141.146.116.7]) by userv0121.oracle.com (8.14.4/8.13.8) with ESMTP id 08LLFGq1028646; Mon, 21 Sep 2020 21:15:16 GMT MIME-Version: 1.0 Message-ID: Date: Mon, 21 Sep 2020 14:15:15 -0700 (PDT) From: Drew Adams References: <87zh5xiuk4.fsf@localhost>> <831rj9k79b.fsf@gnu.org>> > <83sgbpiqa7.fsf@gnu.org>> <87mu1xa380.fsf@mail.linkov.net>> <83imclii71.fsf@gnu.org>> <87wo1178cn.fsf@mail.linkov.net>> <83d02tifi3.fsf@gnu.org>> <87ft7cx6kh.fsf@localhost>> <83bli027is.fsf@gnu.org>> <498f6be5-f1ab-4f82-9cf1-ed5893f10ea1@default> <87wo0nbln5.fsf@mail.linkov.net> <6e21964e-a580-45ef-943f-a8ea97e58eef@default> In-Reply-To: <6e21964e-a580-45ef-943f-a8ea97e58eef@default> X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9.1 (1003210) [OL 16.0.5056.0 (x86)] Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9751 signatures=668679 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 phishscore=0 malwarescore=0 mlxscore=0 suspectscore=0 adultscore=0 mlxlogscore=999 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2006250000 definitions=main-2009210154 X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9751 signatures=668679 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 lowpriorityscore=0 bulkscore=0 mlxscore=0 suspectscore=0 impostorscore=0 malwarescore=0 spamscore=0 phishscore=0 mlxlogscore=999 clxscore=1015 adultscore=0 priorityscore=1501 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2006250000 definitions=main-2009210154 X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) > > > (I used to have nonincremental items at top level, > > > but moved them to a submenu because their use is > > > less common now. Admittedly, if someone uses this a > > > lot then accessing via submenu is less efficient.) > > > > Why no keybindings are shown for nonincremental menu items? > > They still have keybindings, e.g. nonincremental forward search > > can be started with 'C-s RET', nonincremental backward search > > with 'C-r RET', nonincremental regexp search 'C-M-s RET', etc. >=20 > I suppose I could add some explicitly, with :keys. > That makes sense. I've done that now. Of course, advertising such keys is a lie whenever option `search-nonincremental-instead' is nil. Too bad we can't have :keys be a sexp that is eval'd at menu display/update time, and have a :keys value of nil mean not to show any thing for the key bindings. https://www.emacswiki.org/emacs/download/menu-bar%2b.el From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 22 Sep 2020 08:28:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Drew Adams Cc: 43308@debbugs.gnu.org, Eli Zaretskii , Ihor Radchenko , stefankangas@gmail.com Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.16007632659421 (code B ref 43308); Tue, 22 Sep 2020 08:28:01 +0000 Received: (at 43308) by debbugs.gnu.org; 22 Sep 2020 08:27:45 +0000 Received: from localhost ([127.0.0.1]:57095 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKdeL-0002Rr-EQ for submit@debbugs.gnu.org; Tue, 22 Sep 2020 04:27:45 -0400 Received: from relay2-d.mail.gandi.net ([217.70.183.194]:36195) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKdeJ-0002Re-CL for 43308@debbugs.gnu.org; Tue, 22 Sep 2020 04:27:44 -0400 X-Originating-IP: 91.129.108.13 Received: from mail.gandi.net (m91-129-108-13.cust.tele2.ee [91.129.108.13]) (Authenticated sender: juri@linkov.net) by relay2-d.mail.gandi.net (Postfix) with ESMTPSA id D086840004; Tue, 22 Sep 2020 08:27:34 +0000 (UTC) From: Juri Linkov Organization: LINKOV.NET References: <87zh5xiuk4.fsf@localhost>> <831rj9k79b.fsf@gnu.org>> > <83sgbpiqa7.fsf@gnu.org>> <87mu1xa380.fsf@mail.linkov.net>> <83imclii71.fsf@gnu.org>> <87wo1178cn.fsf@mail.linkov.net>> <83d02tifi3.fsf@gnu.org>> <87ft7cx6kh.fsf@localhost>> <83bli027is.fsf@gnu.org>> <498f6be5-f1ab-4f82-9cf1-ed5893f10ea1@default> <87wo0nbln5.fsf@mail.linkov.net> <6e21964e-a580-45ef-943f-a8ea97e58eef@default> Date: Tue, 22 Sep 2020 11:04:58 +0300 In-Reply-To: <6e21964e-a580-45ef-943f-a8ea97e58eef@default> (Drew Adams's message of "Mon, 21 Sep 2020 12:30:43 -0700 (PDT)") Message-ID: <87sgbadxr9.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) >> Why no keybindings are shown for nonincremental menu items? >> They still have keybindings, e.g. nonincremental forward search >> can be started with 'C-s RET', nonincremental backward search >> with 'C-r RET', nonincremental regexp search 'C-M-s RET', etc. > > I suppose I could add some explicitly, with :keys. > That makes sense. Unfortunately, none show up > automatically. It would be good to somehow fix that. How about the following patch? BTW, why "Search Tagged Files..." and "Continue Tags Search" have no keybindings? Another problem is that selecting "Continue Tags Search" signals the error: emacs -Q Select "Edit" -> "Search" -> "Continue Tags Search" Lisp error: (wrong-type-argument commandp fileloop-continue) I think "Continue Tags Search" should be disabled when it has no effect. diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el index 1556ee290f..901855402f 100644 --- a/lisp/menu-bar.el +++ b/lisp/menu-bar.el @@ -346,7 +346,9 @@ menu-bar-search-menu search-ring) (and (eq menu-bar-last-search-type 'regexp) regexp-search-ring)) - :help "Repeat last search backwards")) + :help "Repeat last search backwards" + :keys "\\[isearch-backward] \\\\[isearch-exit]\ + \\\\[exit-minibuffer]")) (bindings--define-key menu [repeat-search-fwd] '(menu-item "Repeat Forward" nonincremental-repeat-search-forward @@ -354,26 +356,32 @@ menu-bar-search-menu search-ring) (and (eq menu-bar-last-search-type 'regexp) regexp-search-ring)) - :help "Repeat last search forward")) + :help "Repeat last search forward" + :keys "\\[isearch-forward] \\\\[isearch-exit]\ + \\\\[exit-minibuffer]")) (bindings--define-key menu [separator-repeat-search] menu-bar-separator) (bindings--define-key menu [re-search-backward] '(menu-item "Regexp Backwards..." nonincremental-re-search-backward - :help "Search backwards for a regular expression")) + :help "Search backwards for a regular expression" + :keys "\\[isearch-backward-regexp] \\\\[isearch-exit]")) (bindings--define-key menu [re-search-forward] '(menu-item "Regexp Forward..." nonincremental-re-search-forward - :help "Search forward for a regular expression")) + :help "Search forward for a regular expression" + :keys "\\[isearch-forward-regexp] \\\\[isearch-exit]")) (bindings--define-key menu [search-backward] '(menu-item "String Backwards..." nonincremental-search-backward - :help "Search backwards for a string")) + :help "Search backwards for a string" + :keys "\\[isearch-backward] \\\\[isearch-exit]")) (bindings--define-key menu [search-forward] '(menu-item "String Forward..." nonincremental-search-forward - :help "Search forward for a string")) + :help "Search forward for a string" + :keys "\\[isearch-forward] \\\\[isearch-exit]")) menu)) From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 22 Sep 2020 14:20:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 43308@debbugs.gnu.org, yantar92@gmail.com, drew.adams@oracle.com, stefankangas@gmail.com Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.160078435531077 (code B ref 43308); Tue, 22 Sep 2020 14:20:01 +0000 Received: (at 43308) by debbugs.gnu.org; 22 Sep 2020 14:19:15 +0000 Received: from localhost ([127.0.0.1]:32778 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKj8V-000858-A9 for submit@debbugs.gnu.org; Tue, 22 Sep 2020 10:19:15 -0400 Received: from eggs.gnu.org ([209.51.188.92]:39642) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKj8T-00084u-PA for 43308@debbugs.gnu.org; Tue, 22 Sep 2020 10:19:14 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:50473) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kKj8N-0006Fk-BT; Tue, 22 Sep 2020 10:19:07 -0400 Received: from [176.228.60.248] (port=4085 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kKj8M-0001se-KD; Tue, 22 Sep 2020 10:19:07 -0400 Date: Tue, 22 Sep 2020 17:19:11 +0300 Message-Id: <83tuvpx5b4.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: <87sgbadxr9.fsf@mail.linkov.net> (message from Juri Linkov on Tue, 22 Sep 2020 11:04:58 +0300) References: <87zh5xiuk4.fsf@localhost>> <831rj9k79b.fsf@gnu.org>> > <83sgbpiqa7.fsf@gnu.org>> <87mu1xa380.fsf@mail.linkov.net>> <83imclii71.fsf@gnu.org>> <87wo1178cn.fsf@mail.linkov.net>> <83d02tifi3.fsf@gnu.org>> <87ft7cx6kh.fsf@localhost>> <83bli027is.fsf@gnu.org>> <498f6be5-f1ab-4f82-9cf1-ed5893f10ea1@default> <87wo0nbln5.fsf@mail.linkov.net> <6e21964e-a580-45ef-943f-a8ea97e58eef@default> <87sgbadxr9.fsf@mail.linkov.net> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Juri Linkov > Cc: Eli Zaretskii , Ihor Radchenko , > 43308@debbugs.gnu.org, stefankangas@gmail.com > Date: Tue, 22 Sep 2020 11:04:58 +0300 > > >> Why no keybindings are shown for nonincremental menu items? > >> They still have keybindings, e.g. nonincremental forward search > >> can be started with 'C-s RET', nonincremental backward search > >> with 'C-r RET', nonincremental regexp search 'C-M-s RET', etc. > > > > I suppose I could add some explicitly, with :keys. > > That makes sense. Unfortunately, none show up > > automatically. It would be good to somehow fix that. > > How about the following patch? But the keys this will show don't invoke the same commands, they invoke slightly different commands, don't they? I don't think we ever show keys that invoke a different command, why do this here? > Another problem is that selecting "Continue Tags Search" > signals the error: > > emacs -Q > Select "Edit" -> "Search" -> "Continue Tags Search" > > Lisp error: (wrong-type-argument commandp fileloop-continue) I guess this is a leftover from migration to Xref. > I think "Continue Tags Search" should be disabled when it has no effect. Yes, it should be. Thanks. From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 22 Sep 2020 17:00:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 43308@debbugs.gnu.org, Eli Zaretskii , Ihor Radchenko , stefankangas@gmail.com Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.160079396323730 (code B ref 43308); Tue, 22 Sep 2020 17:00:02 +0000 Received: (at 43308) by debbugs.gnu.org; 22 Sep 2020 16:59:23 +0000 Received: from localhost ([127.0.0.1]:33212 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKldT-0006Ag-Ex for submit@debbugs.gnu.org; Tue, 22 Sep 2020 12:59:23 -0400 Received: from userp2120.oracle.com ([156.151.31.85]:41194) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKldQ-0006AQ-JW for 43308@debbugs.gnu.org; Tue, 22 Sep 2020 12:59:22 -0400 Received: from pps.filterd (userp2120.oracle.com [127.0.0.1]) by userp2120.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 08MGws7v087644; Tue, 22 Sep 2020 16:59:14 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=mime-version : message-id : date : from : sender : to : cc : subject : references : in-reply-to : content-type : content-transfer-encoding; s=corp-2020-01-29; bh=o2dL5yMAv7MYbKl3N+Z58PzIqBO5c3Rnet7CwBS56xM=; b=IDUXRauPSP4PTw4BzdOQAPeo71Cq2ON7U64jcKa22jnRDrafVVqgBFm1+fu4fQrfGhFh qGeUC7m5d7SJ+1qhvGfPxjgNcROCAeZ6gYhsOrtrO8/t+UtNKvimTMbtH5dmUMMY4iL1 gtUpeNIxfj/C3fU40cSG3jojxtXUst97prwUbEpweOq5SccPxG7rIrit8ZlTmXzbT1Ct Zc/0LY8BhQezHE+jN1HxtVCXHDtJIqDTNzvaxSn4JoEwsv1qhu764OLeEHXpY9HZ5faT NNeipEm7GXQ8Mhzk+qxnegvu07rBXZpFspxKEqs65l6iS5SCKO3CtrQVXa5A4MnBdGyL bA== Received: from aserp3030.oracle.com (aserp3030.oracle.com [141.146.126.71]) by userp2120.oracle.com with ESMTP id 33ndnue1xx-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Tue, 22 Sep 2020 16:59:14 +0000 Received: from pps.filterd (aserp3030.oracle.com [127.0.0.1]) by aserp3030.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 08MGsLtf065425; Tue, 22 Sep 2020 16:59:14 GMT Received: from aserv0122.oracle.com (aserv0122.oracle.com [141.146.126.236]) by aserp3030.oracle.com with ESMTP id 33nujnfmtk-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 22 Sep 2020 16:59:14 +0000 Received: from abhmp0017.oracle.com (abhmp0017.oracle.com [141.146.116.23]) by aserv0122.oracle.com (8.14.4/8.14.4) with ESMTP id 08MGxAPj013018; Tue, 22 Sep 2020 16:59:10 GMT MIME-Version: 1.0 Message-ID: <090c6fc6-92b9-4604-bb14-e19287dd6685@default> Date: Tue, 22 Sep 2020 09:59:08 -0700 (PDT) From: Drew Adams References: <87zh5xiuk4.fsf@localhost>> <831rj9k79b.fsf@gnu.org>> > <83sgbpiqa7.fsf@gnu.org>> <87mu1xa380.fsf@mail.linkov.net>> <83imclii71.fsf@gnu.org>> <87wo1178cn.fsf@mail.linkov.net>> <83d02tifi3.fsf@gnu.org>> <87ft7cx6kh.fsf@localhost>> <83bli027is.fsf@gnu.org>> <498f6be5-f1ab-4f82-9cf1-ed5893f10ea1@default> <87wo0nbln5.fsf@mail.linkov.net> <6e21964e-a580-45ef-943f-a8ea97e58eef@default> <87sgbadxr9.fsf@mail.linkov.net> In-Reply-To: <87sgbadxr9.fsf@mail.linkov.net> X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9.1 (1003210) [OL 16.0.5056.0 (x86)] Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9752 signatures=668679 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 malwarescore=0 mlxlogscore=999 phishscore=0 adultscore=0 spamscore=0 suspectscore=0 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2006250000 definitions=main-2009220130 X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9752 signatures=668679 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 priorityscore=1501 malwarescore=0 lowpriorityscore=0 phishscore=0 adultscore=0 suspectscore=0 bulkscore=0 clxscore=1015 impostorscore=0 mlxlogscore=999 mlxscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2006250000 definitions=main-2009220131 X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > >> Why no keybindings are shown for nonincremental menu items? > >> They still have keybindings, e.g. nonincremental forward search > >> can be started with 'C-s RET', nonincremental backward search > >> with 'C-r RET', nonincremental regexp search 'C-M-s RET', etc. > > > > I suppose I could add some explicitly, with :keys. > > That makes sense. Unfortunately, none show up > > automatically. It would be good to somehow fix that. >=20 > How about the following patch? It doesn't fix the nonautomatic display of keys, does it? > BTW, why "Search Tagged Files..." and "Continue Tags Search" have > no keybindings? Because they have no keyboard key bindings. Or was that your question? Did `tags-search' ever have a default keyboard binding? For `Continue Tags Search' I think the reason was that when Emacs moved to xref it dropped the `M-,' key binding for that command (`tags-loop-continue'). (I wasn't in favor of that.) > Another problem is that selecting "Continue Tags Search" > signals the error: >=20 > emacs -Q > Select "Edit" -> "Search" -> "Continue Tags Search" >=20 > Lisp error: (wrong-type-argument commandp fileloop-continue) I don't see that with emacs -Q, loading menu-bar+.el, and using that item in the Search menu (which is not under Edit). Dunno why. I see just this error message: "No operation in progress", which makes sense. > I think "Continue Tags Search" should be disabled when it has no effect. I've done that now, in menu-bar+.el. I use this, but perhaps someone can let me know if it's not the right, or best, condition to use. (I use condition-case, not ignore-errors, for compatibility with older Emacs.) :enable (not (condition-case nil (tags-loop-eval tags-loop-scan) (error t))) From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 22 Sep 2020 18:20:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii Cc: 43308@debbugs.gnu.org, yantar92@gmail.com, drew.adams@oracle.com, stefankangas@gmail.com Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.16007987626907 (code B ref 43308); Tue, 22 Sep 2020 18:20:02 +0000 Received: (at 43308) by debbugs.gnu.org; 22 Sep 2020 18:19:22 +0000 Received: from localhost ([127.0.0.1]:33316 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKmss-0001nL-GL for submit@debbugs.gnu.org; Tue, 22 Sep 2020 14:19:22 -0400 Received: from relay11.mail.gandi.net ([217.70.178.231]:57569) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKmsm-0001mi-5T for 43308@debbugs.gnu.org; Tue, 22 Sep 2020 14:19:18 -0400 Received: from mail.gandi.net (m91-129-108-13.cust.tele2.ee [91.129.108.13]) (Authenticated sender: juri@linkov.net) by relay11.mail.gandi.net (Postfix) with ESMTPSA id 7A40D100006; Tue, 22 Sep 2020 18:19:08 +0000 (UTC) From: Juri Linkov Organization: LINKOV.NET References: <87zh5xiuk4.fsf@localhost>> <831rj9k79b.fsf@gnu.org>> > <83sgbpiqa7.fsf@gnu.org>> <87mu1xa380.fsf@mail.linkov.net>> <83imclii71.fsf@gnu.org>> <87wo1178cn.fsf@mail.linkov.net>> <83d02tifi3.fsf@gnu.org>> <87ft7cx6kh.fsf@localhost>> <83bli027is.fsf@gnu.org>> <498f6be5-f1ab-4f82-9cf1-ed5893f10ea1@default> <87wo0nbln5.fsf@mail.linkov.net> <6e21964e-a580-45ef-943f-a8ea97e58eef@default> <87sgbadxr9.fsf@mail.linkov.net> <83tuvpx5b4.fsf@gnu.org> Date: Tue, 22 Sep 2020 21:10:13 +0300 In-Reply-To: <83tuvpx5b4.fsf@gnu.org> (Eli Zaretskii's message of "Tue, 22 Sep 2020 17:19:11 +0300") Message-ID: <87blhxdatu.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) >> >> Why no keybindings are shown for nonincremental menu items? >> >> They still have keybindings, e.g. nonincremental forward search >> >> can be started with 'C-s RET', nonincremental backward search >> >> with 'C-r RET', nonincremental regexp search 'C-M-s RET', etc. >> > >> > I suppose I could add some explicitly, with :keys. >> > That makes sense. Unfortunately, none show up >> > automatically. It would be good to somehow fix that. >> >> How about the following patch? > > But the keys this will show don't invoke the same commands, they > invoke slightly different commands, don't they? I don't think we ever > show keys that invoke a different command, why do this here? The comment in 'nonincremental-search-forward' says: ;; Ideally, this whole command would be equivalent to `C-s RET'. This seems to imply that currently it's not equivalent. Then indeed displaying wrong keys would be misleading. >> Another problem is that selecting "Continue Tags Search" >> signals the error: >> >> emacs -Q >> Select "Edit" -> "Search" -> "Continue Tags Search" >> >> Lisp error: (wrong-type-argument commandp fileloop-continue) > > I guess this is a leftover from migration to Xref. Do you mean these obsolete menu items should be removed since now there are Xref commands in the "Go To" submenu? From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 22 Sep 2020 18:38:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 43308@debbugs.gnu.org, yantar92@gmail.com, drew.adams@oracle.com, stefankangas@gmail.com Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.16007998778633 (code B ref 43308); Tue, 22 Sep 2020 18:38:02 +0000 Received: (at 43308) by debbugs.gnu.org; 22 Sep 2020 18:37:57 +0000 Received: from localhost ([127.0.0.1]:33332 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKnAr-0002FA-Ba for submit@debbugs.gnu.org; Tue, 22 Sep 2020 14:37:57 -0400 Received: from eggs.gnu.org ([209.51.188.92]:51088) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKnAp-0002Ey-J6 for 43308@debbugs.gnu.org; Tue, 22 Sep 2020 14:37:56 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:55461) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kKnAk-0002X7-0c; Tue, 22 Sep 2020 14:37:50 -0400 Received: from [176.228.60.248] (port=4305 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kKnAj-0006QI-D8; Tue, 22 Sep 2020 14:37:49 -0400 Date: Tue, 22 Sep 2020 21:37:53 +0300 Message-Id: <834knpwtby.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: <87blhxdatu.fsf@mail.linkov.net> (message from Juri Linkov on Tue, 22 Sep 2020 21:10:13 +0300) References: <87zh5xiuk4.fsf@localhost>> <831rj9k79b.fsf@gnu.org>> > <83sgbpiqa7.fsf@gnu.org>> <87mu1xa380.fsf@mail.linkov.net>> <83imclii71.fsf@gnu.org>> <87wo1178cn.fsf@mail.linkov.net>> <83d02tifi3.fsf@gnu.org>> <87ft7cx6kh.fsf@localhost>> <83bli027is.fsf@gnu.org>> <498f6be5-f1ab-4f82-9cf1-ed5893f10ea1@default> <87wo0nbln5.fsf@mail.linkov.net> <6e21964e-a580-45ef-943f-a8ea97e58eef@default> <87sgbadxr9.fsf@mail.linkov.net> <83tuvpx5b4.fsf@gnu.org> <87blhxdatu.fsf@mail.linkov.net> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Juri Linkov > Cc: drew.adams@oracle.com, yantar92@gmail.com, 43308@debbugs.gnu.org, > stefankangas@gmail.com > Date: Tue, 22 Sep 2020 21:10:13 +0300 > > >> emacs -Q > >> Select "Edit" -> "Search" -> "Continue Tags Search" > >> > >> Lisp error: (wrong-type-argument commandp fileloop-continue) > > > > I guess this is a leftover from migration to Xref. > > Do you mean these obsolete menu items should be removed since > now there are Xref commands in the "Go To" submenu? No, the commands do exist, but I think we have a bug there which causes the error you saw. From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Lars Ingebrigtsen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 25 Apr 2022 10:47:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Ihor Radchenko Cc: 43308@debbugs.gnu.org, Eli Zaretskii Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.16508835769444 (code B ref 43308); Mon, 25 Apr 2022 10:47:02 +0000 Received: (at 43308) by debbugs.gnu.org; 25 Apr 2022 10:46:16 +0000 Received: from localhost ([127.0.0.1]:33392 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1niwER-0002SG-Ql for submit@debbugs.gnu.org; Mon, 25 Apr 2022 06:46:15 -0400 Received: from quimby.gnus.org ([95.216.78.240]:49066) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1niwEQ-0002S2-P5 for 43308@debbugs.gnu.org; Mon, 25 Apr 2022 06:46:15 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=q5SfZzMMz0biONcQv+po8HGXrklfLtgtxVnTNpq6H8g=; b=YXplYB44WWbRaCaqNFBjStnPAl ZPNEW79kGV/xNnLRmAMZb7+Nreops7YSXYsrC/YMGTwRa5ZnJquiNMWdXFFUkp4CXcz5fy5/gQnjl 2MXl7SPHDqgoICYiGYwLnI84pjtTdA3WLLTnEoz4tA6z79Z/gTX/eW0MK61qg/UVToVA=; Received: from [84.212.220.105] (helo=xo) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1niwEH-0001bL-RO; Mon, 25 Apr 2022 12:46:08 +0200 From: Lars Ingebrigtsen References: <87zh5xiuk4.fsf@localhost> X-Now-Playing: Nils Petter =?UTF-8?Q?Molv=C3=A6r's?= _Recoloured_: "Dead Indeed (Tunnel Mix By Mind Over Midi)" Date: Mon, 25 Apr 2022 12:46:04 +0200 In-Reply-To: <87zh5xiuk4.fsf@localhost> (Ihor Radchenko's message of "Thu, 10 Sep 2020 22:18:51 +0800") Message-ID: <87czh54f0z.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Ihor Radchenko writes: > The article suggests to remove the above Search menu items completely > and replace them by incremental search versions. (I'm going through old bug reports that unfortunately weren't resolved at the time.) Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Ihor Radchenko writes: > The article suggests to remove the above Search menu items completely > and replace them by incremental search versions. (I'm going through old bug reports that unfortunately weren't resolved at the time.) Eli didn't like that idea, but I wonder whether it makes sense to just move "Incremental Search" up out of "Search"? Because "Incremental Search" is probably as popular as non-incremental search. I.e., have both Search Incremental Search directly under Edit. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 25 Apr 2022 11:38:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Lars Ingebrigtsen Cc: 43308@debbugs.gnu.org, yantar92@gmail.com Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.165088662922768 (code B ref 43308); Mon, 25 Apr 2022 11:38:01 +0000 Received: (at 43308) by debbugs.gnu.org; 25 Apr 2022 11:37:09 +0000 Received: from localhost ([127.0.0.1]:33422 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nix1h-0005vA-BC for submit@debbugs.gnu.org; Mon, 25 Apr 2022 07:37:09 -0400 Received: from eggs.gnu.org ([209.51.188.92]:58272) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nix1f-0005ub-1h for 43308@debbugs.gnu.org; Mon, 25 Apr 2022 07:37:07 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:35300) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nix1X-0008Uv-W8; Mon, 25 Apr 2022 07:37:00 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=wsjfSThj7KoSrqHL+uc8OtMuwzMwqWeBzsWppwisfwo=; b=jF9V1OWiEYsy kk9cgAtBjm2bQd3icu5OPBOFsbQ1iwO8GWaxfvjti4VQcaTnNKXzSExF9lMAGUuFQ4uULsarq/Ub8 ijrg/CoVHzPYuV7GqZZ30r41wt4TytKwgEOK5WVqlw2h0ax4z+jr/RdYAxaUVkHJXxZcLd+EftMO0 7ieeb+b2MH/WyxQ257rpLHjK6pxD/SDh+8IZXyxUbEiAdEivegzqENrzy9bz0ayMXn0blz0V7kPyb 5SHcJ0Si/tVjdzkOUOUcaFB9VaCQeBHvWfo7+SDWF/AD1t/pjonZx2tMSPuW8WWzMxBpdH3apIczg WcT1k1RqB32m7zaaGpAnAQ==; Received: from [87.69.77.57] (port=2482 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nix1X-0008Hu-CA; Mon, 25 Apr 2022 07:36:59 -0400 Date: Mon, 25 Apr 2022 14:36:44 +0300 Message-Id: <83wnfdmm2b.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: <87czh54f0z.fsf@gnus.org> (message from Lars Ingebrigtsen on Mon, 25 Apr 2022 12:46:04 +0200) References: <87zh5xiuk4.fsf@localhost> <87czh54f0z.fsf@gnus.org> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Lars Ingebrigtsen > Cc: 43308@debbugs.gnu.org, Eli Zaretskii > Date: Mon, 25 Apr 2022 12:46:04 +0200 > > I.e., have both > > Search > Incremental Search > > directly under Edit. I won't object to such a change, but IMO it's important to keep the above order, i.e. not to put "Incremental Search" first. From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Lars Ingebrigtsen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 25 Apr 2022 12:11:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii Cc: 43308@debbugs.gnu.org, yantar92@gmail.com Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.165088861826024 (code B ref 43308); Mon, 25 Apr 2022 12:11:02 +0000 Received: (at 43308) by debbugs.gnu.org; 25 Apr 2022 12:10:18 +0000 Received: from localhost ([127.0.0.1]:33454 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nixXm-0006lg-M9 for submit@debbugs.gnu.org; Mon, 25 Apr 2022 08:10:18 -0400 Received: from quimby.gnus.org ([95.216.78.240]:49602) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nixXi-0006lE-SH for 43308@debbugs.gnu.org; Mon, 25 Apr 2022 08:10:18 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=EqFNGIqe8+loC1H7I7acGDvtbIs+inUbjeIflf4SWds=; b=XyGC6PfxcdQ+XNUZ823D4sFUZZ RBYN5iXILpK70umvxREgzgTIIxxFAp+kQ3wrAF+BV6b+LvaSc4iV/XhkT7yrHhIwgY/UjlFJ5QG8V OpNRgXCMxlgvMd3VRRIfBqt1/qTcZxl1JAPLHUzf/HYUIs6ZrmZ5rvj/5mUPzL1N9RRY=; Received: from [84.212.220.105] (helo=xo) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nixXY-0002TD-Sd; Mon, 25 Apr 2022 14:10:07 +0200 From: Lars Ingebrigtsen References: <87zh5xiuk4.fsf@localhost> <87czh54f0z.fsf@gnus.org> <83wnfdmm2b.fsf@gnu.org> Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAACBj SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAD1BMVEXHvLaWYl1dQUEh HiT///8q/bCmAAAAAWJLR0QEj2jZUQAAAAd0SU1FB+YEGQwJMV1erv0AAAGbSURBVDjLbdKBkcQg CAVQzDUg2kCEBi7Qf2/3YTUxO5fZmY2+iIBSkXj0okpEhUeMB594F3VX/yVK6OyAtsDFEjiGCzRB LUJxpeMF6ubxDmg7mGDJSaUwtwwlucd8AMRqa0BHZusTutsN7V5BAZ6EwZrXusA/oDGLjzTmP4DR IMqYnlD41AlSyTRKN5TOCyKWEPKOdzX0r41swwfGBEdP5byBUZNIZOYXy6hbqKJSi2SLjWvOY0d1 QneQDx0+sM1cEWkhd655RvSzrYjNEbrkKfU3cDwJ/i+U5shrgmeoyBW97Ak6wVB5Jk0lgSbYBpi6 yjegyQXDwdR9bY8mul3YowXUnwfiDzW22n1UesNVRoRz/oYzI1OPe7iDZS5yHtG0DfqZI/ml6IAu IR/EcYB+xZW+83VyYY4vuiUcG+BAjal5LSiUN5A64hwBuP++Q1x+CVg7a8K8+IAV/4wUNrjLzgY8 MO5IX1CL35ChPhdPnoysvEFWpKtHmQHtNQ/g8oA9YN4CcBPjwsvdi4gdgKrjJ+LvB4eQLeGZ0+1/ MX2XN2Kscz4AAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDQtMjVUMTI6MDk6NDkrMDA6MDB1Vduf AAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTA0LTI1VDEyOjA5OjQ5KzAwOjAwBAhjIwAAAABJRU5E rkJggg== X-Now-Playing: Moby's _Everything Was Beautiful, And Nothing Hurt_: "Like A Motherless Child" Date: Mon, 25 Apr 2022 14:10:00 +0200 In-Reply-To: <83wnfdmm2b.fsf@gnu.org> (Eli Zaretskii's message of "Mon, 25 Apr 2022 14:36:44 +0300") Message-ID: <878rrt4b53.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Eli Zaretskii writes: > I won't object to such a change, but IMO it's important to keep the > above order, i.e. not to put "Incremental Search" first. OK; now done in Emacs 29. Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Eli Zaretskii writes: > I won't object to such a change, but IMO it's important to keep the > above order, i.e. not to put "Incremental Search" first. OK; now done in Emacs 29. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no From debbugs-submit-bounces@debbugs.gnu.org Mon Apr 25 08:10:25 2022 Received: (at control) by debbugs.gnu.org; 25 Apr 2022 12:10:25 +0000 Received: from localhost ([127.0.0.1]:33457 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nixXs-0006m1-Se for submit@debbugs.gnu.org; Mon, 25 Apr 2022 08:10:25 -0400 Received: from quimby.gnus.org ([95.216.78.240]:49618) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nixXr-0006lf-Q5 for control@debbugs.gnu.org; Mon, 25 Apr 2022 08:10:24 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Subject:From:To:Message-Id:Date:Sender:Reply-To:Cc: MIME-Version:Content-Type:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=FIqh1vw5a7PqcnY3bVM/w3Ux4ve8ylqRFne9t8AMI8w=; b=oexgnbM5a/u2Au8RE/WQcbKO/u PkkwCenSQ9+VDl8jwn1fTQsqiHj7bZIU46wJS+4fmzewsQrLGgGWsPsVbwXwqcRsY+3CD7PCOF519 Z92drgnBKWUK86hqgH5eRNJHX9BDIt/x6dxptDgC9gEh/RvllN352s6tNc7cqd5Q3wNM=; Received: from [84.212.220.105] (helo=xo) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nixXk-0002Th-4F for control@debbugs.gnu.org; Mon, 25 Apr 2022 14:10:17 +0200 Date: Mon, 25 Apr 2022 14:10:15 +0200 Message-Id: <877d7d4b4o.fsf@gnus.org> To: control@debbugs.gnu.org From: Lars Ingebrigtsen Subject: control message for bug #43308 X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: close 43308 29.1 quit Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) close 43308 29.1 quit From unknown Sat Aug 09 13:16:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#43308: 28.0.50; Improvements to Edit->Search menu Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 25 Apr 2022 15:07:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43308 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Lars Ingebrigtsen , Ihor Radchenko Cc: "43308@debbugs.gnu.org" <43308@debbugs.gnu.org> Received: via spool by 43308-submit@debbugs.gnu.org id=B43308.165089921011717 (code B ref 43308); Mon, 25 Apr 2022 15:07:02 +0000 Received: (at 43308) by debbugs.gnu.org; 25 Apr 2022 15:06:50 +0000 Received: from localhost ([127.0.0.1]:35811 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nj0Ib-00032s-ES for submit@debbugs.gnu.org; Mon, 25 Apr 2022 11:06:49 -0400 Received: from mx0b-00069f02.pphosted.com ([205.220.177.32]:42608) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nj0IY-000325-5m for 43308@debbugs.gnu.org; Mon, 25 Apr 2022 11:06:47 -0400 Received: from pps.filterd (m0246630.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 23PDajC9017508; Mon, 25 Apr 2022 15:06:45 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=corp-2021-07-09; bh=JixH5QTKGyabeh0+yG6yBpVonQGcOAj2AOVNfcKkfOc=; b=CuOil459uMhGZmbxoUFulP1f8M2ss5TmkVlvqrfr091IvjDNxTsjOlioK112p386hyCq fX5TsQ+ZJk7JJ1tewOGWquJts4klQ/mwmV5kbvEsoU/nC5/pTM8qIj6Y035HSS27lqZi CpTzszn6ih0zo7iEKTTnzO/V8WXJkLK5x+yX6Fs6cOE/G1CfJYrRbY47zP/S0Gi93jO0 cFLWAvbNXMffQ+uFIH1pCAlk9Uo7Pb2OCkeoc+9LAYEMe9LgV54DNdBuNCzGF7v0gvHG orIotiOjclNq/30qJHkmYAx4NJkdgoZkl6yRBZIZdHtVLyBYVATJNosA62RCe93YxRhf Yw== Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta01.appoci.oracle.com [138.1.114.2]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3fmbb4kea4-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 25 Apr 2022 15:06:45 +0000 Received: from pps.filterd (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.16.1.2/8.16.1.2) with SMTP id 23PF0SjT028309; Mon, 25 Apr 2022 15:06:44 GMT Received: from nam12-dm6-obe.outbound.protection.outlook.com (mail-dm6nam12lp2170.outbound.protection.outlook.com [104.47.59.170]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com with ESMTP id 3fm7w1t46r-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 25 Apr 2022 15:06:44 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nnRy5RBzrTNqxpmGkPZrIBZ/GU0cczczHvrto23qxaM/WJn7O+ZmHu77BlQve5B0E1pqg9nqyLKIsAeEh1GiUIRUhConVAJOSrL7Vu+HNHWYcZT+i8YYALiKbBZHdXCF/9+7CmtmKC7p4p6Y5d4J+0/12OjxqWyVvvvmhnAPXDU+P0XkjLa3NFaXEEGBwRE2XdwEmnKw1FaNQVf/joQCZTJh4ANHUTBjJw/ZPwhHCnltXpS5iZF5LH1PqP44pSkiblig5U1aIyOzs71v6sqI+ySdIvC2z+DARrNoT2QpQ9rG01jJW452h6l+i+VC7hSbBaaN/Bp0vzUqiBZw7pDCzA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=JixH5QTKGyabeh0+yG6yBpVonQGcOAj2AOVNfcKkfOc=; b=TlJb6ulYmonVZ79Qdp3FHN0U+Eegycy5SjeZ2EWLL3+ASJPsDW208HySnkbaymj8jWuv6PaEUOm+GP4V7ffsWH9+r9iXRSni0TA0MkJ2LCA/Xzx2ozrTLJJ9HCXeLw9BUxyjV5x+fuXwkeFXf3jEpIaeUVMAh1ANQR8WVTGP+CqSr+xb62GalieUritkogaX+0wZBSaTkxF7s5PgrL19eLHcJwXiJTH9j+5sBk+y5qLjMbNNqBQ5B5fRJ5izv99GbSmY/0MZ3f6DHW7ZSq93aYP/gUonhOMIF+ECx1YlZ5N59uopNbhE7oba/WhryCPAUCPEUXrTWv7pALdhT35qqw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=JixH5QTKGyabeh0+yG6yBpVonQGcOAj2AOVNfcKkfOc=; b=mBe/D2yuMhwC6O7mSfclMJhq/YHsKrT+tg59MIQ6bqD4hz+hZONNOUFfGaS03CEju+EeVqUTDtwEO9Pz2+fo8tJBHnwLxPja31TfxD8nRymErzDNd+rgroGbCzjGgHtigrGznJHKP9mW0utgdwDOIRoLOhhC232L0XFyofmrSKg= Received: from SJ0PR10MB5488.namprd10.prod.outlook.com (2603:10b6:a03:37e::19) by BN0PR10MB4983.namprd10.prod.outlook.com (2603:10b6:408:121::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5186.14; Mon, 25 Apr 2022 15:06:42 +0000 Received: from SJ0PR10MB5488.namprd10.prod.outlook.com ([fe80::a0e7:5f38:ab50:5123]) by SJ0PR10MB5488.namprd10.prod.outlook.com ([fe80::a0e7:5f38:ab50:5123%9]) with mapi id 15.20.5186.021; Mon, 25 Apr 2022 15:06:42 +0000 From: Drew Adams Thread-Topic: [External] : bug#43308: 28.0.50; Improvements to Edit->Search menu Thread-Index: AQHYWJHblVAkQIlFY0uoRnScO+51z60AukQg Date: Mon, 25 Apr 2022 15:06:41 +0000 Message-ID: References: <87zh5xiuk4.fsf@localhost> <87czh54f0z.fsf@gnus.org> In-Reply-To: <87czh54f0z.fsf@gnus.org> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: fd8b56ea-2202-4445-592f-08da26cd34ad x-ms-traffictypediagnostic: BN0PR10MB4983:EE_ x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 8VZ2dcV/oxzHo/Hrxx42ZA1bUIcpdkJ/w25Pk8ZRXiIiZ7eMZghjTypnfUFhhBZK9XQaL5BmKvAYThz3NJRXVa2p//HfwMr/01z9ZumLjCp36HyCz32AjMDDsCulbOw7Zb4n6p9MDtdCkqs5wvmhVbM41oy5YrHAunFWy+He+jRg1xT/QiYjqn0Fv4zytN/vnBU/XTvwD3sNu4q34k1F/VNZmRsiKkXhInP1soJtSEZPQULMfI+dqDGbuRRkAbt3qfBWyzWE0cWI0O6zT+C8lA7MMAg+fE7Y4rRvBWBqzMAw6Sr8rw+EuR20WQ1dpW6XbbWmwwyS8LX3q+WPY85mCnGx46asJ9Lijd9MjNFn1plnShjrvd16ZHP6WJCp0NR3xKVc8Dy0WBezNb2pQelADZEkVHEglGmnge8bMdKk07vRfvqEmXYOs5sRIA0Unb/kari8gcLSATQxWpEVMIn5gHjeRp9DeXCsVIPa08c6IINDVj0KCb8oo6rBi1U/suYaJxl7rGjpfMa9J2ID0BAFakciJfjLLRkRGMR/7YFGU/GfRCFGujqJbhMUiVMobGXnHIsC806Q9SibSvwyR5EfNRSr70mKP4J463i4MZ5qTZNVvlFVmxMnrLcj5R/H6jN5mTlHaTFIB0bt+GxrxkBKb7KyjKcPHGOA+XmY1PoH1T4RZkw3ev4IohKis9hkcvEVRLTU4w+JveA1tCILPM2dpQ== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SJ0PR10MB5488.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230001)(366004)(8936002)(52536014)(44832011)(9686003)(26005)(110136005)(316002)(5660300002)(33656002)(186003)(6506007)(7696005)(86362001)(4744005)(38070700005)(2906002)(38100700002)(122000001)(508600001)(71200400001)(55016003)(76116006)(66946007)(8676002)(4326008)(66556008)(66476007)(66446008)(64756008); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: lq8UJ9UeT3gRs2X4PpV0zY5inbNPOxXrkN4AJn24AVQKJrf6by8yS0rosEVfHaAS3dSAeAEOsiKGwOn4hhB1MuSXv18xj0zobpLPGbvQWRlbJBth4wjdqAUuDQnUp0qVRV60moHQGOI3Ri6HtHrePy7pFC4pI5rDMNBOysfskBStawLwa/oLpTr6hXLf1nqcBiW0WiXiZgcGcCISKfZgnq2zhHgF+deuBPWVxokaEvp602IZSfWyTJmVd4eLcX03ylHmRi5k4PpCFfF2cj/ziIXPyvZJUE1YdqnQVJuTBzfwpUp7r3QGAcwPcFRErFbXezfHreBsJ3EpJC3gOFOngBkip2/TV64Kp1xlHFAIGCznwz4E/rm1xA/gbPppfFiikes5WAS4snL+b6EEw5KcIuZO2KkDxhndK5Ons0YGHvgD27AsQqsQ2MII4NlTkJJHHmjiu1I4bCou/hWlCDt0x/+jI3aWVlNAZR8EBcLs1EAvqPdlarWBAJzLuz93Wv+aurbwvbcbZsJnABMtolrfspJ2lx/y4RGvxMbyqLZ+7jA8YhySn00EQCxBcZdNrriwRfjG/NF6gNTlvvmJTltQ0kwLYGpwtC5NjY1ZklVkig1cnFfDTGZM7qhUPfPP+MZV8pvjXafhDyTSbIUX/tMgi/rnXtWuE3WJcU28G747WVK560i5gJA6HH8RewYXwap3zf9j0nHEHBF5amLPdl6SGj8pTVhQeXG5HSvQ2MwZV1/N67u+hrqnhKgef1TuW5yUD868gUJmJB4M6ByTWsPO4a5woLyKx7kZuLnlyx/n/OD1cEK+gWSjzXrBCHBPYEHIgMun9r7D2tyX2ARTshEjgDFDsMsGkiTAYevh6aIEY5LTHdcnBLukSmJc6LrQE9mDb+5JwD2e2tXVcGSFChpoDlHBofYqjhcduyOZ2tDrj9ONSewXfbwOwDiResXVwmTbaVirawns68wnVhkXxZACtZsmAd0w3VkRHzfUdXDpe77OruO5d3g+oJ6iJLIlKc0Wp+naGik9ct6ZbcoTl5QFZC5/6AaJ3YKaYnw9Qev5wLmWkNi3DxERmyu71gMPsImdeMDZJdEirx63uAdYrtFcTu1mPTwzNmhs65y0saD4GqaEYiG2gHOJjqIaLiSxe+EV8PCjX4ths/KdvF+dkNossdQNv9wle1zbbOGJrPlVYwZ5bMT74khjcD8fVANUFjIYaNEIwCgUYLkxiKpKOpeuZZ+ruekwtO145d4dHWJn8/ZfFn+fMvk55m9KCRvJyNdJTq/jW12SMahQxOKHICweEymMCV+MTHj33j1r5ZnXfdxGFZ8uA99r9yKE4Ww8h+RIKwMt/++64SiGblj5eNQrcSeHruRPH0UDK9bqxuHP5XmFk0N9qRbK8UMSYYzHCe1fFF23ar+pJc4Qz4EUYC+QKKT/S9NqZRZA2+YsdHOsuUSICPorMae2+y9S2CDxc2G2lnMu0cW5L3Qf90w/we6sk3P4JFxGrazB8I38p+sRC2vb4inrwZKvMfJsSW4+nViFj2E+t88bJhHpVUhxjz1elHJNc+KkQBATI+rPzYGGNr6b5d7ehL0mqp6n2HXAEmRjIgskvXQaPIv6wPA2S27V/Uk5gQFbJvS/mJXkdZ8fVV62j8ftAALKbndv51xpLOrMT+L3octDyWVS2hUvKDO9JaItT3G76U+/HZ4NJZr3J8E715FV7tTfBu0cRT4s6VNPM0dleGt3o2l9/YsLZy0dEA== Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SJ0PR10MB5488.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: fd8b56ea-2202-4445-592f-08da26cd34ad X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Apr 2022 15:06:41.9804 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: DsLw4yjPLIfiWSnDTs7YexYQKGOnK+oZRib2QAmIK6g2jgZAu1nM0sKP2r2alIIFaMrE2qH9r97rxfHfBDw6Zw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN0PR10MB4983 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.486, 18.0.858 definitions=2022-04-25_06:2022-04-25, 2022-04-25 signatures=0 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 suspectscore=0 malwarescore=0 spamscore=0 phishscore=0 bulkscore=0 mlxlogscore=564 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2202240000 definitions=main-2204250066 X-Proofpoint-ORIG-GUID: fFt-ph9992Q5S0o1f1IOPtlOAANU_Htd X-Proofpoint-GUID: fFt-ph9992Q5S0o1f1IOPtlOAANU_Htd X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) > I wonder whether it makes sense to just > move "Incremental Search" up out of "Search"? Because "Incremental > Search" is probably as popular as non-incremental search. The "because" is true, but it doesn't motivate such a move. Leave all search under Search. Don't add menus needlessly. > I.e., have both > Search > Incremental Search > directly under Edit. (And I have a top-level Search menu on the menu-bar.)