Skip to content
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

[FR]: Context Menu: "Speak from here" #119

Open
6 tasks done
Luram123 opened this issue Oct 17, 2024 · 6 comments
Open
6 tasks done

[FR]: Context Menu: "Speak from here" #119

Luram123 opened this issue Oct 17, 2024 · 6 comments
Assignees
Labels
feature request New feature or request priority Priority features/bugs to be implemented/fixed

Comments

@Luram123
Copy link

Checklist

  • I have used the search function for OPEN issues to see if someone else has already submitted the same feature request.
  • I have also used the search function for CLOSED issues to see if the feature was already implemented and is just waiting to be released, or if the feature was rejected.
  • I have read through the changelog to confirm the feature doesn't already exist.
  • I have read through the roadmap to confirm the feature isn't already planned. (Note - you can still open a feature request if you think the feature should have a higher priority/should be implemented differently/etc!)
  • I have described the feature request with as much detail as possible.
  • This request contains only one single feature, not a list of multiple (related) features.

Feature or improvement you want

I've found something similar in the roadmap which is called implement skipping. But what I have in mind is not the same.
In my opinion it is an essential feature of a TTS plugin that one can just right-click at one spot within the text and "speak from here" in the context menu. So that the voice starts reading from that point on.

Why should this be added?

Up until now the plugin can read aloud PDF, but either from the beginning of the whole thing, or just one selected passage. That way, when you want to start a PDF in the middle, you have to select each page again and again once the TTS is done reading the last selection.

Screenshots / Drawings / Technical details

No response

@Luram123 Luram123 added the feature request New feature or request label Oct 17, 2024
@ImperialSquid
Copy link
Owner

Sounds like a good feature idea, I'll add it to my todo list! 👌

Just as an fyi though, it might not happen super soon.


(Technical details) There are various limitations when it comes to accessing the text of a paper due to security built into Firefox/Zotero (the full text and selected text are both easy to get since they're stored in specific places outside of the paper's internal structure, but accessing the raw text elements isn't), so unless the user were to select enough text to uniquely identify their position in the full text, it would be difficult to know what text element was being selected and thus where to start reading from...

Implementing highlighting will also require accessing the raw text elements though and that's a massively requested feature, so I'll look into adding this one at the same time as I do that.

@diabolusss
Copy link

diabolusss commented Feb 10, 2025

(Technical details) There are various limitations when it comes to accessing the text of a paper due to security built into Firefox/Zotero (the full text and selected text are both easy to get since they're stored in specific places outside of the paper's internal structure, but accessing the raw text elements isn't), so unless the user were to select enough text to uniquely identify their position in the full text, it would be difficult to know what text element was being selected and thus where to start reading from...

I'm wondering if it might be easier to implement this feature in two stages. For the first stage, we could use a workaround that involves selecting enough text to uniquely identify the user's position in the full text, and then offer an option like "Continue speaking from here (experimental)" or simply "Speak from here (experimental)". The final stage would then be the fully implemented version. What do you think?

@ImperialSquid
Copy link
Owner

Yeah that was something I considered but was resistant towards actually doing at the time. When this was first raised the plugin was only a few months into being released and I didn't want to release a half arsed version of the feature if I could get it perfect with a bit more effort (and since it's tied to highlighting text which is like the feature a lot of people want added, I thought I could knock out two birds with one stone).

But given it's been a while (and I've had little response from the Zotero devs about highlighting stuff which was my priority at the time), and I agree this would be a very useful feature especially for long papers or platforms like Linux where pausing is iffy for some users, I think this will be a feature I focus on in the near future 👌

Given its somewhat experimental nature I'll probably release it as a beta feature first before doing a proper release to everyone (only for a few weeks and just to iron out any major oversights).

@ImperialSquid ImperialSquid added the priority Priority features/bugs to be implemented/fixed label Feb 10, 2025
@diabolusss
Copy link

Yeah that was something I considered but was resistant towards actually doing at the time. When this was first raised the plugin was only a few months into being released and I didn't want to release a half arsed version of the feature if I could get it perfect with a bit more effort (and since it's tied to highlighting text which is like the feature a lot of people want added, I thought I could knock out two birds with one stone).

But given it's been a while (and I've had little response from the Zotero devs about highlighting stuff which was my priority at the time), and I agree this would be a very useful feature especially for long papers or platforms like Linux where pausing is iffy for some users, I think this will be a feature I focus on in the near future 👌

Given its somewhat experimental nature I'll probably release it as a beta feature first before doing a proper release to everyone (only for a few weeks and just to iron out any major oversights).

Thanks for sharing your thoughts and plans on this feature! I completely understand the urge to perfect it before a full release—I've been there too. Life often has its own way of shifting priorities, and I really appreciate the dedication you're putting in, especially when things get busy. Zotero's unique capabilities make it such an essential tool for me — not only for academic papers but also for book reading—and I'm genuinely grateful for all your hard work (and yes, Piper’s sweet voices definitely add a special touch!).

I’d love to contribute in some way, though my free time is a way limited these days. If you’re open to monetary donations to help support further development, please let us know how we can chip in.

Thanks again for everything, and I look forward to seeing the beta release! Of course, at your own pace. ;)

@ImperialSquid
Copy link
Owner

ImperialSquid commented Feb 10, 2025

I’d love to contribute in some way, though my free time is a way limited these days. If you’re open to monetary donations to help support further development, please let us know how we can chip in.

Thanks, that would be really appreciated!

I've actually been quietly thinking about adding links for that for a while (I also wasn't sure how worth doing it was since ZoTTS is a very small and very new plugin compared to others so I didn't know if there would be interest).

Edit: if you do get some free time and want to contribute code for new features/new TTS engines/better localisation if you speak another language, there's a contribution guide at the bottom of the README with details about getting yourself set up and contribution guidelines. No pressure of course, just fyi!

I'm genuinely grateful for all your hard work

Thanks again for everything

Cheers, I appreciate the encouragement!

@diabolusss
Copy link

diabolusss commented Feb 10, 2025

(I also wasn't sure how worth doing it was since ZoTTS is a very small and very new plugin compared to others so I didn't know if there would be interest).

Just fyi, I'm a big fan of the "I'm Feeling Lucky" button (that I believe Google invented, but that's not important). ;D

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature request New feature or request priority Priority features/bugs to be implemented/fixed
Projects
None yet
Development

No branches or pull requests

3 participants