tools: print the offending markdown source line, for errors and warnings

pull/8265/head
Delyan Angelov 2021-01-24 00:13:21 +02:00
parent 1f99d1e025
commit b04b8d438b
No known key found for this signature in database
GPG Key ID: 66886C0F12D595ED
1 changed files with 9 additions and 3 deletions

View File

@ -61,18 +61,23 @@ These are:
if line.len > too_long_line_length {
if mdfile.state == .vexample {
wprintln(wline(file_path, i, line.len, 'long V example line'))
wprintln(line)
warnings++
} else if mdfile.state == .codeblock {
wprintln(wline(file_path, i, line.len, 'long code block line'))
wprintln(line)
warnings++
} else if line.starts_with('|') {
wprintln(wline(file_path, i, line.len, 'long table'))
wprintln(line)
warnings++
} else if line.contains('https') {
wprintln(wline(file_path, i, line.len, 'long link'))
wprintln(line)
warnings++
} else {
eprintln(eline(file_path, i, line.len, 'line too long'))
eprintln(line)
errors++
}
}
@ -129,7 +134,8 @@ fn rtext(s string) string {
}
fn wline(file_path string, lnumber int, column int, message string) string {
return btext('$file_path:${lnumber + 1}:${column + 1}:') + btext(mtext(' warn:')) + rtext(' $message')
return btext('$file_path:${lnumber + 1}:${column + 1}:') + btext(mtext(' warn:')) +
rtext(' $message')
}
fn eline(file_path string, lnumber int, column int, message string) string {