Quest objective descriptions missing, only quest title and numbers on GameTooltip.
kuletco opened this issue · 17 comments
I'm using Chinese client of Wow, but when I point to a quest unit in the world or on world map, the quest objectives descriptions missing and only left quest title and numbers on mouse tooltip.
So, I read your code and find a problem that the symbo ':' is different from English to Chinese.
The bug point at Questie\Modules\QuestieQuest.lua:962
May be other Language has the same language.
Questie version is v4.0.16
Then I try to fix this like below:
-- local itemName, numItems, numNeeded = string.match(description, "(.*):%s*([%d]+)%s*/%s*([%d]+)");
local itemName, numItems, numNeeded = nil,nil,nil
if GetLocale() == "zhCN" then
-- string.match() can not properly split Chinese text.
-- keep the split ':' symbo in Chinese, it will at the end of desc.
itemName, numItems, numNeeded = string.match(description, "(.*)%s*([%d]+)%s*/%s*([%d]+)");
-- cut off the end symbo ':'
itemName = string.sub(itemName, 1, -4);
else
itemName, numItems, numNeeded = string.match(description, "(.*):%s*([%d]+)%s*/%s*([%d]+)");
end
@SqiChiu Sorry for the late response on this. We had a big flaw with fixing this, but it is fixed now on master and will be released with v4.1.3 very soon
Try this 😄
itemName, numItems, numNeeded = string.match(description, "(.*):%s*([%d]+)%s*/%s*([%d]+)");
Try this 😄
itemName, numItems, numNeeded = string.match(description, "(.*):%s*([%d]+)%s*/%s*([%d]+)");
I had try like this. But an unreadable symbol will appear at the end of itemName.
Therefore, I don't think string.match has perfect support for multibyte characters.
Perhaps we need to wait for the author to switch to UTF8 for strings.
Sorry for not getting to this for so long. We updated our regex with 746491b . Please check again with 4.1.1 and report back!
Try this 😄
itemName, numItems, numNeeded = string.match(description, "(.*):%s*([%d]+)%s*/%s*([%d]+)");
I had try like this. But an unreadable symbol will appear at the end of itemName.
Therefore, I don't think string.match has perfect support for multibyte characters.Perhaps we need to wait for the author to switch to UTF8 for strings.
Exactly.
Sorry for not getting to this for so long. We updated our regex with 746491b . Please check again with 4.1.1 and report back!
As you can see, there is a unexpected '?' at the end of the objective text in lang zhcn.
These quests are
quest=228 morladim,
quest=1363 mazens-behest,
quest=659 hints-of-a-new-plague,
quest=1387 centaur-bounty,
quest=504 crushridge-warmongers.
Sorry for not getting to this for so long. We updated our regex with 746491b . Please check again with 4.1.1 and report back!
As you can see, there is a unexpected '?' at the end of the objective text in lang zhcn.These quests are
quest=228 morladim,
quest=1363 mazens-behest,
quest=659 hints-of-a-new-plague,
quest=1387 centaur-bounty,
quest=504 crushridge-warmongers.
Sorry for not getting to this for so long. We updated our regex with 746491b . Please check again with 4.1.1 and report back!
Thank you for your fix, perhaps we can replace ":" with ":".
I tried like this, it works fine.
Of cause we could do this, but I am not sure if this is a better solution than a regex with two possibilities. Since we would iterate the string more than once 🤔
quest=578, The Stone of the Tides
quest=201, investigate-the-camp
there is a ":" at end of the the questobject text.
I have found the cause of your problem, but I can't test it. If you can test it, please try my changes.
Questie\Modules\QuestieTracker.lua
We should consider the empty state of 'lineEnding'. Therefore, it is more appropriate to put ':' in 'lineEnding'.
Please let me know if this isn't fixed with v4.1.2 https://github.com/AeroScripts/QuestieDev/releases/tag/v4.1.2
#1193 Unexpected "?".
Please let me know if this isn't fixed with v4.1.2 https://github.com/AeroScripts/QuestieDev/releases/tag/v4.1.2
no fix