-
Notifications
You must be signed in to change notification settings - Fork 279
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
RTF/CRE rework + small C extension to tokenize RTF #1365
RTF/CRE rework + small C extension to tokenize RTF #1365
Conversation
There remains an option to provide a pure Python plugin, and a C extension plugin. But that's more maintenance work. Otherwise, I assume that you would remove the Python implementation (before the import)? |
Or just make a small standalone |
2a778a9
to
908245c
Compare
Updated to use a dedicated |
Is this what caused my RTF dictionaries to break?
I had to go back to an older version
<https://github.com/openstenoproject/plover/releases/tag/v4.0.0.dev10> and
use a backup of my RTF dictionaries.
Here's the alerts that appeared during that incident:
[image: plover_rtf_errors_09OCT21.png]
It appears that something decided to remove the slash between the two
strokes, leaving me with a lot of outlines that suddenly quit working.
I meant to submit a bug report but wasn't sure what exactly happened.
|
Common @gdwaynewarner, you know the drill: create a dedicated PR with the relevant information (image is missing). |
Now that I have a bit more of a handle on what happened, I will do that
here shortly!
|
Summary of changes
This add a C extension to tokenize RTF (the parsing is still done in Python), this would bring the speed gains (with #1362, same dictionary) to ~5.3.
The problem: no more universal wheel for Plover! No universal wheel, mean installing from source unless a wheel for the correct platform / interpreter version is available, which means PyQt5 must be installed for building the UI. This would make installing Plover more difficult on things like a Raspberry Pi.
Possible fix: move the RTF/CRE support to a dedicated external plugin, like we did with Treal.