tecosaur / lexic

Mirror of https://git.tecosaur.net/tec/lexic
GNU General Public License v3.0
78 stars 10 forks source link

Word's description is not shown when there's more than one same word in a single dictionary #28

Open child404 opened 1 year ago

child404 commented 1 year ago

I guess, the problem is that lexic is not able to interact with sdcv, so when you have a word like "hello", and it's in many dictionaries (I personally installed 9 of them), you need additional user input, i.e. type the number (from 0 to 8 in my case) to select dictionary. However, lexic is able to only gather the single-shot output at once. However, it greatly works when you have non-popular words like "identifier", where I have it only in 4 dictionaries

UPD: there's a -n (or --non-interactive) flag to use it in scripts, so I assume it's needed for lexic to use this flag UPD2: after investigating more time into the code, I found that there's an implemented lookup, but I'm unsure how does it work and work correctly

child404 commented 1 year ago

Sorry, my mistake, probably due to installation of Webster (1913) twice...

child404 commented 1 year ago

Reopening it as seems that I found what causes an issue.

When there's more than one output from a single dictionary (e.g. the word call from etymology), stardict shows the choice prompt at the end, but doesn't show word's descriptions And to get word's descriptions, you have to choose one of the dicts (choices). But, as defined in the lexic-do-lookup, lexic just sends -1\n which causes to no description in the lexic buffer