Compare commits
No commits in common. "af2f80032179d45a68d7239c1a850415eec80a91" and "f369431c0f224bb7df600766c6e4bc5c0c3422e1" have entirely different histories.
af2f800321
...
f369431c0f
2 changed files with 1 additions and 55 deletions
36
picopaper.py
36
picopaper.py
|
|
@ -106,7 +106,7 @@ class SSGGGenerator:
|
||||||
'title': title,
|
'title': title,
|
||||||
'content': content,
|
'content': content,
|
||||||
'slug': parsed['name'],
|
'slug': parsed['name'],
|
||||||
'url': f"/{parsed['name']}/",
|
'url': f"{parsed['name']}/",
|
||||||
'feed': parsed['feed'],
|
'feed': parsed['feed'],
|
||||||
'source': filepath.name
|
'source': filepath.name
|
||||||
}
|
}
|
||||||
|
|
@ -143,36 +143,6 @@ class SSGGGenerator:
|
||||||
|
|
||||||
print(f"✓ Generated {output_path}")
|
print(f"✓ Generated {output_path}")
|
||||||
|
|
||||||
def generate_feeds_overview(self, feeds):
|
|
||||||
"""Generate /feed/index.html with list of all non-excluded feeds"""
|
|
||||||
template = self.env.get_template('feeds.tmpl')
|
|
||||||
|
|
||||||
# Prepare feed data with counts, excluding feeds in EXCLUDE_FEEDS_FROM_MAIN
|
|
||||||
feed_list = []
|
|
||||||
for feed_name, posts in sorted(feeds.items()):
|
|
||||||
if feed_name not in self.exclude_feeds:
|
|
||||||
feed_list.append({
|
|
||||||
'name': feed_name,
|
|
||||||
'count': len(posts)
|
|
||||||
})
|
|
||||||
|
|
||||||
title = f"Feeds - {self.blog_title}"
|
|
||||||
output_path = self.output_dir / 'feed' / 'index.html'
|
|
||||||
|
|
||||||
html = template.render(
|
|
||||||
title=title,
|
|
||||||
blog_title=self.blog_title,
|
|
||||||
blog_description=self.blog_description,
|
|
||||||
navbar_items=self.navbar_items,
|
|
||||||
feeds=feed_list
|
|
||||||
)
|
|
||||||
|
|
||||||
output_path.parent.mkdir(parents=True, exist_ok=True)
|
|
||||||
with open(output_path, 'w', encoding='utf-8') as f:
|
|
||||||
f.write(html)
|
|
||||||
|
|
||||||
print(f"✓ Generated {output_path}")
|
|
||||||
|
|
||||||
def generate_post_page(self, post):
|
def generate_post_page(self, post):
|
||||||
"""Generate individual post page for 'long' posts"""
|
"""Generate individual post page for 'long' posts"""
|
||||||
template = self.env.get_template('post.tmpl')
|
template = self.env.get_template('post.tmpl')
|
||||||
|
|
@ -258,10 +228,6 @@ class SSGGGenerator:
|
||||||
for feed_name, posts in feeds.items():
|
for feed_name, posts in feeds.items():
|
||||||
self.generate_index(posts, feed_name)
|
self.generate_index(posts, feed_name)
|
||||||
|
|
||||||
# Generate feeds overview page
|
|
||||||
if feeds:
|
|
||||||
self.generate_feeds_overview(feeds)
|
|
||||||
|
|
||||||
# Generate individual pages for long posts, short posts, and pages
|
# Generate individual pages for long posts, short posts, and pages
|
||||||
for post in all_posts:
|
for post in all_posts:
|
||||||
if post['type'] in ['long', 'short', 'page']:
|
if post['type'] in ['long', 'short', 'page']:
|
||||||
|
|
|
||||||
|
|
@ -1,20 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
{% include 'meta.tmpl' %}
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
{% include 'header.tmpl' %}
|
|
||||||
|
|
||||||
<main>
|
|
||||||
<h2>Feeds</h2>
|
|
||||||
<ul>
|
|
||||||
{% for feed in feeds %}
|
|
||||||
<li><a href="/feed/{{ feed.name }}/">{{ feed.name }}</a> ({{ feed.count }} posts)</li>
|
|
||||||
{% endfor %}
|
|
||||||
</ul>
|
|
||||||
</main>
|
|
||||||
|
|
||||||
{% include 'footer.tmpl' %}
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue