Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Feature Request: New pasting behaviours in metadata properties (Read 4244 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Feature Request: New pasting behaviours in metadata properties

When one double clicks on a given tag in the 'track properties' window, a pop-up window is opened. This window shows a row for each song currently selected, so that multiple tracks may be edited in one place and at one time.

This is an immensely useful feature -- may I please suggest two ways it could be made even more useful:


1. Single line data pasted over multiple cells
Presently, a single line of clipboard data can be pasted to a single cell, whilst multiple lines of data can be pasted to fill multiple cells. For example, suppose I have highlighted 4 tracks in the tag window. If I press Ctrl+V with only 1 line of data in the clipboard, only the top track gets its cell filled. If I have 4 lines of data in the clipboard, each cell gets the corresponding line of data (e.g. 3rd line of data goes into the cell for the 3rd track).

My suggestion: If multiple cells in the pop-up are highlighted, and the clipboard only has 1 row of data (e.g. an artist name), could that data not be pasted to all cells presently highlighted? For example, if I highlight the cells for tracks 1 and 2, and press Ctrl+V, might my artist name be pasted to both at the same time? What if the cells selected are not contiguous, such as the cells for track 1 and 3? Might it be possible to paste that data to an arbitrary selection of cells?

This would be a very useful feature to bridge the gap between pasting 1 piece of data to all cells (possible in the main 'track properties' window), and pasting data to 1 track at a time (in the track-by-track pop-up window).


2. Shortcut for adding an additional value to a cell
At present, multiple value tags are added through a very manual process. This involves typing a semicolon after the existing value, then pasting the new value. Might it be possible to introduce a new shortcut for appending clipboard information to highlighted cells?

For example, suppose I have 4 tracks which have the following artist tags:

  • A
  • A; B
  • B; C
  • A; B; C

Say I want to add artist D, but only to tracks 1 and 3. At present, I need to go into each of those cells individually, typing the semicolon and then pasting the additional data. Given the very wide combinations/permutations of performers in music like opera, this process can often become extremely unwieldy and time-consuming.

My suggestion: A shortcut (e.g. Ctrl+Shift+V) could take whatever's in the clipboard and append it to the highlighted cell as an additional value, separated from the existing value with an automatically-generated semicolon. In my example, having D in the clipboard, selecting cells 1 and 3, and then pressing Ctrl+Shift+V would produce the following.

  • A; D
  • A; B
  • B; C; D
  • A; B; C

This example assumes the behaviour from Point 1 is also instituted, but the Ctrl+Shift+V function would be a boon even if only one cell may be selected for the appending of clipboard data.

I have a sneaking suspicion that such tweaks might be restricted by Foobar's use of Windows UI components that have fairly well-defined and rigid behaviours. However, if it should be possible, I'm sure many users would be grateful for the addition of these time-saving features.

As always, thank you for your generous work on the software!

Re: Feature Request: New pasting behaviours in metadata properties

Reply #1
If you only want to modify a subset of tracks then why not select only those before opening the properties window?

If I understood your suggestion properly, when lets say 3 tracks are selected and your clipboard has one line available, you want only track 1 modified as opposed to all?

If this means losing the current mechanic, I'd be very hesitant to change it as I find filling out multiple tracks with the same value to be essential (such as album artist, album, etc). And when you want more fine grained control you use multiple clipboard lines or only select the relevant tracks beforehand.

You can append multivalue tags more easily with the help of some components. Tagger Panel comes to my mind, then perhaps TagBox and maybe MassTagger (not entirely sure on the last two).

An 'append value if it's not present/remove all occurences if present' context menu option would certainly be nice built into the properties panel however. As far as I remember that doesn't exist currently (without diving into the auto-fill dialog and relying on titleformatting tricks), but I'll have to double check.

Re: Feature Request: New pasting behaviours in metadata properties

Reply #2
If you only want to modify a subset of tracks then why not select only those before opening the properties window?

It's more about having to open/close 2 windows each time I select new tracks. If I have 50 tracks which will each use one of half a dozen possible values, that involves a lot of opening of windows, flicking back and forth, etc.

What I'm proposing is for paste behaviour to change where there is only 1 line of data in the clipboard, but where multiple tracks are selected in the popup window. At present, that data would be pasted to only the first track in the highlighted list. Whilst my suggestion would change that behaviour, it's fair to say that people are not choosing to highlight multiple tracks in order to paste only 1 line of data to the first track in that selection. If they are, they are likely intending to do what I'm suggesting (but failing...!  :) )

Only one scenario here gave me pause: Suppose that the clipboard data consisted of 3 lines, of which lines 2 and 3 were blank. This is quite common if you are copying all the metadata from one set of tracks to another. However, in those situations, the carriage return/paragraph formatting is part of that data, and therefore it should be obvious to the program whether (i) 1 line of data is being pasted to 3 cells, or (ii) 3 lines of data are being pasted to 3 cells, of which lines 2 and 3 are explicitly 'blank'.

In that way, no current mechanic is lost, but considerable time-saving is achieved.

Quote
An 'append value if it's not present/remove all occurences if present' context menu option would certainly be nice built into the properties panel however. As far as I remember that doesn't exist currently (without diving into the auto-fill dialog and relying on titleformatting tricks), but I'll have to double check.

That sounds like a much better idea than mine; the ability to 'check' whether a value already exists in the cell before adding it would be a huge help where there are so many values that it's hard to display/view them all at once. If the functionality you propose could be combined with my first suggestion, imagine a scenario like this:

I have 50 opera tracks, and need to add various performers to each. I have the tagging window open for all 50 tracks. Combining your idea with mine, I should be able to select a subset of tracks with Pavarotti, and paste Pavarotti. Without having to come out of that window, I could then highlight any tracks which have the second performer, and add her name too -- even if Pavarotti is already in that tag. This would make creating combinations of artists across multiple tracks much much faster and less onerous than at present.

Re: Feature Request: New pasting behaviours in metadata properties

Reply #3
I think the track-to-track clipboard behavior is very consistent and I wouldn't trade consistency for speed of use when it comes to handling multiple tracks and fields. To you, pasting the data of the first track in the clipboard to all selected tracks might seem intuitive because for some reason that's what you expect, but for me - and I guess for other people, too - it is not. Such a feature is likely to mess all my tags up.
I think an exception to consistent behavior has to be intentionally triggered by the user, for example with a context menu command, like the capitalize or clean-up options.

P.S.
As an almost side topic, I would appreciate a warning that the number of tracks in the clipboard doesn't match the number of selected tracks, though.
I'm late

 

Re: Feature Request: New pasting behaviours in metadata properties

Reply #4
I think the track-to-track clipboard behavior is very consistent and I wouldn't trade consistency for speed of use when it comes to handling multiple tracks and fields. To you, pasting the data of the first track in the clipboard to all selected tracks might seem intuitive because for some reason that's what you expect, but for me - and I guess for other people, too - it is not. Such a feature is likely to mess all my tags up.
I think an exception to consistent behavior has to be intentionally triggered by the user, for example with a context menu command, like the capitalize or clean-up options.

To be clear, I'm suggesting that behaviour only when there is 1 line of data in the clipboard. Perhaps I'm missing something, but are you saying there are times when you will select multiple cells (e.g. all 10 tracks) in order to fill only the top most cell with one line of data? Would you not have just selected that one cell?

If I may offer an example of how this would work, try it out in Microsoft Excel -- it does precisely what I'm suggesting. If I have copied 1 line of data and highlight 2 cells, Ctrl+V will paste that line to both cells. If I have 2 lines of data, and paste it to 2 cells, the first line goes to the first cell, the second line to the second. This is true even if the second line of data is 'blank'. That's all I'm suggesting here.

Re: Feature Request: New pasting behaviours in metadata properties

Reply #5
Perhaps I'm missing something, but are you saying there are times when you will select multiple cells (e.g. all 10 tracks) in order to fill only the top most cell with one line of data? Would you not have just selected that one cell?

I might select a set of tracks, i.e. a whole album, and copy its data to another set of tracks, for example a new version of the same album (e.g. with higher bitrate or another audio format), relying on the presumption that they have the same number of tracks, but not realizing that the new version is an extended one with extra bonus tracks (this is the case most of the times). I want to be sure that no data is pasted to those extra tracks which have no match in the clipboard.
I understand you are speaking about a very special case: that is when the clipboard holds one track only, but I don't want the burden to make sure I didn't copy one track only by mistake (that is a thing when you rely on group headers to select multiple tracks) when doing the above described operation. If this has to be an option I want at least foobar2000 to warn me before attempting to guess my hidden intentions.
I'm late

Re: Feature Request: New pasting behaviours in metadata properties

Reply #6
I think in the example you gave, in either the present or my proposed behaviour, only the original tracks would be copied, and the 'extra' tracks in the new set would retain their old values. Granted, I understand this may increase the risk of accidentally pasting over many tracks with 1 item, but this can be reversed simply by closing the window without saving it. I'm often doing this rinse/repeat process with the existing behaviour, as I find myself expecting to paste to multiple cells but am only managing half the job. :-p

Whilst I think Davideleo and I understand the point in question, I don't think I explained myself very clearly before so I've made a little graphic that should be more helpful:

It shows 4 possible copy and pasting scenarios. In each, I am copying the data on the left, highlighting 4 target target cells, and pasting. This shows where Foobar and Excel behaviours differ, I would argue needlessly.



Example 1 shows what happens if I copy only one cell/line of data and then paste it to 4 empty cells. In Foobar, only the first cell is filled. In Excel, it duplicates that one line of data to all 4 cells.

Example 2 shows what happens if I select all 4 rows of data, and then paste it to all 4 rows of cells. In both Excel and Foobar, each line gets pasted to the correct row.

Example 3 shows what happens if I select and copy all 4 cells of data including empty cells, and then paste them to 4 cells. In both Foobar and Excel, the program correctly identifies that whilst certain cells are blank, they are intended to be blank and should be pasted as such.

Example 4 shows what happens if I copy only 2 rows of data but selected 4 cells to paste to. In both Foobar and Excel, the program pastes only to the first 2 cells of the selection, and does not assume the user wants to create an A,B,A,B pattern.

To my mind then, the only difference with my proposal is how scenario 1 works. This could be extended further to allow pasting to non-contiguous cells, again, with no effect on the other multi-cell behaviour.

Re: Feature Request: New pasting behaviours in metadata properties

Reply #7
Do you have a step-by-step reproduction or a video of what you are actually doing?

The excel version of scenario 1 is how foobar operates as far as I'm concerned. It seemed to me like you were arguing to adopt the opposite.

Where are you pressing CTRL+V? 'Right click/Properties' window with a field selected? Or do you 'Right click/Edit' said field to get into yet another popup? That's the only place I could reproduce the behavior you mentioned. And there you can flip to the 'Single value' tab to get intended behavior.

Or much easier, don't use the 'Edit' popup and just paste the clipboard directly to the field within the 'Properties' window. If your clipboard has only one line, it'll paste that value to every track highlighted. If you have multiple lines, it'll fill up each track with the values in order.

Re: Feature Request: New pasting behaviours in metadata properties

Reply #8
Or do you 'Right click/Edit' said field to get into yet another popup? That's the only place I could reproduce the behavior you mentioned. And there you can flip to the 'Single value' tab to get intended behavior.

This is the window I'm referring to. If I attempt this action in the preceding window or in the 'single value' tab, I would be applying the same value to every track currently open. I'm proposing that, if one has to alter a great many tags at once, it is useful to be able to pick and choose amongst the open tracks by adopting an Excel-like approach to pasting single values. Nothing is lost in doing this, but one gets to add data to multiple items with greater speed. This would be enhanced even further by allowing non-contiguous tracks to be selected and pasted to, and further still by allowing additional values to be appended with a shortcut (or better yet, what you proposed earlier).

With the current behaviour, the quickest approach is (as you correctly indicate) to select a subset of tracks, open the properties window, paste the tag, then rinse and repeat. With what I'm proposing, all the tags for those tracks could be opened at once, and one could easily highlight and paste in one window without having to mess around with the opening/closing. What is accomplished with multiple windows could be achieved in one, and without resorting to pasting to one cell at a time within that window.

Suppose I have 50 tracks. The first 10 are Artist A, the next Artist B, etc. Presently, I need to select the first ten and open a window in order to paste one value. I then need to do the same for the next 4 groups. With my proposal, all 50 can be selected and viewed at once, and I can simply highlight 10 cells at a time and paste what's in the clipboard.

Even if some users are happy with the current behaviour, the tweak I'm proposing does not change that behaviour in any meaningful way. To go back to my earlier examples: It doesn't make sense for people to select 4 cells if they intend to paste to only the first one. Assuming therefore that they don't do this, what is the loss in instituting this change?