as promised here is my full beets config file, I've added
some in-line comments.
$ cat ~/.config/beets/config.yaml
# not necessary unless you want it in a non-standard place
(~/.config/beets/library.db)
library: /home/johan/.config/beets/library.db
# directory you are importing into
directory: /home/johan/test
import:
copy: yes
write: yes
ignore: .AppleDouble ._* *~ .DS_Store
plugins: inline fetchart embedart discogs chroma duplicates web
fromfilename replaygain
replace:
'[\\/]': _
'^\.': _
'[\x00-\x1f]': _
'[<>:"\?\*\|]': _
'\.$': _
'\s+$': ''
'\,': ''
'\s': _
'_-_': _
'\.+': _
'_\._': _
',_': _
'_+': _
'_$': ''
pathfields:
path_genre: |
if 'alternative' in genre.lower():
return 'rock'
if 'arabic' in genre.lower():
return 'latin'
if 'musical' in genre.lower():
return 'soundtracks'
if 'reggae' in genre.lower():
return 'pop'
if 'r&b' in genre.lower():
return 'latin'
if 'reggeaton' in genre.lower():
return 'latin'
if 'salsa' in genre.lower():
return 'latin'
if 'tango' in genre.lower():
return 'latin'
if 'ambient' in genre.lower():
return 'metal'
if 'doom' in genre.lower():
return 'metal'
if 'folk' in genre.lower():
return 'metal'
for g in ['classical', 'metal', 'rock', 'pop']:
if g in genre.lower():
return g
return genre
path_letter: |
if albumartist_sort and not None:
if albumartist_sort.isdigit():
return '0-9'
return albumartist_sort[0]
if albumartist and not None:
if albumartist.isdigit():
return '0-9'
return albumartist[0]
if artist and not None:
if artist.isdigit():
return '0-9'
return artist[0]
return 'fix_it'
path_year: |
if original_year == 0:
return year
return original_year
art_filename: %asciify{%lower{$album}}
paths:
default:
%asciify{%lower{$path_genre}}/%asciify{%lower{$path_letter}}/%asciify{%lower{$albumartist_sort}}/${path_year}-%asciify{%lower{$album}}/${track}-%asciify{%lower{$title}}
comp:
%asciify{%lower{$path_genre}}/v/various_artists/%asciify{%lower{$albumartist_sort}}/${path_year}-%asciify{%lower{$album}}/${track}-%asciify{%lower{$title}}
singleton:
%asciify{%lower{$path_genre}}/%asciify{%lower{$path_letter}}/%asciify{%lower{$albumartist_sort}}/non-album/${track}-%asciify{%lower{$title}}
web:
host: 10.10.10.10
port: 8888
replaygain:
auto: no
More docs and info here:
http://beets.radbox.org/
http://beets.readthedocs.org/
Finally I note that 1.3.3 was released a few days ago and one of my
annoyances which I mentioned has been fixed. You can now pass a flag to
the importer and it won't assume all files in a directory are the same
album. I've not tried it out yet, but I can let you know next month how
it seems to be working out.
http://beets.readthedocs.org/en/v1.3.3/reference/config.html#group-albums
.jh