<<< Date Index >>>     <<< Thread Index >>>

Re: mutt/2136: simple_search strange



* Vincent Lefevre <vincent@xxxxxxxxxx>, 2005-11-24 01:06:36 Thu:
> On 2005-11-23 13:19:51 -0500, David Haguenauer wrote:
> > Actually, "^", "all" and "." are special-cased and equivalent to
> > "~A". So, yes, <limit>. should always show all messages.
> 
> OK, I confirmed this with a test. But where is this written in the
> manual? It should be in Section 4.2, but I can't see anything about
> that.

Use the Source, Luke! Indeed, this feature doesn't seem to be
documented, which is more or less what started this whole thread.

Excerpt of pattern.c from 1.5.10:

----
/* convert a simple search into a real request */
void mutt_check_simple (char *s, size_t len, const char *simple)
{
  char tmp[LONG_STRING];

  /* XXX - is ascii_strcasecmp() right here, or should we use locale's
   * equivalences?
   */
  
  if (!strchr (s, '~')) /* yup, so spoof a real request */
  {
    /* convert old tokens into the new format */
    if (ascii_strcasecmp ("all", s) == 0 ||
        !mutt_strcmp ("^", s) || !mutt_strcmp (".", s)) /* ~A is more efficient 
*/
      strfcpy (s, "~A", len);
----

(I wonder, by the way, whether there is a good reason why the style
keeps switching between `!strcmp' and `strcmp == 0'.)

-- 
David Haguenauer

Attachment: pgpHGaU1NzwSX.pgp
Description: PGP signature