55 строки
1.1 KiB
Perl
Executable File
55 строки
1.1 KiB
Perl
Executable File
#!/usr/bin/env perl
|
|
# Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
|
#
|
|
# SPDX-License-Identifier: curl
|
|
#
|
|
# Input: a cmdline docs markdown, it gets modified *in place*
|
|
#
|
|
# The main purpose is to strip off the leading meta-data part, but also to
|
|
# clean up whatever else the spell checker might have a problem with that we
|
|
# still deem is fine.
|
|
|
|
my $header = 1;
|
|
while(1) {
|
|
# set this if the markdown has no meta-data header to skip
|
|
if($ARGV[0] eq "--no-header") {
|
|
shift @ARGV;
|
|
$header = 0;
|
|
}
|
|
else {
|
|
last;
|
|
}
|
|
}
|
|
|
|
my $f = $ARGV[0];
|
|
|
|
open(F, "<$f") or die;
|
|
|
|
my $ignore = $header;
|
|
my $sepcount = 0;
|
|
my @out;
|
|
while(<F>) {
|
|
if(/^---/ && $header) {
|
|
if(++$sepcount == 2) {
|
|
$ignore = 0;
|
|
}
|
|
next;
|
|
}
|
|
next if($ignore);
|
|
|
|
# strip out all long command line options
|
|
$_ =~ s/--[a-z0-9-]+//g;
|
|
|
|
# strip out https URLs, we don't want them spellchecked
|
|
$_ =~ s!https://[a-z0-9\#_/.-]+!!gi;
|
|
|
|
push @out, $_;
|
|
}
|
|
close(F);
|
|
|
|
if(!$ignore) {
|
|
open(O, ">$f") or die;
|
|
print O @out;
|
|
close(O);
|
|
}
|