Allow generators to deal with settings that are pathlib.Paths

This commit is contained in:
MinchinWeb 2020-04-23 12:49:44 -06:00
commit d817231836

View file

@ -18,7 +18,6 @@ from pelican.readers import Readers
from pelican.utils import (DateFormatter, copy, mkdir_p, order_content, from pelican.utils import (DateFormatter, copy, mkdir_p, order_content,
posixize_path, process_translations) posixize_path, process_translations)
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
@ -322,8 +321,9 @@ class ArticlesGenerator(CachingGenerator):
all_articles = list(self.articles) all_articles = list(self.articles)
for article in self.articles: for article in self.articles:
all_articles.extend(article.translations) all_articles.extend(article.translations)
order_content(all_articles, order_content(
order_by=self.settings['ARTICLE_ORDER_BY']) all_articles, order_by=self.settings['ARTICLE_ORDER_BY']
)
if self.settings.get('FEED_ALL_ATOM'): if self.settings.get('FEED_ALL_ATOM'):
writer.write_feed( writer.write_feed(
@ -352,7 +352,7 @@ class ArticlesGenerator(CachingGenerator):
self.settings['CATEGORY_FEED_ATOM'].format(slug=cat.slug), self.settings['CATEGORY_FEED_ATOM'].format(slug=cat.slug),
self.settings.get( self.settings.get(
'CATEGORY_FEED_ATOM_URL', 'CATEGORY_FEED_ATOM_URL',
self.settings['CATEGORY_FEED_ATOM']).format( str(self.settings['CATEGORY_FEED_ATOM'])).format(
slug=cat.slug slug=cat.slug
), ),
feed_title=cat.name feed_title=cat.name
@ -365,7 +365,7 @@ class ArticlesGenerator(CachingGenerator):
self.settings['CATEGORY_FEED_RSS'].format(slug=cat.slug), self.settings['CATEGORY_FEED_RSS'].format(slug=cat.slug),
self.settings.get( self.settings.get(
'CATEGORY_FEED_RSS_URL', 'CATEGORY_FEED_RSS_URL',
self.settings['CATEGORY_FEED_RSS']).format( str(self.settings['CATEGORY_FEED_RSS'])).format(
slug=cat.slug slug=cat.slug
), ),
feed_title=cat.name, feed_title=cat.name,
@ -380,8 +380,9 @@ class ArticlesGenerator(CachingGenerator):
self.settings['AUTHOR_FEED_ATOM'].format(slug=auth.slug), self.settings['AUTHOR_FEED_ATOM'].format(slug=auth.slug),
self.settings.get( self.settings.get(
'AUTHOR_FEED_ATOM_URL', 'AUTHOR_FEED_ATOM_URL',
self.settings['AUTHOR_FEED_ATOM'] str(self.settings['AUTHOR_FEED_ATOM'])).format(
).format(slug=auth.slug), slug=auth.slug
),
feed_title=auth.name feed_title=auth.name
) )
@ -392,8 +393,9 @@ class ArticlesGenerator(CachingGenerator):
self.settings['AUTHOR_FEED_RSS'].format(slug=auth.slug), self.settings['AUTHOR_FEED_RSS'].format(slug=auth.slug),
self.settings.get( self.settings.get(
'AUTHOR_FEED_RSS_URL', 'AUTHOR_FEED_RSS_URL',
self.settings['AUTHOR_FEED_RSS'] str(self.settings['AUTHOR_FEED_RSS'])).format(
).format(slug=auth.slug), slug=auth.slug
),
feed_title=auth.name, feed_title=auth.name,
feed_type='rss' feed_type='rss'
) )
@ -408,8 +410,9 @@ class ArticlesGenerator(CachingGenerator):
self.settings['TAG_FEED_ATOM'].format(slug=tag.slug), self.settings['TAG_FEED_ATOM'].format(slug=tag.slug),
self.settings.get( self.settings.get(
'TAG_FEED_ATOM_URL', 'TAG_FEED_ATOM_URL',
self.settings['TAG_FEED_ATOM'] str(self.settings['TAG_FEED_ATOM'])).format(
).format(slug=tag.slug), slug=tag.slug
),
feed_title=tag.name feed_title=tag.name
) )
@ -420,8 +423,9 @@ class ArticlesGenerator(CachingGenerator):
self.settings['TAG_FEED_RSS'].format(slug=tag.slug), self.settings['TAG_FEED_RSS'].format(slug=tag.slug),
self.settings.get( self.settings.get(
'TAG_FEED_RSS_URL', 'TAG_FEED_RSS_URL',
self.settings['TAG_FEED_RSS'] str(self.settings['TAG_FEED_RSS'])).format(
).format(slug=tag.slug), slug=tag.slug
),
feed_title=tag.name, feed_title=tag.name,
feed_type='rss' feed_type='rss'
) )
@ -443,7 +447,8 @@ class ArticlesGenerator(CachingGenerator):
.format(lang=lang), .format(lang=lang),
self.settings.get( self.settings.get(
'TRANSLATION_FEED_ATOM_URL', 'TRANSLATION_FEED_ATOM_URL',
self.settings['TRANSLATION_FEED_ATOM'] str(
self.settings['TRANSLATION_FEED_ATOM'])
).format(lang=lang), ).format(lang=lang),
) )
if self.settings.get('TRANSLATION_FEED_RSS'): if self.settings.get('TRANSLATION_FEED_RSS'):
@ -454,8 +459,9 @@ class ArticlesGenerator(CachingGenerator):
.format(lang=lang), .format(lang=lang),
self.settings.get( self.settings.get(
'TRANSLATION_FEED_RSS_URL', 'TRANSLATION_FEED_RSS_URL',
self.settings['TRANSLATION_FEED_RSS'] str(self.settings['TRANSLATION_FEED_RSS'])).format(
).format(lang=lang), lang=lang
),
feed_type='rss' feed_type='rss'
) )