Commit graph

342 commits

Author SHA1 Message Date
Tai Lee
23cd5453d9 Improved multi-disc album detection.
- Remove "part", "volume", "vol." multi-disc markers. These are often
  part of album titles, and not necessarily indicative of a multi-disc
  album. Only look for "CD X" and "disc X" (case insensitive), ignoring
  white space and other non-word characters.

- Don't only expect each disc to be in a subdirectory of a common parent
  directory, with all siblings belonging to the same release. Also match
  any consecutive siblings (even when the parent contains other albums)
  that are named with the same prefix and multi-disc marker.

- The `albums_in_dir(path)` function now always yields a list of paths
  along with each list of items. `ItemTask.path` is now always a list of
  paths.

- The `displayable_path(path)` function now accepts a list of paths, and
  will join them with "; " by default. This can be changed with the
  `separator` argument.

- The `sorted_walk()` function now does a case insensitive sort on
  directories, but still returns case sensitive results. This allows
  better multi-disc album detection.

- The `art_for_album()` function now takes a list of paths as its second
  argument, instead of a single path.
2013-02-03 23:51:31 +11:00
Adrian Sampson
0be319767f fixes and refactoring for lastgenre.source (#88)
This provides a default for source, preventing a crash when not present in the
user's config.

It also refactors the source decision to a helper function, _lastfm_obj, to
avoid copypasta.
2013-02-02 12:52:43 -08:00
Adrian Sampson
a21e3ca344 Merge pull request #88 from pdf/lastgenre_source_selection
Allow selection of source for genre information (ie - artist vs album)
2013-02-02 12:44:02 -08:00
Adrian Sampson
89689899c9 changelog note and indentation fix for #86 2013-02-02 12:27:42 -08:00
Adrian Sampson
52dc2f6b0b Merge pull request #86 from steinitzu/master
AlbumArtist tag browsing in bpd
2013-02-02 12:25:01 -08:00
Adrian Sampson
887d1c1287 fix inline and rewrite for instance fields
I'm transitioning to using exclusively instance-level fields instead of
class-level fields in plugin objects, but I neglected to bring inline and
rewrite into the future. This manifested as silent inaction on the part of
these plugins.

This change restores the old behavior (for compatibility) but also updates the
plugins to use the new behavior.
2013-02-02 08:35:54 -08:00
Adrian Sampson
f59ff7e89e importfeeds: use bytestring paths 2013-02-02 08:22:51 -08:00
Fabrice Laporte
bc82e04077 importfeeds: fix UnicodeDecodeError when creating symlinks 2013-02-02 10:31:36 +01:00
Peter Fern
ef5dfa3fcf Allow selection of source for genre information (ie - artist vs album)
If config is set to:

   lastgenre:
     source: artist

The genre will be fetched for the artist, rather than the album.  This
allows for filesystem org like:

   genre/artist/album

Currently defaults to previous behaviour for anything other than
`artist`
2013-02-02 14:31:45 +11:00
steini
476adf40af Support for AlbumArtist and AlbumArtistSort tag listings. 2013-02-01 02:35:19 +00:00
Dang Mai
d4004f10fa Update comments to reflect config migration 2013-01-31 18:17:00 -05:00
Dang Mai
ef8ef4c747 Update MPD whenever database changes 2013-01-31 18:16:21 -05:00
Dang Mai
7de2727572 Fix smartplaylist to use lib param from cli_exit 2013-01-31 18:09:17 -05:00
Adrian Sampson
e6ea6dc875 zero: remove redundant list of dict's keys 2013-01-31 12:15:18 -08:00
Adrian Sampson
58d9a775cc remove singleton enforcement from plugins
The plugin system itself now enforces single instances.
2013-01-31 12:13:19 -08:00
Adrian Sampson
bba0051ee7 changelog & doc tweaks for smartplaylist (#80) 2013-01-31 10:07:18 -08:00
Dang Mai
397ad441a8 Remove debugging statement
Silly me for forgetting to check the pdb statement I just put in ...
2013-01-30 21:28:54 -05:00
Dang Mai
f5838692d7 Add default for playlist_dir 2013-01-30 21:27:00 -05:00
Dang Mai
6bc0202354 Add ability to use tag in m3u names 2013-01-30 12:45:56 -05:00
Dang Mai
895ee7de3f Fix playlist_dir not resolving relative path 2013-01-30 09:50:27 -05:00
Dang Mai
5a7d7e1bb5 Change command to splupdate 2013-01-30 09:28:50 -05:00
Dang Mai
d134e9c461 Add comments 2013-01-30 08:42:29 -05:00
Dang Mai
480d51443c Add print statements 2013-01-30 08:31:39 -05:00
Dang Mai
70240bf4b1 Fix optional relative_to 2013-01-30 08:25:18 -05:00
Dang Mai
4312fd3914 Working smart playlist plugin 2013-01-30 08:12:22 -05:00
Adrian Sampson
d0aaa511a3 minor style cleanup for #75 2013-01-29 21:30:57 -08:00
Dave Hayes
2f06a508bd Implements support for WMA/ASF
* Adds support for importing/managing .wma and .asf files
 * Adds support for all available ASF tag equivalents
 * Adds two utility methods for (un)packing embedded ASF pictures
 * Modifies scrub plugin to work around the lack of a delete method on
   ASFTags object.
2013-01-28 14:05:34 -06:00
Adrian Sampson
6898d95b9e allow convert to be used without embedart enabled 2013-01-23 15:56:49 -08:00
Adrian Sampson
0969749e5b cleanup, docs, and changelog for relative_to (#74) 2013-01-22 21:02:41 -08:00
Adrian Sampson
b4da79b2e9 Merge pull request #74 from phmongeau/relative_feeds
relative importfeeds m3u path
2013-01-22 20:46:42 -08:00
Philippe Mongeau
ddbae951c0 importfeeds: add relative_to config 2013-01-22 22:54:13 -05:00
Philippe Mongeau
053e146b0c fix the expanduser of the importfeeds dir configuration 2013-01-22 22:45:07 -05:00
John Hawthorn
f2b74d2019 fix RewritePlugin initialization
Error was introduced in 6d68a48
2013-01-21 12:42:55 -08:00
Adrian Sampson
7779a5c6f5 replaygain: catch Unicode exc on Windows (GC-499)
(grafted from 89cee0e842b4e553790b0db7daaf2fd31d217e15)

--HG--
extra : source : 89cee0e842b4e553790b0db7daaf2fd31d217e15
2013-01-12 14:38:19 -08:00
Adrian Sampson
d6c7cfa4e3 lyrics: replace apostrophes with ' (GC-498) 2013-01-11 10:51:22 -08:00
Adrian Sampson
7a410f636b happy new year
For future reference, this command did the trick:
ack -l 'Copyright 201' | xargs perl -pi -E 's/Copyright 201./Copyright 2013/'
2013-01-11 10:43:41 -08:00
Adrian Sampson
f7bef39769 GH-72: use function bodies instead of special var 2013-01-05 17:48:00 -08:00
Adrian Sampson
14b5170aec GH-72: some cleanup and changelog note 2013-01-05 17:20:39 -08:00
Florent Thoumie
da0642a026 inline: Add support for code blocks.
This should be backwards compatible. In case the the path field
isn't a statement, beets will assume it's a block of code that
stores the value in a special '_' variable.
2013-01-05 23:00:10 +00:00
Adrian Sampson
f127d8e18a merge scrub fix from master 2012-12-31 18:25:51 -08:00
Adrian Sampson
287d00179a scrub: fix Py27-style format string (GC-484) 2012-12-31 18:11:31 -08:00
Adrian Sampson
cf3860257f inline: fix defaults (dict, not list) 2012-12-31 15:54:26 -08:00
Adrian Sampson
5d210f755c merge fix from master 2012-12-29 13:07:09 -08:00
Adrian Sampson
082932069f echonest_tempo: catch IO errors (GC-482) 2012-12-26 17:16:59 -08:00
Adrian Sampson
51e9c519d4 plugin renames: fuzzy and random
Renamed fuzzy_search to fuzzy and rdm to random. These names should be easier
to remember since they are the same as the commands they provide.

--HG--
rename : beetsplug/fuzzy_search.py => beetsplug/fuzzy.py
rename : beetsplug/rdm.py => beetsplug/random.py
rename : docs/plugins/fuzzy_search.rst => docs/plugins/fuzzy.rst
rename : docs/plugins/rdm.rst => docs/plugins/random.rst
2012-12-23 14:46:20 -08:00
Adrian Sampson
6b000983c3 merge echonest_tempo fix from master 2012-12-23 14:34:08 -08:00
Adrian Sampson
1809de1500 GH-71: changelog note & retry limit 2012-12-21 23:10:30 -08:00
Zach Denton
e332940247 Wait when Echo Nest API rate limit is exceeded. 2012-12-22 06:31:23 +01:00
Adrian Sampson
a23b685747 use Confit's as_str_seq() instead of get(list)
This validator lets the user write either a real list, like [a, b, c], or just
a whitespace-separated string, like a b c. This is a little nicer for some
settings like "plugins" where the brackets and commas just look like line
noise.
2012-12-20 17:03:51 -08:00
Adrian Sampson
fbcd1d1c18 merge fixes from master 2012-12-19 12:22:23 -08:00