Bug 521787 - Vietnamese Lunar Calendar year name is "bing-wu" but it should be "Bính Ngọ" (bing-wu is Chinese!)
Summary: Vietnamese Lunar Calendar year name is "bing-wu" but it should be "Bính Ngọ" ...
Status: RESOLVED FIXED
Alias: None
Product: plasmashell
Classification: Plasma
Component: Digital Clock widget (other bugs)
Version First Reported In: 6.7.0
Platform: Arch Linux Linux
: NOR normal
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2026-06-19 18:41 UTC by Farran
Modified: 2026-07-06 18:02 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In: 6.7.3
Sentry Crash Report:


Attachments
Screenshot of popup text showing incorrect VN lunar calendar year name (14.04 KB, image/png)
2026-06-19 18:41 UTC, Farran
Details
Vietnamese Lunar calendar with Vietnamese set as language. (266.90 KB, image/png)
2026-06-29 19:09 UTC, Trần Nam Tuấn (Bill)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Farran 2026-06-19 18:41:19 UTC
Created attachment 193383 [details]
Screenshot of popup text showing incorrect VN lunar calendar year name

***
If you're not sure this is actually a bug or valid feature request, instead post about it at https://discuss.kde.org

If you're reporting a crash, attach a backtrace with debug symbols; see https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports

Please remove this comment after reading and before submitting - thanks!
***

DESCRIPTION
With the Vietnamese Lunar Calendar activated, the year name in the pop-up info when hovering over each date is "bing-wu" but it should be "Bính Ngọ". 
Bing-wu is Chinese!

STEPS TO REPRODUCE
1. Activate Vietnamese Lunar calendar in Digital Clock widget. 
2. Open the calendar popup. 
3. Hover the mouse cursor over any date. 
See screenshot attached.

OBSERVED RESULT
The pop-up will say something like "7 Fifth month, bing-wu 2026". 

EXPECTED RESULT
The pop-up should say something like "7 Fifth month, Bính Ngọ 2026". 
It could also say "7th of Fifth month"
It could also say "Year of the Horse" instead of "Bính Ngọ".
If opting for English, even better it could say "Fire Horse" or "Year of the Fire Horse", although I appreciate this is getting pretty long. (Technically "bính" means "third stem" but the result means that this is a fire year.)
I recommend "Bính Ngọ" as best.

SOFTWARE/OS VERSIONS
Operating System (available in the Info Center app, or by running `kinfo` in a terminal window): Garuda Linux (Arch) 
KDE Plasma Version: 6.7.0 
KDE Frameworks Version: 6.27.0 
Qt Version: 6.11.1

ADDITIONAL INFORMATION
Thanks for adding the Vietnamese Lunar calendar to KDE Plasma! Very much appreciated 🙏☺️
Comment 1 maildkttk 2026-06-24 08:30:43 UTC
Following up on the year naming issue (Bug 521787), I have discovered a much more critical and severe problem regarding the Vietnamese Lunar Calendar in Plasma 6.7, which I have also reported here: https://bugs.kde.org/show_bug.cgi?id=522099

The calendar applet is actually calculating and displaying incorrect dates entirely, not just wrong names. This is a dangerous bug as it completely breaks the core functionality of the calendar.

This indicates a structural issue or calculation error in the lunar calendar algorithm used for the Vietnamese locale, rather than just a simple translation typo. Please look into this as it affects many users who rely on accurate dates.
Comment 2 Trần Nam Tuấn (Bill) 2026-06-29 19:09:21 UTC
Created attachment 193861 [details]
Vietnamese Lunar calendar with Vietnamese set as language.

This was intentional on my part. The current implementation tries to make use of ICU as much as possible, including translation. Otherwise, it would create duplicate work for KDE translation team.

The names of the years are based on your locale settings. If you set your locale in System Settings to Vietnamese, you will get the correct translation (see my attached image). (However, Qt does not provide a way to check the locale for time only, at least not that I know of, so you would have to change the locale for language instead.)

Annoyingly, ICU decided to use transliteration for the names from Chinese to English instead of translating them. So if you set your language to English, such names like "bing-wu" are used rather than "Fire Horse". Another thing is that Vietnamese also use different animals: cat instead of rabbit, buffalo instead of ox.

To amend this, I could just force the alternative calendar to always use Vietnamese. Some other alternative calendars do this (Chinese Lunar Calendar use Chinese irrespective of locale setting). I, however, was on the fence about it when implementing this calendar.
Comment 3 Bug Janitor Service 2026-06-29 20:36:50 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kdeplasma-addons/-/merge_requests/1086
Comment 4 Nate Graham 2026-07-06 17:09:04 UTC
Git commit a86fb943127eba5032dbfd0e07aaa775f909ddfc by Nate Graham, on behalf of Trần Nam Tuấn.
Committed on 06/07/2026 at 16:44.
Pushed by ngraham into branch 'master'.

[Vietnamese Lunar Calendar] Force using Vietnamese translation

As said in the documentation for the VietnameseCalendarProvider class, beside
the difference in timezone, Vietnamese lunar calendar also uses two different
Zodiac names from Chinese.

This patch essentially forces ICU to use Vietnamese translation, irrespective of
the user's locale setting. At the time of the original implementation, I was on
the fence about it, so I left the choice to the user. Though, Qt doesn't have a
way to query only LC_TIME, so one would have to set the global locale to
Vietnamese instead. (I didn't think directly reading the environment variable
was the way to go, so QLocale would have to do.)

ICU itself does not provide a separate Vietnamese lunar calendar despite the
calculation is virtually the same, nor does it provide a way to configure and
factor the timezone into the calculation. Otherwise, I wouldn't have to
reimplement everything in the first place. Thus, the library also didn't
provide translation from Vietnamese to other languages and instead just
use the Chinese transliteration. (Why they didn't use translation to English
instead of transliteration is beyond me).

Seeing that some other alternative calendar also use their own languages instead
of the system setting, this change shouldn't be too out of place. In a perfect
world, there should be translation from Vietnamese to other languages, but I
don't think that burden should be placed on KDE when it can be done at ICU
level (some time in the future if they every decide to).

M  +2    -11   plasmacalendarplugins/alternatecalendar/provider/vietnamesecalendar.cpp
M  +3    -3    plasmacalendarplugins/alternatecalendar/provider/vietnamesecalendar.h

https://invent.kde.org/plasma/kdeplasma-addons/-/commit/a86fb943127eba5032dbfd0e07aaa775f909ddfc
Comment 5 Nate Graham 2026-07-06 18:02:34 UTC
Git commit fdca15ca1ed4f9337aed3828ed4f681191a10bb5 by Nate Graham.
Committed on 06/07/2026 at 17:09.
Pushed by ngraham into branch 'Plasma/6.7'.

[Vietnamese Lunar Calendar] Force using Vietnamese translation

As said in the documentation for the VietnameseCalendarProvider class, beside
the difference in timezone, Vietnamese lunar calendar also uses two different
Zodiac names from Chinese.

This patch essentially forces ICU to use Vietnamese translation, irrespective of
the user's locale setting. At the time of the original implementation, I was on
the fence about it, so I left the choice to the user. Though, Qt doesn't have a
way to query only LC_TIME, so one would have to set the global locale to
Vietnamese instead. (I didn't think directly reading the environment variable
was the way to go, so QLocale would have to do.)

ICU itself does not provide a separate Vietnamese lunar calendar despite the
calculation is virtually the same, nor does it provide a way to configure and
factor the timezone into the calculation. Otherwise, I wouldn't have to
reimplement everything in the first place. Thus, the library also didn't
provide translation from Vietnamese to other languages and instead just
use the Chinese transliteration. (Why they didn't use translation to English
instead of transliteration is beyond me).

Seeing that some other alternative calendar also use their own languages instead
of the system setting, this change shouldn't be too out of place. In a perfect
world, there should be translation from Vietnamese to other languages, but I
don't think that burden should be placed on KDE when it can be done at ICU
level (some time in the future if they every decide to).


(cherry picked from commit a86fb943127eba5032dbfd0e07aaa775f909ddfc)

Co-authored-by: Trần Nam Tuấn <tuantran1632001@gmail.com>

M  +2    -11   plasmacalendarplugins/alternatecalendar/provider/vietnamesecalendar.cpp
M  +3    -3    plasmacalendarplugins/alternatecalendar/provider/vietnamesecalendar.h

https://invent.kde.org/plasma/kdeplasma-addons/-/commit/fdca15ca1ed4f9337aed3828ed4f681191a10bb5