Giter VIP home page Giter VIP logo

Comments (19)

manuel-uberti avatar manuel-uberti commented on August 29, 2024 1

@protesilaos FWIW this is how I am customizing vertico-current in my config, thanks to modus-themes-with-colors

`(vertico-current
  ((,class
    :foreground ,(modus-themes-color 'fg-main)
    :inherit bold
    :background ,(modus-themes-color 'bg-inactive)
    :extend nil)))

Of course this is completely limited to my experience, but I wanted it to look like Selectrum does with the Modus themes because I like that too much.

from vertico.

minad avatar minad commented on August 29, 2024

Thanks for reporting. I guess I deleted the background when postprocessing the svg with inkscape. I will fix this. Regarding the package I must say I got inspired a bit by your completion system. And when I hacked on a prototype for dynamic table support for Selectrum I figured that essentially everything is there to make this a full (but rather minimal) completion system. If you have suggestions to make, please let me know. The only rule is that the package must stay below 500 loc, such that I don't have to change the readme. As it turns out, everyone has their own completion system now. You have prot-minibuffer.el, @clemera has Selectrum, @oantolin even has two four systems (Icomplete-vertical, Embark live completions, live-completions and grille) and I have Vertico 😄 Btw, are you interested in adding support to Modus for Vertico?

from vertico.

protesilaos avatar protesilaos commented on August 29, 2024

Thank you!

Btw, are you interested in adding support to Modus for Vertico?

The faces look good to me. Perhaps the only change would be vertico-current? It also looks fine, but maybe you prefer another colour than what highlight uses.

from vertico.

minad avatar minad commented on August 29, 2024

The faces look good to me. Perhaps the only change would be vertico-current? It also looks fine, but maybe you prefer another colour than what highlight uses.

Yes, I only thought about adjusting vertico-current such that the look is coherent with the other systems.

from vertico.

oantolin avatar oantolin commented on August 29, 2024

It's very polite of you to list only the two least awful of the awful completion UIs I've written. In case you are curious, the others are live-completions and grille.

from vertico.

minad avatar minad commented on August 29, 2024

@oantolin Sorry, how could I miss that. I updated my comment 😆 I've read about live-completions before but I think it is mostly a predecessor to Embark live completions? I have to look at grille!

from vertico.

oantolin avatar oantolin commented on August 29, 2024

I'd say grille is the most direct predecessor to embark live completions. Grille uses tabulated-list-mode just like Embark collect. All of these completion UIs are slow because they create a buffer with all completions, instead of only rendering a handful at a time.

from vertico.

minad avatar minad commented on August 29, 2024

Yes, I just looked at Grille. But it also uses a Grid - how well does that work together with the tabulated-list-mode? It would be neat to populate the Embark live completion/collect buffer in chunks after some timeout as has been proposed before.

from vertico.

oantolin avatar oantolin commented on August 29, 2024

But it also uses a Grid - how well does that work together with the tabulated-list-mode?

I'm not sure I understand the question. Grille, like Embark collect grid view, uses (abuses?) tabulated-list-mode to create the grid.

It would be neat to populate the Embark live completion/collect buffer in chunks after some timeout as has been proposed before.

Yes, I'd love to do that. It would probably require abandoning some of tabulated-list-mode's services and doing things at a lower level. It shouldn't be hard.

from vertico.

minad avatar minad commented on August 29, 2024

I'm not sure I understand the question. Grille, like Embark collect grid view, uses (abuses?) tabulated-list-mode to create the grid.

Right. You also have the grid in Embark. I forgot, since I rarely use this, since I am mostly using minibuffer completion. And then I often use embark collect and the actions obviously. I just wonder about the abuse how well this works, since I assume there are functions to select rows and columns and this will all not work nicely if you abuse it for a grid?

Yes, I'd love to do that. It would probably require abandoning some of tabulated-list-mode's services and doing things at a lower level. It shouldn't be hard.

Yes, it makes sense to do that, since you also avoid the abuse then. And it could be a bit faster when you remove an intermediate layer?

from vertico.

oantolin avatar oantolin commented on August 29, 2024

I think abusing tabulated-list-mode for grids works really well, actually, for example, the arrow keys navigate between entries as you'd expect. It does break politza's tablist mode, that one really wants each line to correspond to a single "item", with various columns of associated data.

from vertico.

oantolin avatar oantolin commented on August 29, 2024

I hadn't seen your new prot-minibuffer.el, @protesilaos. It brought a smile to my face to see the heart of the old live-completions package in there somewhere.

from vertico.

oantolin avatar oantolin commented on August 29, 2024

By the way, @minad, do you ever use embark-collect-live? I remember you requested it, but I wonder now that time has passed if you do still use it.

from vertico.

protesilaos avatar protesilaos commented on August 29, 2024

I hadn't seen your new prot-minibuffer.el, @protesilaos. It brought a smile to my face to see the heart of the old live-completions package in there somewhere.

Well, my plan was to contact you once I was done. I still want to implement a blocklist or passlist for live-completions and I want to make it work properly with embark+marginalia when producing a snapshot (in the future I also want to learn how to add arbitrary marginalia, but one step at a time).

As you can see most of it is copied from elsewhere ("Omar" is mentioned 4 times), plus the simple cycling I already had in prot-embark.el.

from vertico.

minad avatar minad commented on August 29, 2024

@oantolin

By the way, @minad, do you ever use embark-collect-live? I remember you requested it, but I wonder now that time has passed if you do still use it.

Actually, I am not using it much. Probably also because of the slowness of it. If it simplifies things I would not oppose removing it. I love taking snapshots/exports and invoking actions though. I would be angry if you get rid of those :-P And I've also grown to love the freedom of act M-x and kicked out which-key for the completing-read prompter.

from vertico.

protesilaos avatar protesilaos commented on August 29, 2024

Thank you @manuel-uberti! I pushed this commit a few hours ago: https://gitlab.com/protesilaos/modus-themes/-/commit/6a39cb3ad5f6f895b230e3a290f304cb20e002fe

`(vertico-current ((,class :inherit bold :foreground ,fg-main
                           :background ,@(pcase modus-themes-completions
                                           ('opinionated (list bg-active))
                                           (_ (list bg-inactive))))))

(please let me know if something needs to change)

It is the same as Selectrum's, so my next task is to write an abstraction that covers both to avoid duplication.

from vertico.

manuel-uberti avatar manuel-uberti commented on August 29, 2024

Thank you @protesilaos, I saw the commit and now I have it in my setup. The only thing I added is :extend nil, but that's just me. :)

from vertico.

protesilaos avatar protesilaos commented on August 29, 2024

The only thing I added is :extend nil, but that's just me. :)

Very well!

from vertico.

minad avatar minad commented on August 29, 2024

@protesilaos Thanks, I just pulled the modus update. It looks nice with the more subtle candidate highlighting. This is more harmonious with the opinionated match highlights I am using.

from vertico.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.