# Examples - `Favourite Pop`: A playlist containing all favourite items of the genre pop. ``` Id: Favourite Pop Name: Favourite Pop Program: | (and (is-type "Audio") (is-favorite) (is-genre "pop" (genre-list))) ``` - `Electro Swing`: A playlist containing all items which have a genre that contains "electro" and a genre that contains "swing". It will only include albums and single tracks. ``` Id: Electro Swing Name: Electro Swing Program: | (let (g (genre-list)) (and (or (is-type "Audio") (is-type "MusicAlbum")) (is-genre "electro" g) (is-genre "swing" g))) ``` - `All of Seeed`: A playlist containing all items by artist `Seeed`, useless, since you also can just navigate to the artist to play all their songs, but a good example. ``` Id: Seeed Name: Seeed Program: | (let (parent (invoke-generic *item* "FindParent" nil (list "MediaBrowser.Controller.Entities.Audio.MusicArtist, MediaBrowser.Controller"))) (cond ((null parent) nil) (t (string= (car (getitems parent "Name")) "Haller")))) ``` or simplified with definitions contained in the preamble: ``` Id: Seeed Name: Seeed Program: | (let (parent (find-parent "MediaBrowser.Controller.Entities.Audio.MusicArtist, MediaBrowser.Controller")) (cond ((null parent) nil) (t (string= (car (getitems parent "Name")) "Seeed")))) ``` - `Artists`: A playlist including everything from a list of artists. ``` Id: Artists Name: Artists Program: >- (begin (define *include-artists* '( "seeed" "juli" "falco" "peter fox" "alligatoah" "kraftklub" "wanda" "annennaykantereit" "feine sahne fischfilet" "madsen" "wiener blond" "die toten hosen" "die ärzte" "wir sind helden" )) (define my-prefilter-only-tracks (lambda nil (and (is-type "Audio") (not (name-contains "live")) (not (name-contains "acoustic")) (not (name-contains "instrumental")) (not (name-contains "remix"))))) (and (my-prefilter-only-tracks) (is-favourite) (any (lambda (i) ;; the `(and (find-artist)` is here to prevent null violations. (and (find-artist) (string= i (lower (get-name (find-artist)))))) *include-artists*))) SortProgram: (begin (shuf *items*)) Filename: /config/data/smartplaylists/German.yaml Enabled: true ```