summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/splitindex/splitindex.pl
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/splitindex/splitindex.pl')
-rwxr-xr-xMaster/texmf-dist/source/latex/splitindex/splitindex.pl212
1 files changed, 0 insertions, 212 deletions
diff --git a/Master/texmf-dist/source/latex/splitindex/splitindex.pl b/Master/texmf-dist/source/latex/splitindex/splitindex.pl
deleted file mode 100755
index 70c61720c9b..00000000000
--- a/Master/texmf-dist/source/latex/splitindex/splitindex.pl
+++ /dev/null
@@ -1,212 +0,0 @@
-#! /usr/bin/perl -w
-eval 'exec perl -S $0 ${1+"$@"}'
- if 0; #$running_under_some_shell
-
-# ======================================================================
-# splitindex.pl
-# Copyright (c) Markus Kohm, 2002-2009
-#
-# $Id: splitindex.pl,v 1.3 2009-03-20 14:55:11 mjk Exp $
-#
-# This file is part of the SplitIndex bundle.
-#
-# This work may be distributed and/or modified under the conditions of
-# the LaTeX Project Public License, version 1.3c of the license.
-# The latest version of this license is in
-# http://www.latex-project.org/lppl.txt
-# and version 1.3c or later is part of all distributions of LaTeX
-# version 2005/12/01 or later and of this work.
-#
-# This work has the LPPL maintenance status "author-maintained".
-#
-# The Current Maintainer and author of this work is Markus Kohm.
-#
-# The list of all files belongig to the SplitIndex bundle is given in
-# in the file `manifest.txt'. Files generated by means of unpacking the
-# distribution (using, for example, the docstrip program) or by means
-# of compiling them from a source file, for example, from splitindex.c
-# or splitindex.java may be distributed at the distributor's discretion.
-# However if they are distributed then a copy of the SplitIndex bundle
-# must be distributed together with them.
-#
-# The list of derived (unpacked or compiled) files belongig to the
-# distribution and covered by LPPL is defined by the unpacking scripts
-# (with extension .ins) and the installation script (with name
-# install.sh) which are part of the distribution.
-#
-# Two often ignorred clauses from LPPL 1.3c you should not ignore:
-# ----------------------------------------------------------------
-# 2. You may distribute a complete, unmodified copy of the Work as you
-# received it. Distribution of only part of the Work is considered
-# modification of the Work, and no right to distribute such a Derived
-# Work may be assumed under the terms of this clause.
-# 3. You may distribute a Compiled Work that has been generated from a
-# complete, unmodified copy of the Work as distributed under Clause 2
-# above, as long as that Compiled Work is distributed in such a way that
-# the recipients may install the Compiled Work on their system exactly
-# as it would have been installed if they generated a Compiled Work
-# directly from the Work.
-# ======================================================================
-
-use strict;
-use Getopt::Long;
-
-my $makeindex = "makeindex";
-# my $identify = "^(.*)\\\\UseIndex *\\{([^\\}]*)\\}(.*)\$";
-my $identify = "^(\\\\indexentry)\\[([^]]*)\\](.*)\$";
-my $suffixis = "-\$2";
-my $lineis = "\$1\$3";
-my $verbose = 0; # option verbose with default value
-my $result = GetOptions(
- 'help' => sub { help() },
- 'makeindex=s' => \$makeindex,
- 'identify=s' => \$identify,
- 'resultis=s' => \$lineis,
- 'suffixis=s' => \$suffixis,
- 'verbose|v+' => \$verbose,
- 'version' => sub { version(); exit 0; }
- );
-
-usage("missing raw index file") if ( $#ARGV < 0 );
-
-my $indexinput = shift;
-my $jobname = ( $indexinput =~ /^(.*)\.idx$/ ) ? $1 : $indexinput;
-
-my %idxfile;
-my %linesatidxfile;
-
-version() if ($verbose > 0);
-
-if ( !( open (IDX,"<$indexinput") ) ) {
- if ( $indexinput ne "$jobname.idx" ) {
- open (IDX,"<$jobname.idx") ||
- die "Cannot read raw index file $indexinput nor $jobname.idx";
- $indexinput = "$jobname.idx";
- } else {
- die "Cannot read raw index file $indexinput";
- }
-}
-
-while (<IDX>) {
- my $line;
- my $suffix;
- if ( /$identify/ ) {
- my $eval = "\$line = \"$lineis\n\"";
- eval $eval;
- $eval = "\$suffix = \"$suffixis\"";
- eval $eval;
- } else {
- $line = $_;
- $suffix = "";
- $suffix .= "$1" if ( $suffixis =~ /^(.*)\$/ );
- $suffix .= "idx";
- $suffix .= "$1" if ( $suffixis =~ /\$[123456789](.*)$/ );
- }
- while ( $suffix =~ /(^[^,]+)(.*)$/ ) {
- $suffix = $2;
- writetoidx ($1,$line);
- }
-}
-
-closeallind();
-
-close(IDX);
-
-generateallind(@ARGV);
-
-exit 0;
-
-sub generateallind {
- my $name;
- my $file;
-
- if ( $makeindex ne "" ) {
- while (($name,$file) = each %idxfile) {
- system( "$makeindex @ARGV $jobname$name.idx" );
- }
- }
-}
-
-sub closeallind {
- my $name;
- my $file;
- my $lines;
- while (($name,$file) = each %idxfile) {
- print "Close $jobname$name.idx\n"
- if ( $verbose > 1 );
- close( $file );
- $idxfile{$name}=0;
- }
- if ( $verbose > 0 ) {
- print "\n";
- while (($name,$lines) = each %linesatidxfile) {
- print "$jobname$name.idx with $lines lines\n";
- }
- }
-}
-
-sub writetoidx {
- my $suffix = $_[0];
- my $line = $_[1];
- my $file = $idxfile{$suffix};
- if ( ! $file ) {
- open ( $file, ">$jobname$suffix.idx" ) ||
- die "Cannot write to file $jobname$suffix.idx";
- $idxfile{$suffix} = $file;
- $linesatidxfile{$suffix} = 0;
- print( "New index file $jobname$suffix.idx\n" )
- if ( $verbose > 1 );
- }
- print ($file $line);
- $linesatidxfile{$suffix}++;
-}
-
-sub help {
- version();
- print "\n";
- usage();
- print
- "Split a single raw index file into multiple raw index files.\n".
- "Example: splitindex.pl foo.idx.\n".
- "\n".
- "Options:\n" .
- " -h, --help " .
- "\tshow this help and terminate\n" .
- " -m, --makeindex PROGNAME\n" .
- "\t\t\tcall PROGNAME instead of default \`makeindex\'.\n" .
- " -i, --identify EXPRESSION\n" .
- "\t\t\tuse regular EXPRESSION to match entries\n".
- "\t\t\t(see also option --resultis and --suffixis).\n".
- "\t\t\tDefault is \'$identify\'.\n".
- " -r, --resultis PATTERN\n" .
- "\t\t\tcreate line to be written from PATTERN after matching\n".
- "\t\t\tlines (see also option --identify).\n".
- "\t\t\tDefault is \'$lineis\'.\n".
- " -s, --suffixis PATTERN\n" .
- "\t\t\tcreate suffix to be used from PATTERN after matching\n".
- "\t\t\tlines (see also option --identify).\n".
- "\t\t\tDefault is \'$suffixis\'.\n".
- " -v, --verbose " .
- "\tbe more verbose\n".
- "\t\t\t(can be used multiple to increase verbosity)\n" .
- " --version " .
- "\tshow version and terminate\n";
- exit 0;
-}
-
-sub version {
- print "splitindex.pl 0.1\n" .
- "Copyright (c) 2002 Markus Kohm \<kohm\@gmx.de\>\n";
-}
-
-sub usage {
- my $text = "Usage: splitindex.pl [OPTION]... RAWINDEXFILE [MAKEINDEXOPTION]...\n";
- if ( $#_ >= 0 ) {
- print STDERR @_;
- print STDERR "\n$text";
- print STDERR "Try \`splitindex.pl --help\' for more information.\n";
- exit 1;
- } else {
- print $text;
- }
-}