Ron89 / thesaurus_query.vim

Multi-language Thesaurus Query and Replacement plugin for Vim/NeoVim
http://www.vim.org/scripts/script.php?script_id=5341
Apache License 2.0
220 stars 23 forks source link

Interactively cycle through backends for a definition #14

Closed Futurile closed 7 years ago

Futurile commented 8 years ago

When I tested the OpenOffice backend I noticed that it is much better at finding close synonyms but that it doesn't have the richness and variety of 'mthesaur_txt'. Using both backends is useful:

Is there a way to cycle through the backends to see how they deal with a word?

If there's not, I would like to be able to do something like this:

a. Hit cs to look up a word e.g "melee" b. Hit to change from the OpenOffice backend to mthesaur and then to thesaurus_com, or whatever is defined in my backend list

Ron89 commented 8 years ago

Technically the algorithm does cycle through the list of backends until a backend report synonym found. I didn't ask the program to go on at that point is that repetitive findings by multiple backends make the choosing UI look messy. I also thought about unifying the outcome and removing the repetitive findings. Yet the groupings of different backends are so diverse, making this method infeasible.

Switching backends back and forth is certainly doable, I'll try to implement it as soon as possible. Meanwhile, I suggest you setting g:tq_enabled_backends to

g:tq_enabled_backends=["openoffice_en", "mthesaur_txt"]

So that the program will look into mthesaur.txt should OpenOffice backend failed to yield result, realizing the cycling you spoke of as a temporary solution.

Futurile commented 7 years ago

On 26 Aug, HE Chong wrote:

Technically the algorithm does cycle through the list of backends until a backend report synonym found. I didn't ask the program to go on at that point is that repetitive findings by multiple backends make the choosing UI look messy. I also thought about unifying the outcome and removing the repetitive findings. Yet the groupings of different backends are so diverse, making this method infeasible. (...)

Ah I understand, from the users perspective getting a result is the first priority - so going through the backends in order until a result is returned makes sense.

Switching backends back and forth is certainly doable, I'll try to implement it as soon as possible. Meanwhile, I suggest you setting g:tq_enabled_backends to (...)

I would use the switching after I had some sort of result, just to widen the options.

The "mthesaur_txt" backend is difficult to use if you don't know the meaning of a word, it shows lots of synonyms which are connected a little bit, but are not direct replacements.

So for me, switching is a different feature to going through the backends in serial. IF you can do it, I think it's useful.

g:tq_enabled_backends=["openoffice_en", "mthesaur_txt"]

Yes, that's how I'm currently set-up with the "thesaurus_com" backend first and then the two off-line ones for when I'm travelling around. It's working really well as I'm often off the network.

Ron89 commented 7 years ago

I don't know if we can call it a good solution, but commit 992c991 now included the interactive cycle through feature you requested. Because it intensively use Vim's redraw feature, sometimes the candidate list cannot be fully displayed. To workaround this issue, simply press <space> when this happens.

Please try it out~

Futurile commented 7 years ago

Hello - tried it out this evening, it works perfectly. I could:

Fantastic stuff - it's a great feature.