summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
authorPeter Breitenlohner <peb@mppmu.mpg.de>2010-06-21 09:36:48 +0000
committerPeter Breitenlohner <peb@mppmu.mpg.de>2010-06-21 09:36:48 +0000
commit1efa14e2e1f024becea5065a626e683438774c25 (patch)
tree8eb146aa6035c641d3a173d03fa2fb64a0e80244 /Master
parentfe05969b87105145327d1c828ab4e8770c0da544 (diff)
xindy update
git-svn-id: svn://tug.org/texlive/trunk@19092 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rwxr-xr-xMaster/texmf/scripts/xindy/xindy.pl18
1 files changed, 14 insertions, 4 deletions
diff --git a/Master/texmf/scripts/xindy/xindy.pl b/Master/texmf/scripts/xindy/xindy.pl
index 1913b316a33..444dfdc3d10 100755
--- a/Master/texmf/scripts/xindy/xindy.pl
+++ b/Master/texmf/scripts/xindy/xindy.pl
@@ -339,6 +339,7 @@ use POSIX qw(uname);
our $is_TL = ( 'yes' eq 'yes' );
our $is_w32 = ( $OSNAME =~ /^MSWin/i ) ;
+our $path_sep = ( $is_w32 ? ';' : ':' ) ;
our $is_windows = ( $is_w32 || $OSNAME eq 'cygwin' ) ;
our $clisp = ( $is_windows ? 'clisp.exe' : 'clisp' ) ;
our $real_cmd = Cwd::realpath($0);
@@ -676,7 +677,7 @@ sub filter_index ( $$ ) {
# Construct final xindy expression, from options.
sub xindy_expression () {
- my ($logging, $tracing, $trace_level);
+ my ($logging, $tracing, $trace_level, $searchpath);
# Determine language module of make-rules framework. Part of the
# complexity below is from compatibility with the TLC2
@@ -744,16 +745,18 @@ sub xindy_expression () {
$style_file = quotify($style_file);
$outfile = quotify($outfile);
+ $raw_index = quotify($raw_index);
$logging = ':logfile ' . quotify($logfile) if $logfile;
$tracing = ':markup-trace :on' if $debug{markup};
$trace_level = ":trace-level $debug{trace_level}" if $debug{trace_level};
+ $searchpath = quotify(join($path_sep, ".", $modules_dir, "$modules_dir/base"));
my $exp = <<_EOT_
(progn
- (searchpath ".:$modules_dir:$modules_dir/base")
+ (searchpath $searchpath)
(xindy:startup
:idxstyle $style_file
- :rawindex "$raw_index"
+ :rawindex $raw_index
:output $outfile
$logging
$tracing
@@ -774,6 +777,13 @@ sub call_xindy ( $$ ) {
my @command = ($clisp, '-M', $mem_file, '-E', 'iso-8859-1');
if ( $interactive ) {
print "Proposed xindy expression:\n\n$xindy_exp\n" unless $quiet;
+ } elsif ($is_w32) {
+ my ($output, $outfile) = tempfile();
+ push (@temp_files, $outfile);
+ print $output $xindy_exp;
+ close ($output);
+ print "xindy startup file: $outfile\n" if $debug{script};
+ push (@command, "$outfile");
} else {
push (@command, '-x', $xindy_exp);
}
@@ -835,7 +845,7 @@ sub output_xindy_release () {
sub quotify ( $ ) {
my $s = shift;
- $s =~ s:[\\\"]:\\&1:g ; # quote double-quote and backslash
+ $s =~ s:([\\\"]):\\$1:g ;
return "\"$s\"";
}