On 8/3/22 19:29, Jodin Morey wrote:
Hello Lyx Developers,

My name is Jodin, and I recently graduated with my doctorate in mathematics.  I have a disability which requires me to use voice recognition to input mathematics into my computer.  For the last 10 years or so, I have used three pieces of software (on Windows) to accomplish this.  However, recently two of these software packages (Scientific Notebook and MathTalk) stopped being supported (the underlying companies went out of business). As a result, I have been looking for some other software I might be able to use.  The voice recognition software I use (the primary desktop voice recognition software in existence) is Nuance Dragon Dictate. It was recently purchased by Microsoft, so it is doubtful that this piece of software will become unsupported anytime soon. However, there are no longer any off-the-shelf software packages which translate the recognized words into math, so I am interested in developing something along these lines.  In particular, I thought I might develop something around Lyx.

It's unfortunate that the voice technology allowing people with disabilities to write mathematics has recently disappeared. I am hopeful that Lyx can become the future provider of this capability.

I like Lyx because it is open source, and I wish to avoid relying on another piece of software that is profit based, and might go out of business someday.  The idea is to create hundreds of scripts in Dragon Dictate.  That way, when I say "VarOmega," for example, Dragon Dictate will turn my voice into words, recognize the words as a Dragon Dictate Script, which can then choose from a pulldown menu on Lyx, or just enter the right keystrokes.

The main barrier I face right now (other than the time it will take to develop all of the scripts), is that many of the mathematical objects in Lyx are not available either through a menubar or keystroke.  So my request to the developers would be to add keystroke accessibility to as many mathematical objects as possible.  To make things easier, these keystrokes do not need to be documented in any way.  You needn't add the keystroke information on the user interface (for example, when you hover your mouse over the button for the math object, or in the help documentation).  The point would not be to offer the average user a quick keystroke.  And to that end, the keystroke could be very obscure (e.g., Ctrl+Alt+Shift+Meta+K), it doesn't need to be simple at all.  Doing this does not limit Dragon Dictate's ability to type the keystroke, and simultaneously opens up a lot of keystrokes.

Regardless, I will start developing this the voice recognition capacity with the keystrokes you currently have available, as I need it for my own purposes.  However, I believe developing this more comprehensively is an important thing for the disability community.  And I believe the coding effort required is somewhat minimal.

LyX uses "bind" files to associate keystrokes with symbols or commands. There is a file named "math.bind" that comes with LyX (found in /usr/share/lyx/bind on Linux systems) that contains bindings for math objects. It does not have a binding for \varOmega, but for instance the key combo "alt+m g shift+E" (without the spaces) inserts \varepsilon. The math.bind file is actually a child file, loaded by the main bind file the user opts to use. In my case, that is cua.bind, located in the same directory. (The user's choice of main bind file is made at Tools > Preferences... > Editing > Shortcuts > Bind file.)

So someone (you?) could create an alternative version of math.bind with a new name, adding whatever symbols you wish using obscure/unused shortcuts, and then create a new version of a main bind file that loaded the expanded math bind file. Alternatively, someone (you?) could put the new definitions in a new file (say math2.bind) and then load math2.bind in addition to math.bind from the main bind file of choice.

Paul

--
lyx-users mailing list
lyx-users@lists.lyx.org
http://lists.lyx.org/mailman/listinfo/lyx-users

Reply via email to