From c11207d3e9027d6aa4153a2103df58382d41e56e Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Thu, 19 Jan 2023 03:01:20 +0000 Subject: CTAN sync 202301190301 --- indexing/xindex/CHANGELOG | 3 + indexing/xindex/README.md | 9 +- indexing/xindex/doc/tests/HADW.pdf | Bin 18346 -> 18342 bytes indexing/xindex/doc/tests/Umlaute.pdf | Bin 15201 -> 15194 bytes indexing/xindex/doc/tests/Umlaute2.pdf | Bin 18890 -> 18884 bytes indexing/xindex/doc/tests/buch.ind | 2 +- indexing/xindex/doc/tests/buch.pdf | Bin 39089 -> 39021 bytes indexing/xindex/doc/tests/demo-hyperref.pdf | Bin 28627 -> 28624 bytes indexing/xindex/doc/tests/demo.pdf | Bin 34619 -> 34606 bytes indexing/xindex/doc/tests/demo2.ind | 2 +- indexing/xindex/doc/tests/demo3.pdf | Bin 9223 -> 9216 bytes indexing/xindex/doc/tests/demo4.pdf | Bin 11885 -> 11883 bytes indexing/xindex/doc/xindex-doc.pdf | Bin 459721 -> 468883 bytes indexing/xindex/doc/xindex-doc.tex | 119 +++++++++++++++++------ indexing/xindex/lualatex/xindex-AU.lua | 104 ++++++++++++++++++++ indexing/xindex/lualatex/xindex-HAdW-eKO.lua | 2 +- indexing/xindex/lualatex/xindex-base.lua | 26 ++++- indexing/xindex/lualatex/xindex-baselib.lua | 2 +- indexing/xindex/lualatex/xindex-cfg-common.lua | 2 +- indexing/xindex/lualatex/xindex-cfg-uca.lua | 2 +- indexing/xindex/lualatex/xindex-cfg.lua | 2 +- indexing/xindex/lualatex/xindex-danteedition.lua | 2 +- indexing/xindex/lualatex/xindex-dtk.lua | 2 +- indexing/xindex/lualatex/xindex-lib.lua | 8 +- indexing/xindex/lualatex/xindex-norsk.lua | 2 +- indexing/xindex/lualatex/xindex-pretty.lua | 2 +- indexing/xindex/lualatex/xindex-yannis.lua | 2 +- indexing/xindex/scripts/xindex.lua | 20 ++-- 28 files changed, 255 insertions(+), 58 deletions(-) create mode 100644 indexing/xindex/lualatex/xindex-AU.lua (limited to 'indexing') diff --git a/indexing/xindex/CHANGELOG b/indexing/xindex/CHANGELOG index e60d4308cb..cc12a7f3b3 100644 --- a/indexing/xindex/CHANGELOG +++ b/indexing/xindex/CHANGELOG @@ -1,3 +1,6 @@ +0.46 2023-01-18 - fix for Czech character ch + - fix for wrong Upper/Lowercase sorting + - fix for detect language from aux file 0.45 2022-09-20 - exit xindex after printing version information 0.44 2022-09-09 - --- 0.43 2022-09-01 - print warning if no input file is defined. diff --git a/indexing/xindex/README.md b/indexing/xindex/README.md index 38dae0bdd0..97d44cc56b 100644 --- a/indexing/xindex/README.md +++ b/indexing/xindex/README.md @@ -1,6 +1,12 @@ # xindex -Copyright 2019-2022 Herbert Voß +Copyright 2019-2023 Herbert Voß +These files are provided under the terms of the LPPL v1.3 or +later as printed in full text in the manual (xindex.pdf). +\url{https://ctan.org/license/lppl1.3}. + +Report bugs to + \url{https://gitlab.com/hvoss49/xindex/issues}. Unicode compatible index programm for LaTeX. It needs Lua 5.3 which will be included in at least LuaTeX 1.09 (TeXLive 2019) @@ -35,6 +41,7 @@ possible options are (short,long): -a,--no_casesensitive -b,--no_labels -o,--output (default "") + -k,--checklang -l,--language (default en) -p,--prefix (default L) -u,--use_UCA diff --git a/indexing/xindex/doc/tests/HADW.pdf b/indexing/xindex/doc/tests/HADW.pdf index 909517a46f..c1ddc640f5 100644 Binary files a/indexing/xindex/doc/tests/HADW.pdf and b/indexing/xindex/doc/tests/HADW.pdf differ diff --git a/indexing/xindex/doc/tests/Umlaute.pdf b/indexing/xindex/doc/tests/Umlaute.pdf index dca73ca414..671b16dba8 100644 Binary files a/indexing/xindex/doc/tests/Umlaute.pdf and b/indexing/xindex/doc/tests/Umlaute.pdf differ diff --git a/indexing/xindex/doc/tests/Umlaute2.pdf b/indexing/xindex/doc/tests/Umlaute2.pdf index f63a171c11..2b37bbd889 100644 Binary files a/indexing/xindex/doc/tests/Umlaute2.pdf and b/indexing/xindex/doc/tests/Umlaute2.pdf differ diff --git a/indexing/xindex/doc/tests/buch.ind b/indexing/xindex/doc/tests/buch.ind index 048cf75835..19b401d948 100644 --- a/indexing/xindex/doc/tests/buch.ind +++ b/indexing/xindex/doc/tests/buch.ind @@ -37,8 +37,8 @@ \item Anhang, {62} \item Atom, {400f} \item Autor, {54} + \item Autor"=Jahr"=Schema, {544} \item Autor-Stil, {586} - \item Autor(=Jahr(=Schema, {544} \indexspace \textbf{B}\label{L-xindex-B} diff --git a/indexing/xindex/doc/tests/buch.pdf b/indexing/xindex/doc/tests/buch.pdf index b7bbc6a950..90ce8da0a7 100644 Binary files a/indexing/xindex/doc/tests/buch.pdf and b/indexing/xindex/doc/tests/buch.pdf differ diff --git a/indexing/xindex/doc/tests/demo-hyperref.pdf b/indexing/xindex/doc/tests/demo-hyperref.pdf index 680acbc892..5cc9900662 100644 Binary files a/indexing/xindex/doc/tests/demo-hyperref.pdf and b/indexing/xindex/doc/tests/demo-hyperref.pdf differ diff --git a/indexing/xindex/doc/tests/demo.pdf b/indexing/xindex/doc/tests/demo.pdf index 1b1b2888f0..8ee6506f67 100644 Binary files a/indexing/xindex/doc/tests/demo.pdf and b/indexing/xindex/doc/tests/demo.pdf differ diff --git a/indexing/xindex/doc/tests/demo2.ind b/indexing/xindex/doc/tests/demo2.ind index 6bd956f8c6..a2bfb309fc 100644 --- a/indexing/xindex/doc/tests/demo2.ind +++ b/indexing/xindex/doc/tests/demo2.ind @@ -9,7 +9,7 @@ \indexspace \textbf{D}\label{L-xindex-D} \nopagebreak[4] - \item {Downes}, Michael, {xxxvi}, {xxxvii} + \item {Downes}, Michael, {xxxvif} \indexspace \textbf{F}\label{L-xindex-F} diff --git a/indexing/xindex/doc/tests/demo3.pdf b/indexing/xindex/doc/tests/demo3.pdf index 91cfbb7134..2d72ee52eb 100644 Binary files a/indexing/xindex/doc/tests/demo3.pdf and b/indexing/xindex/doc/tests/demo3.pdf differ diff --git a/indexing/xindex/doc/tests/demo4.pdf b/indexing/xindex/doc/tests/demo4.pdf index f17c7cdf92..7db4dc7fd2 100644 Binary files a/indexing/xindex/doc/tests/demo4.pdf and b/indexing/xindex/doc/tests/demo4.pdf differ diff --git a/indexing/xindex/doc/xindex-doc.pdf b/indexing/xindex/doc/xindex-doc.pdf index 243f01e3b5..35bd80e916 100644 Binary files a/indexing/xindex/doc/xindex-doc.pdf and b/indexing/xindex/doc/xindex-doc.pdf differ diff --git a/indexing/xindex/doc/xindex-doc.tex b/indexing/xindex/doc/xindex-doc.tex index 6567ab3f17..69ecf8f001 100644 --- a/indexing/xindex/doc/xindex-doc.tex +++ b/indexing/xindex/doc/xindex-doc.tex @@ -81,9 +81,9 @@ \def\setVersion#1{\setVVersion#1!!} \def\setVVersion#1=#2!!{\def\xIndexVersion{#2}} -\setVersion{version = 0.45}% can be automatically changed by perl +\setVersion{version = 0.46}% can be automatically changed by perl -\setkeys{hv}{cleanup=true,force=true} +\setkeys{hv}{cleanup=true,force=false} \title{Program and package \texttt{xindex} \\--\\ \normalsize \xIndexVersion\ (\today)} @@ -273,7 +273,7 @@ are alphabetized. compiler=lualatex, crop, xindex, - force=true, + force=false, runs=2,code,docType=latex, showFilename, align=\centering, @@ -308,7 +308,7 @@ run \texttt{xindex }\index{}\index{123} \end{externalDocument} -For the German language the double quote is an active character and it makes live easier +For the German language the double quote is an active character and it makes life easier if one chooses another character. The escape character can be changed easily by the optional argument \verb|-e ""| or \verb|--escapechar "|. The following example shows how @@ -336,7 +336,7 @@ are converted into the internal strings and later back to the origin meaning. crop, xindex, xindexOptions=-e ">", - force=true, + force=false, runs=2,code,docType=latex, showFilename, align=\centering, @@ -401,7 +401,7 @@ The following example was run with \verb|xindex -l it .idx|: crop, xindex, xindexOptions=-l it -e ">", - force=true, + force=false, runs=2,code,docType=latex, showFilename, align=\centering, @@ -435,8 +435,8 @@ Run \texttt{xindex} with \texttt{xindex -l it -e ">"}\index{123} \end{externalDocument} -The following example was run with \verb|xindex -l "*" .idx|. Then the language is detected from -the \Lfile{aux} file. This is only possible if package \Lpack{babel} or \Lpack{polyglossia} are used. +The following example was run with \verb|xindex -k .idx|. In this case \verb|xindex| tries to detect the language from +the \Lfile{aux} file(s). This is only possible if package \Lpack{babel} or \Lpack{polyglossia} are used. \begin{externalDocument}[ % grfOptions={width=\dimexpr\linewidth-2\fboxsep-2\fboxrule}, @@ -445,8 +445,8 @@ the \Lfile{aux} file. This is only possible if package \Lpack{babel} or \Lpack{ compiler=lualatex, crop, xindex, - xindexOptions=-l "*" -e "?", - force=true, + xindexOptions=-k -e "?", + force=false, runs=2,code,docType=latex, showFilename, align=\centering, @@ -460,7 +460,7 @@ the \Lfile{aux} file. This is only possible if package \Lpack{babel} or \Lpack{ \let\item\@idxitem} \makeatother %StartVisiblePreamble -\usepackage[canadien]{babel} +\usepackage[dutch]{babel} \usepackage{makeidx}\makeindex %StopVisiblePreamble \pagestyle{empty} @@ -479,7 +479,7 @@ Run \texttt{xindex} with \texttt{xindex -l "*" -e "?"}\index{123} \end{document} \end{externalDocument} -Instead of using \verb|-l *| one can also use the parameter \verb|-k| or \verb|--checklang|. +%Instead of using \verb|-l *| one can also use the parameter \verb|-k| or \verb|--checklang|. @@ -570,7 +570,7 @@ alphabet_upper = { -- for sorting crop, xindex, xindexOptions=-l de, - force=true, + force=false, runs=2,code,docType=latex, showFilename, align=\centering, @@ -629,7 +629,7 @@ the word beginning with the letter Ö: crop, xindex, xindexOptions=-c DIN2 -l DE, - force=true, + force=false, runs=2,code,docType=latex, showFilename, align=\centering, @@ -710,7 +710,7 @@ The following runs with \verb|xindex -l jp |: crop, xindex, xindexOptions=-l jp, - force=true, + force=false, runs=2, code=false, docType=latex, @@ -768,7 +768,7 @@ by Michal Hoftich's Lua package \texttt{LUA-UCA}, which should be part of any \T crop, xindex, xindexOptions=-u -l cs, - force=true, + force=false, runs=2,code,docType=latex, showFilename, align=\centering, @@ -818,7 +818,7 @@ the \verb|xindex-???| series because uppercase letters are sorted before lowerca crop, xindex, % xindexOptions=, - force=true, + force=false, runs=2,code,docType=latex, showFilename, align=\centering, @@ -874,7 +874,7 @@ The same example sorted with the \verb|-a| or \verb|--no_casesensitive| has anot crop, xindex, xindexOptions=-a, - force=true, + force=false, runs=2,code,docType=latex, showFilename, align=\centering, @@ -932,7 +932,7 @@ By default \textsf{alpha sort} will be sorted \emph{before} \textsf{alphaA}: crop, xindex, % xindexOptions=, - force=true, + force=false, runs=2,code,docType=latex, showFilename, align=\centering, @@ -971,7 +971,7 @@ This can be changed with the optional argument \verb|-i| or \verb|--ignoreSpace| crop, xindex, xindexOptions=-i, - force=true, + force=false, runs=2,code,docType=latex, showFilename, align=\centering, @@ -1039,7 +1039,7 @@ folium = { crop, xindex, xindexOptions=-l fr, - force=true, + force=false, runs=2,code,docType=latex, showFilename, align=\centering, @@ -1093,7 +1093,7 @@ of the same type, so we get \texttt{1f} in the output. crop, xindex, xindexOptions=-l de, - force=true,, + force=false,, runs=2,code,docType=latex, showFilename, align=\centering, @@ -1212,7 +1212,7 @@ Internally exists a function \verb|compressPageList| which is used if no crop, xindex, xindexOptions=-c HAdW-eKO, - force=true, + force=false, runs=2,code,docType=latex, showFilename, align=\centering, @@ -1333,7 +1333,7 @@ The following example runs \verb|xindex -c dtk -l de -n | crop, xindex, xindexOptions=-c dtk -n -l de, - force, + force=false, runs=2,code,docType=latex, showFilename, align=\centering, @@ -1406,7 +1406,7 @@ no limit for \Lprog{xindex}. crop, xindex, % xindexOptions=, - force=true, + force=false, runs=2,code,docType=latex, showFilename, align=\centering, @@ -1458,7 +1458,7 @@ Using the package \Lpack{hyperref} is no problem: crop, xindex, xindexOptions=-l de, - force=true, + force=false, runs=2,code,docType=latex, showFilename, align=\centering, @@ -1535,7 +1535,7 @@ such commands are ignored. In the following example we put an horizontal line af crop, xindex, xindexOptions=-l de, - force=true, + force=false, runs=2,code,docType=latex, showFilename, align=\centering, @@ -1583,7 +1583,7 @@ the vertical space between different first letters: crop, xindex, xindexOptions=-n, - force=true,, + force=false,, runs=2,code,docType=latex, showFilename, align=\centering, @@ -1635,7 +1635,7 @@ In the documents preamble there is the definition: crop, xindex, xindexOptions=-c header, - force=true, + force=false, runs=2,code,docType=latex, showFilename, align=\centering, @@ -1781,7 +1781,7 @@ and adds the program \Lprog{xindex} as the default program to \Lpack{imakeidx}. crop, xindex, xindexOptions=-l de, - force=true, + force=false, runs=2,code,docType=latex, showFilename, align=\centering, @@ -1883,7 +1883,7 @@ in the argument of \Lcs{indexentry}. crop, xindex, xindexOptions=-l de, - force, + force=false, runs=2,code,docType=latex, showFilename, align=\centering, @@ -1933,7 +1933,7 @@ Duplicate alpha beta gamma.\index{alpha!beta!gamma} crop, xindex, xindexOptions=-l de, - force, + force=false, runs=2,code,docType=latex, showFilename, align=\centering, @@ -1958,6 +1958,61 @@ Test \index{A!Test} oder auch \index{B!Test} \end{document} \end{externalDocument} + +\clearpage + + +\begin{externalDocument}[ +% grfOptions={width=\dimexpr\linewidth-2\fboxsep-2\fboxrule}, + mpwidth=0.55\linewidth, + pages={2}, + frame=false, + compiler=lualatex --shell-escape, + crop, + xindex, +% xindexOptions=-l de, + force=false, + runs=2,code,docType=latex, + showFilename, + align=\centering, +% grfOptions={width=\linewidth}, + lstOptions={columns=fixed}]{xindex} +%! lualatex --shell-escape +\documentclass[paper=a5]{scrartcl} +\usepackage{libertinus-otf} +\let\NewPage\newpage% only for demo +\makeatletter +\renewcommand\newpage{\NewPage\let\ps@plain\ps@empty} +\makeatother +%StartVisiblePreamble +%% Denis Bitouzé +\usepackage{makeidx}\makeindex +%StopVisiblePreamble +\begin{document} +Foo\index{foo!bar1!baz1} +Foo\index{foo!bar1!baz2} +Foo\index{foo!bar2!baz1} +Foo\index{foo!bar2!baz2} +\printindex +\end{document} +\end{externalDocument} + + + + + + + + + + + + + + + + + \printindex \end{document} diff --git a/indexing/xindex/lualatex/xindex-AU.lua b/indexing/xindex/lualatex/xindex-AU.lua new file mode 100644 index 0000000000..e69311fb3e --- /dev/null +++ b/indexing/xindex/lualatex/xindex-AU.lua @@ -0,0 +1,104 @@ +----------------------------------------------------------------------- +-- FILE: xindex-AU.lua +-- DESCRIPTION: configuration file for xindex.lua +-- REQUIREMENTS: +-- AUTHOR: Herbert Voß +-- LICENSE: LPPL1.3 +-- +-- $Id: xindex-DIN2.lua 13 2021-08-15 10:49:40Z hvoss $ +----------------------------------------------------------------------- + +if not modules then modules = { } end modules ['xindex-AU'] = { + version = 0.46, + comment = "configuration to xindex.lua", + author = "Herbert Voss", + copyright = "Herbert Voss", + license = "LPPL 1.3" +} + +itemPageDelimiter = "," -- Hello, 14 +compressPages = true -- something like 12--15, instead of 12,13,14,15. the |( ... |) syntax is still valid +fCompress = true -- 3f -> page 3, 4 and 3ff -> page 3, 4, 5 +minCompress = 3 -- 14--17 or +numericPage = true -- for non numerical pagenumbers, like "VI-17" +sublabels = {"", "-\\,", "--\\,", "---\\,"} -- for the (sub(sub(sub-items first one is for item +pageNoPrefixDel = "" -- a delimiter for page numbers like "VI-17" +indexOpening = "" -- commands after \begin{theindex} +rangeSymbol = "--" +idxnewletter = "\\textbf" -- Only valid if -n is not set +envStart = "\\begin{theindex}" +envStop = "\\end{theindex}" + + +--[[ + Each character's position in this array-like table determines its 'priority'. + Several characters in the same slot have the same 'priority'. +]] + +alphabet_lower = { -- for sorting + { ' ' }, -- only for internal tests + { 'a', 'á', 'à', 'å', 'æ', }, + { 'ä'}, + { 'b' }, + { 'c', 'ç' }, + { 'd' }, + { 'e', 'é', 'è', 'ë', 'ê' }, + { 'f' }, + { 'g' }, + { 'h' }, + { 'i', 'í', 'ì', 'î', 'ï' }, + { 'j' }, + { 'k' }, + { 'l' }, + { 'm' }, + { 'n', 'ñ' }, + { 'o', 'ó', 'ò', 'ô', 'ø', 'œ', 'ø'}, + { 'ö' }, + { 'p' }, + { 'q' }, + { 'r' }, + { 's', 'š' }, + { 'ss'}, + { 'ß' }, + { 't' }, + { 'u', 'ú', 'ù', 'û'}, + { 'ü' }, + { 'v' }, + { 'w' }, + { 'x' }, + { 'y', 'ý', 'ÿ' }, + { 'z', 'ž' } +} +alphabet_upper = { -- for sorting + { ' ' }, + { 'A', 'Á', 'À', 'Å', 'Æ', 'Â'}, + { 'Ä'}, + { 'B' }, + { 'C', 'Ç' }, + { 'D' }, + { 'E', 'È', 'É', 'Ë', 'Ê' }, + { 'F' }, + { 'G' }, + { 'H' }, + { 'I', 'Í', 'Ì', 'Ï', 'Î' }, + { 'J' }, + { 'K' }, + { 'L' }, + { 'M' }, + { 'N', 'Ñ' }, + { 'O', 'Ó', 'Ò', 'Ø','Œ', 'Ø', 'Ô' }, + { 'Ö' }, + { 'P' }, + { 'Q' }, + { 'R' }, + { 'S', 'Š' }, + { 'T' }, + { 'U', 'Ú', 'Ù', 'Û' }, + { 'Ü' }, + { 'V' }, + { 'W' }, + { 'X' }, + { 'Y', 'Ý', 'Ÿ' }, + { 'Z', 'Ž' } +} + diff --git a/indexing/xindex/lualatex/xindex-HAdW-eKO.lua b/indexing/xindex/lualatex/xindex-HAdW-eKO.lua index 8f31687b8e..bd95ecb5a8 100644 --- a/indexing/xindex/lualatex/xindex-HAdW-eKO.lua +++ b/indexing/xindex/lualatex/xindex-HAdW-eKO.lua @@ -11,7 +11,7 @@ -- configuration for index files of the Heidelberger Akademie der Wissenschaften if not modules then modules = { } end modules ['xindex-HAdW-eKO'] = { - version = 0.45, + version = 0.46, comment = "configuration to xindex.lua", author = "Herbert Voss", copyright = "Herbert Voss", diff --git a/indexing/xindex/lualatex/xindex-base.lua b/indexing/xindex/lualatex/xindex-base.lua index a7bd416934..968d130ba8 100644 --- a/indexing/xindex/lualatex/xindex-base.lua +++ b/indexing/xindex/lualatex/xindex-base.lua @@ -8,7 +8,7 @@ -- $Id: xindex-base.lua 22 2022-02-07 12:18:15Z hvoss $ ----------------------------------------------------------------------- -local info = { version = 0.45 } +local info = { version = 0.46 } -- check config if pageNoPrefixDel ~= "" then @@ -47,6 +47,14 @@ if #lines == 0 then os.exit() end +print("Presort of \\indexentry lines") +table.sort(lines) +if vlevel > 1 then + print("Pres-Sorted index list:") + for _,l in pairs(lines) do print (l) end +end + + if vlevel > 1 then writeLog(1,"--------------- Input data -----------------\n",2) for _,l in pairs(lines) do writeLog(1,l.."\n",2) end @@ -214,10 +222,22 @@ for k=1,#NewIndex do -- if utf8.codepoint(c) < 12288 then -- Japanese starts at hex 3000 -- firstChar = v["sortChar"] -- else - firstChar = utf.sub(v["sortChar"],1,1) -- catch a translatet Ö->OE + if language == "cs" then -- Czech language has special char ch + if utf.sub(v["sortChar"],1,2) == "CH" then + firstChar = "Ch" + else + firstChar = utf.sub(v["sortChar"],1,1) + end + else + firstChar = utf.sub(v["sortChar"],1,1) -- catch a translatet Ö->OE + end -- end currentChar = firstChar - charType = getCharType(firstChar) + if string.len(firstChar) > 1 then + charType = getCharType(utf.sub(firstChar,1,1)) + else + charType = getCharType(firstChar) + end if charType == 0 then numbers = false symbols = true diff --git a/indexing/xindex/lualatex/xindex-baselib.lua b/indexing/xindex/lualatex/xindex-baselib.lua index bc2c49a59c..a0a07fcdfd 100644 --- a/indexing/xindex/lualatex/xindex-baselib.lua +++ b/indexing/xindex/lualatex/xindex-baselib.lua @@ -9,7 +9,7 @@ ----------------------------------------------------------------------- if not modules then modules = { } end modules ['xindex-baselib'] = { - version = 0.45, + version = 0.46, comment = "base library to xindex.lua", author = "Herbert Voss", copyright = "Herbert Voss", diff --git a/indexing/xindex/lualatex/xindex-cfg-common.lua b/indexing/xindex/lualatex/xindex-cfg-common.lua index 23f70745a0..cade65084c 100644 --- a/indexing/xindex/lualatex/xindex-cfg-common.lua +++ b/indexing/xindex/lualatex/xindex-cfg-common.lua @@ -9,7 +9,7 @@ ----------------------------------------------------------------------- if not modules then modules = { } end modules ['xindex-cfg-common'] = { - version = 0.45, + version = 0.46, comment = "configuration to xindex.lua", author = "Herbert Voss", copyright = "Herbert Voss", diff --git a/indexing/xindex/lualatex/xindex-cfg-uca.lua b/indexing/xindex/lualatex/xindex-cfg-uca.lua index 96e7792bd9..3aa2eadc40 100644 --- a/indexing/xindex/lualatex/xindex-cfg-uca.lua +++ b/indexing/xindex/lualatex/xindex-cfg-uca.lua @@ -9,7 +9,7 @@ ----------------------------------------------------------------------- if not modules then modules = { } end modules ['xindex-cfg-lua'] = { - version = 0.45, + version = 0.46, comment = "configuration to xindex-cfg-uca.lua", author = "Herbert Voss", copyright = "Herbert Voss", diff --git a/indexing/xindex/lualatex/xindex-cfg.lua b/indexing/xindex/lualatex/xindex-cfg.lua index 520eb6ca8f..5778980fd4 100644 --- a/indexing/xindex/lualatex/xindex-cfg.lua +++ b/indexing/xindex/lualatex/xindex-cfg.lua @@ -9,7 +9,7 @@ ----------------------------------------------------------------------- if not modules then modules = { } end modules ['xindex-cfg'] = { - version = 0.45, + version = 0.46, comment = "main configuration to xindex.lua", author = "Herbert Voss", copyright = "Herbert Voss", diff --git a/indexing/xindex/lualatex/xindex-danteedition.lua b/indexing/xindex/lualatex/xindex-danteedition.lua index e720cfe4a6..15ac0c7385 100644 --- a/indexing/xindex/lualatex/xindex-danteedition.lua +++ b/indexing/xindex/lualatex/xindex-danteedition.lua @@ -9,7 +9,7 @@ ----------------------------------------------------------------------- if not modules then modules = { } end modules ['xindex-cfg'] = { - version = 0.45, + version = 0.46, comment = "configuration file for the DANTE Edition", author = "Herbert Voss", copyright = "Herbert Voss", diff --git a/indexing/xindex/lualatex/xindex-dtk.lua b/indexing/xindex/lualatex/xindex-dtk.lua index 347edad833..c83109a51a 100644 --- a/indexing/xindex/lualatex/xindex-dtk.lua +++ b/indexing/xindex/lualatex/xindex-dtk.lua @@ -9,7 +9,7 @@ ----------------------------------------------------------------------- if not modules then modules = { } end modules ['xindex-cfg'] = { - version = 0.45, + version = 0.46, comment = "DTK configuration to xindex.lua", author = "Herbert Voss", copyright = "Herbert Voss", diff --git a/indexing/xindex/lualatex/xindex-lib.lua b/indexing/xindex/lualatex/xindex-lib.lua index 67fc733488..c8b2a73718 100644 --- a/indexing/xindex/lualatex/xindex-lib.lua +++ b/indexing/xindex/lualatex/xindex-lib.lua @@ -9,7 +9,7 @@ ----------------------------------------------------------------------- if not modules then modules = { } end modules ['xindex-lib'] = { - version = 0.45, + version = 0.46, comment = "main library to xindex.lua", author = "Herbert Voss", copyright = "Herbert Voss", @@ -798,7 +798,11 @@ function itemOutput(last, v, hyperpage) if (i == 1) and (item == "item") then str = space.."\\"..item.." "..sublabels[i]..currentItems[i].."\n" else - str = space.."\\"..item.." "..sublabels[i]..currentItems[i]..itemPageDelimiter.." "..getPageList(v,hyperpage).."\n" + if i < excl+1 then -- there is one more ! => so we print no pagenumber + str = space.."\\"..item.." "..sublabels[i]..currentItems[i].."\n" + else + str = space.."\\"..item.." "..sublabels[i]..currentItems[i]..itemPageDelimiter.." "..getPageList(v,hyperpage).."\n" + end end for i, str0 in ipairs(escape_chars) do -- undo the escape char setting str = string.gsub(str,str0[2],str0[3]) diff --git a/indexing/xindex/lualatex/xindex-norsk.lua b/indexing/xindex/lualatex/xindex-norsk.lua index aaf4f212bb..119de90d5f 100644 --- a/indexing/xindex/lualatex/xindex-norsk.lua +++ b/indexing/xindex/lualatex/xindex-norsk.lua @@ -10,7 +10,7 @@ ----------------------------------------------------------------------- if not modules then modules = { } end modules ['xindex-no'] = { - version = 0.45, + version = 0.46, comment = "configuration to xindex.lua", author = "Herbert Voss", copyright = "Herbert Voss", diff --git a/indexing/xindex/lualatex/xindex-pretty.lua b/indexing/xindex/lualatex/xindex-pretty.lua index 9f097f6285..2706977090 100644 --- a/indexing/xindex/lualatex/xindex-pretty.lua +++ b/indexing/xindex/lualatex/xindex-pretty.lua @@ -7,7 +7,7 @@ ----------------------------------------------------------------------- if not modules then modules = { } end modules ['xindex-pretty'] = { - version = 0.45, + version = 0.46, comment = "dump a Lua table for debugging", author = "Steve Donovan", copyright = "Steve Donovan", diff --git a/indexing/xindex/lualatex/xindex-yannis.lua b/indexing/xindex/lualatex/xindex-yannis.lua index e7dac7eba5..9ef3151f92 100644 --- a/indexing/xindex/lualatex/xindex-yannis.lua +++ b/indexing/xindex/lualatex/xindex-yannis.lua @@ -9,7 +9,7 @@ ----------------------------------------------------------------------- if not modules then modules = { } end modules ['xindex-yannis'] = { - version = 0.45, + version = 0.46, comment = "main configuration to xindex.lua", author = "Herbert Voss", copyright = "Herbert Voss", diff --git a/indexing/xindex/scripts/xindex.lua b/indexing/xindex/scripts/xindex.lua index e335dfcc02..2b6123cdb2 100755 --- a/indexing/xindex/scripts/xindex.lua +++ b/indexing/xindex/scripts/xindex.lua @@ -6,11 +6,11 @@ -- AUTHOR: Herbert Voß -- LICENSE: LPPL 1.3 -- --- $Id: xindex.lua 22 2022-02-11 12:18:15Z hvoss $ +-- $Id: xindex.lua 22 2023-01-18 12:18:15Z hvoss $ ----------------------------------------------------------------------- xindex = xindex or { } - local version = 0.45 + local version = 0.46 xindex.version = version --xindex.self = "xindex" @@ -51,8 +51,8 @@ local args = require ('xindex-lapp') [[ -b,--no_labels -i,--ignoreSpace -o,--output (default "") - -k --checklang same as * star for checking aux file - -l,--language (default en) or * for detecting the language from the aux file + -k,--checklang + -l,--language (default en) -p,--prefix (default L) -u,--use_UCA -s,--use_stdin @@ -239,10 +239,13 @@ escape_chars = { -- by default " is the escape char outFile = io.open(outfilename,"w+") +check_language = args["checklang"] local aux_language = "" -if args["checklang"] or (args["language"] == "*") then - writeLog(2,'Check language in aux file\n',0) + +if check_language then + print("check aux file for unknown language") +-- writeLog(2,'Check language in aux file\n',0) -- \babel@aux{german}{} package babel -- \selectlanguage *[variant=german,spelling=new,]{german} package polyglossia local auxfile = inFiles[1]:split(".")[1]..".aux" @@ -256,9 +259,9 @@ if args["checklang"] or (args["language"] == "*") then break else if string.find(str, "babel@aux{") then - -- print("Babel defunden: "..str) +-- print("Babel gefunden: "..str) str = str:match("{..+}$") -- get last word {language} - -- print("Babel: "..str) + print("Babel: "..str) aux_language = str:sub(2,(#str-3)) break end @@ -293,6 +296,7 @@ if (indexheader[language] == nil) then writeLog(2,'Corrected the unknown language "'..language..'" to "en"'.."\n",0) language = "en" end + index_header = indexheader[language] if vlevel > 0 then for i=1,#index_header do writeLog(2,index_header[i].."\n",1) end end if (folium[language] == nil) then -- cgit v1.2.3