mirror of
https://github.com/beetbox/beets.git
synced 2025-12-06 16:42:42 +01:00
importfeeds: add relative_to config
This commit is contained in:
parent
a675b907ed
commit
ddbae951c0
1 changed files with 9 additions and 1 deletions
|
|
@ -33,6 +33,7 @@ class ImportFeedsPlugin(BeetsPlugin):
|
||||||
'formats': [],
|
'formats': [],
|
||||||
'm3u_name': u'imported.m3u',
|
'm3u_name': u'imported.m3u',
|
||||||
'dir': None,
|
'dir': None,
|
||||||
|
'relative_to': None,
|
||||||
})
|
})
|
||||||
|
|
||||||
feeds_dir = self.config['dir'].get()
|
feeds_dir = self.config['dir'].get()
|
||||||
|
|
@ -41,6 +42,12 @@ class ImportFeedsPlugin(BeetsPlugin):
|
||||||
if not os.path.exists(syspath(feeds_dir)):
|
if not os.path.exists(syspath(feeds_dir)):
|
||||||
os.makedirs(syspath(feeds_dir))
|
os.makedirs(syspath(feeds_dir))
|
||||||
|
|
||||||
|
relative_to = self.config['relative_to'].get()
|
||||||
|
if relative_to:
|
||||||
|
self.config['relative_to'] = os.path.expanduser(bytestring_path(relative_to))
|
||||||
|
else:
|
||||||
|
self.config['relative_to'] = feeds_dir
|
||||||
|
|
||||||
def _get_feeds_dir(lib):
|
def _get_feeds_dir(lib):
|
||||||
"""Given a Library object, return the path to the feeds directory to be
|
"""Given a Library object, return the path to the feeds directory to be
|
||||||
used (either in the library directory or an explicitly configured
|
used (either in the library directory or an explicitly configured
|
||||||
|
|
@ -77,12 +84,13 @@ def _record_items(lib, basename, items):
|
||||||
"""Records relative paths to the given items for each feed format
|
"""Records relative paths to the given items for each feed format
|
||||||
"""
|
"""
|
||||||
feedsdir = config['importfeeds']['dir'].as_filename()
|
feedsdir = config['importfeeds']['dir'].as_filename()
|
||||||
|
relative_to = config['importfeeds']['relative_to'].as_filename()
|
||||||
formats = config['importfeeds']['formats'].as_str_seq()
|
formats = config['importfeeds']['formats'].as_str_seq()
|
||||||
|
|
||||||
paths = []
|
paths = []
|
||||||
for item in items:
|
for item in items:
|
||||||
paths.append(os.path.relpath(
|
paths.append(os.path.relpath(
|
||||||
item.path, feedsdir
|
item.path, relative_to
|
||||||
))
|
))
|
||||||
|
|
||||||
if 'm3u' in formats:
|
if 'm3u' in formats:
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue