Skip to content
This repository has been archived by the owner on May 31, 2020. It is now read-only.

A plugin for beets that moves non-music files during the import process.

License

Notifications You must be signed in to change notification settings

sbarakat/beets-copyartifacts

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

99 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

THIS BEETS PLUGIN IS NO LONGER BEING MAINTAINED

I no longer have time to maintain this plugin. Thank you to all those involved for their contributions.

Some alternatives have been described on issue #31, notably:

copyartifacts plugin for beets

https://travis-ci.org/sbarakat/beets-copyartifacts.svg?branch=master

A plugin that moves non-music files during the import process.

This is a plugin for beets: a music library manager and much more.

Installing

Stable

The stable version of the plugin is available from PyPI. Installation can be done using pip:

pip install beets-copyartifacts

If you get permission errors try running it with sudo

Development

The development version can be installed from GitHub by using these commands:

git clone https://github.com/sbarakat/beets-copyartifacts.git
cd beets-copyartifacts
python setup.py install

If you get permission errors try running it with sudo

Configuration

You will need to enable the plugin in beets' config.yaml

plugins: copyartifacts

It can copy files by file extenstion:

copyartifacts:
    extensions: .cue .log

Or copy all non-music files (it does this by default):

copyartifacts:
    extensions: .*

It can also print what got left:

copyartifacts:
    print_ignored: yes

Renaming files

Renaming works in much the same way as beets Path Formats with the following limitations: - The fields available are $artist, $albumartist, $album and $albumpath. - The full set of built in functions are also supported, with the exception of %aunique - which will return an empty string.

Each template string uses a query syntax for each of the file extensions. For example the following template string will be applied to .log files:

paths:
    ext:log: $albumpath/$artist - $album

This will rename a log file to: ~/Music/Artist/2014 - Album/Artist - Album.log

Example config

plugins: copyartifacts

paths:
    default: $albumartist/$year - $album/$track - $title
    singleton: Singletons/$artist - $title
    ext:log: $albumpath/$artist - $album
    ext:cue: $albumpath/$artist - $album
    ext:jpg: $albumpath/cover

copyartifacts:
    extensions: .cue .log .jpg
    print_ignored: yes

Thanks

copyartifacts was built on top of the hard work already done by Adrian Sampson and the larger community on beets. We have also benefited from the work of our contributors.

This plugin was built out of necessity and to scratch an itch. It has gained a bit of attention, so I intend to maintain it where I can, however I doubt I will be able to spend large amount of time on it. Please report any issues you may have and feel free to contribute.

License

Copyright (c) 2015-2017 Sami Barakat

Licensed under the MIT license.