minad / marginalia

:scroll: marginalia.el - Marginalia in the minibuffer
GNU General Public License v3.0
778 stars 27 forks source link

Using SWITCH-BUFFER, file name annotation are not considered using ORDERLESS annotator style dispatcher #184

Closed hapst3r closed 1 month ago

hapst3r commented 1 month ago

Hej minad,

I hope this is the right place to report, since I am not exactly sure about the interaction of MARGINALIA, ORDERLESS and SWITCH-BUFFER.

When I have MARGINALIA-MODE enabled and use SWITCH-BUFFER, there is five columns: (1) buffer name (2) not sure (3) size (4) major mode (5) file path. I would love to be able to filter selection using parts of the file path, which I thought should work using the ORDERLESS annotator style dispatcher &$ANNOTATION. However, that doesn't work, and I'm not sure if there is another way to take those information presented by MARGINALIA into account.

Is this intended behavior, am I missing something, is this the wrong place to report?

Have a good day :)

EDIT: Because I believe that MARGINALIA in principle already does what I want, let me add that I think this specifically does not work with very long file paths, where the annotations are truncated. I give you an example: /home/$USER/.site-data/path/to/denote/silo/20230115T091023==2209--sa-chile-de-la-fuentepérez-für-eine-bessere-demokratie__volksabstimmung_verfassung_widerstand.org

minad commented 1 month ago

Because I believe that MARGINALIA in principle already does what I want, let me add that I think this specifically does not work with very long file paths, where the annotations are truncated.

Yes, if the file path is truncated and not part of the annotation, it is not considered by Orderless. Orderless can only see what is also visible to you.

However you can activate the keyword dispatcher orderless-kwd-dispatch, and then use :dir:<MATCH> or :fil:<MATCH> where the <MATCH> input is matched against the directory or file name. Note that I've just now added :fil: in https://github.com/oantolin/orderless/commit/60da48a698dc502454ac5563fcdecba1fa16fc99.