The candidate input method is being replaced while typing, not after typing.
allrobot opened this issue · comments
Description
- trigger: ":kbd"
replace: "<kbd>$|$</kbd>"
Steps to reproduce
- windows10 language install chinese(china)
- input
Expected behavior
I want the pop-up candidate input interface, espanso won't recognize the substitution, it will wait for the input method to confirm the selected word (waiting for the candidate input method to disappear) before espanso replaces it.
Screenshots
No response
Logs
Your environment
- Operating system and version (e.g., Ubuntu 20.04.2 LTS): Win10 Enterprise 21H2
- Espanso version (e.g., 2.1.4-beta): espanso 2.1.5-beta
Self-service
- I'd be willing to fix this bug myself.
It appears Espanso is injecting the correct characters but not in the right order, and it is failing to fully delete the trigger, leaving the colon prefix.
I suggest upgrading Espanso to the current version - a lot of work has gone into making changes, and it is possible the problem has been resolved.
However, it may be necessary to try the different injection methods. I suggest trying different force_mode:
settings - see Injection mechanism and https://pastebin.com/WffWaqSn.
It appears Espanso is injecting the correct characters but not in the right order, and it is failing to fully delete the trigger, leaving the colon prefix.
I suggest upgrading Espanso to the current version - a lot of work has gone into making changes, and it is possible the problem has been resolved.
However, it may be necessary to try the different injection methods. I suggest trying different
force_mode:
settings - see Injection mechanism and https://pastebin.com/WffWaqSn.
Installed the latest version 2.2.1, the issue persists, but the problem was successfully resolved using the solution you provided.
Just need to add text to C:\Users\xxxxx\AppData\Roaming\espanso\config\default.yml
backend: Clipboard
It works perfectly.
It works for me generally, too, although I have needed a couple of exceptions.
It works for me generally, too, although I have needed a couple of exceptions.
Hi, I meet new issue(It is the original problem):
or
Is there a way to make espanso not recognize the text in the input candidate area, but instead wait until the input is complete before replacing it?
Expected to achieve: While typing, it displays c'log
, but once the input is complete, c'log
changes to clog
, and then it is replaced with console.log()
.
Unfortunately no, the current implementation of Espanso doesn't allow for that.
Having Espanso work well with all Input Methods is important, so we'll definitely see what can be done to make this work better in the future. But for the moment your only option is to name triggers in a way that makes these kinds of conflicts less likely 😕