Skip to content

Revise bibtex-actions-read to use a dedicated dynamic completion table #159

Closed
@bdarcus

Description

@bdarcus

As a result of various failed efforts to work around limitations in default CRM, really fixing these problems will likely require writing a specialized dynamic completion table that does what we want. Basically, I think it would mean rewriting CRM and using that instead.

See:
minad/vertico#59 (comment)
#155.

To summarize the issues with CRM:

  1. terrible for long candidate strings (which we use; see Alternative multiple candidate select UI? radian-software/selectrum#489)
  2. initial-input inconsistency (CRM and initial-input question minad/vertico#59)
  3. and in general, it just seems a poor step-child to completing-read (though there's probably only so much we can do about that)

So I believe this would mean writing a function to adapt crm to a) shorten that candidates strings to key in the prompt (what I was experimenting with in #155), and b) adding "initial-input" and such to all selections. I don't know how to do either ATM.

Note: one downside is it would only work with fully compliant implementations, like icomplete-vertical and vertico. It currently would not work with selectrum. But in mid-2021, vertico is looking like a better option anyway.

Maybe whether to use single or multiple should be configurable?

It's worth noting that the completing-read-multiple function is fairly short. The entire crm.el file is only about 200 LOC.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions