jcsteh / osara

OSARA: Open Source Accessibility for the REAPER Application
GNU General Public License v2.0
127 stars 46 forks source link

item number before the name #381

Open ranetto opened 3 years ago

ranetto commented 3 years ago

Hi James, I wanted to ask if it was possible to have an option in osara that determines whether the number of the selected item should be spoken or not. The example I give you is the following: items often begin with a number in reaper: example: 12 163 floor only would be item 12 and its name is: 163 floor only It happens that nvda and jaws tend to combine the two numbers making, when you have many items, its name becomes much more incomprehensible when you quickly navigate between them. Would this be possible in osara? Thank you for listening!

ScottChesworth commented 3 years ago

Perhaps a simpler solution to add clarity would be to insert a comma or some other character that adds a small pause between item number and item name?

ranetto commented 3 years ago

Scott, it might be an idea, but I wouldn't want it to slow down the selection of different items: maybe both? You might argue that I always want everything, but at least I try! Thanks Scott.

ScottChesworth commented 3 years ago

I think slowing down selection in contexts where item number and item name both need to be heard is a valid concern, but consider these points:

  1. The vast majority of users I've observed are already tuning out Reaper's default date and time stamp format for item name, and focusing on item number instead. Clearer separation between item number and item name should add clarity to that workflow, and given that they're not paying attention to the item name anyway, the easy solution to implement seems unlikely to cause negative impact on their productivity.
  2. Adding a character to cause a short pause is way easier for Jamie to implement. I'd at least be interested in trying a build to see how it feels in practice, and would encourage you to be open to that, too.
ranetto commented 3 years ago

Of course I am always available to try: gladly let me know and thanks Scott!

cn-peter commented 3 years ago

I think we can add an option. Adjust the order of serial number / name / status (if there is status) I have a friend who always wants to put the track number on the tail, but he can't program

jcsteh commented 3 years ago

@ranetto, when you say the numbers get combined, are you saying they are read as a single number (e.g. twelve thousand one hundred and sixty three in English) or two separate numbers but with no pause (twelve one hundred and sixty three in English)? I wanted to clarify because I know there are languages where a space is used as a thousands separator and that's a much bigger problem than just hearing two numbers with no pause. That can probably be solved by using a double space instead of a single space.

As to having an option to prevent reading of the item number, I wonder whether this should be combined with the proposed option to prevent reading of track numbers (#175)?

ScottChesworth commented 3 years ago

+1 here for combining with #175

ranetto commented 3 years ago

Hi James, look I can't tell, they practically combine, perhaps because I use very fast synthesis and therefore make sure that you don't understand anything when maybe an item has a name that would be simple. I believe it is a track number independent option, as maybe some people need the track number, but I think they need the item number less. Immediately hear the name of the item, perhaps when you have just renamed it to give it a precise meaning within your track, I think it can be very reassuring and immediate to listen to. What do you think James?

ScottChesworth commented 3 years ago

I'm not James, but perhaps you could temporarily slow your synthesis down to collect the requested info?

ranetto commented 3 years ago

Hi Scott, I was replying to James' message above, but I don't think it's a problem to slow down the synthesis, slowing it down would take even longer to find the information we are talking about: it's a question of confusion rather than speed: when you rename an example item, "Redo voice here", or "12 right choir", etc., if you are told immediately that name you have just given to the item, you recognize it immediately and you can continue thinking with your brain to what you were going to change right inside that item. If you go over it back and forth maybe twice, you get lost and forget what you were editing on the fly.

ScottChesworth commented 3 years ago

slowing it down would take even longer to find the information we are talking about

Just for clarity, I'm not suggesting that slowing down speech rate in your production environment is a permanent solution. I'm suggesting temporarily slowing the speech rate down and examining some items, just so you can provide a clear response to Jamie's question. That question again: "when you say the numbers get combined, are you saying they are read as a single number (e.g. twelve thousand one hundred and sixty three in English) or two separate numbers but with no pause (twelve one hundred and sixty three in English)?" The sooner we can get a clear understanding of the issue, the more likely it can be addressed.

ranetto commented 3 years ago

Hi Scott, as a group of numbers interpolated by spaces: example: the item is called "05-Guitar" This is item 1 of the track: it is said like this: "1 05-Guitar" I think if she was called: "05Guitar", so without the hyphen it would have been pronounced: "105Guitar" Was I able to explain Scott?

ranetto commented 3 years ago

Scott, I also correct myself by removing the hyphen from the name is always pronounced: "1 05-Guitar" In this case the numbers do not become the hundreds, it has happened to me in other cases but perhaps it depends on the length of the number entered in the part of the name. Thanks Scott

ScottChesworth commented 3 years ago

Ok, gotcha now. Seems to be entirely dependent on the speech synth in use. Urgh. I reckon a double space between item number and item name would prevent it sneaking into the hundreds universally though. Can we take your suggestion for a spin, @jcsteh ?

pitermach commented 3 years ago

So this is not something I thought of before because I use my computer in English 90% of the time, but Polish is one of those languages that uses a space as a thousand separator. If I use a Polish synthesizer, and make an item called something like 123 test, it indeed announces it as "1 thousand 1 hundred twenty three test". I did some additional testing in notepad, and no amount of additional whitespace prevents this from happening - not with Vocalizer, Espeak or Microsoft voices at least.

If you do decide to add a comma in front, I think that's something that should be configurable because I like not having a pause and I don't want to just have commas be ignored by the screen reader for things like filenames.

ScottChesworth commented 3 years ago

Hmmm, tricky. There are plenty of characters we could insert to separate the item number and item name that don't cause a pause, but then, that's gonna screw people who have their screen readers punctuation level set to all, isn't it?

ranetto commented 3 years ago

In fact, in order not to create complications, I suggested if you could add the check in the preferences to say or not to say the number of the item: it would seem simpler to me. How about Scott? And James?

LeonarddeR commented 3 years ago

I know that NVDA works around issues like this by separating a number from another number with at least two spaces. Only one space is a valid number separator in some languages.

pitermach commented 3 years ago

How about having 2 options, one of announcing the items the way it's now, and the other, rather than not announcing them at all, announcing them more like how a screen reader typically behaves in a list, so following the item name with a message like "x of y?" This could work the same way for tracks as well and is also how the ReaEar extension does it at least for track announcements.

ScottChesworth commented 3 years ago

How about having 2 options, one of announcing the items the way it's now, and the other, rather than not announcing them at all, announcing them more like how a screen reader typically behaves in a list, so following the item name with a message like "x of y?"

Trouble with the X of Y approach is that we'd need to count tracks or items to report that information accurately every time a user modified selection. In large projects, that'd likely be a serious performance hit on some machines.

jcsteh commented 3 years ago

REAPER can give us item and track counts, so that's not a performance concern. Having an option for that is horrible from a UX perspective, though. What do we call it? "Report item number and item count after the item"? And when that option is off, it isn't clear that the item count won't be reported. Plus users apparently want to treat tracks differently, so now we end up with the same option for tracks. And some users might not want the count, so then we need an option to disable the count. It's a very slippery slope to just say "add an option". Sometimes, an option is necessary, but many times, it's just an excuse for not being able to make a good UX decision.

jcsteh commented 3 years ago

I believe it is a track number independent option, as maybe some people need the track number, but I think they need the item number less.

Why? Can we actually justify why someone would want track numbers but not item numbers? If they're happiest working with names and not numbers, why would the same logic not apply to both?

ranetto commented 3 years ago

Hi James, I think that since the ability to listen to the track number or not was required a lot and the ability to listen to the number in the items seems very important to me and would make the work really smooth I think you could add the two options to please everyone and not have to think about whether one is fairer than the other or which one would be better to face. Thanks James, if you could put them on you would make me very happy. What do I know, a Christmas present? Thanks as always: Stephen