mapping
parent
0027ce8fa9
commit
e270249eaf
|
|
@ -100,7 +100,7 @@ func main() {
|
||||||
for _, modelStr := range strings.Split(*models, ",") {
|
for _, modelStr := range strings.Split(*models, ",") {
|
||||||
d.HandleFunc(snowboy.NewHotword(path.Dir(modelStr), float32(*sensitivity)), func(string) {
|
d.HandleFunc(snowboy.NewHotword(path.Dir(modelStr), float32(*sensitivity)), func(string) {
|
||||||
if !*quiet {
|
if !*quiet {
|
||||||
log.Println("GOTCHA!")
|
log.Println(path.Base(modelStr))
|
||||||
}
|
}
|
||||||
fmt.Println(path.Base(modelStr))
|
fmt.Println(path.Base(modelStr))
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,75 @@
|
||||||
|
#! /bin/bash
|
||||||
|
|
||||||
|
main() {
|
||||||
|
if [ ! -e /tmp/stt.fifo ]; then
|
||||||
|
mkfifo /tmp/stt.fifo
|
||||||
|
fi
|
||||||
|
|
||||||
|
cleanup() {
|
||||||
|
killall -9 $(jobs -p)
|
||||||
|
}
|
||||||
|
trap cleanup EXIT
|
||||||
|
|
||||||
|
echo starting in
|
||||||
|
for ((i=3; i>0; i--)); do
|
||||||
|
echo "...$i..."
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
|
||||||
|
local models=($(
|
||||||
|
cat pyautogui.yaml \
|
||||||
|
| gojq -r -c --yaml-input '
|
||||||
|
to_entries[] | "model/"+.key+".pmdl/"+.key
|
||||||
|
' \
|
||||||
|
| tr '\n' ',' \
|
||||||
|
| sed 's/,$//'
|
||||||
|
))
|
||||||
|
echo models=$models
|
||||||
|
|
||||||
|
./snowboy -s .5 -r resources.res -ms $models "$@" > /tmp/stt.fifo &
|
||||||
|
|
||||||
|
python3 -c '
|
||||||
|
import pyautogui
|
||||||
|
import time
|
||||||
|
|
||||||
|
keys = set()
|
||||||
|
|
||||||
|
def press(key):
|
||||||
|
hold(key)
|
||||||
|
time.sleep(0.25)
|
||||||
|
release(key)
|
||||||
|
|
||||||
|
def hold(key):
|
||||||
|
global keys
|
||||||
|
keys.add(key)
|
||||||
|
pyautogui.keyDown(key)
|
||||||
|
|
||||||
|
def release(key):
|
||||||
|
pyautogui.keyUp(key)
|
||||||
|
|
||||||
|
def release_all():
|
||||||
|
global keys
|
||||||
|
for key in keys:
|
||||||
|
release(key)
|
||||||
|
keys = set()
|
||||||
|
|
||||||
|
def main():
|
||||||
|
with open("/tmp/stt.fifo", "r") as q:
|
||||||
|
for line in q:
|
||||||
|
handle(line.strip())
|
||||||
|
|
||||||
|
import yaml
|
||||||
|
mapping = yaml.safe_load(open("./pyautogui.yaml", "r"))
|
||||||
|
print(mapping)
|
||||||
|
|
||||||
|
def handle(cmd):
|
||||||
|
global mapping
|
||||||
|
press(mapping.get(cmd))
|
||||||
|
|
||||||
|
main()
|
||||||
|
'
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ "$0" == "$BASH_SOURCE" ]; then
|
||||||
|
main "$@"
|
||||||
|
fi
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
up: w
|
||||||
Loading…
Reference in New Issue