Template talk:FrenchRepublicanCalendar

The date appears to be incorrect. Currently it displays the date 12 Ventôse, but of the several ways of determining the date, it should be either 13 Ventôse or 14 Ventôse. All of the various web sites on the subject show one or the other, or both, and none display today (March 42007) as the 12th.

Also, the time is given as UTC. This time scale was never associated with the calendar. In fact, the calendar came with its own time scale, which was decimal time, and even the regular time then in Paris was not UTC, but Paris time, which was 9 minutes 21 seconds ahead of the time in Greenwich. Even after the calendar stopped being used, for a long time, while others used GMT, France used temps moyen de Paris, or French mean time. The time in France today is not UTC but CET, which is 1 or 2 hours ahead of UTC, depending upon the time of year. It is not necessary to display the time, and in fact showing current time in templates is discouraged because caching servers cause the time to be incorrect for many people, but if you are going to do so, then at least use a time which makes sense with the Republican Calendar, such as decimal TMP. --Nike 20:19, 4 March 2007 (UTC) (8.53 TMP, Tridi 13 Ventôse, an CCXV)


 * Time is now removed, date is advanced by one day. If you'd rather it be two days, feel free to change it. Coemgenus 13:43, 6 March 2007 (UTC)

If I knew the template language, I would have already changed it. However, it's still not correct. It says that the day of month is "15" but that the day of the décade is Quartidi! The 15th day of the month is the 5th day of the décade, and therefore should be Quintidi.

Also, by simply adding one to the day of month, you do not ensure that the date is always correct. What happens at the end of the month? The day after 30 Ventôse should be 1 Germinal, but instead will be 31 Ventôse, a day which does not exist. (And 1 Germinal will be skipped over to 2 Germinal.) Instead of simply adding one to the day of month, you need to fix the templates used to create it, including Template:CURRENTFRCDAY, Template:CURRENTFRCDAYNAME, etc.

You also need to make sure that the templates work in future years. The Republican Calendar starts on different days on the Gregorian calendar every year. 1 Vendémiaire may fall on September 23 this year, but will be September 222008. The day name, day number, month name and year number must all agree. You also have to account for leap days.

I do not understand the method used to determine the date. As the article explains, there are several methods used to calculate dates in the modern era, which do not always agree with each other, but these templates do not appear to use any of these. Perhaps the simplest method to implement is Romme's proposed rules, which makes most years divisible by four leap years, ensuring that the Republican year always begins on the same Gregorian date, September 22, for every year of the current Republican century (1992-2091). --Nike 00:00, 7 March 2007 (UTC) (10.06 TMP, Sextidi 16 Ventôse, an CCXV)


 * It should be better now. The underlying function is increased by one day.  I thought for a while about which of the methods I would use to calculate the date when I made the template.  I don't remember which I chose, but obviously it was off by a bit.  This should be better, and now I've figured out how to adjust the underlying function so leap years should be easy to account for.  If you want to change the offset from the (incorrect) base, go to Template:CURRENTFRCDAY and change the first line.  You'll see where I mean right away -- it's surprisingly plain language.  This page is where I figured out how to use the parser functions that make the calendar work.  Obviously, I'm no expert, but it can be learned. Coemgenus 01:51, 7 March 2007 (UTC)

I have looked at the code and saw that it uses #time:z, which I have no idea what it means, but I see that you added one to this value. I will leave it for now, since it is currently giving the correct info, although I do not understand how you account for leap years. On these years, day 266 should be Sextidi Jour de la Révolution, and the next day, 267, should be Primidi 1 Vendémiaire. Also, January 1 may be either 11 Nivôse or 12 Nivôse. I don't see how you account for this. It may be easier to use Julian Days or Unix time to calculate RFC dates. --Nike 04:10, 7 March 2007 (UTC) (1.80 TMP, Sextidi 16 Ventôse, an CCXV)

I am reading #time and it says:
 * z 	The day of the year (starting from 0)

This is why your template has a problem. By starting with 1 instead of 0, you have a bug. January 1 is 0, and if you start your switch statement with 0, instead of 1, you don't have to add 1.

But instead of a giant switch block, I would instead use #time:U, and use simple math to convert the Unix date to FRC date, like I said before. This is how I have done it in other languages. I have to learn the template syntax before I can code it here. --Nike 04:34, 7 March 2007 (UTC) (1.97 TMP, Sextidi 16 Ventôse, an CCXV)