--- CalendarTag.py.orig Sun Jun 4 11:09:54 2000 +++ CalendarTag.py Sun Jun 4 13:18:40 2000 @@ -114,6 +114,22 @@ self.week_sday = int(weekdays[0]) self.week_ndays = int(weekdays[1]) + def __cutmonthname(self, name, length) : + """Cuts the month name at length characters, counting + character entities for only one character""" + entityfound = 0 + for i in range(len(name)) : + if name[i] == '&' : + entityfound = 1 + elif name[i] == ';' : + entityfound = 0 + + if not entityfound : + length = length - 1 + if not length : + break + return name[:i + 1] + def render(self, md): ## time_start = time() @@ -226,15 +242,15 @@ v['next_url_'] = self.linkDate_(d, mode) else: if self.mode == 'day': - monthname = v['monthnames'][date.month() - 1][:3] + monthname = self.__cutmonthname(v['monthnames'][date.month() - 1], 3) left = '%s %d, %d' % (monthname, date.day(), date.year()) v['day_img_'] = 'sday' v['daynames'] = None elif self.mode == 'week': sdow = date - date.dow() edow = sdow + 6 - smonthname = v['monthnames'][sdow.month() - 1][:3] - emonthname = v['monthnames'][edow.month() - 1][:3] + smonthname = self.__cutmonthname(v['monthnames'][sdow.month() - 1], 3) + emonthname = self.__cutmonthname(v['monthnames'][edow.month() - 1], 3) left = '%s %d' % (emonthname, edow.year()) if sdow.aMonth() != edow.aMonth():