Hi SikuliX community,
I wanted to share a small plugin I built for the SL5-Aura speech recognition service that adds voice control to the SikuliX IDE.
What it does
While SikuliX IDE is the active window, you can speak commands and the corresponding code snippet is inserted at the cursor position automatically. No manual typing needed.
Examples (currently in German, but easy to adapt):
| You say |
Inserted code |
| "klick" |
click("image.png") |
| "doppelklick" |
doubleClick("image.png") |
| "warte" |
wait("image.png", 10) |
| "exists" |
if exists("image.png"): |
| "find all" |
for m in findAll("image.png"): |
| "drag drop" |
dragDrop("source.png", "target.png") |
| "while" |
full while-loop template |
| "popup" |
popup("message") |
| ... |
... |
The plugin is window-aware — it only activates when SikuliX IDE is in focus.
How it works
The core is a simple Python mapping file (FUZZY_MAP_pre.py). Each entry is just a tuple:
('click("image.png")', r'^\s*(klick\w*|click)\s*$', 85, {
'flags': re.IGNORECASE,
'only_in_windows': ['sikulixide', 'SikuliX'],
}),
No complex logic — the replacement string is typed directly into the IDE via the system's input pipeline.
Looking for contributors
The current mapping is German (de-DE). If anyone wants to add their language (e.g. en-US, fr-FR, es-ES), it is just a matter of adding alternative regex patterns to the same file — no Python knowledge required beyond copy-paste.
Repo: https://github.com/sl5net/SL5-aura-service
Plugin path: config/maps/plugins/sikulix/de-DE/FUZZY_MAP_pre.py
https://github.com/sl5net/SL5-aura-service/blob/master/config/maps/plugins/sikulix/de-DE/FUZZY_MAP_pre.py
Happy to answer questions or help others add their language!
Hi SikuliX community,
I wanted to share a small plugin I built for the SL5-Aura speech recognition service that adds voice control to the SikuliX IDE.
What it does
While SikuliX IDE is the active window, you can speak commands and the corresponding code snippet is inserted at the cursor position automatically. No manual typing needed.
Examples (currently in German, but easy to adapt):
click("image.png")doubleClick("image.png")wait("image.png", 10)if exists("image.png"):for m in findAll("image.png"):dragDrop("source.png", "target.png")popup("message")The plugin is window-aware — it only activates when SikuliX IDE is in focus.
How it works
The core is a simple Python mapping file (
FUZZY_MAP_pre.py). Each entry is just a tuple:No complex logic — the replacement string is typed directly into the IDE via the system's input pipeline.
Looking for contributors
The current mapping is German (
de-DE). If anyone wants to add their language (e.g.en-US,fr-FR,es-ES), it is just a matter of adding alternative regex patterns to the same file — no Python knowledge required beyond copy-paste.Repo: https://github.com/sl5net/SL5-aura-service
Plugin path:
config/maps/plugins/sikulix/de-DE/FUZZY_MAP_pre.pyhttps://github.com/sl5net/SL5-aura-service/blob/master/config/maps/plugins/sikulix/de-DE/FUZZY_MAP_pre.py
Happy to answer questions or help others add their language!