summaryrefslogtreecommitdiff
path: root/Build
diff options
context:
space:
mode:
authorTakuji Tanaka <ttk@t-lab.opal.ne.jp>2021-06-06 13:45:27 +0000
committerTakuji Tanaka <ttk@t-lab.opal.ne.jp>2021-06-06 13:45:27 +0000
commit176ef813ba47a492d916989001a2269b4f7ec3c7 (patch)
treee96f81acc171d674812c5b917b2fc0d7331559da /Build
parent79a47698484a9289c56dbfbc4a5e0e4aef4fc582 (diff)
mendex: v3.5, accept multiple number of style files
git-svn-id: svn://tug.org/texlive/trunk@59487 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build')
-rw-r--r--Build/source/texk/mendexk/ChangeLog11
-rwxr-xr-xBuild/source/texk/mendexk/configure22
-rw-r--r--Build/source/texk/mendexk/configure.ac2
-rw-r--r--Build/source/texk/mendexk/main.c25
-rw-r--r--Build/source/texk/mendexk/mendex.121
-rw-r--r--Build/source/texk/mendexk/mendex.1.ja17
-rw-r--r--Build/source/texk/mendexk/mendex.ja.txt19
-rw-r--r--Build/source/texk/mendexk/styfile.c4
-rwxr-xr-xBuild/source/texk/mendexk/tests/mendex.test6
-rw-r--r--Build/source/texk/mendexk/tests/uni1.ist6
-rw-r--r--Build/source/texk/mendexk/tests/uni2.ist6
-rw-r--r--Build/source/texk/mendexk/version.h2
12 files changed, 94 insertions, 47 deletions
diff --git a/Build/source/texk/mendexk/ChangeLog b/Build/source/texk/mendexk/ChangeLog
index 403b8a487f8..3d0e4fb5f4a 100644
--- a/Build/source/texk/mendexk/ChangeLog
+++ b/Build/source/texk/mendexk/ChangeLog
@@ -1,3 +1,14 @@
+2021-06-06 TANAKA Takuji <ttk@t-lab.opal.ne.jp>
+
+ * configure.ac, version.h:
+ Version 3.5 [6-Jun-2021].
+ * main.c, styfile.c:
+ Accept multiple numbers of style files by option '-s'.
+ * tests/mendex.test, tests/uni[12].ist:
+ Add a new test.
+ * mendex.1{,ja}, mendex.ja.txt:
+ Update documents.
+
2021-05-19 TANAKA Takuji <ttk@t-lab.opal.ne.jp>
* main.c, configure.ac, version.h:
diff --git a/Build/source/texk/mendexk/configure b/Build/source/texk/mendexk/configure
index 46a87f38cdd..4ce4c2f2479 100755
--- a/Build/source/texk/mendexk/configure
+++ b/Build/source/texk/mendexk/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for mendex (TeX Live) 3.4.
+# Generated by GNU Autoconf 2.69 for mendex (TeX Live) 3.5.
#
#
# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@@ -587,8 +587,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='mendex (TeX Live)'
PACKAGE_TARNAME='mendex--tex-live-'
-PACKAGE_VERSION='3.4'
-PACKAGE_STRING='mendex (TeX Live) 3.4'
+PACKAGE_VERSION='3.5'
+PACKAGE_STRING='mendex (TeX Live) 3.5'
PACKAGE_BUGREPORT=''
PACKAGE_URL=''
@@ -1329,7 +1329,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures mendex (TeX Live) 3.4 to adapt to many kinds of systems.
+\`configure' configures mendex (TeX Live) 3.5 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1400,7 +1400,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of mendex (TeX Live) 3.4:";;
+ short | recursive ) echo "Configuration of mendex (TeX Live) 3.5:";;
esac
cat <<\_ACEOF
@@ -1521,7 +1521,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-mendex (TeX Live) configure 3.4
+mendex (TeX Live) configure 3.5
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2173,7 +2173,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by mendex (TeX Live) $as_me 3.4, which was
+It was created by mendex (TeX Live) $as_me 3.5, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -7855,7 +7855,7 @@ fi
# Define the identity of the package.
PACKAGE='mendex--tex-live-'
- VERSION='3.4'
+ VERSION='3.5'
# Some tools Automake needs.
@@ -13907,7 +13907,7 @@ Usage: $0 [OPTIONS]
Report bugs to <bug-libtool@gnu.org>."
lt_cl_version="\
-mendex (TeX Live) config.lt 3.4
+mendex (TeX Live) config.lt 3.5
configured by $0, generated by GNU Autoconf 2.69.
Copyright (C) 2011 Free Software Foundation, Inc.
@@ -15516,7 +15516,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by mendex (TeX Live) $as_me 3.4, which was
+This file was extended by mendex (TeX Live) $as_me 3.5, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -15582,7 +15582,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-mendex (TeX Live) config.status 3.4
+mendex (TeX Live) config.status 3.5
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
diff --git a/Build/source/texk/mendexk/configure.ac b/Build/source/texk/mendexk/configure.ac
index 2a8992b345c..3cd4d8788ae 100644
--- a/Build/source/texk/mendexk/configure.ac
+++ b/Build/source/texk/mendexk/configure.ac
@@ -8,7 +8,7 @@ dnl This file is free software; the copyright holder
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
dnl
-AC_INIT([mendex (TeX Live)], [3.4])
+AC_INIT([mendex (TeX Live)], [3.5])
AC_PREREQ([2.63])
AC_CONFIG_SRCDIR([main.c])
AC_CONFIG_AUX_DIR([../../build-aux])
diff --git a/Build/source/texk/mendexk/main.c b/Build/source/texk/mendexk/main.c
index 697c4954c72..28f9ae97d36 100644
--- a/Build/source/texk/mendexk/main.c
+++ b/Build/source/texk/mendexk/main.c
@@ -9,7 +9,7 @@
#include "kp.h"
-char *styfile,*idxfile[256],*indfile,*dicfile,*logfile;
+char *styfile[64],*idxfile[256],*indfile,*dicfile,*logfile;
/* default paths */
#ifndef DEFAULT_INDEXSTYLES
@@ -22,7 +22,7 @@ KpathseaSupportInfo kp_ist,kp_dict;
int main(int argc, char **argv)
{
- int i,j,cc=0,startpagenum=-1,ecount=0,chkopt=1;
+ int i,j,k,cc=0,startpagenum=-1,ecount=0,chkopt=1;
const char *envbuff;
char *p;
@@ -60,7 +60,7 @@ int main(int argc, char **argv)
/* check options */
- for (i=1,j=0;i<argc && j<256;i++) {
+ for (i=1,j=k=0;i<argc && j<256;i++) {
if ((argv[i][0]=='-')&&(strlen(argv[i])>=2)&&chkopt) {
switch (argv[i][1]) {
case 'c':
@@ -141,12 +141,17 @@ int main(int argc, char **argv)
break;
case 's':
+ if (k==64) {
+ fprintf (stderr, "Too many style files.\n");
+ exit(255);
+ }
if ((argv[i][2]=='\0')&&(i+1<argc)) {
- styfile=xstrdup(argv[++i]);
+ styfile[k]=xstrdup(argv[++i]);
}
else {
- styfile=xstrdup(&argv[i][2]);
+ styfile[k]=xstrdup(&argv[i][2]);
}
+ k++;
break;
case 'v':
@@ -228,10 +233,10 @@ int main(int argc, char **argv)
if (idxcount==0) idxcount=fsti=1;
- if (styfile==NULL) {
+ if (styfile[0]==NULL) {
envbuff=kpse_var_value("INDEXDEFAULTSTYLE");
if (envbuff!=NULL) {
- styfile=xstrdup(envbuff);
+ styfile[0]=xstrdup(envbuff);
}
}
@@ -265,8 +270,6 @@ int main(int argc, char **argv)
logfile=xstrdup("stderr");
}
- if (styfile!=NULL) styread(styfile);
-
if (strcmp(argv[0],"makeindex")==0) {
verb_printf(efp,"This is Not `MAKEINDEX\', But `MENDEX\' %s (%s) (%s).\n",
VERSION, get_enc_string(), TL_VERSION);
@@ -280,6 +283,10 @@ int main(int argc, char **argv)
initkanatable();
+ for (k=0;styfile[k]!=NULL;k++) {
+ styread(styfile[k]);
+ }
+
/* read dictionary */
ecount+=dicread(dicfile);
diff --git a/Build/source/texk/mendexk/mendex.1 b/Build/source/texk/mendexk/mendex.1
index 36b4f4da603..f19ac864333 100644
--- a/Build/source/texk/mendexk/mendex.1
+++ b/Build/source/texk/mendexk/mendex.1
@@ -47,9 +47,9 @@ and ignore leading and trailing blank(s).
By default, blanks in the index key are retained.
.TP 10
\fB-g\fR
-Make Japanese index head \fIA\fR-line (\fIA, Ka, Sa, ...\fR) of the gojuon table (Japanese
-syllabary). By default, all the characters in the gojuon table
-are used.
+Make Japanese index head \fIA\fR-line (\fIA, Ka, Sa, ...\fR; 10 characters)
+of the \fIgojuon\fR table (Japanese syllabary). By default, all 48 characters
+in the \fIgojuon\fR table are used.
.TP 10
\fB-f\fR
Force to output Kanji characters even non-existent in dictionaries.
@@ -99,6 +99,7 @@ Show summary of options.
.TP 10
\fB--\fR
Arguments after \fB--\fR are not taken as options.
+This is useful when the input file name starts with '-'.
.SH "STYLE FILE"
The style file informs \fImendex\fR about the format of the
@@ -116,7 +117,7 @@ A line begun by \'%\' is a comment.
\fBkeyword\fR <string>
"\\\\indexentry"
.RS
-Command with an argument of index entry.
+Command with an argument of index entry which is going to be processed.
.RE
.TP 30
\fBarg_open\fR <char>
@@ -230,7 +231,7 @@ Prefix of heading for newly appeared heading letter.
\fBheading_prefix\fR <string>
""
.RS
-Same as \fBlethead_prefix\fR.
+Same as \fBlethead_prefix\fR. (compatible with makeindex)
.RE
.TP 30
\fBlethead_suffix\fR <string>
@@ -242,7 +243,7 @@ Suffix of heading for newly appeared heading letter.
\fBheading_suffix\fR <string>
""
.RS
-Same as \fBlethead_suffix\fR.
+Same as \fBlethead_suffix\fR. (compatible with makeindex)
.RE
.TP 30
\fBlethead_flag\fR <number>
@@ -255,7 +256,7 @@ Flag to control output of heading letters.
\fBheading_flag\fR <number>
0
.RS
-Same as \fBlethead_flag\fR.
+Same as \fBlethead_flag\fR. (Note: makeindex uses a different name \fBheadings_flag\fR)
.RE
.TP 30
\fBitem_0\fR <string>
@@ -458,11 +459,13 @@ Japanese sequence and non-Japanese sequence in sorting procedure.
.RE
.TP 30
\fBcharacter_order\fR <string>
-"SEJ"
+"SNEJ"
.RS
Order of scripts and symbols.
-\'S\', \'E\' and \'J\' respectively denotes symbol, English and Japanese.
+\'S\', \'N\', \'E\' and \'J\' respectively denotes symbol, numbers, English and Japanese.
(Extended by mendex)
+Please make sure that \'S\' and \'N\' are next to each other,
+since \fBmendex\fR considers numbers as part of symbol.
.RE
.PP
.SH ABOUT JAPANESE PROCESSING
diff --git a/Build/source/texk/mendexk/mendex.1.ja b/Build/source/texk/mendexk/mendex.1.ja
index 25b3a9a53d3..ecf2cbe3577 100644
--- a/Build/source/texk/mendexk/mendex.1.ja
+++ b/Build/source/texk/mendexk/mendex.1.ja
@@ -36,7 +36,7 @@ mendex \- 索引整形ツール
スペースやタブといったブランクを短縮して、すべて1個の半角スペースにします。また、前後のブランクは削除されます。
.TP 10
\fB-g\fR
-日本語の頭文字の区切りを "あかさた・・・わ" にします。指定しないと "あいうえ・・・わをん" になります。
+日本語の頭文字の区切りを "あかさた・・・わ" にします。指定しないと "あいうえ・・・わゐゑをん" になります。
.TP 10
\fB-f\fR
辞書ファイルにない漢字も強制的に出力するモードです。
@@ -77,6 +77,7 @@ mendex \- 索引整形ツール
.TP 10
\fB--\fR
以降はオプション文字列と解釈しません。
+これは,ファイル名の先頭の文字が '-' であるファイルを扱う場合に有用です。
.SH スタイルファイル
@@ -89,7 +90,7 @@ mendex \- 索引整形ツール
\fBkeyword\fR <文字列>
"\\\\indexentry"
.RS
-索引エントリを引数として持つコマンド。
+処理対象とする索引エントリを引数として持つコマンド。
.RE
.TP 30
\fBarg_open\fR <文字>
@@ -199,7 +200,7 @@ mendexのパラメータ文字に対するエスケープキャラクタ。
\fBheading_prefix\fR <文字列>
""
.RS
-lethead_prefixと同じ。
+lethead_prefixと同じ。(makeindex互換)
.RE
.TP 30
\fBlethead_suffix\fR <文字列>
@@ -211,7 +212,7 @@ lethead_prefixと同じ。
\fBheading_suffix\fR <文字列>
""
.RS
-lethead_suffixと同じ。
+lethead_suffixと同じ。(makeindex互換)
.RE
.TP 30
\fBlethead_flag\fR <数値>
@@ -223,7 +224,7 @@ lethead_suffixと同じ。
\fBheading_flag\fR <数値>
0
.RS
-lethead_flagと同じ。
+lethead_flagと同じ。makeindexではheadings_flagという名称のため、互換性がありません。
.RE
.TP 30
\fBitem_0\fR <文字列>
@@ -403,9 +404,11 @@ symbol_flag が0でない場合に、数字・記号の頭文字として出力
.RE
.TP 30
\fBcharacter_order\fR <文字列>
-"SEJ"
+"SNEJ"
.RS
-記号、英字、日本語の優先順位。\'S\'は記号、\'E\'は英字、\'J\'は日本語を表す。(mendex専用)
+記号、英字、日本語の優先順位。
+\'S\'は記号、\'N\'は数字、\'E\'は英字、\'J\'は日本語を表す。(mendex専用)
+mendexでは索引項目の分類として「数字」は「記号」に含める仕様としていますので、\'S\'と\'N\'は必ず隣り合わせてください(数字と数字以外の記号の順序入れ替えは可能です)。
.RE
.PP
.SH 日本語の扱いについて
diff --git a/Build/source/texk/mendexk/mendex.ja.txt b/Build/source/texk/mendexk/mendex.ja.txt
index 3964ad9a65e..73586ad5207 100644
--- a/Build/source/texk/mendexk/mendex.ja.txt
+++ b/Build/source/texk/mendexk/mendex.ja.txt
@@ -34,7 +34,7 @@ mendex - 索引整形ツール
します。また、前後のブランクは削除されます。
-g 日本語の頭文字の区切りを "あかさた・・・わ" にします。指定しないと
- "あいうえ・・・わをん" になります。
+ "あいうえ・・・わゐゑをん" になります。
-f 辞書ファイルにない漢字も強制的に出力するモードです。
@@ -75,6 +75,7 @@ mendex - 索引整形ツール
--help オプションの要約を表示します。
-- 以降はオプション文字列と解釈しません。
+ これは,ファイル名の先頭の文字が '-' であるファイルを扱う場合に有用です。
スタイルファイル
@@ -86,7 +87,7 @@ mendex - 索引整形ツール
入力ファイルスタイルパラメータ
keyword <文字列>
"\\indexentry"
- 索引エントリを引数として持つコマンド。
+ 処理対象とする索引エントリを引数として持つコマンド。
arg_open <文字>
'{'
@@ -161,7 +162,7 @@ mendex - 索引整形ツール
heading_prefix <文字列>
""
- lethead_prefixと同じ。
+ lethead_prefixと同じ。(makeindex互換)
lethead_suffix <文字列>
""
@@ -169,7 +170,7 @@ mendex - 索引整形ツール
heading_suffix <文字列>
""
- lethead_suffixと同じ。
+ lethead_suffixと同じ。(makeindex互換)
lethead_flag <数値>
0
@@ -179,6 +180,7 @@ mendex - 索引整形ツール
heading_flag <数値>
0
lethead_flagと同じ。
+ makeindexではheadings_flagという名称のため、互換性がありません。
item_0 <文字列>
"\n \\item "
@@ -306,9 +308,12 @@ mendex - 索引整形ツール
英字と日本語との間に半角スペースを入れた状態でソートする。(mendex専用)
character_order <文字列>
- "SEJ"
- 記号、英字、日本語の優先順位。'S'は記号、'E'は英字、'J'は日本語を表す。
- (mendex専用)
+ "SNEJ"
+ 記号、英字、日本語の優先順位。'S'は記号、'N'は数字、'E'は英字、'J'は
+ 日本語を表す。(mendex専用)
+ mendexでは索引項目の分類として「数字」は「記号」に含める仕様としています
+ ので、'S'と'N'は必ず隣り合わせてください
+ (数字と数字以外の記号の順序入れ替えは可能です)。
日本語の扱いについて
diff --git a/Build/source/texk/mendexk/styfile.c b/Build/source/texk/mendexk/styfile.c
index 387182f3a12..1a92516e190 100644
--- a/Build/source/texk/mendexk/styfile.c
+++ b/Build/source/texk/mendexk/styfile.c
@@ -48,6 +48,7 @@ void styread(const char *filename)
fprintf(stderr,"%s does not exist.\n",filename);
exit(0);
}
+ verb_printf(efp,"Scanning style file %s.",filename);
for (i=0;;i++) {
if (fgets(buff,4095,fp)==NULL) break;
@@ -130,12 +131,13 @@ void styread(const char *filename)
letter_head=atoi(&buff[cc]);
continue;
}
- if (getparam(buff,"atama",atama)) continue;
if (getparam(buff,"page_compositor",page_compositor)) continue;
if (getparam(buff,"page_precedence",page_precedence)) continue;
if (getparam(buff,"character_order",character_order)) continue;
}
nkf_close(fp);
+
+ verb_printf(efp,"...done.\n");
}
/* analize string parameter of style file */
diff --git a/Build/source/texk/mendexk/tests/mendex.test b/Build/source/texk/mendexk/tests/mendex.test
index 26441808bf4..1641ee898b8 100755
--- a/Build/source/texk/mendexk/tests/mendex.test
+++ b/Build/source/texk/mendexk/tests/mendex.test
@@ -7,7 +7,7 @@
TEXMFCNF=$srcdir/../kpathsea
export TEXMFCNF
-rm -f foo.* uni.* pprec*.*
+rm -f foo.* uni.* pprec*.* rangetwo.*
./mendex $srcdir/tests/foo.idx -o foo.ind1 -t foo.ilg1 \
&& diff $srcdir/tests/foo.ind foo.ind1 || exit 1
@@ -24,6 +24,10 @@ cat $srcdir/tests/uni.idx | \
>uni.ind2 2>uni.ilg2 \
&& diff $srcdir/tests/uni.ind uni.ind2 || exit 1
+./mendex -U -d $srcdir/tests/uni.dict -s $srcdir/tests/uni1.ist -s $srcdir/tests/uni2.ist \
+ $srcdir/tests/uni.idx -o uni.ind3 -t uni.ilg3 \
+ && diff $srcdir/tests/uni.ind uni.ind3 || exit 1
+
# test for two-element range suffix_2p
./mendex -s $srcdir/tests/rangetwo.ist $srcdir/tests/rangetwo.idx \
-o rangetwo.ind1 -t rangetwo.ilg \
diff --git a/Build/source/texk/mendexk/tests/uni1.ist b/Build/source/texk/mendexk/tests/uni1.ist
new file mode 100644
index 00000000000..8e733435cac
--- /dev/null
+++ b/Build/source/texk/mendexk/tests/uni1.ist
@@ -0,0 +1,6 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
diff --git a/Build/source/texk/mendexk/tests/uni2.ist b/Build/source/texk/mendexk/tests/uni2.ist
new file mode 100644
index 00000000000..5e1492fde69
--- /dev/null
+++ b/Build/source/texk/mendexk/tests/uni2.ist
@@ -0,0 +1,6 @@
+% -*- coding: utf-8 -*-
+
+lethead_flag 1
+lethead_prefix "\n\\centerline{\\bfseries ◆◆◆ "
+lethead_suffix " ◆◆◆}\\par\\nobreak"
+
diff --git a/Build/source/texk/mendexk/version.h b/Build/source/texk/mendexk/version.h
index 1be36707286..f55a056b0c3 100644
--- a/Build/source/texk/mendexk/version.h
+++ b/Build/source/texk/mendexk/version.h
@@ -1,2 +1,2 @@
-#define VERSION "version " PACKAGE_VERSION " [19-May-2021]"
+#define VERSION "version " PACKAGE_VERSION " [6-Jun-2021]"
#define BUG_ADDRESS "issue@texjp.org"