def search(context, mpd_query): """ *musicpd.org, music database section:* ``search {TYPE} {WHAT}`` Searches for any song that contains ``WHAT``. ``TYPE`` can be ``title``, ``artist``, ``album`` or ``filename``. Search is not case sensitive. *GMPC:* - does not add quotes around the field argument. - uses the undocumented field ``any``. - searches for multiple words like this:: search any "foo" any "bar" any "baz" *ncmpc:* - does not add quotes around the field argument. - capitalizes the field argument. *ncmpcpp:* - also uses the search type "date". """ query = _build_query(mpd_query) return playlist_to_mpd_format( context.backend.library.search(**query).get())
def find(context, mpd_query): """ *musicpd.org, music database section:* ``find {TYPE} {WHAT}`` Finds songs in the db that are exactly ``WHAT``. ``TYPE`` should be ``album``, ``artist``, or ``title``. ``WHAT`` is what to find. *GMPC:* - does not add quotes around the field argument. - also uses ``find album "[ALBUM]" artist "[ARTIST]"`` to list album tracks. *ncmpc:* - does not add quotes around the field argument. - capitalizes the type argument. *ncmpcpp:* - also uses the search type "date". """ query = _build_query(mpd_query) return playlist_to_mpd_format( context.backend.library.find_exact(**query).get())
def find(context, mpd_query): """ *musicpd.org, music database section:* ``find {TYPE} {WHAT}`` Finds songs in the db that are exactly ``WHAT``. ``TYPE`` should be ``album``, ``artist``, or ``title``. ``WHAT`` is what to find. *GMPC:* - does not add quotes around the field argument. - also uses ``find album "[ALBUM]" artist "[ARTIST]"`` to list album tracks. *ncmpc:* - does not add quotes around the field argument. - capitalizes the type argument. *ncmpcpp:* - also uses the search type "date". """ query = _build_query(mpd_query) return playlist_to_mpd_format( context.backend.library.find_exact(**query).get())
def test_mpd_format(self): playlist = Playlist( tracks=[Track(track_no=1), Track(track_no=2), Track(track_no=3)]) result = translator.playlist_to_mpd_format(playlist) self.assertEqual(len(result), 3)
def search(context, mpd_query): """ *musicpd.org, music database section:* ``search {TYPE} {WHAT}`` Searches for any song that contains ``WHAT``. ``TYPE`` can be ``title``, ``artist``, ``album`` or ``filename``. Search is not case sensitive. *GMPC:* - does not add quotes around the field argument. - uses the undocumented field ``any``. - searches for multiple words like this:: search any "foo" any "bar" any "baz" *ncmpc:* - does not add quotes around the field argument. - capitalizes the field argument. *ncmpcpp:* - also uses the search type "date". """ query = _build_query(mpd_query) return playlist_to_mpd_format( context.backend.library.search(**query).get())
def test_mpd_format_with_range(self): playlist = Playlist( tracks=[Track(track_no=1), Track(track_no=2), Track(track_no=3)]) result = translator.playlist_to_mpd_format(playlist, 1, 2) self.assertEqual(len(result), 1) self.assertEqual(dict(result[0])['Track'], 2)
def listplaylistinfo(context, name): """ *musicpd.org, stored playlists section:* ``listplaylistinfo {NAME}`` Lists songs in the playlist ``NAME.m3u``. Output format: Standard track listing, with fields: file, Time, Title, Date, Album, Artist, Track """ playlists = context.core.playlists.filter(name=name).get() if not playlists: raise MpdNoExistError('No such playlist', command='listplaylistinfo') return playlist_to_mpd_format(playlists[0])
def listplaylistinfo(context, name): """ *musicpd.org, stored playlists section:* ``listplaylistinfo {NAME}`` Lists songs in the playlist ``NAME.m3u``. Output format: Standard track listing, with fields: file, Time, Title, Date, Album, Artist, Track """ playlists = context.core.playlists.filter(name=name).get() if not playlists: raise MpdNoExistError('No such playlist', command='listplaylistinfo') return playlist_to_mpd_format(playlists[0])
def listplaylistinfo(context, name): """ *musicpd.org, stored playlists section:* ``listplaylistinfo {NAME}`` Lists songs in the playlist ``NAME.m3u``. Output format: Standard track listing, with fields: file, Time, Title, Date, Album, Artist, Track """ try: playlist = context.backend.stored_playlists.get(name=name).get() return playlist_to_mpd_format(playlist) except LookupError: raise MpdNoExistError(u'No such playlist', command=u'listplaylistinfo')
def listplaylistinfo(context, name): """ *musicpd.org, stored playlists section:* ``listplaylistinfo {NAME}`` Lists songs in the playlist ``NAME.m3u``. Output format: Standard track listing, with fields: file, Time, Title, Date, Album, Artist, Track """ try: playlist = context.backend.stored_playlists.get(name=name).get() return playlist_to_mpd_format(playlist) except LookupError: raise MpdNoExistError( u'No such playlist', command=u'listplaylistinfo')
def test_mpd_format_with_range(self): playlist = Playlist(tracks=[ Track(track_no=1), Track(track_no=2), Track(track_no=3)]) result = translator.playlist_to_mpd_format(playlist, 1, 2) self.assertEqual(len(result), 1) self.assertEqual(dict(result[0])['Track'], 2)
def test_mpd_format(self): playlist = Playlist(tracks=[ Track(track_no=1), Track(track_no=2), Track(track_no=3)]) result = translator.playlist_to_mpd_format(playlist) self.assertEqual(len(result), 3)
def mpd_format(self, *args, **kwargs): from mopidy.frontends.mpd import translator return translator.playlist_to_mpd_format(self, *args, **kwargs)
def mpd_format(self, *args, **kwargs): return translator.playlist_to_mpd_format(self, *args, **kwargs)