tagCopyPaste

Tag Copy/Paste

This plugin adds Copy and Paste functionality to the Tags input field with the goal of making it easy to copy Tags between objects, bulk load manually created tag lists, or load tag lists copied from AI tagger output.

Copy/Paste of Tags can be performed either with dedicated Copy/Paste buttons or by selecting the Tag input field and performing the typical CTRL+C/CTRL+V.

Copying will create a comma delimited list of all currently entered tags and put this on your clipboard.

Pasting will check your current clipboard for a comma and/or newline delimited string and add these as Tags, optionally creating any missing tags. Pasted tags will be checked against both primary Tag names and all aliases, comparisons are not case sensitive and allow “_” to be interpreted as a space.

Note: This plugin will prompt you to grant access to the clipboard. This must be granted in order for this plugin to work.

Config Options:

  • Create If Not Exists: If enabled, new tags will be created when pasted list contains entries that do not already exist. DEFAULT: Disabled
  • Require Confirmation: If enabled, user needs to confirm new tags being created. DEFAULT: Disabled

Screenshots

2 Likes

Thanks for this awesome plugin. I just tried it out and it’s great!

I just had a little suggestion, reloading the window after pasting will clear out edited fields, it may be a good idea to inform the user beforehand. Either when detecting changes happened (save button isn’t greyed out), or by adding a new plugin setting.

Thanks for the feedback. I’m aware of the issue, but I haven’t really looked into a solution yet. Adding a warning probably is the easiest short term option.

1 Like

Hey, I like the plugin, I’ve been using it a bunch recently. Is it possible to add ‘#’ as a delimiter?

Change line 93 from

to

var inputTagList = tagInput.split(/\r?\n|\r|,|#/).map(s => s.trim()).filter((text) => text !== "") // do de-duplication later
2 Likes

could you do that for markers too ?

I do have something that works for marker tags, but I’ve never uploaded it because it sometimes doesn’t work as expected. I’ll need to take another look and see if I can fix that.

Since you would probably want to also copy/paste the main tag along with all of the secondary tags, and you also can’t reload the page when the update is applied because you want to keep tagging. So, it may be better suited to being its own separate plugin.

Just found your plugin. Would very much be interested in a solution for markers aswell. I wouldn’t mind if it only copied the secondary tags.

yes for me too, just copy secondary tags would be great. But it’s your call of course.

I’m working on a bit of a rewrite of the plugin to instead use the PluginApi.patch functionality which should allow me to make it work with markers as well. Might have time to finish it this weekend.

I do think there is value in being able to copy/paste both primary and secondary tags on markers in a single click, so I’ll see if I can do something about that after I get the basic marker tag copy/paste functional.

EDIT: A pull request with this change has now been created. Once it’s merged, you’ll be able to pull the update.

As I call out in the PR comment, this refactor means that tag copy/paste will be universally applied to all instances of the Tag Select dropdown including while editing Markers and in all of the modal dialog boxes like when you’re editing multiple Scenes, Performers, etc.

The other significant change is that when you paste, there is no longer an immediate API call to save the pasted tags. The tags now populate directly into the Tag Select control and you can save the same way you normally would.


1 Like