From 9da8dc23b6778c7b2dca236f6d81c3fc4a752535 Mon Sep 17 00:00:00 2001 From: Miki Date: Mon, 19 Sep 2022 11:55:18 -0700 Subject: [PATCH] Improve logging of the link checker (#1252) Signed-off-by: Miki Signed-off-by: Miki --- _plugins/link-checker.rb | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/_plugins/link-checker.rb b/_plugins/link-checker.rb index 58726b35..3eebed64 100644 --- a/_plugins/link-checker.rb +++ b/_plugins/link-checker.rb @@ -61,6 +61,7 @@ module Jekyll::LinkChecker @site = site @urls = {} @failures = [] + @base_url_matcher = /^#{@site.config["url"]}#{@site.baseurl}(\/.*)$/.freeze end # Processes a Document or Page and adds the links to a collection @@ -74,9 +75,12 @@ module Jekyll::LinkChecker relative_path = page.path[0] == '/' ? Pathname.new(page.path).relative_path_from(Dir.getwd) : page.path if href.start_with? '#' - p relative_path if (page.content =~ /<[a-z0-9-]+[^>]+id="#{href[1..]}"/i).nil? @failures << "##{href[1..]}, linked in ./#{relative_path}" if (page.content =~ /<[a-z0-9-]+[^>]+id="#{href[1..]}"/i).nil? else + match = @base_url_matcher.match(href) + unless match.nil? + href = match[1] + end @urls[href] = Set[] unless @urls.key?(href) @urls[href] << relative_path end @@ -101,8 +105,6 @@ module Jekyll::LinkChecker end end - @base_url_matcher = /^#{@site.config["url"]}#{@site.baseurl}(\/.*)$/.freeze - @urls.each do |url, pages| @failures << "#{url}, linked to in ./#{pages.to_a.join(", ./")}" unless self.check(url) end