diff --git a/blog/animal-crossing-stability-2021-02-28.markdown b/blog/animal-crossing-stability-2021-02-28.markdown new file mode 100644 index 0000000..b8513be --- /dev/null +++ b/blog/animal-crossing-stability-2021-02-28.markdown @@ -0,0 +1,12 @@ +--- +title: "Animal Crossing New Horizons: An Island of Stability in an Unstable World" +date: 2021-02-28 +tags: + - link +redirect_to: https://www.getrevue.co/profile/theprincessxena/issues/animal-crossing-new-horizons-an-island-of-stability-in-an-unstable-world-313933 +--- + +# Animal Crossing New Horizons: An Island of Stability in an Unstable World + +Check out this post [on my +newsletter](https://www.getrevue.co/profile/theprincessxena/issues/animal-crossing-new-horizons-an-island-of-stability-in-an-unstable-world-313933)! diff --git a/blog/immigration-2021-04-11.markdown b/blog/immigration-2021-04-11.markdown new file mode 100644 index 0000000..0d00cea --- /dev/null +++ b/blog/immigration-2021-04-11.markdown @@ -0,0 +1,12 @@ +--- +title: "Immigration" +date: 2021-04-11 +tags: + - link +redirect_to: https://www.getrevue.co/profile/theprincessxena/issues/immigration-313938 +--- + +# Immigration + +Check out this post [on my +newsletter](https://www.getrevue.co/profile/theprincessxena/issues/immigration-313938)! diff --git a/blog/mara-ransack-castle-2021-03-28.markdown b/blog/mara-ransack-castle-2021-03-28.markdown new file mode 100644 index 0000000..3857390 --- /dev/null +++ b/blog/mara-ransack-castle-2021-03-28.markdown @@ -0,0 +1,12 @@ +--- +title: "Mara's Ransack of Castle Charon" +date: 2021-03-28 +tags: + - link +redirect_to: https://www.getrevue.co/profile/theprincessxena/issues/mara-s-ransack-of-castle-charon-313935 +--- + +# Mara's Ransack of Castle Charon + +Check out this post [on my +newsletter](https://www.getrevue.co/profile/theprincessxena/issues/mara-s-ransack-of-castle-charon-313935)! diff --git a/blog/paper-mario-origami-king-2021-01-30.markdown b/blog/paper-mario-origami-king-2021-01-30.markdown new file mode 100644 index 0000000..9930fcf --- /dev/null +++ b/blog/paper-mario-origami-king-2021-01-30.markdown @@ -0,0 +1,12 @@ +--- +title: "My Thoughts on Paper Mario and the Origami King" +date: 2021-01-30 +tags: + - link +redirect_to: https://www.getrevue.co/profile/theprincessxena/issues/my-thoughts-on-paper-mario-and-the-origami-king-312718 +--- + +# My Thoughts on Paper Mario and the Origami King + +Check out this post [on my +newsletter](https://www.getrevue.co/profile/theprincessxena/issues/my-thoughts-on-paper-mario-and-the-origami-king-312718)! diff --git a/blog/plurality-cyberpunk-xenoblade-2021-02-14.markdown b/blog/plurality-cyberpunk-xenoblade-2021-02-14.markdown new file mode 100644 index 0000000..508d294 --- /dev/null +++ b/blog/plurality-cyberpunk-xenoblade-2021-02-14.markdown @@ -0,0 +1,12 @@ +--- +title: "Plurality as Portrayed in Cyberpunk 2077 and Xenoblade Chronicles 2" +date: 2021-02-14 +tags: + - link +redirect_to: https://www.getrevue.co/profile/theprincessxena/issues/plurality-as-portrayed-in-cyberpunk-2077-and-xenoblade-chronicles-2-313929 +--- + +# Plurality as Portrayed in Cyberpunk 2077 and Xenoblade Chronicles 2 + +Check out this post [on my +newsletter](https://www.getrevue.co/profile/theprincessxena/issues/plurality-as-portrayed-in-cyberpunk-2077-and-xenoblade-chronicles-2-313929)! diff --git a/blog/sisyphean-dns-client-linux-2021-04-15.markdown b/blog/sisyphean-dns-client-linux-2021-04-15.markdown new file mode 100644 index 0000000..b5b652f --- /dev/null +++ b/blog/sisyphean-dns-client-linux-2021-04-15.markdown @@ -0,0 +1,12 @@ +--- +title: "The Sisyphean Task Of DNS Client Config on Linux" +date: 2021-04-15 +tags: + - link +redirect_to: https://tailscale.com/blog/sisyphean-dns-client-linux/ +--- + +# The Sisyphean Task Of DNS Client Config on Linux + +Check out this post [on the Tailscale +blog](https://tailscale.com/blog/sisyphean-dns-client-linux/)! diff --git a/blog/social-proximity-networks-2021-02-02.markdown b/blog/social-proximity-networks-2021-02-02.markdown new file mode 100644 index 0000000..beb395c --- /dev/null +++ b/blog/social-proximity-networks-2021-02-02.markdown @@ -0,0 +1,12 @@ +--- +title: "Philosophy of Tailscale: Social proximity networks" +date: 2021-02-02 +tags: + - link +redirect_to: https://tailscale.com/blog/social-proximity-networks/ +--- + +# Philosophy of Tailscale: Social proximity networks + +Check out this post [on the Tailscale +blog](https://tailscale.com/blog/social-proximity-networks/)! diff --git a/src/post/mod.rs b/src/post/mod.rs index b5303a8..2b1b7e2 100644 --- a/src/post/mod.rs +++ b/src/post/mod.rs @@ -20,8 +20,8 @@ impl Into for Post { let mut result = jsonfeed::Item::builder() .title(self.front_matter.title) .content_html(self.body_html) - .id(format!("https://christine.website/{}", self.link)) - .url(format!("https://christine.website/{}", self.link)) + .id(self.link.clone()) + .url(self.link) .date_published(self.date.to_rfc3339()) .author( jsonfeed::Author::new() @@ -30,6 +30,10 @@ impl Into for Post { .avatar("https://christine.website/static/img/avatar.png"), ); + if let Some(url) = self.front_matter.redirect_to { + result = result.url(url); + } + let mut tags: Vec = vec![]; if let Some(series) = self.front_matter.series { @@ -79,7 +83,16 @@ async fn read_post(dir: &str, fname: PathBuf) -> Result { let body = &body[content_offset..]; let date = NaiveDate::parse_from_str(&front_matter.clone().date, "%Y-%m-%d") .map_err(|why| eyre!("error parsing date in {:?}: {}", fname, why))?; - let link = format!("{}/{}", dir, fname.file_stem().unwrap().to_str().unwrap()); + + let link = match front_matter.redirect_to { + Some(ref url) => url.clone(), + None => format!( + "https://christine.website/{}/{}", + dir, + fname.file_stem().unwrap().to_str().unwrap() + ), + }; + let body_html = crate::app::markdown::render(&body) .wrap_err_with(|| format!("can't parse markdown for {:?}", fname))?; let date: DateTime = diff --git a/templates/blog_atom.rs.xml b/templates/blog_atom.rs.xml index 0296da6..5fffaad 100644 --- a/templates/blog_atom.rs.xml +++ b/templates/blog_atom.rs.xml @@ -17,10 +17,10 @@ @env!("CARGO_PKG_NAME") @for post in posts { - https://christine.website/@post.link + @post.link @post.front_matter.title @post.date.to_rfc3339() - + } diff --git a/templates/blog_rss.rs.xml b/templates/blog_rss.rs.xml index 0e87ad1..e300d75 100644 --- a/templates/blog_rss.rs.xml +++ b/templates/blog_rss.rs.xml @@ -12,9 +12,9 @@ 1440 @for post in posts { - https://christine.website/@post.link + @post.link @post.front_matter.title - https://christine.website/@post.link + @post.link @post.date.to_rfc2822() diff --git a/templates/blogindex.rs.html b/templates/blogindex.rs.html index e050e5b..02f34d6 100644 --- a/templates/blogindex.rs.html +++ b/templates/blogindex.rs.html @@ -14,7 +14,7 @@