From 3a544e1f1226027b4a429e525126b2a7623de8d1 Mon Sep 17 00:00:00 2001 From: Ruben Beltran del Rio Date: Mon, 13 Jan 2025 18:42:26 +0100 Subject: Address clippy --- src/html_renderer.rs | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) (limited to 'src/html_renderer.rs') diff --git a/src/html_renderer.rs b/src/html_renderer.rs index fccf163..61d2d73 100644 --- a/src/html_renderer.rs +++ b/src/html_renderer.rs @@ -1,4 +1,5 @@ use crate::gemini_parser::GeminiLine; +use std::path::Path; /// Renders HTML from a vector of `GeminiLine` elements. /// @@ -99,12 +100,17 @@ fn line_content(line: &GeminiLine) -> String { match line { GeminiLine::Text(content, false) => format!("

{content}

"), GeminiLine::Link(url, text) => { - let processed_url; - if !url.starts_with("gemini:") && url.ends_with(".gmi") { - processed_url = url.replace(".gmi", ".html"); + let path = Path::new(url); + let processed_url = if !url.starts_with("gemini:") + && path + .extension() + .map_or(false, |ext| ext.eq_ignore_ascii_case("gmi")) + { + url.replace(".gmi", ".html") } else { - processed_url = url.to_string(); - } + url.to_string() + }; + let display = if text.is_empty() { &processed_url } else { -- cgit