[讨论]Ubuntu日历系统的Bug
发表于 : 2008-03-19 8:03
1582年开始公历转换到格里高利历法,10月5-9号删除了,之前的整百年如1500年 1400年应当都是闰年。Ubuntu的日历似乎都没有做出调整。所以1582年所有的星期日期大部分都不是正确的。不知道有没有人反应过这个问题。
1582年2月,罗马教廷要求从1582 年10月中减去10天,因此1852
年10月4日后面紧跟着就是15日。在意大利、西班牙等国家都这样处理了。其他
天主教国家也很快跟着这么做了,但是新教国家不愿意修改,而且希腊等东正教国家
直到20世纪初才修改,所以这个改革在英国及其殖民地(包括美国)在1752年9月
才被执行。这样 1752 年9月2日后面跟着的就是1752 年9月14日。 这就是为什
么cal会生成上面输出的原因了。
P.S.:Windows用户是没福气查到这个特殊月份了,因为Windows的纪年范围只
是1980-2099。
一条Linux命令 一段人类文明
今天偶然在一个博客上看到关于Linux中日期隐含一段历史的介绍,很好奇,按照别人介绍的方法试验了下。 CODE: cal 9 1752 就可以看到:
September 1752
S M Tu W Th F S
1 2 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
发现1752年9月2日的后面竟然是14日
原因如下: 1582年2月,罗马教廷要求从1582 年10月中减去10天,因此1852 年10月4日后面紧跟着就是15日。在意大利、西班牙等国家都这样处理了。其他天主教国家也很快跟着这么做了,但是新教国家不愿意修改,而且希腊等东正教国家直到20世纪初才修改,所以这个改革在英国及其殖民地(包括美国)在1752年9月才被执行。这样1752 年9月2日后面跟着的就是1752 年9月14日。
但在Windows下,由于电脑的日期无法调回那个时候(最早只能显示1980年),于是调用VC的月历控件写个万年历,1752 年9月却很正常,看来这是个一段要靠Linux才能了解的历史。