Replies: 5 comments 18 replies
|
Yes, this happens since the However Vertico could probably do a little better here. When the input matches an ignored filename exactly, Vertico should perhaps still display it in the list. This should make the behavior more intuitive. I'll see if this is easily possible. EDIT: Commit 5a5681e improves the behavior. Please check it out. |
|
The same problem happens with Info-read-node-name and read-color too. It's a bug in vertico with ACTION=lambda plus require-match=t: if the user's input is a valid completion according to ACTION=lambda, it should be allowed, and vanilla Emacs allows it but vertico does not. |
|
This conversation for too into the weeds for me. I think vertico should
keeps most of its current behavior. I like that it protects you against
select-buffer mistakes, and should continue to default the selection to the
first candidate. I just want to be able to scroll up to the prompt line and
submit that whenever I want, unless 'no-prompt was configured.
…On Thu, Aug 27, 2026, 9:04 PM Daniel Mendler ***@***.***> wrote:
Okay.
BTW, when REQUIRE-MATCH is a function, make sure to also call that
function in the same circumstances you call test-completion. It basically
serves the same purpose.
Truth is, I disagree with this feature. As you are aware, it is redundant
with the test-completion action, and was added later. Is this widely
used? vertico-exit supports it but I only added it there begrudgingly.
—
Reply to this email directly, view it on GitHub
<#680?email_source=notifications&email_token=AB3W5YGZEBRWTAIITFEEQFT5MDLAZA5CNFSNUABIM5UWIORPF5TWS5BNNB2WEL2ENFZWG5LTONUW63SDN5WW2ZLOOQXTCOBRHAZDCNZXUZZGKYLTN5XKMYLVORUG64VFMV3GK3TUVRTG633UMVZF6Y3MNFRWW#discussioncomment-18182177>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AB3W5YAGAHMTLPYWM3IITWT5MDLAZAVCNFSNUABIKJSXA33TNF2G64TZHMZTKMZXHA3DCMRRHNCGS43DOVZXG2LPNY5TCMBWHEZTSOBWUF3AE>
.
Triage notifications, keep track of coding agent tasks and review pull
requests on the go with GitHub Mobile for iOS
<https://github.com/notifications/mobile/ios/AB3W5YAJQ4K6NNFLBRVM4OD5MDLAZA5CNFSNUABIM5UWIORPF5TWS5BNNB2WEL2ENFZWG5LTONUW63SDN5WW2ZLOOQXTCOBRHAZDCNZXUZZGKYLTN5XKMYLVORUG64VFMV3GK3TUVJTG633UMVZF62LPOM>
and Android
<https://github.com/notifications/mobile/android/AB3W5YAKFOU6YPDA3URLV6T5MDLAZA5CNFSNUABIM5UWIORPF5TWS5BNNB2WEL2ENFZWG5LTONUW63SDN5WW2ZLOOQXTCOBRHAZDCNZXUZZGKYLTN5XKMYLVORUG64VFMV3GK3TUVZTG633UMVZF6YLOMRZG62LE>.
Download it today!
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
|
Hi Daniel
I tried out the latest commit and unfortunately I'm finding this unusable.
My REQUIRED-MATCH lambda communicates with an external service to check
validity so calling it on every key stroke is crushing my emacs. It also
reaponds to invalid input by user-erroring to give details about why it's
invalid, which kills the redisplay and dumps to debug instead of being
shown to the user. I think I really just want this run on submission as
before, and to be able to select the prompt line if if REQUIRED-MATCH is a
lambda and not 'no-prompt.
…On Fri, Aug 28, 2026, 11:55 AM Spencer Baugh ***@***.***> wrote:
Oh you're right, my apologies, I totally misread the cond case... ugh,
that's really terrible.
—
Reply to this email directly, view it on GitHub
<#680?email_source=notifications&email_token=AB3W5YBTY4WXGYNK6H7P35D5MGTPFA5CNFSNUABIM5UWIORPF5TWS5BNNB2WEL2ENFZWG5LTONUW63SDN5WW2ZLOOQXTCOBRHEYDOOJYUZZGKYLTN5XKO3LFNZ2GS33OUVSXMZLOOSWGM33PORSXEX3DNRUWG2Y#discussioncomment-18190798>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AB3W5YBFXA7ELX2AZGNJIKL5MGTPFAVCNFSNUABIKJSXA33TNF2G64TZHMZTKMZXHA3DCMRRHNCGS43DOVZXG2LPNY5TCMBWHEZTSOBWUF3AE>
.
Triage notifications, keep track of coding agent tasks and review pull
requests on the go with GitHub Mobile for iOS
<https://github.com/notifications/mobile/ios/AB3W5YHAF2E42UTVUVU3AUT5MGTPFA5CNFSNUABIM5UWIORPF5TWS5BNNB2WEL2ENFZWG5LTONUW63SDN5WW2ZLOOQXTCOBRHEYDOOJYUZZGKYLTN5XKO3LFNZ2GS33OUVSXMZLOOSVGM33PORSXEX3JN5ZQ>
and Android
<https://github.com/notifications/mobile/android/AB3W5YH6QI2563UYXWM7XST5MGTPFA5CNFSNUABIM5UWIORPF5TWS5BNNB2WEL2ENFZWG5LTONUW63SDN5WW2ZLOOQXTCOBRHEYDOOJYUZZGKYLTN5XKO3LFNZ2GS33OUVSXMZLOOSXGM33PORSXEX3BNZSHE33JMQ>.
Download it today!
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
|
Thanks this works great!
…On Thu, Sep 3, 2026, 7:10 PM Daniel Mendler ***@***.***> wrote:
I see. Unfortunately the API is quite unspecified. I think calling once
per key press should be fine, but one can also interpret it as you did,
expecting a call only in the very end when exiting the minibuffer. Try this
commit: ccf9856
<ccf9856>
.
—
Reply to this email directly, view it on GitHub
<#680?email_source=notifications&email_token=AB3W5YG5XISA27AW5XTQW6L5NH24VA5CNFSNUABIM5UWIORPF5TWS5BNNB2WEL2ENFZWG5LTONUW63SDN5WW2ZLOOQXTCOBSG43TKOJXUZZGKYLTN5XKO3LFNZ2GS33OUVSXMZLOOSWGM33PORSXEX3DNRUWG2Y#discussioncomment-18277597>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AB3W5YDWMBVH7775PLEH45L5NH24VAVCNFSNUABIKJSXA33TNF2G64TZHMZTKMZXHA3DCMRRHNCGS43DOVZXG2LPNY5TCMBWHEZTSOBWUF3AE>
.
Triage notifications, keep track of coding agent tasks and review pull
requests on the go with GitHub Mobile for iOS
<https://github.com/notifications/mobile/ios/AB3W5YGBXF7EXMBPT74VV535NH24VA5CNFSNUABIM5UWIORPF5TWS5BNNB2WEL2ENFZWG5LTONUW63SDN5WW2ZLOOQXTCOBSG43TKOJXUZZGKYLTN5XKO3LFNZ2GS33OUVSXMZLOOSVGM33PORSXEX3JN5ZQ>
and Android
<https://github.com/notifications/mobile/android/AB3W5YHPCM3JAWBONVJ5N7L5NH24VA5CNFSNUABIM5UWIORPF5TWS5BNNB2WEL2ENFZWG5LTONUW63SDN5WW2ZLOOQXTCOBSG43TKOJXUZZGKYLTN5XKO3LFNZ2GS33OUVSXMZLOOSXGM33PORSXEX3BNZSHE33JMQ>.
Download it today!
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Uh oh!
There was an error while loading. Please reload this page.
mkdir /tmp/vtest && touch /tmp/vtest/foo.elc /tmp/vtest/foo.elc.orig
In emacs -Q with vertico-mode enabled, evaluate:
(read-file-name "File: " "/tmp/vtest/" nil t) ; REQUIRE-MATCH = t
then type foo.elc and press RET.
• Vanilla Emacs: returns /tmp/vtest/foo.elc — the file you typed.
• Vertico: silently returns /tmp/vtest/foo.elc.orig — a different, wrong file.
All reactions