# Custom tag mapping

**URL:** <https://discourse.beets.io/t/custom-tag-mapping/1767>\
**Category:** Help\
**Created:** [May 14, 2021, 5:20pm UTC](https://discourse.beets.io/t/custom-tag-mapping/1767 "2021-05-14T17:20:36Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![hydroel](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.beets.io/hydroel/32/544_2.png) [@hydroel](https://discourse.beets.io/u/hydroel)\
**Post date:** [May 14, 2021, 5:20pm UTC](https://discourse.beets.io/t/custom-tag-mapping/1767/1 "2021-05-14T17:20:36Z")

</div>

Hello everyone,

I’m completely new to using Beets, so pardon me if that question is stupid, but I’ve searched around a lot and could not find a satisfying answer.

When autotagging, I have a few goals, which would all require custom tag mapping.

1. I would like to tag the “year” as the exact release date (including day and month), in the YYYY.MM.DD style.
2. That one is far fetched, but if the release is a live album, I would LOVE the Comments field to also add the gig date and place.
3. ~~I would like the “Comments” field to be filled with the Discogs catalog number ($catalognum, I believe)~~ Done
4. ~~I’d like to map the default “Genres” to Discogs’ Styles~~ Done

I am ready to learn how to make a plugin, or how to modify the existing plugins if that’s what it takes, provided some guidance obviously, but I’d have to make sure that the feature doesn’t already exist.

Thank you for your help!

---

<div class="post-metadata">

**Author:** ![RollingStar](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.beets.io/rollingstar/32/728_2.png) [@RollingStar](https://discourse.beets.io/u/RollingStar)\
**Post date:** [May 15, 2021, 4:14am UTC](https://discourse.beets.io/t/custom-tag-mapping/1767/2 "2021-05-15T04:14:54Z")

</div>

> - That one is far fetched, but if the release is a live album, I would LOVE the Comments field to also add the gig date and place.

You’re going to need a data source for this. Musicbrainz? Bandsintown? Something else? Then you’ll probably have to make a custom fetcher for it, then integrate it to the tagging system.

---

<div class="post-metadata">

**Author:** ![hydroel](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.beets.io/hydroel/32/544_2.png) [@hydroel](https://discourse.beets.io/u/hydroel)\
**Post date:** [May 15, 2021, 8:25am UTC](https://discourse.beets.io/t/custom-tag-mapping/1767/3 "2021-05-15T08:25:19Z")

</div>

Thank you for the answer! Discogs is usually my source, as it’s usually the most accurate and complete one, but that would require some work indeed.

Do you have any idea about how to do #1?

---

<div class="post-metadata">

**Author:** ![RollingStar](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.beets.io/rollingstar/32/728_2.png) [@RollingStar](https://discourse.beets.io/u/RollingStar)\
**Post date:** [June 4, 2021, 9:19pm UTC](https://discourse.beets.io/t/custom-tag-mapping/1767/4 "2021-06-04T21:19:26Z")

</div>

You can definitely compute the year-mm-dd but I don’t know if you can write tags for it, especially overwriting base beets tags. You’d have to write a plugin.

[https://beets.readthedocs.io/en/latest/dev/plugins.html](https://beets.readthedocs.io/en/latest/dev/plugins.html)

> <https://github.com/RollingStar/dial-beets/blob/master/beetsplug/orig_date.py>

---

<div class="post-metadata">

**Author:** ![maldoror](https://avatars.discourse-cdn.com/v4/letter/m/c37758/32.png) [@maldoror](https://discourse.beets.io/u/maldoror)\
**Post date:** [June 19, 2021, 11:24pm UTC](https://discourse.beets.io/t/custom-tag-mapping/1767/5 "2021-06-19T23:24:53Z")

</div>

Hi, How did you go about doing #4?

Very interested in that myself if I understand correctly.

---

<div class="post-metadata">

**Author:** ![hydroel](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.beets.io/hydroel/32/544_2.png) [@hydroel](https://discourse.beets.io/u/hydroel)\
**Post date:** [November 28, 2021, 5:39pm UTC](https://discourse.beets.io/t/custom-tag-mapping/1767/6 "2021-11-28T17:39:01Z")

</div>

Sorry for the late reply!

It seems the Styles plugin is supposed to do just that. Although - as I have noticed with subsequent imports - it does not work reliably.

---

<div class="post-metadata">

**Author:** ![maldoror](https://avatars.discourse-cdn.com/v4/letter/m/c37758/32.png) [@maldoror](https://discourse.beets.io/u/maldoror)\
**Post date:** [November 28, 2021, 11:11pm UTC](https://discourse.beets.io/t/custom-tag-mapping/1767/7 "2021-11-28T23:11:14Z")

</div>

Thanks. Maybe that plugin no longer exists? I can find no refrence to it anywhere.

---

<div class="post-metadata">

**Author:** ![hydroel](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.beets.io/hydroel/32/544_2.png) [@hydroel](https://discourse.beets.io/u/hydroel)\
**Post date:** [December 9, 2021, 7:49pm UTC](https://discourse.beets.io/t/custom-tag-mapping/1767/8 "2021-12-09T19:49:57Z")

</div>

It seems to have been deleted indeed. I guess it broke at some point, and nobody fixed it?
