Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: better handling of hyperlinks with parentheses #6391

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

psyclaudeZ
Copy link

Problem

I noticed there're a few cases where hyperlinks aren't handled correctly (see added unit tests). The root cause is that ) is a confusing character in the context of URL and we should probably add more checks while doing the regex matching.

Also the example explicit link isn't clickable.

Approach

Instead of handle the exhaustive list of cases of ) (which is inefficient and complicated), I decided to focus on the case where there's a terminating ). Particularly, I split the original regex into two: 1) match a URL with an explicit terminating ) 2) mach a URL with other "safe" terminating characters.

I also added _ to the safe terminating character list.

Also added unit tests.

Test Plan

Unit test.

cargo build and ran through a few examples.

I didn't explicitly attempt to fix the explicit hyperlink example. But after this regex change, printf '\e]8;;http://example.com\e\\This is a link\e]8;;\e\\\n' will actually generate a clickable link.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant