unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Daniel Colascione <dancol@dancol.org>
To: Eli Zaretskii <eliz@gnu.org>, Juri Linkov <juri@linkov.net>
Cc: emacs-devel@gnu.org
Subject: Re: Isearch interaction model
Date: Sun, 4 Mar 2018 09:13:44 -0800	[thread overview]
Message-ID: <da2096ad-4507-d84b-2262-e3e569805841@dancol.org> (raw)
In-Reply-To: <83po4ju9xs.fsf@gnu.org>

On 03/04/2018 07:39 AM, Eli Zaretskii wrote:
>> From: Juri Linkov <juri@linkov.net>
>> Date: Sun, 04 Mar 2018 00:50:27 +0200
>> Cc: Emacs developers <emacs-devel@gnu.org>
>>
>>>> I think the answer is to have one history which records the mode used
>>>> for each search, so that it is reused correctly.  (When it makes sense,
>>>> the user can change the search mode after selecting the history element.)
>>>>
>>>
>>> Yep.
>>
>> One of the main questions to decide is how to attach search parameters
>> to the search string in the search history in a backward-compatible way.
>> We can't do this by adding text properties with search parameters
>> to the search string because text properties on strings can't be saved
>> in the desktop file or by other history saving libraries.
>>
>> I see no way other than introducing a new incompatible history variable
>> that will keep previous searches with parameters in the same format
>> as is used currently by the search stack in isearch-cmds.

So what? That's fine.

> Aren't we over-engineering this stuff?  

No. Exposing search-type-specific histories is what's gross, especially 
as you increase the number of search types beyond the traditional two.

Why does it *matter* whether you search for something as a regular 
expression or a symbol or a word? What matters is what you were trying 
to find, and LRU ordering is a good way to make it easy to find what you 
meant.

> IMNSHO, separate histories
> could be just fine, since it's easy enough to change the Isearch mode
> after you have the previous search string in the minibuffer.

Sure, and you can find ways to accept and work around spacebar heating 
too. The existence of workarounds is not excuse for poor UI.

> And if
> you remember your previous searches, you most probably also remember
> whether you searched for a string as a symbol or a word or whatever.

That's imposing an additional cognitive burden on humans for the sake of 
an isearch implementation detail.

> 
> By contrast, breaking back-compatibility for this reason sounds gross
> to me.

What backwards compatibility? The presence of individual history 
variables across major versions is not guaranteed.



  reply	other threads:[~2018-03-04 17:13 UTC|newest]

Thread overview: 58+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-22 19:10 Let's make C-M-w in isearch yank symbol, not delete character Daniel Colascione
2018-02-23  0:44 ` John Wiegley
2018-02-25 20:55 ` Juri Linkov
2018-02-25 21:12   ` H. Dieter Wilhelm
2018-02-25 21:43   ` Daniel Colascione
2018-03-01 22:39     ` Isearch interaction model (was: Let's make C-M-w in isearch yank symbol, not delete character) Juri Linkov
2018-03-02  0:12       ` Isearch interaction model Daniel Colascione
2018-03-02  0:19         ` Davis Herring
2018-03-02  0:26           ` dancol
2018-03-03 22:50             ` Juri Linkov
2018-03-03 23:46               ` Clément Pit-Claudel
2018-03-04 21:42                 ` Juri Linkov
2018-03-08 22:55                 ` Juri Linkov
2018-03-04 15:39               ` Eli Zaretskii
2018-03-04 17:13                 ` Daniel Colascione [this message]
2018-03-04 17:26                   ` Clément Pit-Claudel
2018-03-04 21:58                     ` Juri Linkov
2018-03-04 22:03                     ` Daniel Colascione
2018-03-05  3:33                       ` Eli Zaretskii
2018-03-05 21:33                       ` Juri Linkov
2018-03-04 21:50                   ` Juri Linkov
2018-03-06 21:47           ` Juri Linkov
2018-03-06 22:22             ` dancol
2018-03-07 22:30               ` Juri Linkov
2018-03-07 22:55                 ` dancol
2018-03-08 22:41                   ` Juri Linkov
2018-03-09 11:01                     ` Daniel Colascione
2018-03-10 21:20                       ` Juri Linkov
2018-03-10 21:36                         ` Daniel Colascione
2018-03-11 21:58                           ` Juri Linkov
2018-03-12  3:29                             ` Eli Zaretskii
2018-03-12  8:23                             ` Daniel Colascione
2018-03-12  9:29                               ` Yuri Khan
2018-03-02 16:01       ` Isearch interaction model (was: Let's make C-M-w in isearch yank symbol, not delete character) Richard Stallman
2018-02-26  3:26   ` Let's make C-M-w in isearch yank symbol, not delete character Eli Zaretskii
2018-02-27 21:28     ` Juri Linkov
2018-02-28  3:40       ` Eli Zaretskii
2018-03-01 22:32         ` Juri Linkov
2018-03-02  8:17           ` Eli Zaretskii
2018-03-03 22:34             ` Juri Linkov
2018-03-04 15:47               ` Eli Zaretskii
2018-03-04 21:36                 ` Juri Linkov
2018-03-05  3:31                   ` Eli Zaretskii
2018-03-05 15:59                     ` Eli Zaretskii
2018-03-05 21:25                       ` Juri Linkov
2018-03-06  3:28                         ` Eli Zaretskii
2018-03-06 22:07                           ` Juri Linkov
2018-03-10 11:59                             ` Eli Zaretskii
2018-03-10 18:34                             ` John Shahid
2018-03-10 21:15                               ` Juri Linkov
2018-03-11  2:37                                 ` Stefan Monnier
2018-03-11 21:52                                   ` Juri Linkov
2018-03-12 17:38                                     ` John Shahid
2018-03-12 18:24                                     ` Alan Mackenzie
2018-03-12 21:19                                       ` Juri Linkov
2018-03-12 21:36                                         ` Juri Linkov
2018-03-11  3:38                                 ` Eli Zaretskii
2018-03-11 14:32                                 ` Herring, Davis

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=da2096ad-4507-d84b-2262-e3e569805841@dancol.org \
    --to=dancol@dancol.org \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=juri@linkov.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).