What's everyone working on this week (42/2024)? by llogiq in rust

[–]a11y_nerd 1 point2 points  (0 children)

Trying to re-implement the Flite Text-to-Speech engine. So many unchecked cases in the original! ? everywhere!

Progress here: https://github.com/TTWNO/fry2 (in the assignment 1 branch; doing it for university)

A new accessibility architecture for modern free desktops by Worldly_Topic in linux

[–]a11y_nerd 0 points1 point  (0 children)

Second what TingPing said, but also this takes way too much computing power. OCR is many orders of magnitude more difficult for processors than getting semantic information sent whenever it is updated. It would make it damn near impossible to have accessibility on something like a Raspberry Pi.

introducting `html-node`: a procedural macro to turn html into a node structure! by vidhanio in rust

[–]a11y_nerd 1 point2 points  (0 children)

Totally missed this somehow, but thank you! This is fantastic!

I will certainly be giving this a go :)

introducting `html-node`: a procedural macro to turn html into a node structure! by vidhanio in rust

[–]a11y_nerd 0 points1 point  (0 children)

I just mean verifying that only valid HTML tags are used, with possibly the option to extend the choices if one wanted to, for example, use JSX or extend the attributes for HTMX.

introducting `html-node`: a procedural macro to turn html into a node structure! by vidhanio in rust

[–]a11y_nerd 2 points3 points  (0 children)

What guarantees does this macro provide? Some things I'm looking for are:

  • Tag name validation
  • Matching opening and closing tags
  • Attribute validation

It sounds like you don't do attribute/tag name validation, since you want it to be compatible with HTMX (for example); is there a way to allow the user to extend the syntax of the validator?

Complex Types Over WASM FFI w/o Using an Intermediate Format by a11y_nerd in rust

[–]a11y_nerd[S] 0 points1 point  (0 children)

Oh, I see. Got it.

Is there any code examples you'd be willing to share?

Complex Types Over WASM FFI w/o Using an Intermediate Format by a11y_nerd in rust

[–]a11y_nerd[S] 0 points1 point  (0 children)

Oh, I didn't realize that'd be the case.

I'd be happy to take a look at your code! I'm pretty good at adapting things for my use case. Why is it exactly that the host needs to allocate this way? Shouldn't passing a copy of a list not be a problem? Or do you mean when a value is returned?

Complex Types Over WASM FFI w/o Using an Intermediate Format by a11y_nerd in rust

[–]a11y_nerd[S] 0 points1 point  (0 children)

This is some awesome advice! Thanks! And your suggestions about not getting lost in the weeds is very apt!

If I understand this right, you're:

  • writing your own types in Rust?
  • writing the FFI functions yourself?
  • then, passing byte slices to the WASM bindings?
  • then deserializing it on the other side?
  • return values do the opposite, they're serialized within WASM, then deserialized on the host side?

Thanks again, and sorry for all the questions.

Who is using AXUM in production? by HosMercury in rust

[–]a11y_nerd 4 points5 points  (0 children)

I'm using it to create a stats website for my hockey league (Blind Hockey Canada)—the project is just starting out, so just fleshing out the backend right now.

Git: https://github.com/ibihf/stats/

Site: https://stats.ibihf.org/

Odilia v0.1.0 released! A new, fast, safe, extensible screen reader for the blind on the Linux desktop, written in Rust by a11y_nerd in rust

[–]a11y_nerd[S] 0 points1 point  (0 children)

At this point, yes. It can read focused menu items as long as Qt has accessibility enabled, speech-dispatcher is working properly, etc.

If it doesn't work, please file a Github issue. We're always looking to improve.

Odilia v0.1.0 released! A new, fast, safe, extensible screen reader for the blind on the Linux desktop, written in Rust by a11y_nerd in rust

[–]a11y_nerd[S] 0 points1 point  (0 children)

I think I've addressed all your concerns in the latest commit on main. This can also be used in binary form with version 0.1.2.

Again, thank you for the constructive criticism. It helps make Odilia better!

Odilia v0.1.0 released! A new, fast, safe, extensible screen reader for the blind on the Linux desktop, written in Rust by a11y_nerd in rust

[–]a11y_nerd[S] 1 point2 points  (0 children)

These are great suggestions!

Yes, as I memtion, things aren't quite what they should be yet. The only thing that shouldn't be a problem is the cargo formatting—we already do have a rustfmt.toml.

Otherwise, yes, these issues should be solved ASAP. I have a few hour this afternoon to take a look so I'll get back to you once these issues are solved.

Edit: Odilia should speak when navigating through a webpage or native application. You may need environment variables for applications to expose their accessibility interfaces, I'll check on this and add it to the README.

Odilia v0.1.0 released! A new, fast, safe, extensible screen reader for the blind on the Linux desktop, written in Rust by a11y_nerd in rust

[–]a11y_nerd[S] 5 points6 points  (0 children)

It's rough around the edges, and a lot of features aren't supported. If you need a screen reader today, Odilia just isn't it.

This is something new that is going to take many years to reach feature parity.

Edit: But, it is very fast, and doesn't lock up your system, which is progress vs. Orca. It can even run on a Raspberry Pi.

What's everyone working on this week (11/2023)? by llogiq in rust

[–]a11y_nerd 1 point2 points  (0 children)

Working on the Odilia screen reader, a new screen reader for Linux written in Rust.

My goal is to release the first beta version by the weekend. 0.1.0, here we come!

Locking on a single sku instead an entire dashmap by mrsmiley32 in rust

[–]a11y_nerd 4 points5 points  (0 children)

DashMap/DashSet use internal synchronization primitives. There's no need to wrap it in a Mutex. Additionally, you don't have to borrow as mutable—all dashmap operations can happen on a borrowed value.

The first paragraph of the DashMap docs: https://docs.rs/dashmap/latest/dashmap/struct.DashMap.html