summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDan Davison <dandavison7@gmail.com>2022-06-20 16:01:58 -0400
committerGitHub <noreply@github.com>2022-06-20 16:01:58 -0400
commit3f527e0d9c6100119c86a5cd4adb21f3c51651c6 (patch)
treec78199d2f5a5064b5489a59469aa165d86d15eec /src
parent4c879ac1afca68a30c9a100bea2965b858eb1853 (diff)
Fix commit hyperlink formatting (#1110)
Diffstat (limited to 'src')
-rw-r--r--src/features/hyperlinks.rs8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/features/hyperlinks.rs b/src/features/hyperlinks.rs
index b5f60af9..b45de0f8 100644
--- a/src/features/hyperlinks.rs
+++ b/src/features/hyperlinks.rs
@@ -26,8 +26,12 @@ pub fn format_commit_line_with_osc8_commit_hyperlink<'a>(
) -> Cow<'a, str> {
if let Some(commit_link_format) = &config.hyperlinks_commit_link_format {
COMMIT_LINE_REGEX.replace(line, |captures: &Captures| {
- let commit = captures.get(2).unwrap().as_str();
- format_osc8_hyperlink(&commit_link_format.replace("{commit}", commit), commit)
+ let prefix = captures.get(1).map(|m| m.as_str()).unwrap_or("");
+ let commit = captures.get(2).map(|m| m.as_str()).unwrap();
+ let suffix = captures.get(3).map(|m| m.as_str()).unwrap_or("");
+ let formatted_commit =
+ format_osc8_hyperlink(&commit_link_format.replace("{commit}", commit), commit);
+ format!("{}{}{}", prefix, formatted_commit, suffix)
})
} else if let Some(GitConfigEntry::GitRemote(repo)) =
config.git_config.as_ref().and_then(get_remote_url)