Hi Erica,

thanks for the reply. Ok, I understand it. I will write then the filter this way.

Thanks again.

On 12/6/25 02:31, Erica Lina Qi (Zenie) <[email protected]> wrote:
Igor Sosa Mayor <[email protected]> writes:


Hello Igor,

Yes. That is how it works.

Multi-filters are only combinations of filters made with factories.
You are just giving it the names of the filters you have already created.

When you do that interactively, You push a filter, Select New and the factory, and then give it the data it needs. That is equivalent to creating the filter
in code. But those filters are not kept. They are only in memory. To save
them would need some sort of tracking of each step taken to create it so that
it could be represented textually.

Factories create functions. Its not easy/possible to represent those
textually after they've been made.

Multi-filters just create some lists of names.
Exactly how you write them. To use them, it looks up the functions connected to
the names.  Which means they need to be created somehow.

The filter stack is in fact, an interactive Multi-Filter.

Multi-filter is unique in that it is purely textual data.

Erica

Hi again,

unfortunately I have again a problem with the filter system.

Let's say I want to filter works by 3 musicians: Guédron, Boêsset and
Moulinié. If I create the filter manually (push-or, etc.) it works
wonderfully.

If I keep the filter I get the following:

("Multi-filter"
 "Artist : (moulinié)  | Artist : (guédron)  | Artist :  (boesset) "
 (("Artist : (moulinié)" "Artist : (guédron)" "Artist :  (boesset)")))

If I copy this code to my config with something like this:

(setq general-filters
      '(("Multi-filter"
         "Renaissance: Air de cour"
         (("Artist : (guédron)" "Artist : (boesset)" "Artist:
         (moulinié)")))))

(emms-filters-make-filters general-filters)
(emms-filters-add-to-filter-menu-from-filter-list "Propios" general- filters)

I get the following error: Lisp error: (void-function nil)
And the whole backtrace: https://paste.debian.net/1412120/

Any ideas?

Thanks in advance.

Best,

PS: If I define filters with the Artist factory for every composer and
create then a multi-filter like so:

(setq probando-filters
      '(
        ("Artist" "Guédron"  "guédron")
        ("Artist" "Boesset" "boesset")
        ("Artist" "Moulinié" "moulinié")

        ("Multi-filter"
         "Air de cour"
         (("Guédron" "Boesset" "Moulinié")))))

Then it works without problems...


Reply via email to