From 308debe47f25553b2ce6f17c43df7e483304ec6f Mon Sep 17 00:00:00 2001 From: Sarmad Gulzar Date: Wed, 25 Jun 2025 19:21:33 +0500 Subject: [PATCH] terminal: Fix trailing single quote included when opening link from terminal (#33376) Closes #33210 Release Notes: - Fixed an issue where a trailing single quote was included when opening a link from the terminal. --- crates/terminal/src/terminal_hyperlinks.rs | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/crates/terminal/src/terminal_hyperlinks.rs b/crates/terminal/src/terminal_hyperlinks.rs index 8e9950388d..18675bbe02 100644 --- a/crates/terminal/src/terminal_hyperlinks.rs +++ b/crates/terminal/src/terminal_hyperlinks.rs @@ -8,7 +8,7 @@ use alacritty_terminal::{ use regex::Regex; use std::{ops::Index, sync::LazyLock}; -const URL_REGEX: &str = r#"(ipfs:|ipns:|magnet:|mailto:|gemini://|gopher://|https://|http://|news:|file://|git://|ssh:|ftp://)[^\u{0000}-\u{001F}\u{007F}-\u{009F}<>"\s{-}\^⟨⟩`]+"#; +const URL_REGEX: &str = r#"(ipfs:|ipns:|magnet:|mailto:|gemini://|gopher://|https://|http://|news:|file://|git://|ssh:|ftp://)[^\u{0000}-\u{001F}\u{007F}-\u{009F}<>"\s{-}\^⟨⟩`']+"#; // Optional suffix matches MSBuild diagnostic suffixes for path parsing in PathLikeWithPosition // https://learn.microsoft.com/en-us/visualstudio/msbuild/msbuild-diagnostic-format-for-tasks const WORD_REGEX: &str = @@ -224,8 +224,12 @@ mod tests { fn test_url_regex() { re_test( URL_REGEX, - "test http://example.com test mailto:bob@example.com train", - vec!["http://example.com", "mailto:bob@example.com"], + "test http://example.com test 'https://website1.com' test mailto:bob@example.com train", + vec![ + "http://example.com", + "https://website1.com", + "mailto:bob@example.com", + ], ); }