all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Luc Teirlinck <teirllm@dms.auburn.edu>
Cc: emacs-devel@gnu.org, rms@gnu.org, miles@gnu.org
Subject: Re: Bugs in newly added completion capabilities.
Date: Thu, 30 Jun 2005 13:28:21 -0500 (CDT)	[thread overview]
Message-ID: <200506301828.j5UISL305879@raven.dms.auburn.edu> (raw)
In-Reply-To: <jwv4qbfd9wn.fsf-monnier+emacs@gnu.org> (message from Stefan Monnier on Thu, 30 Jun 2005 13:42:15 -0400)

Stefan Monnier wrote:

   Honestly, what's so great about being able to use lists of symbols rather
   than lists of strings?  In Emacs-21, we don't even allow lists of strings,
   but only lists of pairs whose car is a string, and people haven't complained
   about it.

I am not arguing for allowing lists of symbols rather than lists of
strings, but mixed lists of strings and symbols _are_ currently allowed
and try-completion and all-completions now nearly everywhere treat
symbols as being completely equivalent to (symbol-name 'symbol)
since the following change made relatively recently (I thought we were
in a feature freeze, but anyway):

2005-02-22  Kim F. Storm  <storm@cua.dk>

	    * minibuf.c (Ftry_completion, Fall_completions): Allow
              both string and symbol keys in alists and hash tables.

Again I am not arguing for or against the desirability of this change,
I am trying to deal with its consequences.

There are two problems: the _nearly_ everywhere is very inconsistent
and the exceptions at first seem totally arbitrary, so it should be
clearly documented what the exceptions are and what the motivation for
the exceptions is.

Secondly, try-completion and all-completions are mainly used by
minibuffer completion functions that can also pass the same argument
to test-completion.  If test-completion treats this argument
differently from the other two (as it currently does), there is the
obvious potential for trouble.

So either one just reverts the 2005-02-22 change, or one needs to
take care of the inconsistency problems I pointed out.

   I don't like the idea of adding "" at the beginning of a completion table.
   Here I have a good reason, which is that it changes the behavior:

      (try-completion "" '("aaa" "aab" "aac"))  => "aa"
      (try-completion "" '("" "aaa" "aab" "aac"))  => ""

Of course, the person consing "" to the front of the completion table
will have to write his code to expect the second answer.

Sincerely,

Luc.

  reply	other threads:[~2005-06-30 18:28 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-06-28  2:27 Bugs in newly added completion capabilities Luc Teirlinck
2005-06-28 18:47 ` Richard M. Stallman
2005-06-29  3:50   ` Luc Teirlinck
2005-06-29 20:43     ` Richard M. Stallman
2005-06-30  2:29       ` Luc Teirlinck
2005-06-30  7:48         ` Kim F. Storm
2005-06-30  7:50         ` Miles Bader
2005-06-30 12:51           ` Kim F. Storm
2005-06-30 17:19           ` Luc Teirlinck
2005-06-30 17:42           ` Stefan Monnier
2005-06-30 18:28             ` Luc Teirlinck [this message]
2005-06-30 19:42               ` Stefan Monnier
2005-07-01  8:14               ` Kim F. Storm
2005-07-01 14:59                 ` Stefan Monnier
2005-07-02 12:32                   ` Richard M. Stallman
2005-06-30 18:32             ` Luc Teirlinck
2005-06-30 19:43               ` Stefan Monnier
2005-07-01  4:03             ` Richard M. Stallman
2005-07-01  4:36               ` Miles Bader
2005-07-01  7:33                 ` David Kastrup
2005-07-01  7:55                   ` Miles Bader
2005-07-01  8:34                 ` Kim F. Storm
2005-07-01 22:45                   ` Richard M. Stallman
2005-07-01  8:30               ` Kim F. Storm
2005-06-30 21:29         ` Richard M. Stallman
2005-06-29  3:56   ` Luc Teirlinck

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

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

  git send-email \
    --in-reply-to=200506301828.j5UISL305879@raven.dms.auburn.edu \
    --to=teirllm@dms.auburn.edu \
    --cc=emacs-devel@gnu.org \
    --cc=miles@gnu.org \
    --cc=rms@gnu.org \
    /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 external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.