espanso / espanso

Cross-platform Text Expander written in Rust

Home Page:https://espanso.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

The candidate input method is being replaced while typing, not after typing.

allrobot opened this issue · comments

Description

  - trigger: ":kbd"
    replace: "<kbd>$|$</kbd>"  

chrome_qztdvC2emz

Steps to reproduce

  1. windows10 language install chinese(china)
  2. 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

espanso.log

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.

chrome_rVLZ8KuErH

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):

notepad++_QT58Ctnuj8

or

notepad++_lqYTmfjyHB

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 😕