-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Round BPM display value in library table #2001
Conversation
Which issue does the PR solve? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think that this will work for all users.
Is it worth to clutter the preferences with this?
I was thinking of this comment in particular which a number of people agreed with. I realise it's not the solution to all issues with bpm handling.
I wouldn't say so, no. I think it would be better not to implement it than to have to include a preference option. |
I think it would help to append special character(s) in this case to indicate there are decimals. |
I thought about this too, but I felt that adding a non-numeric character would just clutter the field again. But if the idea is popular and the general consensus is that If there was going to be a Preferences option, I'd want to have the choice between:
|
For me this PR alone does not make any sense. The real issue is the BPM grouping. |
Three decimal places are useless though. Maybe we can go for one or two. |
I agree 2dp would be an improvement. If I made changes for that and pushed to this PR, would you still want to discuss further? If so we may as well get some further opinions now. |
That will work for me without a preferences option. Consideration: @ronso0 what do you think. |
I think a delegate can do this, like in #2002. |
It will be slightly more tricky. There's already a bpm delegate that handles drawing the bpm lock etc, so I'll need to make it work around/with that. It would be good to get it working though, I'd be happy to use column width to set the decimal places. |
I'll close this until I have something that needs review, so as not to add to the clutter of open PRs. |
just leave it open as it's on a good way I think. |
...and try to align the decimals point in all column fileds.
Users may have high-precision sliders but they usually don't have high-precision hands :) |
So you vote is for one or two decimal places? It is ok for me to merge this and do the decimal point allignment in a later PR. |
IMO one decimal is enough for the library: we can see BPM is not an integer, the rest happpens in the decks. |
@benis Ok, can you change it to one decimal place and the we are ready to merge. Thanks. |
Ok. For now do you care whether the number always has the decimal place or not? It's actually harder to display a number with 'up to' 1 d.p. than it is to just force 1 d.p. You can use |
Personally I would prefer a format with a fixed number of decimal places. This is much easier to recognize. A single decimal place is a perfect compromise between readability and precision. |
Sounds good to me. I think that's better in the case of numbers such as 121.04 anyway - without the decimal place this would just display as |
I know this is out of scope for this PR but here's how I'd find the BPM column really useful, and it might be tricky if we use fonts with variable width (non-monospace fonts):
Slightly shrinking the column would result in
which allows to identify fast & slow tracks quickly, and also gives a hint when the BPM has decimals |
I'm actually planning to do something like this in the next PR. Currently the field elides by default, so when you shrink the column, unfortunately a value such as |
I didn't follow the discussions. But if we use a fixed number of decimal places then the column should be right-aligned as is common for displaying numeric values. The alignment helps when playing mixed music with a wide range of tempos between 50 and 190 bpm. Usually I sort my genre/style/mood/phase crates by bpm, because this is the (technical) starting point for figuring out a next track that might fit. So for my personal workflow the number-style alignment is a nice-to-have feature. |
Yeah, right-align would be a good choice to combine with this PR. I don't know if it can be done without having to rework the bpm delegate a fair bit, but I'll have a look. |
For the music I play, the decimal point is a good indicator that the bpm detection failed. Nearly all songs with decimal points are wrongly detected tracks, It helps me not accidental play a track not matching. For me, 2 decimal points would nicely indicate that. |
I'm wondering if it would be an idea to use an elide that's condition-based and only kicks in with narrower column widths. Currently, as soon as the elide kicks in you lose two characters, which is kind of a pain. If it were possible to do a conditional elide, you could do something like this:
Actually I'm not sure about the behaviour when it comes to rounding up. Maybe a simpler version would be better. |
I like the dash version. |
-edit- never mind, I will add the dash in shortly then this is good to merge. |
Oh dear, fun with Git -_- |
Right then! Ready to merge :) |
LGTM, Thank you. |
Hi, I just recompiled and I would like to say I'm not a fan of trailing zeros on integer values. I don't do any inter-track mixing so I don't need to be any more precise than integer BPMs. As it stands, this shows a useless xxx.0 for my whole library. I think I would be in favor of a config option to set the number of decimals displayed. |
I have tracks that definitely need at least 2 decimal points of detail -- I assume this is just rounding the display? If I edit the bpm value will I see all the significant figures? |
Correct. |
It is not so urgent to me personally to have a fix in master. Your change was so atomic I can easily revert the commit. I'm just happy to hear that you are working further on it with this in mind. |
This was discussed a while ago on Zulip. This PR rounds the BPM column in the library to 1dp. The tooltip will still show the value to 3dp, and the actual value is obviously unaffected.
Below is pre-edit comment where values were rounded to whole numbers - ignore: