make 'lyric_filename()' search harder #2567
Here I wanted lyric files sourced via other programs to be visible in the View Lyrics pane
So specifically, before this commit I'd have to manually rename any lyric file I wanted to see in the ViewLyrics pane to the bespoke ViewLyrics format of '~/.lyrics/<artist/lyricartist>/<title>.lyric', and now I don't have to, and that convenience is why I would like this patch to go into Quod Libet.
To facilitate this the changes added are:.
-search alternate extensions: 'lyrics', '', 'txt' -add another default 'root'/'<artist> - <title>/lyric search path -add support for lyrics filename configuration via two '[memory]' config variables: 'lyric_rootpaths' and 'lyric_filenames'. song variables can also be used in these comma delimited list values. e.g. lyric_filenames = <artist>.-.<title>,<artist> - <title>.lyrics_mod lyric_rootpaths = ~/music/lyrics
-simple container used for discerning a pathfile's 'root directory part' from its 'end part'. the variable depth of a pathfile's 'end part' (e.g. the part of the path constructed from song attributes) renders os.path built-ins (basename etc.) useless for this purpose -optionally recover 'escaped' versions of the parts too