#!/usr/bin/env texlua -- splitindex.tlu -- Copyright (c) Markus Kohm, 2013-2014 -- -- $Id: splitindex_main.tlu 4 2016-02-18 10:13:32Z mjk $ -- -- 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. local version_number = string.sub( '$Revision: 4 $', 12, -2 ) local action_version = ' r'..version_number..'\n'..[[ Copyright (c) 2013 Markus Kohm. License: lppl 1.3c or later. See . ]] local action_help = [[ options: -h, --help Print this help message. -i, --identify Setup the regular expression to match the entries. -m, --makeindex Use instead of `makeindex'. -r, --resultis Create line to be written from after matching. -s, --suffixis Create suffix to be used from after matching. -v, --verbose Be more verbose. -V,--version Print the version information. ]] local action_opts = { ['-h'] = 'help', ['--help'] = 'help', ['-i'] = 'identify', ['--identify'] = 'identify', ['-m'] = 'makeindex', ['--makeindex'] = 'makeindex', ['-r'] = 'resultis', ['--resultis'] = 'resultis', ['-s'] = 'suffixis', ['--suffixis'] = 'suffixis', ['-v'] = 'verbose', ['--verbose'] = 'verbose', ['-V'] = 'version', ['--version'] = 'version', ['--'] = '--', } local identify = '^(\\indexentry)%[([^]]*)%](.*)$' local makeindex = 'makeindex' local resultis = '%1%3' local suffixis = '-%2' local verbose = 0 while arg[1] do local action = action_opts[arg[1]] if action == '--' then table.remove(arg,1) break elseif action == 'help' then print( arg[0]..action_version ) print( 'Usage: ' .. arg[0] .. ' -h/--help' ) print( ' ' .. arg[0] .. ' -V/--version' ) print( ' ' .. arg[0] .. ' [