mirror of
https://github.com/beetbox/beets.git
synced 2025-12-27 19:12:40 +01:00
commit
1a59368dbf
3 changed files with 8 additions and 1 deletions
|
|
@ -518,7 +518,7 @@ def feat_tokens(for_artist=True):
|
|||
feat_words = ["ft", "featuring", "feat", "feat.", "ft."]
|
||||
if for_artist:
|
||||
feat_words += ["with", "vs", "and", "con", "&"]
|
||||
return r"(?<=\s)(?:{})(?=\s)".format(
|
||||
return r"(?<=[\s(\[])(?:{})(?=\s)".format(
|
||||
"|".join(re.escape(x) for x in feat_words)
|
||||
)
|
||||
|
||||
|
|
|
|||
|
|
@ -26,6 +26,8 @@ New features:
|
|||
|
||||
Bug fixes:
|
||||
|
||||
* The detection of a "feat. X" part now also matches such parts if they are in
|
||||
parentheses or brackets. :bug:`5436`
|
||||
* Improve naming of temporary files by separating the random part with the file extension.
|
||||
* Fix the ``auto`` value for the :ref:`reflink` config option.
|
||||
* Fix lyrics plugin only getting part of the lyrics from ``Genius.com`` :bug:`4815`
|
||||
|
|
|
|||
|
|
@ -183,5 +183,10 @@ class FtInTitlePluginTest(unittest.TestCase):
|
|||
assert ftintitle.contains_feat("Alice & Bob")
|
||||
assert ftintitle.contains_feat("Alice and Bob")
|
||||
assert ftintitle.contains_feat("Alice With Bob")
|
||||
assert ftintitle.contains_feat("Alice (ft. Bob)")
|
||||
assert ftintitle.contains_feat("Alice (feat. Bob)")
|
||||
assert ftintitle.contains_feat("Alice [ft. Bob]")
|
||||
assert ftintitle.contains_feat("Alice [feat. Bob]")
|
||||
assert not ftintitle.contains_feat("Alice defeat Bob")
|
||||
assert not ftintitle.contains_feat("Aliceft.Bob")
|
||||
assert not ftintitle.contains_feat("Alice (defeat Bob)")
|
||||
|
|
|
|||
Loading…
Reference in a new issue