Uploaded image for project: 'Picard'
  1. Picard
  2. PICARD-2143

New feature that can run scripts on each tag field

XMLWordPrintable

    • Icon: New Feature New Feature
    • Resolution: Unresolved
    • Icon: Normal Normal
    • None
    • None
    • Scripting
    • None

      It would be nice to be able to replace text in every field without hardcoding the fields that are expected to exist. For example, many people outright shun MusicBrainz because of https://musicbrainz.org/doc/Style/Miscellaneous#Use_of_special_characters - many of us who still choose to use MusicBrainz create our own solutions to workaround it.

      For example, this is an 80-line script just to replace 4 unwanted characters in 20 fields:

      $set(album,$replace(%album%,“,"))
      $set(albumartist,$replace(%albumartist%,“,"))
      $set(albumartistsort,$replace(%albumartistsort%,“,"))
      $set(arranger,$replace(%arranger%,“,"))
      $set(artist,$replace(%artist%,“,"))
      $set(artistsort,$replace(%artistsort%,“,"))
      $set(artists,$replace(%artists%,“,"))
      $set(catalognumber,$replace(%catalognumber%,“,"))
      $set(composer,$replace(%composer%,“,"))
      $set(conductor,$replace(%conductor%,“,"))
      $set(discsubtitle,$replace(%discsubtitle%,“,"))
      $set(engineer,$replace(%engineer%,“,"))
      $set(lyricist,$replace(%lyricist%,“,"))
      $set(mixer,$replace(%mixer%,“,"))
      $set(performer,$replace(%performer%,“,"))
      $set(producer,$replace(%producer%,“,"))
      $set(label,$replace(%label%,“,"))
      $set(remixer,$replace(%remixer%,“,"))
      $set(title,$replace(%title%,“,"))
      $set(writer,$replace(%writer%,“,"))
      $set(album,$replace(%album%,”,"))
      $set(albumartist,$replace(%albumartist%,”,"))
      $set(albumartistsort,$replace(%albumartistsort%,”,"))
      $set(arranger,$replace(%arranger%,”,"))
      $set(artist,$replace(%artist%,”,"))
      $set(artistsort,$replace(%artistsort%,”,"))
      $set(artists,$replace(%artists%,”,"))
      $set(catalognumber,$replace(%catalognumber%,”,"))
      $set(composer,$replace(%composer%,”,"))
      $set(conductor,$replace(%conductor%,”,"))
      $set(discsubtitle,$replace(%discsubtitle%,”,"))
      $set(engineer,$replace(%engineer%,”,"))
      $set(lyricist,$replace(%lyricist%,”,"))
      $set(mixer,$replace(%mixer%,”,"))
      $set(performer,$replace(%performer%,”,"))
      $set(producer,$replace(%producer%,”,"))
      $set(label,$replace(%label%,”,"))
      $set(remixer,$replace(%remixer%,”,"))
      $set(title,$replace(%title%,”,"))
      $set(writer,$replace(%writer%,”,"))
      $set(album,$replace(%album%,’,'))
      $set(albumartist,$replace(%albumartist%,’,'))
      $set(albumartistsort,$replace(%albumartistsort%,’,'))
      $set(arranger,$replace(%arranger%,’,'))
      $set(artist,$replace(%artist%,’,'))
      $set(artistsort,$replace(%artistsort%,’,'))
      $set(artists,$replace(%artists%,’,'))
      $set(catalognumber,$replace(%catalognumber%,’,'))
      $set(composer,$replace(%composer%,’,'))
      $set(conductor,$replace(%conductor%,’,'))
      $set(discsubtitle,$replace(%discsubtitle%,’,'))
      $set(engineer,$replace(%engineer%,’,'))
      $set(lyricist,$replace(%lyricist%,’,'))
      $set(mixer,$replace(%mixer%,’,'))
      $set(performer,$replace(%performer%,’,'))
      $set(producer,$replace(%producer%,’,'))
      $set(label,$replace(%label%,’,'))
      $set(remixer,$replace(%remixer%,’,'))
      $set(title,$replace(%title%,’,'))
      $set(writer,$replace(%writer%,’,'))
      $set(album,$replace(%album%,‐,-))
      $set(albumartist,$replace(%albumartist%,‐,-))
      $set(albumartistsort,$replace(%albumartistsort%,‐,-))
      $set(arranger,$replace(%arranger%,‐,-))
      $set(artist,$replace(%artist%,‐,-))
      $set(artistsort,$replace(%artistsort%,‐,-))
      $set(artists,$replace(%artists%,‐,-))
      $set(catalognumber,$replace(%catalognumber%,‐,-))
      $set(composer,$replace(%composer%,‐,-))
      $set(conductor,$replace(%conductor%,‐,-))
      $set(discsubtitle,$replace(%discsubtitle%,‐,-))
      $set(engineer,$replace(%engineer%,‐,-))
      $set(lyricist,$replace(%lyricist%,‐,-))
      $set(mixer,$replace(%mixer%,‐,-))
      $set(performer,$replace(%performer%,‐,-))
      $set(producer,$replace(%producer%,‐,-))
      $set(label,$replace(%label%,‐,-))
      $set(remixer,$replace(%remixer%,‐,-))
      $set(title,$replace(%title%,‐,-))
      $set(writer,$replace(%writer%,‐,-))

      It would be great if there was a way in Picard to just write 4 lines of script to replace 20+ fields' contents.

            Unassigned Unassigned
            yindesu yindesu
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:

                Version Package