mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-01-09 05:01:02 -08:00
(Fminibuffer_complete_and_exit):
Fixup the case of the completed value, for case-indep completion.
This commit is contained in:
parent
bbe9f1755c
commit
36baf3b70e
1 changed files with 21 additions and 1 deletions
|
|
@ -2082,9 +2082,29 @@ a repetition of this command will exit. */)
|
|||
if (XINT (Fminibuffer_prompt_end ()) == ZV)
|
||||
goto exit;
|
||||
|
||||
if (!NILP (Ftest_completion (Fminibuffer_contents (),
|
||||
val = Fminibuffer_contents ();
|
||||
if (!NILP (Ftest_completion (val,
|
||||
Vminibuffer_completion_table,
|
||||
Vminibuffer_completion_predicate)))
|
||||
{
|
||||
if (completion_ignore_case)
|
||||
{ /* Fixup case of the field, if necessary. */
|
||||
Lisp_Object compl
|
||||
= Ftry_completion (val,
|
||||
Vminibuffer_completion_table,
|
||||
Vminibuffer_completion_predicate);
|
||||
if (STRINGP (compl)
|
||||
/* If it weren't for this piece of paranoia, I'd replace
|
||||
the whole thing with a call to do_completion. */
|
||||
&& EQ (Flength (val), Flength (compl)))
|
||||
{
|
||||
del_range (XINT (Fminibuffer_prompt_end ()), ZV);
|
||||
Finsert (1, &compl);
|
||||
}
|
||||
}
|
||||
goto exit;
|
||||
}
|
||||
|
||||
goto exit;
|
||||
|
||||
/* Call do_completion, but ignore errors. */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue