Change:
<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- Read our guide about submitting issues: --<!-- Search existing issues to avoid creating duplicates. --<!-- Test using the latest Insiders build to see if your issue has already been fixed: --<!-- Instead of creating your report here, use 'Report Issue' from the 'Help' menu in VS Code to pre-fill useful information. --- VS Code Version: 1.55.2 OS Version: Windows 10 .1440 Steps to Reproduce: a URL containing or , for example: VSCode usually can recognize URLs with non-alphanumeric characters, for example, the URL can be properly recognized and you can ctrl+click to open it. However, URLs containing or , like the above example I gave, cannot be properly recognized in VSCode. I assume this is a bug or an oversight rather than a design decision, as I can't see any reason to exclude or in URLs. While I write this issue I notice that Github actually recognizes such URLs with no problem, so I guess it's not outrageous to ask VSCode to support them too. <!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes <!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --
in "" was explicitly marked as url termination character. I don't know why though. Shall I just remove it?
Thanks for pointing out the place! This list seems to contain a lot of punctuation marks and many of them may be a little questionable. For instance are all just variations of parentheses or quotation marks. They are often used as part of an URL rather than to terminate an URL. But since there are so many of them I don't know what is the best way to handle it. Some people may have been relying on this behavior and removing some characters could break it. Maybe you can make it customizable but then that would add to your workload.
I think it's fine to change things and remove "" / "" as force termination characters. Especially if there are things like wikipedia links with them. Actually, the best change would be to do some logic similar as we do for "(" / ")", where we actually tweak behavior for ")" based on the presence of "(" inside the link or not.
Let's do that if or ever collides with something! Afaik these characters aren't markdown control characters.
Thanks for the quick move. While we are at it, some other characters are in a similar situation. Can you do the same to them too? At least the following two pairs are quite common: “ ” “”
These links should work now too!

Discussion:
if (_classifier === null) { _classifier = new CharacterClassifier<CharacterClass>(CharacterClass.None); <del> const FORCE_TERMINATION_CHARACTERS = ' t<>'"、。｡､，．：；‘“〈《「『【〔（［｛｢｣｝］）〕】』」》〉”’｀～…'; </del> <ins> const FORCE_TERMINATION_CHARACTERS = ' t<>'"、。｡､，．：；‘〈「『〔（［｛｢｣｝］）〕』」〉’｀～…'; </ins> for (let i = 0; i < FORCE_TERMINATION_CHARACTERS.length; i++) { _classifier.set(FORCE_TERMINATION_CHARACTERS.charCodeAt(i), CharacterClass.ForceTermination); }

'    http://tree-mark.chips.jp/レーズン＆ベリーミックス    ' ); }); <ins> test('issue #121438: Link detection stops at【...】', () => { assertLink( 'aa  https://zh.wikipedia.org/wiki/【我推的孩子】 aa', '    https://zh.wikipedia.org/wiki/【我推的孩子】   ' ); }); test('issue #121438: Link detection stops at《...》', () => { assertLink( 'aa  https://zh.wikipedia.org/wiki/《新青年》编辑部旧址 aa', '    https://zh.wikipedia.org/wiki/《新青年》编辑部旧址   ' ); }); test('issue #121438: Link detection stops at “...”', () => { assertLink( 'aa  https://zh.wikipedia.org/wiki/“常凯申”误译事件 aa', '    https://zh.wikipedia.org/wiki/“常凯申”误译事件   ' ); }); </ins> });