Closed muescha closed 3 months ago
I would suggest to use {speed}
instead of {rate}
because I think this is more common wording for users this. playbackRate
is a more technical term.
I would suggest to use
{speed}
instead of{rate}
I agree, I assumed that the input field was limited by its width and rate
was 1 letters shorter
I noticed a gap. I previously specifically removed the •
sign
because {speed}
is displayed if not equal to 1x
and in this example, if the video is 1x there will be a dot at the end
value: '{left} • {speed}' },
// "0:11 • "
so it’s probably worth adding another type, for example {speed*}
where *
denotes the display is optional. That is, just {speed}
is always and {speed*}
when it is not equal to 1x
p.s. - I think no one except the two of us will understand how it works. And the hints will only confuse a user.
Probably, for example, you should choose a multiple of 1minute. And the progress in the examples is tied to it it will be more clear to the user and done = 10sec it will be beautiful and more visual. and speed is also a multiple of 2x
https://www.youtube.com/watch?v=9xp1XWmJ_Wo
and probably this line is too overloaded:
{ label: '-2:24 -0:48 -13% • 15:36 5:12 87% • 18:00 6:00 • 3x', value: '{left} {left^} {left%} • {done} {done^} {done%} • {duration} {duration^} • {speed} {speed*}' },
I tried dividing it into groups like {left} {left^} {left%}
- but it didn’t help much
also this line seems useless to me
{ label: 'For a custom template, you can use these fields:', value: ' ' },
because upon initialization the field is already empty. And if it is full, then the hint will not be displayed at all
I updated the template but it doesn’t work for me either. But I think it’s difficult to achieve something better
I had the same idea, but I wanted to commit this PR before suggesting it.
In my case, I used the syntax {speed?}
with this explanation for the dropdown:
{ label: 'rate • 1.75x', value: '{rate}' },
{ label: 'rate? (!=1) • 1.75x ', value: '{rate?}' },
Probably, for example, you should choose a multiple of 1minute. And the progress in the examples is tied to it it will be more clear to the user and done = 10sec it will be beautiful and more visual. and speed is also a multiple of 2x
Do you mean for the example values? Yes, using multiples of 1 minute would make it easier for the user to understand. Aligning the progress with these values would also enhance clarity and make the visuals more appealing, especially if done in increments like 10 seconds. Using speed as a multiple of 2x would be visually intuitive as well.
and probably this line is too overloaded:
{ label: '-2:24 -0:48 -13% • 15:36 5:12 87% • 18:00 6:00 • 3x', value: '{left} {left^} {left%} • {done} {done^} {done%} • {duration} {duration^} • {speed} {speed*}' },
I tried dividing it into groups like{left} {left^} {left%}
- but it didn’t help much
Yes, the line is overloaded. My intention was to provide all possible values so users could remove what they don't need. The idea was that by experimenting with different values, users might better understand how each value affects the output.
also this line seems useless to me
{ label: 'For a custom template, you can use these fields:', value: ' ' },
My idea was to differentiate between the template section and the part where users can create their own templates. Since it wasn’t possible to add disabled separators, I used this as a workaround.
Maybe if you like my draft with the "template" / "custom pattern" then this is not needed.
because upon initialization the field is already empty. And if it is full, then the hint will not be displayed at all
I updated the template but it doesn’t work for me either. But I think it’s difficult to achieve something better
It would be helpful to have a "datalist"-like help tooltip that's always visible while the user types their custom pattern. Maybe tweaking the datalist to remove the filtering on values in the input field would achieve this. ( property on datalist nofilter:true
)
I had the same idea, but I wanted to commit this PR before suggesting it.
There is no need to be careful. If you want to do something, you can do it. We are not at work to be too careful and follow the company's rules. So as not to break something for a thousand clients and lose money.
If you are doing something significant, it may make sense to ask. Whatever it would be a shame to spend a lot of time.
Since I have been doing the project myself for a long time, there is some “deformation” of my perception. And I am sure that there is a lack of fresh perspective and solutions.
The only thing I stubbornly followed was to keep the code as short and concise as possible. It is clear that this cannot be achieved. And sometimes, for understanding, it is better to separate parts into separate functions. But I tried to insert these functions, if they are not universal, inside the functions from which they are called. To delete the entire block if necessary. Instead of looking for what goes where.
There is also a unique solution: instead of declaring a variable, insert it into an if()
construct. Thus, I tried to indicate that the variable is used only in this block. Questionable decision
Also, if the variable comes from external code, then I marked it with an underscore. That she seems to be “unsafe”.
In general, some kind of hybrid of functional programming with simply unsafe programming.
I deliberately abandoned the majority of external libraries. So that if something happens, anyone can pull out some of the functionality. And then don’t drag out half of the nodejs repository
I tried to make the code as simple as possible, but I doubt it worked
I have just done some refactorings - for clarity I have done separate commits for each step