unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: "Drew Adams" <drew.adams@oracle.com>
To: "'Juri Linkov'" <juri@jurta.org>
Cc: 'Kelly Dean' <kellydeanch@yahoo.com>, 12988@debbugs.gnu.org
Subject: bug#12988: [PATCH] RE: bug#12988: isearch fails to persistently indicate case sensitivity
Date: Wed, 28 Nov 2012 16:06:42 -0800	[thread overview]
Message-ID: <4EF04423864F4A009C7B1CFAE5C53AD5@us.oracle.com> (raw)
In-Reply-To: <871ufdiaup.fsf@mail.jurta.org>

> > I think I've mentioned this way before, but perhaps not: In 
> > Isearch+, the mode-line lighter makes clear (continually)
> > whether searching is currently case-sensitive.  Vanilla Emacs
> > could do likewise.
> >
> >  When   case-sensitive, the lighter is `Isearch'.
> >  When case-insensitive, the lighter is `ISEARCH'.
> 
> Clever trick, but not obvious without knowing what does it mean.

I hear you, and Stefan said the same thing.  I think it doesn't take someone
long to figure it out, even with no explanation.  Once you know about it you
look there, but yes, until you do you are not in the habit of looking there.

In Icicles, I use it also to indicate case sensitivity during completion.  So
users see the convention in two places, which reinforces it.

> We need indication for other isearch parameters too,
> e.g. for `isearch-lax-whitespace'.  Do you think
> it would be equally clever to display `I s e a r c h'
> to indicate lax-whitespace mode ;-)

I doubt it.  And I'm not sure that all isearch parameters are created equal. ;-)

On the other hand, I might be persuaded that `I search' vs `Isearch' would not
be too bad, especially if the ` ' were highlighted. ;-)

So in that case:

 Isearch    - case sensitive,   strict whitespace
 ISEARCH    - case insensitive, strict whitespace
 I search   - case sensitive,   lax    whitespace
 I SEARCH   - case insensitive, lax    whitespace

Not too bad for a few chars.

I suggest picking only those isearch parameters that users need most to be aware
of, and if an easy means suggests itself to you for making them aware of those,
then use it.  And it need not be the same mechanism for each indication.

In Icicles, as another example, the minor-mode lighter, `Icy', (optionally)
shows several things at once:

* availability of completion: lighter colored red
* whether completion is lax or strict: overline+underline for strict
* case-sensitivity, as mentioned: Icy or ICY
* whether current command is a multi-command (`+' appended): Icy+
* whether candidates are multi-completions (`||' appended): Icy||
* whether set of cands shown is truncated (`...' appended): Icy...

So you see that in the case of Icicles completion a lot of info is packed into a
few chars of the modeline, in a small field intended anyway to convey info about
this minor mode.

Users are generally quick to discover things, even without reading doc.  Just by
noticing what these symbols seem to correspond to in action, it is pretty easy
to catch on after a while.  And I would suggest that the `Icy' vs `ICY' meaning
is the easiest indicator to guess.

I would certainly argue that `Isearch' vs `ISEARCH' is clearer that what Stefan
proposed as an alternative:

SM> An obvious choice is to use the same letter as the one used
SM> for the corresponding key-binding, e.g. "Isearch/r/c:".

That encoding is NOT obvious to users, IMHO.  But as with all such smoke
signals, eventually some users would figure that one out also.

That said, I would agree, if someone made the remark that if we use the
mode-line lighter to indicate some isearch state, that means that users have two
places to look for state info, and a priori, looking in two places is harder
than looking in one.

A (weak) answer is that if the info conveyed is different in the two places,
it's not so bad - e.g., case-sensitivity in the lighter, mode (regexp/simple) in
the prompt.  But in absolute terms, yes, looking in only one place for all info
is generally better.






  reply	other threads:[~2012-11-29  0:06 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-11-25  2:05 bug#12988: isearch fails to persistently indicate case sensitivity Kelly Dean
2012-11-25  9:54 ` Juri Linkov
2012-11-25 17:55   ` bug#12988: [PATCH] " Drew Adams
2012-11-25 18:02     ` bug#12988: [PATCH] RE: bug#12988: isearch fails to persistentlyindicate " Drew Adams
2012-11-28 23:19     ` bug#12988: [PATCH] RE: bug#12988: isearch fails to persistently indicate " Juri Linkov
2012-11-29  0:06       ` Drew Adams [this message]
2012-11-30  0:28         ` Juri Linkov
2012-11-30  1:18           ` Drew Adams
2012-11-30  1:34             ` Juri Linkov
2012-11-30  3:50               ` Drew Adams
2012-11-30  8:23               ` Eli Zaretskii
2012-11-30  8:35                 ` Chong Yidong
2012-11-30 14:19                   ` Stefan Monnier
2012-11-30 15:46                     ` Dani Moncayo
2012-11-30 15:59                       ` Dani Moncayo
2012-11-30 16:55                       ` Stefan Monnier
2012-11-30 18:30                     ` Juri Linkov
2012-11-30 19:26                       ` Stefan Monnier
2012-11-30 19:44                         ` Juri Linkov
2012-11-30 20:10                           ` Stefan Monnier
2012-11-30 21:35                             ` bug#12988: [PATCH] RE: bug#12988: isearch fails to persistentlyindicate " Drew Adams
2012-12-01  6:03                               ` Chong Yidong
2012-12-01  6:41                                 ` Jambunathan K
2012-12-01  7:01                                   ` Drew Adams
2012-12-01  8:06                                     ` Jambunathan K
2012-12-01 16:38                                       ` Drew Adams
2012-11-30  8:36                 ` bug#12988: [PATCH] RE: bug#12988: isearch fails to persistently indicate " Dani Moncayo
2012-11-30  9:56                   ` Eli Zaretskii
2012-11-30 10:09                     ` Dani Moncayo
2012-11-30 13:35                   ` Andreas Schwab
2012-11-30 15:37                     ` Dani Moncayo
2022-04-27 18:48   ` Lars Ingebrigtsen

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=4EF04423864F4A009C7B1CFAE5C53AD5@us.oracle.com \
    --to=drew.adams@oracle.com \
    --cc=12988@debbugs.gnu.org \
    --cc=juri@jurta.org \
    --cc=kellydeanch@yahoo.com \
    /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).