KnowBrainer Speech Recognition
Decrease font size
Increase font size
Topic Title: Recommendations for speech-friendly EMACS completion packages?
Topic Summary: Helm? Company?
Created On: 01/13/2022 05:11 PM
Status: Post and Reply
Linear : Threading : Single : Branch
Keyword
 01/13/2022 05:11 PM
User is offline View Users Profile Print this message

Author Icon
Ag
Top-Tier Member

Posts: 1035
Joined: 07/08/2019

I am increasingly happy using EMACS with Dragon.  Reliable scripting!  No crufty keyboard and mouse emulation! :-)

 

As I mentioneed elsewhere, one nice thing about EMACS is completion.  Of commands, file names, etc.   

 

Standard EMACS xompletion is keyboard oriented, character at a time..   I started off by writing a quick and dirty speech-friendly completer of my own.  But now its time to use something more powerful.

 

I know there are other EMACS users on this forum...

 

Q: what completion packages do you use?

 

I expected to switch to company.el completron.  But this morning I tried helm-M-x, and was reasonably happy.  Helm accepts words separated by blanks, out of order, fuzzy.

 

Are there any gotchas with either of help or company?

 

I will probably have to keep some of my code around, e.g. mapping 's --> s in commands.  But the less customization, the better.

 

 



-------------------------

DPG15.6 (also DPI 15.3) + KB, Sennheiser MB Pro 1 UC ML, BTD 800 dongle, Windows 10 Pro, MS Surface Book 3, Intel Core i7-1065G7 CPU @ 1.3/1.5GHz (4 cores, 8 logical, GPU=NVIDIA Quadro RTX 3000 with Max-Q Design.

 01/15/2022 02:23 PM
User is offline View Users Profile Print this message

Author Icon
kkkwj
Top-Tier Member

Posts: 1123
Joined: 11/05/2015

Sorry, I've always used the standard completer. And if you're using voice with emacs, you're way ahead of me! (The good news is that Emacs has a long history (a couple of decades?) of voice use, so maybe you can find a group of "voice users of emacs" or something. I don't know if Github has emacs code in the voice toolbox section either.

-------------------------

Win10/11/x64, AMD Ryzen 7 3700X/3950X, 64/128GB RAM, Dragon 15.3, SP 7 Standard, SpeechStart, Office 365, KB 2017, Dragon Capture, Samson Meteor USB Desk Mic, Amazon YUWAKAYI headset, Klim and JUKSTG earbuds with microphones, excellent Sareville Wireless Mono Headset, 3 BenQ 2560x1440 monitors, Microsoft Sculpt Keyboard and Logitech G502 awesome gaming mouse.

 01/22/2022 09:21 PM
User is offline View Users Profile Print this message


mdl
Top-Tier Member

Posts: 938
Joined: 04/18/2009

Standard completion isn't particularly useful with voice computing.  

 

It tends to assume that you can cheaply incrementally start typing keys

and stop as soon as you see what you're looking for.  This is a poor

match for voice: each voice command takes something like a second to take

effect so you would be stuck with the moral equivalent of "key Papa"

(pause) "key Romeo" (pause) "key India" (pause) "slap" to do printf

assuming that three letters are enough to get the symbol at the top of

the list.

 

Keep in mind the cost for voice is more in units of syllables rather

than keys so saying "print" is just as fast as typing that single p.

 

Accordingly, a far better strategy is to search for alternatives using

some words.  For example, I have a macro rectangle that does a

regex search for file pathnames using, for example, .*<word1>.*<word2>.* when

I used two words.  The results of the search get put in a buffer and I

can then use "follow X" to select the match on line X mod 100.  (See occurs

mode in emacs.)  If I get lucky and there's only one match, then I have

elisp code to jump to it immediately.

 

If your code base has the non-standardly shortened English words disease

:-), you may want to consider the trick where you turn "move widget"

into the search string mo?v?e?[ _]?wi?d?g?e?t?, which will match things

like mvWdt or mWidget or move_widget.

 

Packages like helm may be useful if you can get them to put their results

in a buffer with one result per line such that you can issue a command

on that line to take an action on the result.

 

If you are stuck using standard completion (say when using a terminal

window with bash), you may want to consider a command that allows things

like "complete pooch rip ice" to type "pri"{tab} in a single short

utterance.  (This uses the trick of a replacement phonetic alphabet that

has one syllable per letter.)  If that turns out not to be enough to get

the match you want you'll have to continue with another complete command.



Statistics
32529 users are registered to the KnowBrainer Speech Recognition forum.
There are currently 2 users logged in.
The most users ever online was 12124 on 09/09/2020 at 04:59 AM.
There are currently 344 guests browsing this forum, which makes a total of 346 users using this forum.

FuseTalk Standard Edition v4.0 - © 1999-2023 FuseTalk™ Inc. All rights reserved.