From 6de424ee3bd3ed1749c27007ead6d8e45617b578 Mon Sep 17 00:00:00 2001 From: Helder Pereira Date: Sat, 19 Sep 2020 14:48:35 +0100 Subject: [PATCH] Support URLs with port in Linkify --- extension/_test/linkify.txt | 8 ++++++++ extension/linkify.go | 4 ++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/extension/_test/linkify.txt b/extension/_test/linkify.txt index 1e75aeb..d619a8b 100644 --- a/extension/_test/linkify.txt +++ b/extension/_test/linkify.txt @@ -161,3 +161,11 @@ https://nic.college //- - - - - - - - -//

https://nic.college

//= = = = = = = = = = = = = = = = = = = = = = = =// + + +17 +//- - - - - - - - -// +http://server.intranet.acme.com:1313 +//- - - - - - - - -// +

http://server.intranet.acme.com:1313

+//= = = = = = = = = = = = = = = = = = = = = = = =// diff --git a/extension/linkify.go b/extension/linkify.go index 9e68fa5..31203a6 100644 --- a/extension/linkify.go +++ b/extension/linkify.go @@ -11,9 +11,9 @@ import ( "github.com/yuin/goldmark/util" ) -var wwwURLRegxp = regexp.MustCompile(`^www\.[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]+(?:(?:/|[#?])[-a-zA-Z0-9@:%_\+.~#!?&//=\(\);,'">\^{}\[\]` + "`" + `]*)?`) +var wwwURLRegxp = regexp.MustCompile(`^www\.[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]+(?:[/#?][-a-zA-Z0-9@:%_\+.~#!?&/=\(\);,'">\^{}\[\]` + "`" + `]*)?`) -var urlRegexp = regexp.MustCompile(`^(?:http|https|ftp):\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]+(?:(?:/|[#?])[-a-zA-Z0-9@:%_+.~#$!?&//=\(\);,'">\^{}\[\]` + "`" + `]*)?`) +var urlRegexp = regexp.MustCompile(`^(?:http|https|ftp)://[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]+(?::\d+)?(?:[/#?][-a-zA-Z0-9@:%_+.~#$!?&/=\(\);,'">\^{}\[\]` + "`" + `]*)?`) // An LinkifyConfig struct is a data structure that holds configuration of the // Linkify extension.