One feature I would love to see implemented on Readlang is the ability to merge words that are separated by other words for context-aware translation as well as regular translation. Consider the following example from a German text:
“Hast du nicht? Dann hol das unbedingt nach.”
In this example, hol and nach actually represent a single semantic unit - the verb nachholen - which means “to catch up/to make up.”
There is one crucial difference between German and English phrasal verbs: English phrasal verbs often stay together (“Then be sure to catch up”), while German phrasal verbs frequently appear in separate parts of the sentence (“Dann hol das unbedingt nach”).
Because of this, translating these German verbs is a bit jarring in virtually all of the apps I have tried. One website that attempts to rectify this problem is lemmatize.com. It attempts to do so by automatically detecting and selecting semantic units, but I’ve found it not to work as expected most of the time.
Fortunately, learners of languages like German don’t need this automatic detection at all. We can identify these semantic units ourselves. What we need is an easy way to tell a translation app/LLM what we want translated/explained. And Readlang already seems to have the necessary infrastructure for it.
There already exist two options for merging: “Don’t Merge” and “Merge Phrases”. I suggest adding a third one, something like “Always Merge”, which will allow the user to merge selected words even if they are apart. For instance, in the example sentence I provided above, if I click on hol and then on nach, the app will translate hol nach if the “Always Merge” option is selected, instead of first translating hol and then nach separately, as it does with the “Merge Phrases” option currently.