diff options
Diffstat (limited to 'Build/source/utils/texi2html/check_texinfo.pl.in')
-rwxr-xr-x | Build/source/utils/texi2html/check_texinfo.pl.in | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/Build/source/utils/texi2html/check_texinfo.pl.in b/Build/source/utils/texi2html/check_texinfo.pl.in new file mode 100755 index 00000000000..feef22a9957 --- /dev/null +++ b/Build/source/utils/texi2html/check_texinfo.pl.in @@ -0,0 +1,83 @@ +#! @PERL@ +#+############################################################################## +# +# check_texinfo.pl: Extract texinfo commands from files +# +# Copyright (C) 1999, 2000 Free Software Foundation, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +#-############################################################################## + +# This requires perl version 5 or higher +require 5.0; + + + +use strict; +use Getopt::Long; +my $verbose; +if (!GetOptions ("verbose" => \$verbose)) +{ + die "usage: $0 [-v] file...\n"; +} + +die "Need file to check\n" unless @ARGV > 0; + +my (%seen, %context); + +while (<>) +{ + if (/\@(\*|\.|\:|\@|\{|\})/) + { + $seen{$&}++; + $context{$&} .= "> $_" if $verbose; + $_ = "$`XX$'"; + redo; + } + if (/\@(\w+)/) + { + my ($before, $match, $after); + ($before, $match, $after) = ($`, $&, $'); + if ($before =~ /\b[-\w]+$/ && $after =~ /^[-\w.]*\b/) + { # e-mail address + $seen{'e-mail address'}++; + $context{'e-mail address'} .= "> $_" if $verbose; + } + else + { + $seen{$match}++; + $context{$match} .= "> $_" if $verbose; + } + $match =~ s/^\@/X/; + $_ = "$before$match$after"; + redo; + } +} + +foreach (sort(keys(%seen))) +{ + if ($verbose) + { + print "$_\n"; + print $context{$_}; + } + else + { + print "$_ ($seen{$_})\n"; + } +} + + |