summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/scripts/xindy/texindy.pl
diff options
context:
space:
mode:
authorPeter Breitenlohner <peb@mppmu.mpg.de>2014-04-28 13:32:45 +0000
committerPeter Breitenlohner <peb@mppmu.mpg.de>2014-04-28 13:32:45 +0000
commit9ef0ad52f596026c1e545be621232e76cf2ef45a (patch)
tree3a47769ca0e2ad17fbf55c8a79950e79a023e4ee /Master/texmf-dist/scripts/xindy/texindy.pl
parente6fefd95977da2f1aa1a512a3fcc871681deb59c (diff)
Update scripts from source tree
git-svn-id: svn://tug.org/texlive/trunk@33721 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/scripts/xindy/texindy.pl')
-rwxr-xr-xMaster/texmf-dist/scripts/xindy/texindy.pl52
1 files changed, 43 insertions, 9 deletions
diff --git a/Master/texmf-dist/scripts/xindy/texindy.pl b/Master/texmf-dist/scripts/xindy/texindy.pl
index 28a7e0a4dd7..7a62a9f241a 100755
--- a/Master/texmf-dist/scripts/xindy/texindy.pl
+++ b/Master/texmf-dist/scripts/xindy/texindy.pl
@@ -1,5 +1,5 @@
#!/usr/bin/env perl
-# $Id: texindy,v 1.11 2010/05/10 23:39:24 jschrod Exp $
+# $Id: texindy,v 1.13 2011/01/18 22:18:29 jschrod Exp $
#------------------------------------------------------------
# (history at end)
@@ -41,6 +41,9 @@ by xindy modules, with a convenient set already preloaded.
Files with the raw index are passed as arguments. If no arguments are
passed, the raw index will be read from standard input.
+B<Do not use texindy with XeLaTeX or LuaLaTeX!> When you use these
+LaTeX engines, you must use B<xindy -C utf8 -M texindy -M page-ranges> instead.
+
A good introductionary description of B<texindy> appears in the
indexing chapter of the LaTeX Companion (2nd ed.)
@@ -49,9 +52,7 @@ markup, the command xindy(1) is probably more of interest for you.
B<texindy> is an approach to merge support for the I<make-rules>
framework, own xindy modules (e.g., for special LaTeX commands in the
-index), and a reasonable level of MakeIndex compatibility. There are
-other older approaches, eventually they will get a description on the
-xindy Web Site, http://www.xindy.org/.
+index), and a reasonable level of MakeIndex compatibility.
=head1 OPTIONS
@@ -110,9 +111,18 @@ encoding, in that order.
=item C<--codepage> I<enc> / B <-C> I<enc>
-The raw input is in input encoding I<enc>. This information is used to
-select the correct xindy sort module and also the I<inputenc> target
-encoding for C<latex> input markup.
+B<texindy>'s raw input is always assumed to be encoded in LaTeX
+Internal Character Representation (LICR). I.e., non-ASCII characters
+are encoded as command sequences. This option tells xindy the encoding
+it shall use internally for sorting.
+
+Effectively, you need this option to specify the encoding of letter
+group headings.
+
+Encoding C<utf8> is only supported for Latin alphabets. But if you use
+non-Latin alphabets, you probably use XeLaTeX or LuaLaTeX and then you
+must not use B<texindy> anyhow. Then direct usage of B<xindy> is
+appropriate.
When C<omega> input markup is used, C<utf8> is always used as the sort
codepage and no inputenc module is loaded. Then this option is
@@ -292,6 +302,22 @@ should please contact the author.
=item *
+If you have an index rage and a location attribute, e.g.,
+C<\index{key\(attr}> starts the range, one needs (1) to specify that
+attribute in the range closing entry as well (i.e., as
+C<\index{key\)attr}>) and (2) one needs to declare the index attribute
+in an B<xindy> style file.
+
+MakeIndex will output the markup C<\attr{page1--page2}> for such a
+construct. This is not possible to achieve in B<xindy>, output will be
+C<\attrMarkup{page1}--\attrMarkup{page2}>. (This is actually
+considered a bug, but not a high priority one.)
+
+The difference between MakeIndex page number tags and B<xindy>
+location attributes was already explained in the previous item.
+
+=item *
+
The MakeIndex compatibility definitions support only the default raw
index syntax and markup definition. It is not possible to configure
raw index parsing or use a MakeIndex style file to describe output
@@ -340,7 +366,7 @@ GNU General Public License for more details.
use strict;
use English qw(-no_match_vars);
-our $VERSION = sprintf "%d.%02d", q$Revision: 1.11 $ =~ /: (\d+)\.(\d+)/ ;
+our $VERSION = sprintf "%d.%02d", q$Revision: 1.13 $ =~ /: (\d+)\.(\d+)/ ;
# Used modules.
@@ -410,7 +436,8 @@ sub usage ( ;$ )
{
my $exit_code = shift;
$exit_code += 0; # turn undef into 0
- print STDERR <<_EOT_
+ my $out = ( $exit_code ? *STDERR : *STDOUT );
+ print $out <<_EOT_
usage: $cmd [-V?h] [-qv] [-iglr] [-d magic] [-o outfile.ind] [-t log] \\
[-L lang] [-C codepage] [-M module] [-I input] [idx0 idx1 ...]
@@ -598,6 +625,13 @@ sub output_xindy_release () {
#======================================================================
#
# $Log: texindy,v $
+# Revision 1.13 2011/01/18 22:18:29 jschrod
+# Document the range raw markup incompatibility with MakeIndex.
+# (Bug ticket 998541)
+#
+# Revision 1.12 2010/08/12 00:16:01 jschrod
+# Output help message on stdout if there's no error.
+#
# Revision 1.11 2010/05/10 23:39:24 jschrod
# Incorporate TeX-Live patches from Vladimir Volovich and Peter
# Breitenlohner: Support for TL installation scheme, support for Mac OS