Alternate calendar in plasma - feature request discussion

Wang Gary wzc782970009 at gmail.com
Tue Dec 8 15:23:59 GMT 2020


Hello,

I'm a KDE Plasma 5 user from China and have been using KDE since KDE
4. I really like what KDE did and would like to improve it if I can.
And I'm writing to ask about something I'm trying to work on, about
alternate calendar support.

Mainland China users may need to check out the lunar calendar
dates together with the Gregorian calendar date. Many calendar applications
like the Microsoft Windows 10 built-in calendar and Google calendar both
support display the Chinese lunar calendar by setting an alternate
calendar.

An alternate calendar is a feature to allow another calendar system's date
name display together with the main calendar's date names. Currently,
the KDE calendar (whatever the plasma DigitalClock plasmoid
applet or Calindori) doesn't have alternate calendar support,
so I think it can be good if KDE can support alternate calendar so users
can be able to set an alternate calendar to display when needed.
I also opened a feature request in KDE Bugzilla (here:
https://bugs.kde.org/show_bug.cgi?id=429892 ), please also take
a look at the Bugzilla report.

Since the alternate calendar is not a Chinese-only feature (according to Google
calendar app, there are at least 9 different calendar system can be used as
the alternate calendar on Google Calendar), I'd like to discuss this feature
request on the mailing list to receive some inputs about if we can make such
feature into KDE, and if we can, how to implement such feature properly.

At this moment I have two ideas:

1. Enhance the current event plugin system and use that for alternate calendar
support.
Currently, the main problem is, calendar events will never display on the main
calendar. To solve this problem, we probably need to add a new event type for
the alternate calendar and make the event of the new type be able to display
together with the main calendar dates. And maybe we also need to let the plugin
selector be able to show the plugins which provide alternate calendar system
together so users can be easier to find the plugin for displaying
alternate calendar
than adding regular calendar events.

2. Make another plugin system dedicated to the alternate calendar feature.
Since alternate calendar day names are actually not an event, don't use an
event system to support such a feature makes more sense to me.
Another not so major issue which using the event plugin cannot solve is, an
alternate calendar system also has its own year name and probably other
information to display. If there can be a plugin system for the alternate
calendar feature, we can also make it display this information just like what
other calendar applications did than just date names of an alternate calendar.

By the way, I already wrote a simple plasma applet that contains a lunar
calendar as an alternate calendar which can be seen here
( https://github.com/BLumia/pineapple-calendar ). It reused the code from
plasma-framework so I'm also able to test the possible implementation
in that project. While doing resources, I also found KCalendarSystem is pretty
well designed but it's in kdelibs4support  and I can't found the successor.
I also write down my thoughts here and feel free to check it out and let
me know what you think. (
https://docs.google.com/document/d/1iwEwwK9w34ZKOegb8xcecO4u2Pjgv2e7ifXMFKox62Q/edit?usp=sharing
, an archived version can be seen in the Bugzilla ticket attachment)

Since I'm not familiar with other calendar systems, I'd like to get more inputs
on this topic, what do you think about such a feature? Can such a feature
be added to KDE? Which approach do you think is better? Any other
suggestions?

Thanks and have a nice day!
Gary.


More information about the Plasma-devel mailing list