Annotation of embedaddon/curl/tests/manpage-syntax.pl, revision 1.1.1.1

1.1       misho       1: #!/usr/bin/env perl
                      2: #***************************************************************************
                      3: #                                  _   _ ____  _
                      4: #  Project                     ___| | | |  _ \| |
                      5: #                             / __| | | | |_) | |
                      6: #                            | (__| |_| |  _ <| |___
                      7: #                             \___|\___/|_| \_\_____|
                      8: #
                      9: # Copyright (C) 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
                     10: #
                     11: # This software is licensed as described in the file COPYING, which
                     12: # you should have received as part of this distribution. The terms
                     13: # are also available at https://curl.haxx.se/docs/copyright.html.
                     14: #
                     15: # You may opt to use, copy, modify, merge, publish, distribute and/or sell
                     16: # copies of the Software, and permit persons to whom the Software is
                     17: # furnished to do so, under the terms of the COPYING file.
                     18: #
                     19: # This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
                     20: # KIND, either express or implied.
                     21: #
                     22: ###########################################################################
                     23: #
                     24: # Scan man page(s) and detect some simple and yet common formatting mistakes.
                     25: #
                     26: # Output all deviances to stderr.
                     27: 
                     28: use strict;
                     29: use warnings;
                     30: 
                     31: # we may get the dir roots pointed out
                     32: my @manpages=@ARGV;
                     33: my $errors = 0;
                     34: 
                     35: sub scanmanpage {
                     36:     my ($file) = @_;
                     37: 
                     38:     print "Check $file\n";
                     39:     open(M, "<$file") || die "no such file: $file";
                     40:     my $line = 1;
                     41:     while(<M>) {
                     42:         if($_ =~ /^\'/) {
                     43:             print STDERR "$file:$line line starts with single quote!\n";
                     44:             $errors++;
                     45:         }
                     46:         if($_ =~ /\\f([BI])(.*)/) {
                     47:             my ($format, $rest) = ($1, $2);
                     48:             if($rest !~ /\\fP/) {
                     49:                 print STDERR "$file:$line missing \\f${format} terminator!\n";
                     50:                 $errors++;
                     51:             }
                     52:         }
                     53:         $line++;
                     54:     }
                     55:     close(M);
                     56: }
                     57: 
                     58: 
                     59: for my $m (@manpages) {
                     60:     scanmanpage($m);
                     61: }
                     62: 
                     63: exit $errors;

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>