Give the option so that iOS text replacements have higher priority when autocorrect is on

Done Typing & autocorrect English fixed in 2.1.3

lia1tan TESTER ·

What would you like?

I’d like to see text replacements from iOS be made the priority over autocorrect, or at least make it an option to do so. Currently, text replacements do not always automatically replace the text as it prioritizes learned and blocked words.

Why it would help?

This would help because I typically use text replacement as a way to mitigate common typos I keep making or as a shortcut for longer words and emojis. The native keyboard always automatically replaces these texts unless I choose otherwise. In EFKey, this feature kind of works backwards. Currently, if EFKey learns the typo or shortcut as a word, it would never automatically do the text replacement as I’d expect, instead only suggesting it, and thus I’d have to manually choose it. Similarly, if you put the typo or the shortcut into blocked words, it would only suggest the proper replacement in the suggestion bar but doesn’t automatically replace them, typically choosing to autocorrect it to some other word or to leave it as is. Text replacement only works correctly if that text is not in either list, but because I type them so often (hence why they’re in the text replacement in the first place), they occur enough times that they’d end up on the learn words list eventually and I’d have to manually go in and delete them like every two days or so. It’d be nice to have an option so that you can tell EFKey to always prioritize the text replacements over its learned words or blocked words or somehow prevent them from becoming learned words.

As a specific example in my usage, I type “ro” as a common typo for “to” and thus have “ro” be replaced to “to” as a rule in my text replacement. When using EFKey, it eventually learns “ro” as a word, even though it is not, and then stops replacing it with “to”, leaving it as is and only have “to” as a suggestion. Then I’d have to manually search for “ro” in my learned words list and delete it every other day. Frustrated with that, I thought that putting it in the blocked words list would help. This only helped with preventing EFKey from learning it as a word, but it still doesn’t do the text replacement, only suggesting it, so the behavior is similar to when it was a learned word. This happens similarly with other texts I use as a shortcut for other words/phrases or emojis.

However, I realize that perhaps some people like it the way it currently is or don’t have a strong opinion about it, which is why I suggest it as being an option rather than a “fix”.

Referenced in #B131, #S84

Discussion

efko DEV ·

@lia1tan I dug into this and the learned and blocked lists weren't really the problem. Since 2.1.1, iOS text replacements only expand on their own when "Insert automatically" is on in EFKey → Shortcuts, and it's off by default. So your ro→to was never the text replacement firing. It was regular autocorrect fixing a one-letter typo, and autocorrect leaves learned words alone on purpose, which is why it stopped once "ro" got learned.

In 2.1.3, the next App Store update, iOS text replacements get their own "Insert automatically" switch, on by default like the system keyboard. Typing a shortcut also won't add it to your learned words anymore, so "ro" stops piling up there.

Until then you can turn on EFKey → Shortcuts → Insert automatically, and ro→to will expand even with "ro" already learned or blocked.

lia1tan TESTER ·

Ah I see, I don’t have pro and I didn’t realize this was a feature, so that explains why I wasn’t able to find it. Thanks for getting back to me and letting me know!

efko DEV ·

@lia1tan in testflight version you can activate PRO for free

lia1tan TESTER ·

Oh okay so should I start the 7 day free trial then?

efko DEV ·

On the EF screen you have the option to buy PRO - in the TestFlight version it is a simulated purchase, you pay 0

lia1tan TESTER ·

Oh for some reason I don’t have that. How odd. But if you’re keeping the systems shortcuts setting free, that shouldn’t be a problem after my trial ends then.

efko DEV ·
status → Needs testing
muleluku MOD · · edited

With "insert automatically" for system shortcuts, when I type in the shortcut and tap space, it should insert the replacement text?

A quick test didn't work out for me. Text replacement chip is shown but it doesn't get inserted automatically. Autocorrection on or off doesn't change anything.

Build 425

muleluku MOD ·

Seems like both "insert automatically" toggles must be active, the one under system shortcuts as well as the one under EFKey shortcuts, for it to work for the system shortcuts.

efko DEV ·
status → Reopened
efko DEV ·

@lia1tan the whole Shortcuts screen was behind Pro, and it shouldn't have been. iOS text replacements were never a Pro feature in the keyboard, only their settings were locked away. From build 426 (and 2.1.3 on the App Store) the screen opens without Pro: the System shortcuts part with "Insert automatically" and "Expand shortcuts that are also words" is free, only EFKey's own shortcuts stay Pro.

@muleluku I couldn't reproduce the "both switches" part. The system shortcut only checks its own switch, and with EFKey's "Insert automatically" off, omw still turns into On my way! for me. When the chip shows but nothing gets inserted, the usual reason is that the shortcut is also a real word in one of your languages. Then it only expands by tap unless "Expand shortcuts that are also words" is on. Which shortcut did you test (what you type and what it turns into), in which app, and do you have the same one saved under EFKey shortcuts too?

muleluku MOD ·

I also can't reproduce it with 426.

I'm sure I wasn't just imagining it, so I'll say it got fixed :)

efko DEV ·
status → Needs testing
efko DEV ·
status → Done

Sign in to comment or vote.