-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathrss.xml
More file actions
74 lines (74 loc) · 3.89 KB
/
rss.xml
File metadata and controls
74 lines (74 loc) · 3.89 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
---
layout: null
permalink: /rss.xml
---
<?xml version="1.0" encoding="UTF-8"?>
{%- assign feedback_form = "https://docs.google.com/forms/d/e/1FAIpQLSeRD0Q9wYYZelAkRXEu2cCFN89-cvoAfOtyTY9vaz9-FUvYXQ/viewform?usp=pp_url&entry.2083454847=" -%}
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>cb341.dev</title>
<description>Personal blog and portfolio</description>
<link>{{ site.url }}</link>
<atom:link href="{{ site.url }}/rss.xml" rel="self" type="application/rss+xml" />
<language>en</language>
<copyright>Copyright (c) {{ "now" | date: "%Y" }} cb341. Licensed under CC BY 4.0.</copyright>
<lastBuildDate>{{ site.time | date_to_rfc822 }}</lastBuildDate>
<ttl>60</ttl>
{%- for post in site.posts %}
{%- assign feedback_target = site.url | append: post.url %}
{%- capture feedback_link %}<hr><p><a href="{{ feedback_form }}{{ feedback_target | url_encode }}" target="_blank" rel="noopener noreferrer">Challenge this post (anonymous)</a></p>{% endcapture %}
<item>
<title>{{ post.title | xml_escape }}</title>
<link>{{ site.url }}{{ post.url }}</link>
<guid>{{ site.url }}{{ post.url }}</guid>
<description>{{ post.content | append: feedback_link | xml_escape }}</description>
<pubDate>{{ post.date | date_to_rfc822 }}</pubDate>
{%- for tag in post.tags %}
<category>{{ tag | xml_escape }}</category>
{%- endfor %}
</item>
{%- endfor %}
{%- for p in site.pages %}{%- if p.url == "/threads/" %}{%- assign threads_page = p %}{%- endif %}{%- endfor %}
{%- if threads_page %}
{%- assign chunks = threads_page.content | split: "
## " %}
{%- for chunk in chunks offset:1 %}
{%- assign lines = chunk | split: "
" %}
{%- assign heading = lines[0] | strip %}
{%- assign body = chunk | remove_first: lines[0] | strip %}
{%- assign date_parts = heading | split: " " | first | split: "." %}
{%- assign dd = date_parts[0] %}
{%- assign mm = date_parts[1] %}
{%- assign yyyy = date_parts[2] %}
{%- assign iso = yyyy | append: "-" | append: mm | append: "-" | append: dd | append: "T12:00:00Z" %}
{%- assign slug = heading | replace: ".", "" | slugify %}
{%- assign feedback_target = site.url | append: threads_page.url | append: "#" | append: slug %}
{%- capture feedback_link %}<hr><p><a href="{{ feedback_form }}{{ feedback_target | url_encode }}" target="_blank" rel="noopener noreferrer">Challenge this thread (anonymous)</a></p>{% endcapture %}
<item>
<title>Threads: {{ heading | xml_escape }}</title>
<link>{{ site.url }}{{ threads_page.url }}#{{ slug }}</link>
<guid isPermaLink="false">{{ site.url }}{{ threads_page.url }}#{{ slug }}</guid>
<description><![CDATA[{{ body | markdownify }}{{ feedback_link }}]]></description>
<pubDate>{{ iso | date_to_rfc822 }}</pubDate>
<category>threads</category>
</item>
{%- endfor %}
{%- endif %}
{%- for project in site.projects %}
{%- assign feedback_target = site.url | append: project.url %}
{%- capture feedback_link %}<hr><p><a href="{{ feedback_form }}{{ feedback_target | url_encode }}" target="_blank" rel="noopener noreferrer">Challenge this project (anonymous)</a></p>{% endcapture %}
<item>
<title>Project: {{ project.title | xml_escape }}</title>
<link>{{ site.url }}{{ project.url }}</link>
<guid isPermaLink="false">{{ site.url }}{{ project.url }}</guid>
<description><![CDATA[{{ project.content | markdownify | replace: 'src="/', 'src="https://cb341.dev/' | replace: 'href="/', 'href="https://cb341.dev/' }}{{ feedback_link }}]]></description>
<pubDate>{{ project.date | date_to_rfc822 }}</pubDate>
<category>project</category>
{%- for tag in project.tags %}
<category>{{ tag | xml_escape }}</category>
{%- endfor %}
</item>
{%- endfor %}
</channel>
</rss>