Git fork
1#!/usr/bin/perl
2
3use strict;
4use warnings;
5
6my $exit_code = 0;
7sub report {
8 my ($line, $msg) = @_;
9 chomp $line;
10 print STDERR "$ARGV:$.: '$line' $msg\n";
11 $exit_code = 1;
12}
13
14my $synopsis_style = 0;
15
16while (my $line = <>) {
17 if ($line =~ /^[ \t]*`?[-a-z0-9.]+`?(, `?[-a-z0-9.]+`?)+(::|;;)$/) {
18
19 report($line, "multiple parameters in a definition list item");
20 }
21 if ($line =~ /^`?--\[no-\][a-z0-9-]+.*(::|;;)$/) {
22 report($line, "definition list item with a `--[no-]` parameter");
23 }
24 if ($line =~ /^\[synopsis\]$/) {
25 $synopsis_style = 1;
26 }
27 if (($line =~ /^(-[-a-z].*|<[-a-z0-9]+>(\.{3})?)(::|;;)$/) && ($synopsis_style)) {
28 report($line, "synopsis style and definition list item not backquoted");
29 }
30}
31
32
33exit $exit_code;