Skip to content
Permalink
Browse files

Adds a tidy check for single-page HTML specification links

Flags links to the single-page WHATWG specification and suggests the URL
for the multi page one.

Fixes #7998
  • Loading branch information...
gilles-leblanc committed Oct 16, 2015
1 parent 9d5f09e commit d99149701fea201e99639ed84a798e25c67d2520
Showing with 10 additions and 2 deletions.
  1. +10 −2 python/tidy.py
@@ -80,13 +80,20 @@ def check_length(file_name, idx, line):
yield (idx + 1, "Line is longer than %d characters" % max_length)


def check_whatwg_url(idx, line):
def check_whatwg_specific_url(idx, line):
match = re.search(r"https://html\.spec\.whatwg\.org/multipage/[\w-]+\.html#([\w\:-]+)", line)
if match is not None:
preferred_link = "https://html.spec.whatwg.org/multipage/#{}".format(match.group(1))
yield (idx + 1, "link to WHATWG may break in the future, use this format instead: {}".format(preferred_link))


def check_whatwg_single_page_url(idx, line):
match = re.search(r"https://html\.spec\.whatwg\.org/#([\w\:-]+)", line)
if match is not None:
preferred_link = "https://html.spec.whatwg.org/multipage/#{}".format(match.group(1))
yield (idx + 1, "links to WHATWG single-page url, change to multi page: {}".format(preferred_link))


def check_whitespace(idx, line):
if line[-1] == "\n":
line = line[:-1]
@@ -109,7 +116,8 @@ def check_by_line(file_name, contents):
errors = itertools.chain(
check_length(file_name, idx, line),
check_whitespace(idx, line),
check_whatwg_url(idx, line),
check_whatwg_specific_url(idx, line),
check_whatwg_single_page_url(idx, line),
)

for error in errors:

0 comments on commit d991497

Please sign in to comment.
You can’t perform that action at this time.