Highlighting word(s) search query

When filtering for certain words in my music I'd like mp3tag to highlight the word I've searched for in the results.

Some titles are quite long and it would be nice to see where the word is at a glance.

Is there an option for this in mp3tag, if not would you consider implementing it?

Many thanks.

1 Like

No one thinks this is a good idea?

I am suggesting something along the lines of Windows 7 search highlighting:

http://localhostr.com/files/4769a2/Capture.PNG

Still no response regarding this, was wondering whether it was overlooked...

Please consider this.

Many thanks.

good idea in my opinion :slight_smile:

PS: AFAIK, Requests For Enhancement should be posted in /c/general-discussion (at least the forum description says so)

I am not so sure. If you apply a filter then the list should be shortened correspondingly. Any sample would then proove if the filter worked as desired or not.
The windows explorer then keeps the filter result but what about the tags: if you start editing them: should the highlighting disappiear? Only in the file you currently edit or all of them. When should the highlighting reappear? How would you distinguish between highlights and selections?
What should happen to highlights if you select a whole file to apply actions? Should the highlighting be inverted?
In general I do not see a real benefit esp. as only very few titles are really long. (Oh yes: and if you have a real long entry and the highlighted word would not be displayed, should the entry be scrolled to give a wrong impression about the real title or shouldn't it scroll and also give the impression that it does not match the filter)
So, in short: I am fine with the way filters are currently displayed.

Valid questions.
The answers to them define the best way of implementation.
They are not prejudicial for the RFE.

There are tons of applications out there featuring implementations which had to deal with this questions. IMO most of the answers are fairly obvious, others are a matter of personal taste.

My personal answers would be:

Those questions are hardly show-stoppers.

If you store two or more tracks in a single file, then you get two titles in one TITLE tag on a daily basis

Here is a real example from my collection. This is one file:

Tubular Bells I Opener {Live At Sporthalle In Köln 1982} + Fast Guitars {Live At Sporthalle In Köln 1982} + Basses {Live At Sporthalle In Köln 1982} + Latin {Live At Sporthalle In Köln 1982} + A Minor Tune {Live At Sporthalle In Köln 1982} + Blues {Live At Sporthalle In Köln 1982} + Thrash {Live At Sporthalle In Köln 1982} + Jazz {Live At Sporthalle In Köln 1982} + Ghost Bells {Live At Sporthalle In Köln 1982} + Russian {Live At Sporthalle In Köln 1982} + Tubular Bells I Part 1: Finale {Live At Sporthalle In Köln 1982}
<<

I know that originally [on the record] "Tubular Bells" have the "Russian" part in it, but not every time did Mike Oldfield played it live; nor does it mean, than some new rendition of it [live performance, remix, cover, whatever] will have it always in the same place. So if I would want to quickly check this out, then seeing a highlighted "Russian" would surely help me

And what if you are using some tag field to store lyrics and want quickly see, in which verse was that expression that you've remembered?

(1a) what about the tags: if you start editing them: should the highlighting disappiear?
Of course, the second the change is done. That is logical

(1b) Only in the file you currently edit or all of them?
You "can't" edit multiple files . You can select many files and edit them all at once in the Tag Panel- but you still have save the changes [en that was covered in 1a]

(1c) When should the highlighting reappear?

When the input in Filter box changes

(2a) How would you distinguish between highlights and selections?
By colors defined by user

(2b) Should the highlighting be inverted?
I also do not understand this question

(3) What should happen to highlights if you select a whole file to apply actions?

It should work the same way as Filter does. So if right now, after executing an action that eliminates files from filtered results, the files still stay on the filtered list until the filter is tempered with, then the highlight should also not disappear

(4) if you have a real long entry and the highlighted word would not be displayed, should the entry be scrolled to give a wrong impression about the real title or shouldn't it scroll and also give the impression that it does not match the filter?

And how does the Filter now behave? It filters even if you do not have the tag field shown in a column or Tag Panel, that bears the value in which the filtering was done. So it's obvious the highlight should be applied even if you do not see the value

I would split the file immediately to get the individual parts addressable. But that is up to the individual's preferences.

The other bit that the highlighting should be applied even if you do not see the value does not really make sense to me:
either there is a text constant somewhere in the data that matches the filter criteria and is displayed - then this could be shown in a different way.
It does not work if you have a comparison between fields ... or between values ... or on a true/false basis.

It is particularily difficult if you check for fields that are not there like
%_covers% MISSING
then there is nothing to highlight ... or you highlight/select all files which then does not really help to find the discriminating bits.

All it leaves: if you filter for a certain criterion, then the displayed files will match this criterion "believe me". No highlighting required.

If you really check for "Russian" in %unsyncedlyrics% and you see a number of files, do you really need the highlighting to "know" that this word is included? It is. You can be certain.

If you split song A and B that have a smooth transition between them [when there are in a single file], then you have to deal with the issue of preparing a smooth ending for the song [file] A and some lead [fade] in for song [file] B. Or bare the consequences of having to listen to an abrupt ending [A] and beginning [B]

I do this manually, but not for all of my music. Sometimes I do not see a sense in splitting some coherent tracks. Like in case of "Russian", which I never extract it to a separate file. Other music [especially songs] I keep in both forms, as a separated files [adjusted in the beginning / end] and welded together. The downside of my method is the doubling [tripling, etc.] of the [almost exact] same material

And I know there is also some tag related method, but I do not use it because I guess not every format will support it and not every player will read it properly

Is that really a problem?

You tell a software "Highlight me XYZ", but it doesn't highlight anything, because there is no XYZ or that XYZ cannot be highlighted? If that really is a problem then there could an indicator of some sort, telling "XYZ not found" or "unable to show / not show XYZ". Like maybe changing a color of some icon or the "Filter" sign, from neutral / black [background system colors] when Filter box is empty, to green when searched values were found and are somewhere displayed [highlighted], to yellow and / or red for the two last possible outcomes?

What if I am looking for something like

||or only
|in fields that contain data like
||| INCORPORATES: Sheila Chandra: "Nana / The Dreaming" | | SAMPLES IN ORDER: Kool And The Gang: "Funky Man {Live In Sex Machine 1970}" | Randy Weston: "In Memory Of" | Coldcut: "More Beats And Pieces" | Rage Against The Machine: "Bulls On Parade" | Ultramagnetic MC's: "Give The Drummer Some" + SAMPLES: Modest Mussorgsky: Beastie Boys: "The New Style" | "Night On Bald Mountain" | Sergei Rachmaninoff interp. Les Baxter: "Fantasy Pieces, Opus #3, #2: Prelude In C-Sharp Minor" | The Jazz Crusaders: "Love Is Blue" + SAMPLES: Martin Luther King, Jr.: "I Have A Dream" <speech> | Martin Luther King, Jr.: "Why Jesus Called Man A Fool" <speech> | Movie: "Braveheart" | movie: "Cool Hand Luke" <Strother Martin> | movie: "Casualties Of War" | movie: "Mississippi Burning" <Willem Dafoe> | movie: "Se7en" ||and I have to check it with my eyes, because I know I've made some errors and cannot use simply script via actions to temporarily change them to something like
!-H-E-R-E---I---A-M---I-M-E-A-N---WAS!because the whole point of looking is to find those errors and make every time a decision how to repair them [and not make more mess with actions]

Highlighting could be alos used in conjunction with some other indicators from some temporary columns. It would give more abilities. As some experienced user one said to me here when helping with actions [or maybe customized columns?], in Mp3tag there is not one proper way to do such things. So why not give more ways?

If the concern is the sake of inexperienced users, then this other filter / search could required to be turned on first somewhere in the options

Yes, this is a problem.
As far as I understood the whole business of highlighting was to help you to find a certain criterion at a glance for each record.
Now you tell me that there has to be an EXTRA indicator that something has not been found (?!?! - this contradicts the current implementation of the filter that displays only matches so the criterion will ALWAYS be found even if it is not possible to highlight it).

In my opinion highlighting each record even if you do not see why it is highlighted will lead to a list of files that are all selected. WHich is more or less the status that you have right now. Only that nothing is selected.

I do not understand the example of | and ||. What kind of "mistake" are you looking for?
I am am absolutely positive that you can express the possible mistake in a filter. And then you see only the files that have this "mistake". No highlighting required.

Right now the Filter works precisely in that way: It cannot show that it cannot show

I'm very glad that I will have your support in the proposal for adding some kind of indicator for the current Filter, when filtering expression do not really do any kind of filtering because they are either wrong or becasuse the are correct but there is just no data that matches the expression

Do you by any chance by highlight mean literally highlighting [like in selecting] a row with a file that matches the criteria?

I think of highlighting only the place in a tag field. Or changing the color of the font

Filtering with color should be distinguishable from selecting. It's obvious. Why would I want to be confused all the time if I am selecting files or only seeing filtered ones?

The mistakes that come out from the fact that I use [or was using at some point in the past]

|
||
|||
| |

each meaning a different thing. The same goes for characters like

.
..
...
:
;

Those signs are similar in appearance to each other, thus easily mistaken for the other. And in this second set the signs are used even in "official" tags and not just in my system, which makes things even worse

That example was just to illustrate, how a lot of data can cloud the ability to clearly see what one is looking for

This depends on how you define "show": after applying a filter, the file list shows exactly those files that match the filter criteria, regardless whether they are string constants in a field or calculated values.

Vice versa, if there are no files in the files list, then no file matches the criteria. It is that simple.

MP3tag is not repsonsible for the plausibility of user input - so whether the filter leads to the desired or expected result is a problem of the user. From a logic point of view, the filter shows exactly and accurately the data that matches the criteria. You can trust MP3tag there.

The problem with the proposal for highlighting for me is the following:
Example: You filter for a certain string in a single field like "title HAS feat". You see at a glance where the string feat is hidden. You can apply more or less blindly any action to standardize the "feat". So here highlighting, although possible, is trivial (my conclusion: no highlighting required).

Next example: You filter for files that have multi-value fields for ARTIST - something that you usually do not see outside the extended tags dialogue:
NOT "$meta(artist,1)" IS ""
So where should the highlighting be applied. If the whole record is shown in a different colour scheme then I do not understand the purpose of the highlighting: I thought this was intended to make special data stand out from the rest - but here all files would be highlighted so that nothing stands out. Highlighting in this scenario would not serve the purpose to facilitate readability (my conclusion: no highlighting required).

Example: you filter for a relative value like %_length_seconds% GREATER 10 ... I simply cannot imagine what should be highlighted - any number that is greater than 10? Actually, every length would be greater than 10, so it looks a lot like the first example. Or it could even lead to confusion: "I entered 10 but the 11, 12, 13 and so on are highlighted". The very understandable reply "you can easily see that this is plausible, just look at the filter you just entered" should support the notion that the filter is straightforward without any highlighting. (my conclusion: no highlighting required)

Next example: you enter a more complex filter e.g. to filter for samplers except those from the "Bravo" series:
%compilation% IS 1 AND NOT album HAS Bravo
Compilation is usually not shown as a column but even if it were, you would now end up with a highlighted column just like in the first example (my conclusion: no highlighting required).
The NOT operator is always tricky as you have to highlight something that is NOT there.
If you highlight the whole record, it does not discriminate any more, but I discussed that already (my conclusion: no highlighting required)
If you do not highlight anything but highlighting would be the normal filter reaction of MP3tag then it would be confusing that you suddenly see files without any highlighting although a filter has been applied. It would actually resemble a lot the current implementation where nothing is highlighted and the user simply trusts MP3tag that the displayed files actually match the criteria. (my conclusion: no highlighting required)

So, to sum it up: my conclusion remains, that there is no real use case where highlighting would bring such a benefit that all the other valid use cases where highlighting would lead to confusion or a reduction in readability would be outweighed.

But as I do not decide if this feature is implemented or not the whole reasoning is nothing more than my humble opinion.

Highlighting a lot of data does not lead to clearer view, on the contrary. You would get far too many false hits.
Expressing clear criteria for a filter, on the other hand, would pinpoint exactly the faulty cases. You would have to find the pattern, though.
e.g. if you have ... in one case as an indicator for "to be continued" and the other case your tagging system and the "to be continued" always follows the previous word but the tagging system dots have a blank space in front of them, it should be possible to filter for them:

%title% HAS " ..."
The abstract example probably does not show it all.

This is a good example. Because I use feat. in ARTIST and COMMENT, sow when some files are containing multiple tracks, then I can get a lot "feat."

And what if someone is using only >>ft.<< od >>f.<<? It's less visible than "feat." or "FEAT.". And if you are just creating your database / system, with the goal of standardization of everything into "feat.", then being able to see whatever you potentially seek to change in a hihglightet form [scattered in ARTIST and / or FILENAME and / or TITLE field], would be helpful

Just as a correctly written expression for the current Filter can filter / show nothing, so would the new highlight Filter sometimes be useless

But I think I do not comprehend fully this example

Any file longer than ten seconds, but only in the field %_length_seconds%. In other word: highlight all values over 00:09

And is that impossible for Mp3tag?

And in case like that you could quickly switch between the highlighting and no-highlight. If it works / helps- then it does. Where it does not- the it simply doesn't work / help. With quick switch you could compare higlight with no highlight state