texlive[60547] Build/source/texk/makeindexk: makeindex: improve

commits+takuji at tug.org commits+takuji at tug.org
Sun Sep 19 10:43:58 CEST 2021


Revision: 60547
          http://tug.org/svn/texlive?view=revision&revision=60547
Author:   takuji
Date:     2021-09-19 10:43:57 +0200 (Sun, 19 Sep 2021)
Log Message:
-----------
makeindex: improve detection of page number types

Modified Paths:
--------------
    trunk/Build/source/texk/makeindexk/ChangeLog
    trunk/Build/source/texk/makeindexk/configure
    trunk/Build/source/texk/makeindexk/configure.ac
    trunk/Build/source/texk/makeindexk/mkind.h
    trunk/Build/source/texk/makeindexk/scanid.c
    trunk/Build/source/texk/makeindexk/scanid.h
    trunk/Build/source/texk/makeindexk/scanst.c
    trunk/Build/source/texk/makeindexk/tests/makeindex.test

Added Paths:
-----------
    trunk/Build/source/texk/makeindexk/tests/pprec0.ist
    trunk/Build/source/texk/makeindexk/tests/pprec1.ist
    trunk/Build/source/texk/makeindexk/tests/pprec2.ist
    trunk/Build/source/texk/makeindexk/tests/pprec3.ist
    trunk/Build/source/texk/makeindexk/tests/pprec4.ist
    trunk/Build/source/texk/makeindexk/tests/pprecA-0.ind
    trunk/Build/source/texk/makeindexk/tests/pprecA-1.ind
    trunk/Build/source/texk/makeindexk/tests/pprecA-2.ind
    trunk/Build/source/texk/makeindexk/tests/pprecA.idx
    trunk/Build/source/texk/makeindexk/tests/pprecB-3.ind
    trunk/Build/source/texk/makeindexk/tests/pprecB-4.ind
    trunk/Build/source/texk/makeindexk/tests/pprecB.idx
    trunk/Build/source/texk/makeindexk/tests/range.idx
    trunk/Build/source/texk/makeindexk/tests/range1.ind
    trunk/Build/source/texk/makeindexk/tests/range1.ist
    trunk/Build/source/texk/makeindexk/tests/range2.ind
    trunk/Build/source/texk/makeindexk/tests/range2.ist
    trunk/Build/source/texk/makeindexk/tests/range3.ind
    trunk/Build/source/texk/makeindexk/tests/range3.ist

Modified: trunk/Build/source/texk/makeindexk/ChangeLog
===================================================================
--- trunk/Build/source/texk/makeindexk/ChangeLog	2021-09-19 07:31:32 UTC (rev 60546)
+++ trunk/Build/source/texk/makeindexk/ChangeLog	2021-09-19 08:43:57 UTC (rev 60547)
@@ -1,3 +1,14 @@
+2021-09-19  TANAKA Takuji  <ttk at t-lab.opal.ne.jp>
+
+	* mkind.h, scanid.[ch], scanst.c:
+	Fix a bug about detection of page number types.
+	Default string "rnaRA" for page_precedence was not initialized.
+	Improve heuristic detection of page number types.
+	* tests/makeindex.test, tests/range.idx, tests/range[123].{ind,ist},
+	tests/pprec[AB].idx, tests/pprec[01234].ist, tests/pprec[AB]-[01234].ind:
+	Add new tests. These are compatible with (up)mendex.
+	* configure.ac, mkind.h: Bump version to 2.16
+
 2019-11-01  Karl Berry  <karl at tug.org>
 
 	* mkindex: "quote" arguments, doc tweaks.

Modified: trunk/Build/source/texk/makeindexk/configure
===================================================================
--- trunk/Build/source/texk/makeindexk/configure	2021-09-19 07:31:32 UTC (rev 60546)
+++ trunk/Build/source/texk/makeindexk/configure	2021-09-19 08:43:57 UTC (rev 60547)
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.71 for makeindex (TeX Live) 2.15.
+# Generated by GNU Autoconf 2.71 for makeindex (TeX Live) 2.16.
 #
 # Report bugs to <tex-k at tug.org>.
 #
@@ -629,8 +629,8 @@
 # Identity of this package.
 PACKAGE_NAME='makeindex (TeX Live)'
 PACKAGE_TARNAME='makeindex--tex-live-'
-PACKAGE_VERSION='2.15'
-PACKAGE_STRING='makeindex (TeX Live) 2.15'
+PACKAGE_VERSION='2.16'
+PACKAGE_STRING='makeindex (TeX Live) 2.16'
 PACKAGE_BUGREPORT='tex-k at tug.org'
 PACKAGE_URL=''
 
@@ -1374,7 +1374,7 @@
   # 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 makeindex (TeX Live) 2.15 to adapt to many kinds of systems.
+\`configure' configures makeindex (TeX Live) 2.16 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1446,7 +1446,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of makeindex (TeX Live) 2.15:";;
+     short | recursive ) echo "Configuration of makeindex (TeX Live) 2.16:";;
    esac
   cat <<\_ACEOF
 
@@ -1565,7 +1565,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-makeindex (TeX Live) configure 2.15
+makeindex (TeX Live) configure 2.16
 generated by GNU Autoconf 2.71
 
 Copyright (C) 2021 Free Software Foundation, Inc.
@@ -2089,7 +2089,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by makeindex (TeX Live) $as_me 2.15, which was
+It was created by makeindex (TeX Live) $as_me 2.16, which was
 generated by GNU Autoconf 2.71.  Invocation command line was
 
   $ $0$ac_configure_args_raw
@@ -8411,7 +8411,7 @@
 
 # Define the identity of the package.
  PACKAGE='makeindex--tex-live-'
- VERSION='2.15'
+ VERSION='2.16'
 
 
 # Some tools Automake needs.
@@ -14563,7 +14563,7 @@
 Report bugs to <bug-libtool at gnu.org>."
 
 lt_cl_version="\
-makeindex (TeX Live) config.lt 2.15
+makeindex (TeX Live) config.lt 2.16
 configured by $0, generated by GNU Autoconf 2.71.
 
 Copyright (C) 2011 Free Software Foundation, Inc.
@@ -16219,7 +16219,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by makeindex (TeX Live) $as_me 2.15, which was
+This file was extended by makeindex (TeX Live) $as_me 2.16, which was
 generated by GNU Autoconf 2.71.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -16287,7 +16287,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config='$ac_cs_config_escaped'
 ac_cs_version="\\
-makeindex (TeX Live) config.status 2.15
+makeindex (TeX Live) config.status 2.16
 configured by $0, generated by GNU Autoconf 2.71,
   with options \\"\$ac_cs_config\\"
 

Modified: trunk/Build/source/texk/makeindexk/configure.ac
===================================================================
--- trunk/Build/source/texk/makeindexk/configure.ac	2021-09-19 07:31:32 UTC (rev 60546)
+++ trunk/Build/source/texk/makeindexk/configure.ac	2021-09-19 08:43:57 UTC (rev 60547)
@@ -6,7 +6,7 @@
 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([makeindex (TeX Live)], [2.15], [tex-k at tug.org])
+AC_INIT([makeindex (TeX Live)], [2.16], [tex-k at tug.org])
 AC_PREREQ([2.65])
 AC_CONFIG_SRCDIR([mkind.c])
 AC_CONFIG_AUX_DIR([../../build-aux])

Modified: trunk/Build/source/texk/makeindexk/mkind.h
===================================================================
--- trunk/Build/source/texk/makeindexk/mkind.h	2021-09-19 07:31:32 UTC (rev 60546)
+++ trunk/Build/source/texk/makeindexk/mkind.h	2021-09-19 08:43:57 UTC (rev 60547)
@@ -343,9 +343,9 @@
 /*====================================================================*/
 
 #if USE_KPATHSEA
-#define VERSION       "version 2.15 [TeX Live " TEX_LIVE_VERSION "] (kpathsea + Thai support)"
+#define VERSION       "version 2.16 [TeX Live " TEX_LIVE_VERSION "] (kpathsea + Thai support)"
 #else
-#define VERSION       "version 2.15 [20-Nov-2007] (with Thai support)"
+#define VERSION       "version 2.16 [19-Sep-2021] (with Thai support)"
 #endif
 
 #define PUT_VERSION { \
@@ -428,6 +428,7 @@
 
 extern char page_comp[ARRAY_MAX];
 extern int page_offset[PAGETYPE_MAX];
+extern char page_prec[ARRAY_MAX];
 
 extern char preamble[ARRAY_MAX];
 extern char postamble[ARRAY_MAX];

Modified: trunk/Build/source/texk/makeindexk/scanid.c
===================================================================
--- trunk/Build/source/texk/makeindexk/scanid.c	2021-09-19 07:31:32 UTC (rev 60546)
+++ trunk/Build/source/texk/makeindexk/scanid.c	2021-09-19 08:43:57 UTC (rev 60547)
@@ -424,26 +424,28 @@
 	if (!scan_arabic(no, npg, count))
 	    return (FALSE);
 	/* simple heuristic to determine if a letter is Roman or Alpha */
-    } else if (IS_ROMAN_LOWER(no[0]) && (!IS_COMPOSITOR)) {
+    } else if (IS_ROMAN_LOWER(no[0]) && strchr(page_prec,ROMAN_LOWER) &&
+	       (!strchr(page_prec,ALPHA_LOWER) || (!IS_COMPOSITOR))) {
 	*type = ROML;
 	if (!scan_roman_lower(no, npg, count))
 	    return (FALSE);
 	/* simple heuristic to determine if a letter is Roman or Alpha */
-    } else if (IS_ROMAN_UPPER(no[0]) &&
-	       ((no[0] == ROMAN_I) || (!IS_COMPOSITOR))) {
+    } else if (IS_ROMAN_UPPER(no[0]) && strchr(page_prec,ROMAN_UPPER) &&
+	       (!strchr(page_prec,ALPHA_UPPER) || (!IS_COMPOSITOR))) {
 	*type = ROMU;
 	if (!scan_roman_upper(no, npg, count))
 	    return (FALSE);
-    } else if (IS_ALPHA_LOWER(no[0])) {
+    } else if (IS_ALPHA_LOWER(no[0]) && strchr(page_prec,ALPHA_LOWER)) {
 	*type = ALPL;
 	if (!scan_alpha_lower(no, npg, count))
 	    return (FALSE);
-    } else if (IS_ALPHA_UPPER(no[0])) {
+    } else if (IS_ALPHA_UPPER(no[0]) && strchr(page_prec,ALPHA_UPPER)) {
 	*type = ALPU;
 	if (!scan_alpha_upper(no, npg, count))
 	    return (FALSE);
     } else {
-	IDX_ERROR1("Illegal page number %s.\n", no);
+	IDX_ERROR2("Illegal page number %s or page_precedence %s.\n",
+		   no, page_prec);
 	return (FALSE);
     }
     return (TRUE);

Modified: trunk/Build/source/texk/makeindexk/scanid.h
===================================================================
--- trunk/Build/source/texk/makeindexk/scanid.h	2021-09-19 07:31:32 UTC (rev 60546)
+++ trunk/Build/source/texk/makeindexk/scanid.h	2021-09-19 08:43:57 UTC (rev 60547)
@@ -77,6 +77,12 @@
     ((C == ROMAN_I) || (C == ROMAN_V) || (C == ROMAN_X) || \
      (C == ROMAN_L) || (C == ROMAN_C) || (C == ROMAN_D) || (C == ROMAN_M))
 
+#define ROMAN_LOWER        'r'
+#define ROMAN_UPPER        'R'
+#define ARABIC             'n'
+#define ALPHA_LOWER        'a'
+#define ALPHA_UPPER        'A'
+
 #define ALPHA_VAL(C) \
     ((('A' <= C) && (C <= 'Z')) ? C - 'A' : \
      (('a' <= C) && (C <= 'z')) ? C - 'a' : 0)

Modified: trunk/Build/source/texk/makeindexk/scanst.c
===================================================================
--- trunk/Build/source/texk/makeindexk/scanst.c	2021-09-19 07:31:32 UTC (rev 60546)
+++ trunk/Build/source/texk/makeindexk/scanst.c	2021-09-19 08:43:57 UTC (rev 60547)
@@ -101,7 +101,7 @@
 ROMAN_LOWER_OFFSET + ARABIC_OFFSET + ALPHA_LOWER_OFFSET,
 ROMAN_LOWER_OFFSET + ARABIC_OFFSET + ALPHA_LOWER_OFFSET + ROMAN_UPPER_OFFSET
 };
-static char page_prec[ARRAY_MAX] = PRECEDENCE_DEF;
+char    page_prec[ARRAY_MAX] = PRECEDENCE_DEF;
 
 static int put_dot;
 
@@ -228,7 +228,6 @@
 	    /* page precedence */
 	} else if (STREQ(spec, PRECEDENCE)) {
 	    (void) scan_string(page_prec);
-	    (void) process_precedence();
 	    /* index input format */
 	} else if (STREQ(spec, KEYWORD))
 	    (void) scan_string(idx_keyword);
@@ -260,6 +259,8 @@
 	    STY_DOT;
 	}
     }
+    /* page precedence */
+    (void) process_precedence();
 
     /* check if quote and escape are distinct */
     if (idx_quote == idx_escape) {

Modified: trunk/Build/source/texk/makeindexk/tests/makeindex.test
===================================================================
--- trunk/Build/source/texk/makeindexk/tests/makeindex.test	2021-09-19 07:31:32 UTC (rev 60546)
+++ trunk/Build/source/texk/makeindexk/tests/makeindex.test	2021-09-19 08:43:57 UTC (rev 60547)
@@ -7,7 +7,7 @@
 TEXMFCNF=$srcdir/../kpathsea
 export TEXMFCNF
 
-rm -f sample.*
+rm -f sample.* range*.* pprec*.*
 
 ./makeindex $srcdir/tests/sample.idx -o sample.ind1 -t sample.ilg1 \
 	&& diff $srcdir/tests/sample.ind sample.ind1 || exit 1
@@ -15,3 +15,36 @@
 cat $srcdir/tests/sample.idx | ./makeindex >sample.ind2 2>sample.ilg2 \
 	&& diff $srcdir/tests/sample.ind sample.ind2 || exit 1
 
+# test for range suffix_2p, suffix_3p, suffix_mp
+./makeindex -s $srcdir/tests/range1.ist $srcdir/tests/range.idx \
+	-o range1.ind1 -t range1.ilg \
+	&& diff $srcdir/tests/range1.ind range1.ind1 || exit 1
+
+./makeindex -s $srcdir/tests/range2.ist $srcdir/tests/range.idx \
+	-o range2.ind1 -t range2.ilg \
+	&& diff $srcdir/tests/range2.ind range2.ind1 || exit 1
+
+./makeindex -s $srcdir/tests/range3.ist $srcdir/tests/range.idx \
+	-o range3.ind1 -t range3.ilg \
+	&& diff $srcdir/tests/range3.ind range3.ind1 || exit 1
+
+# test for page_precedence and suffix_3p
+./makeindex -s $srcdir/tests/pprec0.ist $srcdir/tests/pprecA.idx \
+	-o pprecA-0.ind1 -t pprecA-0.ilg \
+	&& diff $srcdir/tests/pprecA-0.ind pprecA-0.ind1 || exit 1
+
+./makeindex -s $srcdir/tests/pprec1.ist $srcdir/tests/pprecA.idx \
+	-o pprecA-1.ind1 -t pprecA-1.ilg \
+	&& diff $srcdir/tests/pprecA-1.ind pprecA-1.ind1 || exit 1
+
+./makeindex -s $srcdir/tests/pprec2.ist $srcdir/tests/pprecA.idx \
+	-o pprecA-2.ind1 -t pprecA-2.ilg \
+	&& diff $srcdir/tests/pprecA-2.ind pprecA-2.ind1 || exit 1
+
+./makeindex -s $srcdir/tests/pprec3.ist $srcdir/tests/pprecB.idx \
+	-o pprecB-3.ind1 -t pprecB-3.ilg \
+	&& diff $srcdir/tests/pprecB-3.ind pprecB-3.ind1 || exit 1
+
+./makeindex -s $srcdir/tests/pprec4.ist $srcdir/tests/pprecB.idx \
+	-o pprecB-4.ind1 -t pprecB-4.ilg \
+	&& diff $srcdir/tests/pprecB-4.ind pprecB-4.ind1 || exit 1

Added: trunk/Build/source/texk/makeindexk/tests/pprec0.ist
===================================================================
--- trunk/Build/source/texk/makeindexk/tests/pprec0.ist	                        (rev 0)
+++ trunk/Build/source/texk/makeindexk/tests/pprec0.ist	2021-09-19 08:43:57 UTC (rev 60547)
@@ -0,0 +1,11 @@
+% -*- coding: utf-8 -*-
+
+%page_precedence "rnaRA"
+
+delim_0 "[[delim0]]"
+delim_1 "[[delim1]]"
+delim_2 "[[delim2]]"
+delim_r "[[delimr]]"
+suffix_2p "[[sfx 2p]]"
+suffix_3p "[[sfx 3p]]"
+

Added: trunk/Build/source/texk/makeindexk/tests/pprec1.ist
===================================================================
--- trunk/Build/source/texk/makeindexk/tests/pprec1.ist	                        (rev 0)
+++ trunk/Build/source/texk/makeindexk/tests/pprec1.ist	2021-09-19 08:43:57 UTC (rev 60547)
@@ -0,0 +1,11 @@
+% -*- coding: utf-8 -*-
+
+page_precedence "nrR"
+
+delim_0 "[[delim0]]"
+delim_1 "[[delim1]]"
+delim_2 "[[delim2]]"
+delim_r "[[delimr]]"
+suffix_2p "[[sfx 2p]]"
+suffix_3p "[[sfx 3p]]"
+

Added: trunk/Build/source/texk/makeindexk/tests/pprec2.ist
===================================================================
--- trunk/Build/source/texk/makeindexk/tests/pprec2.ist	                        (rev 0)
+++ trunk/Build/source/texk/makeindexk/tests/pprec2.ist	2021-09-19 08:43:57 UTC (rev 60547)
@@ -0,0 +1,11 @@
+% -*- coding: utf-8 -*-
+
+page_precedence "Rnr"
+
+delim_0 "[[delim0]]"
+delim_1 "[[delim1]]"
+delim_2 "[[delim2]]"
+delim_r "[[delimr]]"
+suffix_2p "[[sfx 2p]]"
+suffix_3p "[[sfx 3p]]"
+

Added: trunk/Build/source/texk/makeindexk/tests/pprec3.ist
===================================================================
--- trunk/Build/source/texk/makeindexk/tests/pprec3.ist	                        (rev 0)
+++ trunk/Build/source/texk/makeindexk/tests/pprec3.ist	2021-09-19 08:43:57 UTC (rev 60547)
@@ -0,0 +1,11 @@
+% -*- coding: utf-8 -*-
+
+page_precedence "naA"
+
+delim_0 "[[delim0]]"
+delim_1 "[[delim1]]"
+delim_2 "[[delim2]]"
+delim_r "[[delimr]]"
+suffix_2p "[[sfx 2p]]"
+suffix_3p "[[sfx 3p]]"
+

Added: trunk/Build/source/texk/makeindexk/tests/pprec4.ist
===================================================================
--- trunk/Build/source/texk/makeindexk/tests/pprec4.ist	                        (rev 0)
+++ trunk/Build/source/texk/makeindexk/tests/pprec4.ist	2021-09-19 08:43:57 UTC (rev 60547)
@@ -0,0 +1,11 @@
+% -*- coding: utf-8 -*-
+
+page_precedence "Ana"
+
+delim_0 "[[delim0]]"
+delim_1 "[[delim1]]"
+delim_2 "[[delim2]]"
+delim_r "[[delimr]]"
+suffix_2p "[[sfx 2p]]"
+suffix_3p "[[sfx 3p]]"
+

Added: trunk/Build/source/texk/makeindexk/tests/pprecA-0.ind
===================================================================
--- trunk/Build/source/texk/makeindexk/tests/pprecA-0.ind	                        (rev 0)
+++ trunk/Build/source/texk/makeindexk/tests/pprecA-0.ind	2021-09-19 08:43:57 UTC (rev 60547)
@@ -0,0 +1,5 @@
+\begin{theindex}
+
+  \item entryA[[delim0]]i[[sfx 3p]], 1[[sfx 3p]], I[[sfx 3p]]
+
+\end{theindex}

Added: trunk/Build/source/texk/makeindexk/tests/pprecA-1.ind
===================================================================
--- trunk/Build/source/texk/makeindexk/tests/pprecA-1.ind	                        (rev 0)
+++ trunk/Build/source/texk/makeindexk/tests/pprecA-1.ind	2021-09-19 08:43:57 UTC (rev 60547)
@@ -0,0 +1,5 @@
+\begin{theindex}
+
+  \item entryA[[delim0]]1[[sfx 3p]], i[[sfx 3p]], I[[sfx 3p]]
+
+\end{theindex}

Added: trunk/Build/source/texk/makeindexk/tests/pprecA-2.ind
===================================================================
--- trunk/Build/source/texk/makeindexk/tests/pprecA-2.ind	                        (rev 0)
+++ trunk/Build/source/texk/makeindexk/tests/pprecA-2.ind	2021-09-19 08:43:57 UTC (rev 60547)
@@ -0,0 +1,5 @@
+\begin{theindex}
+
+  \item entryA[[delim0]]I[[sfx 3p]], 1[[sfx 3p]], i[[sfx 3p]]
+
+\end{theindex}

Added: trunk/Build/source/texk/makeindexk/tests/pprecA.idx
===================================================================
--- trunk/Build/source/texk/makeindexk/tests/pprecA.idx	                        (rev 0)
+++ trunk/Build/source/texk/makeindexk/tests/pprecA.idx	2021-09-19 08:43:57 UTC (rev 60547)
@@ -0,0 +1,9 @@
+\indexentry{entryA}{i}
+\indexentry{entryA}{ii}
+\indexentry{entryA}{iii}
+\indexentry{entryA}{1}
+\indexentry{entryA}{2}
+\indexentry{entryA}{3}
+\indexentry{entryA}{I}
+\indexentry{entryA}{II}
+\indexentry{entryA}{III}

Added: trunk/Build/source/texk/makeindexk/tests/pprecB-3.ind
===================================================================
--- trunk/Build/source/texk/makeindexk/tests/pprecB-3.ind	                        (rev 0)
+++ trunk/Build/source/texk/makeindexk/tests/pprecB-3.ind	2021-09-19 08:43:57 UTC (rev 60547)
@@ -0,0 +1,5 @@
+\begin{theindex}
+
+  \item entryA[[delim0]]1[[sfx 3p]], a[[sfx 3p]], A[[sfx 3p]]
+
+\end{theindex}

Added: trunk/Build/source/texk/makeindexk/tests/pprecB-4.ind
===================================================================
--- trunk/Build/source/texk/makeindexk/tests/pprecB-4.ind	                        (rev 0)
+++ trunk/Build/source/texk/makeindexk/tests/pprecB-4.ind	2021-09-19 08:43:57 UTC (rev 60547)
@@ -0,0 +1,5 @@
+\begin{theindex}
+
+  \item entryA[[delim0]]A[[sfx 3p]], 1[[sfx 3p]], a[[sfx 3p]]
+
+\end{theindex}

Added: trunk/Build/source/texk/makeindexk/tests/pprecB.idx
===================================================================
--- trunk/Build/source/texk/makeindexk/tests/pprecB.idx	                        (rev 0)
+++ trunk/Build/source/texk/makeindexk/tests/pprecB.idx	2021-09-19 08:43:57 UTC (rev 60547)
@@ -0,0 +1,9 @@
+\indexentry{entryA}{a}
+\indexentry{entryA}{b}
+\indexentry{entryA}{c}
+\indexentry{entryA}{1}
+\indexentry{entryA}{2}
+\indexentry{entryA}{3}
+\indexentry{entryA}{A}
+\indexentry{entryA}{B}
+\indexentry{entryA}{C}

Added: trunk/Build/source/texk/makeindexk/tests/range.idx
===================================================================
--- trunk/Build/source/texk/makeindexk/tests/range.idx	                        (rev 0)
+++ trunk/Build/source/texk/makeindexk/tests/range.idx	2021-09-19 08:43:57 UTC (rev 60547)
@@ -0,0 +1,126 @@
+\indexentry{entryA}{1}
+\indexentry{entryA}{2}
+\indexentry{entryA}{iii}
+\indexentry{entryA}{iv}
+\indexentry{entryA}{IX}
+\indexentry{entryA}{X}
+
+\indexentry{entryB}{1}
+\indexentry{entryB}{2}
+\indexentry{entryB}{3}
+\indexentry{entryB}{iii}
+\indexentry{entryB}{iv}
+\indexentry{entryB}{v}
+\indexentry{entryB}{IX}
+\indexentry{entryB}{X}
+\indexentry{entryB}{XI}
+
+\indexentry{entryC}{1}
+\indexentry{entryC}{2}
+\indexentry{entryC}{3}
+\indexentry{entryC}{4}
+\indexentry{entryC|bold}{iii}
+\indexentry{entryC|bold}{iv}
+\indexentry{entryC|bold}{v}
+\indexentry{entryC|bold}{vi}
+\indexentry{entryC}{IX}
+\indexentry{entryC|bold}{X}
+\indexentry{entryC}{XI}
+\indexentry{entryC}{XII}
+
+\indexentry{entryD}{c-1}
+\indexentry{entryD}{c-2}
+\indexentry{entryD}{i-iii}
+\indexentry{entryD}{i-iv}
+\indexentry{entryD}{d-IX}
+\indexentry{entryD}{d-X}
+
+\indexentry{entryE}{c-1}
+\indexentry{entryE}{c-2}
+\indexentry{entryE}{c-3}
+\indexentry{entryE}{i-iii}
+\indexentry{entryE}{i-iv}
+\indexentry{entryE}{i-v}
+\indexentry{entryE}{d-IX}
+\indexentry{entryE}{d-X}
+\indexentry{entryE}{d-XI}
+
+\indexentry{entryF}{C-I}
+\indexentry{entryF}{C-II}
+\indexentry{entryF}{C-III}
+\indexentry{entryF}{C-IV}
+\indexentry{entryF}{V-LIII}
+\indexentry{entryF}{V-LIV}
+\indexentry{entryF}{V-LV}
+\indexentry{entryF}{V-LVI}
+\indexentry{entryF}{D-DI}
+\indexentry{entryF}{D-DII}
+\indexentry{entryF}{D-DIII}
+\indexentry{entryF}{D-DIV}
+
+\indexentry{entryP}{A-a-1-VII-iii}
+\indexentry{entryP}{A-a-2-VII-iii}
+\indexentry{entryP}{A-a-3-VII-iii}
+\indexentry{entryP}{A-a-1-VIII-iii}
+\indexentry{entryP}{A-a-1-IX-iii}
+\indexentry{entryP}{A-a-1-VII-iv}
+\indexentry{entryP}{A-a-1-VII-v}
+
+\indexentry{entryQ}{1-2-3-4-5-6-7-8-9-10}
+\indexentry{entryQ}{1-2-3-4-5-6-7-8-9-11}
+\indexentry{entryQ}{1-2-3-4-5-6-7-8-9-14}
+\indexentry{entryQ}{1-2-3-4-5-6-7-8-9-15}
+\indexentry{entryQ}{1-2-3-4-5-6-7-8-9-16}
+\indexentry{entryQ}{1-2-3-4-5-6-7-8-9-22}
+\indexentry{entryQ}{1-2-3-4-5-6-7-8-9-23}
+\indexentry{entryQ}{1-2-3-4-5-6-7-8-9-24}
+\indexentry{entryQ}{1-2-3-4-5-6-7-8-9-25}
+\indexentry{entryQ}{1-2-3-4-5-6-7-8-9-i}
+\indexentry{entryQ}{1-2-3-4-5-6-7-8-9-ii}
+\indexentry{entryQ}{1-2-3-4-5-6-7-8-9-iii}
+\indexentry{entryQ}{1-2-3-4-5-6-7-8-9-iv}
+\indexentry{entryQ}{1-2-3-4-5-6-7-8-9-v}
+
+\indexentry{entryA1|(}{1}
+\indexentry{entryA1|)}{2}
+\indexentry{entryA1|(}{iii}
+\indexentry{entryA1|)}{iv}
+\indexentry{entryA1|(}{IX}
+\indexentry{entryA1|)}{X}
+
+\indexentry{entryB1|(}{1}
+\indexentry{entryB1|)}{3}
+\indexentry{entryB1|(}{iii}
+\indexentry{entryB1|)}{v}
+\indexentry{entryB1|(}{IX}
+\indexentry{entryB1|)}{XI}
+
+\indexentry{entryC1|(}{1}
+\indexentry{entryC1|)}{4}
+\indexentry{entryC1|(bold}{iii}
+\indexentry{entryC1|)}{vi}
+\indexentry{entryC1|(}{IX}
+\indexentry{entryC1|bold}{X}
+\indexentry{entryC1|)}{XII}
+
+\indexentry{entryD1|(}{c-1}
+\indexentry{entryD1|)}{c-2}
+\indexentry{entryD1|(}{i-iii}
+\indexentry{entryD1|)}{i-iv}
+\indexentry{entryD1|(}{d-IX}
+\indexentry{entryD1|)}{d-X}
+
+\indexentry{entryE1|(}{c-1}
+\indexentry{entryE1|)}{c-3}
+\indexentry{entryE1|(}{i-iii}
+\indexentry{entryE1|)}{i-v}
+\indexentry{entryE1|(}{d-IX}
+\indexentry{entryE1|)}{d-XI}
+
+\indexentry{entryF1|(}{C-I}
+\indexentry{entryF1|)}{C-IV}
+\indexentry{entryF1|(}{V-LIII}
+\indexentry{entryF1|)}{V-LVI}
+\indexentry{entryF1|(}{D-DI}
+\indexentry{entryF1|bold}{D-DII}
+\indexentry{entryF1|)}{D-DIV}

Added: trunk/Build/source/texk/makeindexk/tests/range1.ind
===================================================================
--- trunk/Build/source/texk/makeindexk/tests/range1.ind	                        (rev 0)
+++ trunk/Build/source/texk/makeindexk/tests/range1.ind	2021-09-19 08:43:57 UTC (rev 60547)
@@ -0,0 +1,25 @@
+\begin{theindex}
+
+  \item entryA, 1[[sfx 2p]], iii[[sfx 2p]], IX[[sfx 2p]]
+  \item entryA1, 1[[sfx 2p]], iii[[sfx 2p]], IX[[sfx 2p]]
+  \item entryB, 1[[sfx mp]], iii[[sfx mp]], IX[[sfx mp]]
+  \item entryB1, 1[[sfx mp]], iii[[sfx mp]], IX[[sfx mp]]
+  \item entryC, 1[[sfx mp]], \bold{iii[[sfx mp]]}, IX, \bold{X}, 
+		XI[[sfx 2p]]
+  \item entryC1, 1[[sfx mp]], \bold{iii[[sfx mp]]}, \bold{X}, 
+		IX[[sfx mp]]
+  \item entryD, c-1[[sfx 2p]], d-IX[[sfx 2p]], i-iii[[sfx 2p]]
+  \item entryD1, c-1[[sfx 2p]], d-IX[[sfx 2p]], i-iii[[sfx 2p]]
+  \item entryE, c-1[[sfx mp]], d-IX[[sfx mp]], i-iii[[sfx mp]]
+  \item entryE1, c-1[[sfx mp]], d-IX[[sfx mp]], i-iii[[sfx mp]]
+  \item entryF, C-I[[sfx mp]], D-DI[[sfx mp]], V-LIII[[sfx mp]]
+  \item entryF1, C-I[[sfx mp]], \bold{D-DII}, D-DI[[sfx mp]], 
+		V-LIII[[sfx mp]]
+  \item entryP, A-a-1-VII-iii[[sfx mp]], A-a-1-VIII-iii, A-a-1-IX-iii, 
+		A-a-2-VII-iii, A-a-3-VII-iii
+  \item entryQ, 1-2-3-4-5-6-7-8-9-10[[sfx 2p]], 
+		1-2-3-4-5-6-7-8-9-14[[sfx mp]], 
+		1-2-3-4-5-6-7-8-9-22[[sfx mp]], 
+		1-2-3-4-5-6-7-8-9-i[[sfx mp]]
+
+\end{theindex}

Added: trunk/Build/source/texk/makeindexk/tests/range1.ist
===================================================================
--- trunk/Build/source/texk/makeindexk/tests/range1.ist	                        (rev 0)
+++ trunk/Build/source/texk/makeindexk/tests/range1.ist	2021-09-19 08:43:57 UTC (rev 60547)
@@ -0,0 +1,3 @@
+page_precedence "nrRaA"
+suffix_2p "[[sfx 2p]]"
+suffix_mp "[[sfx mp]]"

Added: trunk/Build/source/texk/makeindexk/tests/range2.ind
===================================================================
--- trunk/Build/source/texk/makeindexk/tests/range2.ind	                        (rev 0)
+++ trunk/Build/source/texk/makeindexk/tests/range2.ind	2021-09-19 08:43:57 UTC (rev 60547)
@@ -0,0 +1,26 @@
+\begin{theindex}
+
+  \item entryA, 1[[sfx 2p]], iii[[sfx 2p]], IX[[sfx 2p]]
+  \item entryA1, 1[[sfx 2p]], iii[[sfx 2p]], IX[[sfx 2p]]
+  \item entryB, 1[[sfx 3p]], iii[[sfx 3p]], IX[[sfx 3p]]
+  \item entryB1, 1[[sfx 3p]], iii[[sfx 3p]], IX[[sfx 3p]]
+  \item entryC, 1[[delim r]]4, \bold{iii[[delim r]]vi}, IX, \bold{X}, 
+		XI[[sfx 2p]]
+  \item entryC1, 1[[delim r]]4, \bold{iii[[delim r]]vi}, \bold{X}, 
+		IX[[delim r]]XII
+  \item entryD, c-1[[sfx 2p]], d-IX[[sfx 2p]], i-iii[[sfx 2p]]
+  \item entryD1, c-1[[sfx 2p]], d-IX[[sfx 2p]], i-iii[[sfx 2p]]
+  \item entryE, c-1[[sfx 3p]], d-IX[[sfx 3p]], i-iii[[sfx 3p]]
+  \item entryE1, c-1[[sfx 3p]], d-IX[[sfx 3p]], i-iii[[sfx 3p]]
+  \item entryF, C-I[[delim r]]C-IV, D-DI[[delim r]]D-DIV, 
+		V-LIII[[delim r]]V-LVI
+  \item entryF1, C-I[[delim r]]C-IV, \bold{D-DII}, D-DI[[delim r]]D-DIV, 
+		V-LIII[[delim r]]V-LVI
+  \item entryP, A-a-1-VII-iii[[sfx 3p]], A-a-1-VIII-iii, A-a-1-IX-iii, 
+		A-a-2-VII-iii, A-a-3-VII-iii
+  \item entryQ, 1-2-3-4-5-6-7-8-9-10[[sfx 2p]], 
+		1-2-3-4-5-6-7-8-9-14[[sfx 3p]], 
+		1-2-3-4-5-6-7-8-9-22[[delim r]]1-2-3-4-5-6-7-8-9-25, 
+		1-2-3-4-5-6-7-8-9-i[[delim r]]1-2-3-4-5-6-7-8-9-v
+
+\end{theindex}

Added: trunk/Build/source/texk/makeindexk/tests/range2.ist
===================================================================
--- trunk/Build/source/texk/makeindexk/tests/range2.ist	                        (rev 0)
+++ trunk/Build/source/texk/makeindexk/tests/range2.ist	2021-09-19 08:43:57 UTC (rev 60547)
@@ -0,0 +1,4 @@
+page_precedence "nrRaA"
+delim_r "[[delim r]]"
+suffix_2p "[[sfx 2p]]"
+suffix_3p "[[sfx 3p]]"

Added: trunk/Build/source/texk/makeindexk/tests/range3.ind
===================================================================
--- trunk/Build/source/texk/makeindexk/tests/range3.ind	                        (rev 0)
+++ trunk/Build/source/texk/makeindexk/tests/range3.ind	2021-09-19 08:43:57 UTC (rev 60547)
@@ -0,0 +1,25 @@
+\begin{theindex}
+
+  \item entryA, 1[[sfx 2p]], iii[[sfx 2p]], IX[[sfx 2p]]
+  \item entryA1, 1[[sfx 2p]], iii[[sfx 2p]], IX[[sfx 2p]]
+  \item entryB, 1[[sfx 3p]], iii[[sfx 3p]], IX[[sfx 3p]]
+  \item entryB1, 1[[sfx 3p]], iii[[sfx 3p]], IX[[sfx 3p]]
+  \item entryC, 1[[sfx mp]], \bold{iii[[sfx mp]]}, IX, \bold{X}, 
+		XI[[sfx 2p]]
+  \item entryC1, 1[[sfx mp]], \bold{iii[[sfx mp]]}, \bold{X}, 
+		IX[[sfx mp]]
+  \item entryD, c-1[[sfx 2p]], d-IX[[sfx 2p]], i-iii[[sfx 2p]]
+  \item entryD1, c-1[[sfx 2p]], d-IX[[sfx 2p]], i-iii[[sfx 2p]]
+  \item entryE, c-1[[sfx 3p]], d-IX[[sfx 3p]], i-iii[[sfx 3p]]
+  \item entryE1, c-1[[sfx 3p]], d-IX[[sfx 3p]], i-iii[[sfx 3p]]
+  \item entryF, C-I[[sfx mp]], D-DI[[sfx mp]], V-LIII[[sfx mp]]
+  \item entryF1, C-I[[sfx mp]], \bold{D-DII}, D-DI[[sfx mp]], 
+		V-LIII[[sfx mp]]
+  \item entryP, A-a-1-VII-iii[[sfx 3p]], A-a-1-VIII-iii, A-a-1-IX-iii, 
+		A-a-2-VII-iii, A-a-3-VII-iii
+  \item entryQ, 1-2-3-4-5-6-7-8-9-10[[sfx 2p]], 
+		1-2-3-4-5-6-7-8-9-14[[sfx 3p]], 
+		1-2-3-4-5-6-7-8-9-22[[sfx mp]], 
+		1-2-3-4-5-6-7-8-9-i[[sfx mp]]
+
+\end{theindex}

Added: trunk/Build/source/texk/makeindexk/tests/range3.ist
===================================================================
--- trunk/Build/source/texk/makeindexk/tests/range3.ist	                        (rev 0)
+++ trunk/Build/source/texk/makeindexk/tests/range3.ist	2021-09-19 08:43:57 UTC (rev 60547)
@@ -0,0 +1,4 @@
+page_precedence "nrRaA"
+suffix_2p "[[sfx 2p]]"
+suffix_3p "[[sfx 3p]]"
+suffix_mp "[[sfx mp]]"



More information about the tex-live-commits mailing list.