Add single letter category

This commit is contained in:
BreadTube 2026-05-14 23:46:53 +09:00
commit c3e0bb90d6

View file

@ -474,13 +474,22 @@ class Bot:
unmanaged_categories: set[str] = set(self.config.unmanaged_categories.split(',')) unmanaged_categories: set[str] = set(self.config.unmanaged_categories.split(','))
category_ranges: list[tuple[int, int, ChannelCategory]] = [] category_ranges: list[tuple[int, int, ChannelCategory]] = []
for category in self.guild_categories: for category in self.guild_categories:
if category.name is None:
continue
if category.name in unmanaged_categories: if category.name in unmanaged_categories:
self.logger.debug('Skipping unmanaged category: %s', category.name) self.logger.debug('Skipping unmanaged category: %s', category.name)
continue continue
if len(category.name) == 1:
category_range = ord(category.name.lower())
self.logger.debug('Adding managed category: %s for range %d', category.name, category_range)
category_ranges.append((category_range, category_range, category))
continue
range_info = (category.name or '').split('-') range_info = (category.name or '').split('-')
if len(range_info) != 2: # noqa: PLR2004 if len(range_info) == 2: # noqa: PLR2004
self.logger.warning('Cannot compute range for category: %s', category.name) self.logger.warning('Cannot compute range for category: %s', category.name)
continue continue
self.logger.debug('Adding managed category: %s for range %d %d', category.name, ord(range_info[0].lower()),
ord(range_info[1].lower()))
category_ranges.append((ord(range_info[0].lower()), ord(range_info[1].lower()), category)) category_ranges.append((ord(range_info[0].lower()), ord(range_info[1].lower()), category))
category_ranges = sorted(category_ranges, key=operator.itemgetter(0)) category_ranges = sorted(category_ranges, key=operator.itemgetter(0))