summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2018-12-06 22:14:02 +0000
committerKarl Berry <karl@freefriends.org>2018-12-06 22:14:02 +0000
commit4730f384a0f5538cd55aedf11762bcc5d3aeec86 (patch)
treee4a20e0b140edd07a6a3454366b5403cd511a3be /Master
parent1029a4f1c9617517f5aab7238fc2afe35216f27b (diff)
xindex (6dec18)
git-svn-id: svn://tug.org/texlive/trunk@49332 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r--Master/texmf-dist/doc/lualatex/xindex/CHANGELOG1
-rw-r--r--Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-1.tex25
-rw-r--r--Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-10.tex51
-rw-r--r--Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-11.tex24
-rw-r--r--Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-12.tex16
-rw-r--r--Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-13.tex22
-rw-r--r--Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-14.tex42
-rw-r--r--Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-2.tex24
-rw-r--r--Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-3.tex24
-rw-r--r--Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-4.tex36
-rw-r--r--Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-5.tex37
-rw-r--r--Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-6.tex32
-rw-r--r--Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-7.tex23
-rw-r--r--Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-8.tex30
-rw-r--r--Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-9.tex20
-rw-r--r--Master/texmf-dist/doc/lualatex/xindex/README.md10
-rw-r--r--Master/texmf-dist/doc/lualatex/xindex/xindex-doc.pdfbin311134 -> 330201 bytes
-rw-r--r--Master/texmf-dist/doc/lualatex/xindex/xindex-doc.tex136
-rwxr-xr-xMaster/texmf-dist/scripts/xindex/xindex.lua2
-rw-r--r--Master/texmf-dist/tex/lualatex/xindex/xindex-DIN2.lua2
-rw-r--r--Master/texmf-dist/tex/lualatex/xindex/xindex-HAdW-eKO.lua (renamed from Master/texmf-dist/tex/lualatex/xindex/xindex-HAdW.lua)87
-rw-r--r--Master/texmf-dist/tex/lualatex/xindex/xindex-base.lua4
-rw-r--r--Master/texmf-dist/tex/lualatex/xindex/xindex-cfg-common.lua2
-rw-r--r--Master/texmf-dist/tex/lualatex/xindex/xindex-cfg.lua2
-rw-r--r--Master/texmf-dist/tex/lualatex/xindex/xindex-dtk.lua2
-rw-r--r--Master/texmf-dist/tex/lualatex/xindex/xindex-lapp.lua2
-rw-r--r--Master/texmf-dist/tex/lualatex/xindex/xindex-lib.lua49
-rw-r--r--Master/texmf-dist/tex/lualatex/xindex/xindex-pretty.lua2
-rw-r--r--Master/texmf-dist/tex/lualatex/xindex/xindex-unicode.lua (renamed from Master/texmf-dist/tex/lualatex/xindex/unicode-category.lua)0
29 files changed, 232 insertions, 475 deletions
diff --git a/Master/texmf-dist/doc/lualatex/xindex/CHANGELOG b/Master/texmf-dist/doc/lualatex/xindex/CHANGELOG
index db865176ede..d67e2abd7c3 100644
--- a/Master/texmf-dist/doc/lualatex/xindex/CHANGELOG
+++ b/Master/texmf-dist/doc/lualatex/xindex/CHANGELOG
@@ -1,3 +1,4 @@
+0.06 2018-12-06 - renamed files, more changes to HAdW-eKO
0.05 2018-12-01 - modified HAdW config
0.04 2018-10-29 - added an own pretty printer function for tables
0.03 2018-10-27 -fix for same pagenumber but different special
diff --git a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-1.tex b/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-1.tex
deleted file mode 100644
index b5e4c6a1d76..00000000000
--- a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-1.tex
+++ /dev/null
@@ -1,25 +0,0 @@
-\documentclass{scrartcl}
-\makeatletter
-\def\theindex{% only for demonstration
- \section*{\indexname}
- \parskip\z@ \@plus .3\p@\relax \parindent\z@
- \let\item\@idxitem}
-\makeatother
-
-%StartVisiblePreamble
-\usepackage{makeidx}\makeindex
-%StopVisiblePreamble
-\pagestyle{empty}
-\begin{document}
-\section{Escaping characters}
-\begin{itemize}
-\item Exclamation mark ! \index{exclaim ("!)}
-\item Vertical bar| \index{Vertical bar ("|)}
-\item Doublequote \verb|"| \index{""}
-\item Double doublequote \verb|""| \index{""""}
-\item At character @ \index{At ("@)}
-\end{itemize}
-run \texttt{xindex <file.idx>}\index{<file.idx>}\index{123}
-\newpage
-\printindex
-\end{document}
diff --git a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-10.tex b/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-10.tex
deleted file mode 100644
index 9a8074a05f8..00000000000
--- a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-10.tex
+++ /dev/null
@@ -1,51 +0,0 @@
-\RequirePackage{filecontents}
-\begin{filecontents*}{\jobname.idx}
-\indexentry{VoßHerbert@Herbert Voß!Wasgenstraße 121\protect \\10127 Berlin\protect \\\Email {herbert"@xyz.de}}{3}
-\indexentry{SieversMartin@Martin Sievers!siehe Seite~\protect \pageref {president}}{4}
-\indexentry{VoßHerbert@Herbert Voß!Wasgenstraße 121\protect \\10127 Berlin\protect \\\Email {herbert"@xyz.de}}{5}
-\indexentry{ZiegenhagenUwe@Uwe Ziegenhagen!Lokostr. 19 \protect \\ 20713 Köln \protect \\\Email {ziegenhagen"@mail.com}}{9}
-\indexentry{BehrendtDoris@Doris Behrendt!\Email {doris"@xyz.de}}{14}
-\indexentry{JacekJonas Jared@Jonas Jared Jazek!\Email {mail"@jones.net}}{20}
-\indexentry{KohmMarkus@Marcus Tohm!Freiherr-von-Stein-Straße~16\protect \\ 15525~Edingen-Neckarhausen\protect \\ \Email {komascript"@xyz.info}}{24}
-\indexentry{KohmMarkus@Marcus Tohm!Freiherr-von-Stein-Straße~16\protect \\ 15525~Edingen-Neckarhausen\protect \\ \Email {komascript"@xyz.info}}{31}
-\indexentry{SchubertElke@Elke Schubert!Hausstraße~15\protect \\ 36396~Stutense\protect \\ \Email {elke.schubert"@kabelxyz.de}}{40}
-\indexentry{FennJürgen@Jürgen Fennt!Friedrichallee 74\protect \\13233 Neu-Isenburg\protect \\\Email {juergen.fennt"@gmxnet.de}}{48}
-\end{filecontents*}
-\documentclass{article}
-\usepackage{url}
-\DeclareUrlCommand\Email{%
- \def\UrlLeft{}%
- \def\UrlRight{}%
- \def\UrlLinkPrefix{mailto:}%
- \def\UrlType{email}%
-}
-\usepackage{multicol}
-\makeatletter
-\def\DTK@scan@item#1\subitem#2\relax#3\@nil{%
- \def\DTK@tempa{#1}\def\DTK@tempb{#2}\def\DTK@tempc{#3}%
-}
-\def\theindex{% only for demonstration
- \columnseprule=\z@ \columnsep=10\p@
- \begin{multicols}{2}[\noindent\textbf{\large Autorenliste}]%
- \makeatletter
- \def\indexspace{}%
- \parindent\z@
- \setlength{\parskip}{\z@ \@plus .3\p@}%
- \setlength{\parfillskip}{\z@ \@plus 1fil}%
- \raggedright
- \def\item##1\@nil{\DTK@scan@item##1\@nil
- \par\parbox{\columnwidth}{%
- \textbf{\DTK@tempa}\hfill[\DTK@tempc]\par\DTK@tempb
- }%
- \par\bigskip
- }%
-}
-\def\endtheindex{\end{multicols}}
-\makeatother
-%StartVisiblePreamble
-\usepackage{makeidx}
-%StopVisiblePreamble
-\pagestyle{empty}
-\begin{document}
-\mbox{}\printindex
-\end{document}
diff --git a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-11.tex b/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-11.tex
deleted file mode 100644
index 0a942999dc7..00000000000
--- a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-11.tex
+++ /dev/null
@@ -1,24 +0,0 @@
-\documentclass{article}
-\makeatletter
-\def\theindex{% only for demonstration
- \section*{\indexname}
- \parskip\z@ \@plus .3\p@\relax \parindent\z@
- \let\item\@idxitem}
-\makeatother
-%StartVisiblePreamble
-\makeatletter
-\g@addto@macro{\theindex}{%
- \pagestyle{empty}%
- \def\subsubsubitem{\@idxitem\hspace*{35\p@}}
- \def\subsubsubsubitem{\@idxitem\hspace*{40\p@}}
-}
-\makeatother
-\usepackage{makeidx}\makeindex
-%StopVisiblePreamble
-\begin{document}
-foo\index{foo} bar\index{foo!bar}
-baz\index{foo!bar!baz} foobar%
-\index{foo!bar!baz!foobar} Kuba
-\index{foo!bar!baz!foobar!Kuba}
-\newpage \printindex
-\end{document}
diff --git a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-12.tex b/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-12.tex
deleted file mode 100644
index 79e7295af7c..00000000000
--- a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-12.tex
+++ /dev/null
@@ -1,16 +0,0 @@
-\documentclass{scrartcl}
-\usepackage{libertinus-otf}
-%StartVisiblePreamble
-\usepackage{xindex}
-\makeindex
-%StopVisiblePreamble
-\makeatletter
-\let\ps@plain\ps@empty
-\makeatother
-\begin{document}
-\index{foo}foo and
-\writeidx{\item\protect\hrulefill}
-\index{bar}bar
-\index{gex}gex
-\printindex
-\end{document}
diff --git a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-13.tex b/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-13.tex
deleted file mode 100644
index 2628494f7cb..00000000000
--- a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-13.tex
+++ /dev/null
@@ -1,22 +0,0 @@
-\documentclass{scrartcl}
-\makeatletter
-\def\theindex{% only for demonstration
- \section*{\indexname}
- \parskip\z@ \@plus .3\p@\relax \parindent\z@
- \let\item\@idxitem}
-\makeatother
-%StartVisiblePreamble
-\usepackage{makeidx}\makeindex
-%StopVisiblePreamble
-\pagestyle{empty}
-\begin{document}
-Ein foo\index{foo}\index{bar|(}
- \newpage und \index{foo}
-ein foo\index{foo|textit} \newpage
-und foo\index{foo|textbf} \newpage
-und foo\index{foo|fbox}
-\index{bar|)}
-\newpage
-\verb|xindex -n <file>|
-\printindex
-\end{document}
diff --git a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-14.tex b/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-14.tex
deleted file mode 100644
index dd4c5adb63d..00000000000
--- a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-14.tex
+++ /dev/null
@@ -1,42 +0,0 @@
-\documentclass{scrartcl}
-\usepackage{libertinus-otf}
-\makeatletter
-\let\ps@plain\ps@empty
-\makeatother
-%StartVisiblePreamble
-\usepackage[imakeidx]{xindex}
-\makeindex[name=persons,title=Index of names,
- columns=1,options=--noheadings]
-\def\ThanhVN{Hàn Thê\protect\llap{%
- \raise 0.5ex\hbox{\'{}}}}
-%StopVisiblePreamble
-\pagestyle{empty}\renewcommand\thepage{}
-\begin{document}
-foo\index[persons]{Niepraschk,~ Rolf}
-foo\index[persons]{Lamport,~ Leslie}
-foo\index[persons]{Knuth,~ Donald}
-foo\index[persons]{Knuth,~ Donald}
-\newpage
-foo\index[persons]{Lamport,~ Leslie}
-foo\index[persons]{Thành,~ \ThanhVN}
-foo\index[persons]{Kew,~ Jonathan}
-foo\index[persons]{Kohm,~ Markus}
-foo\index[persons]{Preining,~ Norbert}
-\newpage
-foo\index[persons]{Schenk,~ Christian}
-foo\index[persons]{Feuerstack,~ Thomas}
-foo\index[persons]{Tobin,~ Geoffrey}
-foo\index[persons]{Wilson,~ Peter}
-\newpage
-foo\index[persons]{Kohm,~ Markus}
-foo\index[persons]{Theiling,~ Henrik}
-foo\index[persons]{Pégourié-Gonnard,~ Manuel}
-foo\index[persons]{Roux,~ Élie}
-\newpage
-foo\index[persons]{Mittelbach,~ Frank}
-foo\index[persons]{Fairbairns,~ Robin}
-foo\index[persons]{Lemberg,~ Werner}
-foo\index[persons]{Volovich,~ Vladimir}
-
-\printindex[persons]
-\end{document}
diff --git a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-2.tex b/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-2.tex
deleted file mode 100644
index 8fd28b3df30..00000000000
--- a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-2.tex
+++ /dev/null
@@ -1,24 +0,0 @@
-\documentclass{scrartcl}
-\makeatletter
-\def\theindex{% only for demonstration
- \section*{\indexname}
- \parskip\z@ \@plus .3\p@\relax \parindent\z@
- \let\item\@idxitem}
-\makeatother
-%StartVisiblePreamble
-\usepackage{makeidx}\makeindex
-%StopVisiblePreamble
-\pagestyle{empty}
-\begin{document}
-\section{Escaping characters with >}
-\begin{itemize}
-\item Exclamation mark ! \index{exclaim (>!)}
-\item Vertical bar| \index{Vertical bar (>|)}
-\item Doublequote \verb|"| \index{>"}
-\item Double doublequote \verb|""| \index{>">"}
-\item At character @ \index{At (>@)}
-\end{itemize}
-Run \texttt{xindex} with \texttt{xindex -e ">"}\index{<file.idx>}\index{123}
-\newpage
-\printindex
-\end{document}
diff --git a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-3.tex b/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-3.tex
deleted file mode 100644
index 74b701b678c..00000000000
--- a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-3.tex
+++ /dev/null
@@ -1,24 +0,0 @@
-\documentclass{scrartcl}
-\makeatletter
-\def\theindex{% only for demonstration
- \section*{\indexname}
- \parskip\z@ \@plus .3\p@\relax \parindent\z@
- \let\item\@idxitem}
-\makeatother
-%StartVisiblePreamble
-\usepackage{makeidx}\makeindex
-%StopVisiblePreamble
-\pagestyle{empty}
-\begin{document}
-\section{Escaping characters with >}
-\begin{itemize}
-\item Exclamation mark ! \index{exclaim (>!)}
-\item Vertical bar| \index{Vertical bar (>|)}
-\item Doublequote \verb|"| \index{>"}
-\item Double doublequote \verb|""| \index{>">"}
-\item At character @ \index{At (>@)}
-\end{itemize}
-Run \texttt{xindex} with \texttt{xindex -l de -e ">"}\index{123}
-\newpage
-\printindex
-\end{document}
diff --git a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-4.tex b/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-4.tex
deleted file mode 100644
index dcedfca9aaf..00000000000
--- a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-4.tex
+++ /dev/null
@@ -1,36 +0,0 @@
-\documentclass[paper=a5]{scrartcl}
-\usepackage[ngerman]{babel}
-%StartVisiblePreamble
-\usepackage{makeidx}\makeindex
-\newcommand\Index[1]{\index{#1}#1}
-%StopVisiblePreamble
-\usepackage{multicol}
-\makeatletter
-\def\theindex{% only for demonstration
- \newpage
- \section*{\indexname}
- \begin{multicols}{2}
- \parskip\z@ \@plus .3\p@\relax \parindent\z@
- \let\item\@idxitem}
-\def\endtheindex{\end{multicols}}
-\makeatother
-\pagestyle{empty}
-\begin{document}
-Sorted with \verb|-l DE|
-
-\Index{Österreich} \Index{Öresund}
-\Index{Ostern} \Index{Ober}
-\Index{Oberin} \Index{Österreich}
-\Index{Öresund} \Index{Ostern}
-\Index{Ober} \Index{Oberin}
-\Index{Obstler} \Index{Öl}
-\Index{ölen} \Index{Ödem}
-\Index{Oligarch} \Index{Oder}
-\Index{oder} \index{Fluss!Oder}
-\index{Oder|seealso{Fluss}}
-\Index{Göbel} \Index{Goethe}
-\Index{Göthe} \Index{Götz}
-\Index{Goldmann}
-
-\printindex
-\end{document}
diff --git a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-5.tex b/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-5.tex
deleted file mode 100644
index 5c87b0cf310..00000000000
--- a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-5.tex
+++ /dev/null
@@ -1,37 +0,0 @@
-\documentclass[paper=a5]{scrartcl}
-\usepackage[ngerman]{babel}
-%StartVisiblePreamble
-\usepackage{makeidx}\makeindex
-\newcommand\Index[1]{\index{#1}#1}
-%StopVisiblePreamble
-\usepackage{multicol}
-\makeatletter
-\def\theindex{% only for demonstration
- \newpage
- \section*{\indexname}
- \begin{multicols}{2}
- \parskip\z@ \@plus .3\p@\relax \parindent\z@
- \let\item\@idxitem}
-\def\endtheindex{\end{multicols}}
-\makeatother
-\pagestyle{empty}
-\begin{document}
-Sorted with
-\verb|--config DIN2 -l DE|
-
-\Index{Österreich} \Index{Öresund}
-\Index{Ostern} \Index{Ober}
-\Index{Oberin} \Index{Österreich}
-\Index{Öresund} \Index{Ostern}
-\Index{Ober} \Index{Oberin}
-\Index{Obstler} \Index{Öl}
-\Index{ölen} \Index{Ödem}
-\Index{Oligarch} \Index{Oder}
-\Index{oder} \index{Fluss!Oder}
-\index{Oder|seealso{Fluss}}
-\Index{Göbel} \Index{Goethe}
-\Index{Göthe} \Index{Götz}
-\Index{Goldmann}
-
-\printindex
-\end{document}
diff --git a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-6.tex b/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-6.tex
deleted file mode 100644
index 34567f4fb89..00000000000
--- a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-6.tex
+++ /dev/null
@@ -1,32 +0,0 @@
-\documentclass[a5paper]{article}
-%StartVisiblePreamble
-\usepackage{fontspec}
-\setmainfont{SourceHanSans}
-\usepackage[japanese]{babel}
-\addto\captionsjapanese{%
- \def\indexname{指数}}
-\usepackage{hvindex}% for \Index
-\usepackage{makeidx}\makeindex
-%StopVisiblePreamble
-\usepackage{multicol}
-\makeatletter
-\def\theindex{% only for demonstration
- \section*{\indexname}
- \begin{multicols}{2}
- \parskip\z@ \@plus .3\p@\relax \parindent\z@
- \let\item\@idxitem}
-\def\endtheindex{\end{multicols}}
-\makeatother
-\pagestyle{empty}
-\begin{document}
-\Index{車} \Index{車道}
-日本\index{日本|fbox}
-\Index{病院} \Index{コンピュータ}
-\Index{プリンタ} \Index{印刷}
-\Index{スイミングプール} \Index{天王}
-\Index{広島} \Index{ドイツ}
-\Index{日本} \Index{ワープロ}
-\Index{foo} und \Index{bar}
-\Index{//} \Index{4711}
-\newpage\printindex
-\end{document}
diff --git a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-7.tex b/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-7.tex
deleted file mode 100644
index c6f8e09f708..00000000000
--- a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-7.tex
+++ /dev/null
@@ -1,23 +0,0 @@
-\documentclass{scrartcl}
-\makeatletter
-\def\theindex{% only for demonstration
- \section*{\indexname}
- \parskip\z@ \@plus .3\p@\relax \parindent\z@
- \let\item\@idxitem}
-\makeatother
-%StartVisiblePreamble
-\usepackage{makeidx}\makeindex
-%StopVisiblePreamble
-\pagestyle{empty}
-\begin{document}
-Sorted with \verb|-l fr|
-
-foobar\index{foobar|(}
-foo\index{foo}\index{bar}\index{baz}\newpage
-foo\index{foo}\index{bar}\index{baz}\newpage
-foo\index{bar}\index{baz}\newpage
-foo\index{baz}\newpage
-foo\index{foo}foobar\index{foobar|)}
-\newpage
-\printindex
-\end{document}
diff --git a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-8.tex b/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-8.tex
deleted file mode 100644
index 74fbe92ccf5..00000000000
--- a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-8.tex
+++ /dev/null
@@ -1,30 +0,0 @@
-\documentclass[paper=a6]{scrartcl}
-\usepackage{multicol}
-\makeatletter
-\def\theindex{% only for demonstration
- \section*{\indexname}
- \begin{multicols}{2}
- \parskip\z@ \@plus .3\p@\relax \parindent\z@
- \let\item\@idxitem}
-\def\endtheindex{\end{multicols}}
-\makeatother
-%StartVisiblePreamble
-\usepackage{makeidx}\makeindex
-\usepackage{hvindex}% for \Index
-\usepackage[colorlinks]{hyperref}
-%StopVisiblePreamble
-\pagestyle{empty}
-\begin{document}
-Sorted with \verb|-l DE|
-\Index{Österreich} \Index{Öresund}
-\Index{Ostern} \Index{Ober} \Index{Oberin}
-\Index{Österreich} \index{Öresund|textbf}
-\Index{Ostern} \Index{Ober} \Index{Oberin}
-\Index{Obstler} \Index{Öl} \Index{ölen}
-\Index{Ödem} \Index{Oligarch} \Index{Oder}
-\Index{oder} \index{Fluss!Oder|textit}
-\Index{Oder|seealso{Fluss}} \Index{Göbel}
-\Index{Goethe} \Index{Göthe} \Index{Götz}
-\newpage\Index{Goldmann} \Index{Goethe}
-\newpage \printindex
-\end{document}
diff --git a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-9.tex b/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-9.tex
deleted file mode 100644
index 166123a767b..00000000000
--- a/Master/texmf-dist/doc/lualatex/xindex/Examples/xindex-9.tex
+++ /dev/null
@@ -1,20 +0,0 @@
-\documentclass{scrartcl}
-\makeatletter
-\def\theindex{% only for demonstration
- \section*{\indexname}
- \parskip\z@ \@plus .3\p@\relax \parindent\z@
- \let\item\@idxitem}
-\makeatother
-%StartVisiblePreamble
-\usepackage{makeidx}\makeindex
-%StopVisiblePreamble
-\pagestyle{empty}
-\begin{document}
-Ein foo\index{foo} \newpage und \index{foo}
-ein foo\index{foo|textit} \newpage
-und foo\index{foo|textbf} \newpage
-und foo\index{foo|fbox}
-
-\newpage
-\printindex
-\end{document}
diff --git a/Master/texmf-dist/doc/lualatex/xindex/README.md b/Master/texmf-dist/doc/lualatex/xindex/README.md
index a50ffb3ba3b..5cce33e9972 100644
--- a/Master/texmf-dist/doc/lualatex/xindex/README.md
+++ b/Master/texmf-dist/doc/lualatex/xindex/README.md
@@ -10,11 +10,11 @@ will be included in at least LuaTeX 1.09
* xindex-base.lua -- base file
* xindex-lib.lua -- functions module
* xindex-lapp.lua -- read parameter
-* unicode-category.lua -- list of Unicode categories
+* xindex-unicode.lua -- list of Unicode categories
-The syntax of `index`
+The syntax of `xindex`
- index [options] <inputfile>[.idx]
+ xindex [options] <inputfile>[.idx]
possible options are (short,long):
@@ -43,7 +43,3 @@ buch.tex: run
lualatex buch
-after installing the files into the TeXLive distro you
-can run `xindex` instead of `./xindex.lua`.
-
-LICENSE: LPPL 1.3
diff --git a/Master/texmf-dist/doc/lualatex/xindex/xindex-doc.pdf b/Master/texmf-dist/doc/lualatex/xindex/xindex-doc.pdf
index 75097c84692..79f7a620578 100644
--- a/Master/texmf-dist/doc/lualatex/xindex/xindex-doc.pdf
+++ b/Master/texmf-dist/doc/lualatex/xindex/xindex-doc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/lualatex/xindex/xindex-doc.tex b/Master/texmf-dist/doc/lualatex/xindex/xindex-doc.tex
index 6450a0275fb..8422943a873 100644
--- a/Master/texmf-dist/doc/lualatex/xindex/xindex-doc.tex
+++ b/Master/texmf-dist/doc/lualatex/xindex/xindex-doc.tex
@@ -78,7 +78,7 @@
\def\setVersion#1{\setVVersion#1!!}
\def\setVVersion#1=#2!!{\def\xIndexVersion{#2}}
-\setVersion{version = 0.05}% can be autimatically changed by perl
+\setVersion{version = 0.06}% can be autimatically changed by perl
\title{Program and package \texttt{xindex} \\--\\ \normalsize \xIndexVersion\ (\today)}
\author{Herbert Voß\thanks{hvoss@tug.org}}
@@ -793,8 +793,8 @@ und foo\index{foo|fbox}
The main config file is \Lfile{xindex-cfg.lua} is used by default and loading it by the
optional parameter -c makes no sense. A new config file must have the prefix \texttt{xindex-}
-and the file extension \Lext{lua}, for example: \Lfile{xindex-HAdW.lua} which can be used
-with \verb|--config HAdW|. The file must be saved in the documents directory or in
+and the file extension \Lext{lua}, for example: \Lfile{xindex-HAdW-eKO.lua} which can be used
+with \verb|--config HAdW-eKO|. The file must be saved in the documents directory or in
one which is known to \Lprog{kpsewhich}, for example\footnote{The directory \texttt{xindex} must be created
before saving the file.} \verb|$TEXMFLOCAL/tex/lualatex/xindex/| %$
Don not forgot to update the filename database.
@@ -825,15 +825,37 @@ For example:
\begin{verbatim}
function specialCompressPageList(pages)
- if (#pages <= 1) or (pages[1] == "") then return pages end -- only one pageno
---[[
-modify pagelist
-sortPages = {{ origin = { number = VII/1-715, special = \textbf },
- sort = 07/1-00715 },
- {...}
- }
-]]
+ if (pages[1]["number"] == "") then pages[1]["number"] = " " end
+ if (#pages <= 1) then
+ pages[1]["number"] = pages[1]["number"]:gsub('(.-)-',colorBox)-- replace "-" with ":\\ "
+ return pages
+ end -- only one pageno
local sortPages = {}
+ local roman
+ local volume
+ local page
+ local i
+ for i=1,#pages do
+ roman = string.gsub(pages[i]["number"],'%U*','') -- only uppercase to catch VII123f (folium pages)
+ if romanToNumber(roman) then
+ roman = string.format("%05d",tonumber(romanToNumber(roman)))
+ else
+ roman = ""
+ end
+ volume = string.gsub(pages[i]["number"],'%a*','')
+ if volume then volume = volume:gsub('-%d*','') end
+ page = string.gsub(pages[i]["number"],'.*-','')
+ page = string.format("%5s",page)
+ sortPages[#sortPages+1] = {
+ origin = pages[i],
+ sort = roman..volume.." "..page } -- no minus between Roman/Volume and first page
+ end
+-- sort the page list
+ table.sort(sortPages, function(a,b) return a["sort"] < b["sort"] end )
+ local Pages = {}
+ for i=1,#sortPages do -- use the sorted origin table
+ Pages[#Pages+1] = sortPages[i]["origin"]
+ end
[...]
@@ -845,6 +867,98 @@ is a special function which can handle \Index{page number}s like VII-17, VIII/2/
Internally exists a function \verb|compressPageList| which is used if no
\verb|specialCompressPageList| is defined.
+\begin{externalDocument}[
+ grfOptions={scale=0.9},% width=\dimexpr\linewidth-2\fboxsep-2\fboxrule},
+% mpwidth=0.25\linewidth,
+ pages={2},
+ frame=false,
+ compiler=lualatex,
+ crop,
+ xindex,
+ xindexOptions=-c HAdW-eKO,
+ force,
+ runs=2,code,docType=latex,
+ showFilename,
+ align=\centering,
+ lstOptions={columns=fixed}]{xindex}
+\RequirePackage{filecontents}
+\begin{filecontents*}{\jobname.idx}
+\indexentry{Aachen, Johannes von}{VII/1-215}
+\indexentry{Aarones}{VII/2/1-1003}
+\indexentry{Aarones}{VII/2/1-1012}
+\indexentry{Abrahamson}{VII/2/1-864}
+\indexentry{Abrahamson}{VII/2/1-991}
+\indexentry{Abrahamson}{VII/2/1-1048}
+\indexentry{Abrahamson}{VII/2/1-1067}
+\indexentry{Abrahamson}{VII/2/1-1156}
+\indexentry{Adamson}{VII/2/1-1223}
+\indexentry{Adamson}{IX/1-1228}
+\indexentry{Karl V}{VII/1-34}
+\indexentry{Karl II}{VII/1-147}
+\indexentry{Karl III}{VII/1-149}
+\indexentry{Karl VI}{VII/1-296}
+\indexentry{Karl IV}{VII/1-34}
+\indexentry{Karl IV}{VII/1-147}
+\indexentry{Karl X}{VII/1-149}
+\indexentry{Karl IX}{VII/1-296}
+\indexentry{Schleswig-Holstein!Rudolf von, Herzog}{VII/2/1-758}
+\indexentry{Schleswig-Holstein!Rudolf von, Herzog}{VII/2/1-759}
+\indexentry{Schleswig-Holstein!Rudolf von, Herzog}{VII/2/1-760}
+\indexentry{Schleswig-Holstein!Rudolf von, Herzog}{VII/2/1-761}
+\indexentry{Schleswig-Holstein!Rudolf von, Herzog}{VII/2/1-765}
+\indexentry{Adrian!Hauster}{VII/1-514}
+\indexentry{Adrian!Hauster}{XI/1-515}
+\indexentry{Alting!Mensa}{VII/1-426}
+\indexentry{Alting!Mensa}{VII/1-434}
+\indexentry{Alting!Mensa}{VII/1-453}
+\indexentry{Alting!Mensa}{VII/1-455}
+\indexentry{Alting!Mensa}{VII/1-466}
+\indexentry{Alting!Mensa}{VII/1-467}
+\indexentry{Bremen!Heinz von, Erzbischof|see{Sachsen-Lauenburg}}{}
+\indexentry{Osnabrück!Heinz von, Bischof|see{Sachsen-Lauenburg}}{}
+\indexentry{Zwingl, Haldrich}{IX-479}
+\indexentry{Zwingl, Haldrich}{IX-692}
+\indexentry{Julian!Apostata, römischer Kaiser}{VII/2/1-904}
+\indexentry{Justinian I., byzantinischer Kaiser}{VII/1-326}
+\indexentry{Justinian I., byzantinischer Kaiser}{VII/1-734}
+\indexentry{Justinian I., byzantinischer Kaiser}{VII/2/1-1011}
+\indexentry{Karl!V., Kaiser}{VII/1-34}
+\indexentry{Karl!II., Kaiser}{VII/1-147}
+\indexentry{Karl!III., Kaiser}{VII/1-149}
+\indexentry{Karl!VI., Kaiser}{VII/1-296}
+\indexentry{Karl!IV., Kaiser}{VII/1-34}
+\indexentry{Karl!IV., Kaiser}{VII/1-147}
+\indexentry{Karl!X., Kaiser}{VII/1-149}
+\indexentry{Karl!IX., Kaiser}{VII/1-296}
+\end{filecontents*}
+\documentclass[a4paper]{article}
+\usepackage[margin=1cm]{geometry}
+\usepackage{xcolor}
+\usepackage{url}
+\usepackage{multicol}
+\makeatletter
+\def\theindex{% only for demonstration
+ \newpage
+ \section*{Personenverzeichnis}
+ \begin{multicols}{2}
+ \parskip\z@ \@plus .3\p@\relax \parindent\z@ \raggedright
+ \let\item\@idxitem}
+\def\endtheindex{\end{multicols}}
+\makeatother
+%StartVisiblePreamble
+\usepackage{makeidx}
+%StopVisiblePreamble
+\pagestyle{empty}
+\begin{document}
+\mbox{}\printindex
+\end{document}
+\end{externalDocument}
+
+
+
+
+
+
The \Index{config file} \Lfile{xindex-dtk.lua} defines a special page output:
\begin{verbatim}
diff --git a/Master/texmf-dist/scripts/xindex/xindex.lua b/Master/texmf-dist/scripts/xindex/xindex.lua
index 83ade61e03e..3ee85f53324 100755
--- a/Master/texmf-dist/scripts/xindex/xindex.lua
+++ b/Master/texmf-dist/scripts/xindex/xindex.lua
@@ -8,7 +8,7 @@
-----------------------------------------------------------------------
xindex = xindex or { }
- local version = 0.05
+ local version = 0.06
xindex.version = version
--xindex.self = "xindex"
diff --git a/Master/texmf-dist/tex/lualatex/xindex/xindex-DIN2.lua b/Master/texmf-dist/tex/lualatex/xindex/xindex-DIN2.lua
index 58c33a5e2b8..65675eab94c 100644
--- a/Master/texmf-dist/tex/lualatex/xindex/xindex-DIN2.lua
+++ b/Master/texmf-dist/tex/lualatex/xindex/xindex-DIN2.lua
@@ -7,7 +7,7 @@
-----------------------------------------------------------------------
if not modules then modules = { } end modules ['xindex-cfg'] = {
- version = 0.05,
+ version = 0.06,
comment = "configuration to xindex.lua",
author = "Herbert Voss",
copyright = "Herbert Voss",
diff --git a/Master/texmf-dist/tex/lualatex/xindex/xindex-HAdW.lua b/Master/texmf-dist/tex/lualatex/xindex/xindex-HAdW-eKO.lua
index a45bd744332..5c828936189 100644
--- a/Master/texmf-dist/tex/lualatex/xindex/xindex-HAdW.lua
+++ b/Master/texmf-dist/tex/lualatex/xindex/xindex-HAdW-eKO.lua
@@ -1,5 +1,5 @@
-----------------------------------------------------------------------
--- FILE: xindex-HAdW.lua
+-- FILE: xindex-HAdW-eco.lua
-- DESCRIPTION: configuration file for xindex.lua
-- REQUIREMENTS:
-- AUTHOR: Herbert Voß
@@ -9,7 +9,7 @@
-- configuration for index files of the Heidelberger Akademie der Wissenschaften
if not modules then modules = { } end modules ['xindex-HAdW'] = {
- version = 0.05,
+ version = 0.06,
comment = "configuration to xindex.lua",
author = "Herbert Voss",
copyright = "Herbert Voss",
@@ -98,8 +98,11 @@ alphabet_upper = { -- for sorting
--\indexentry{Bremen!Adalbert I. von, Erzbischof}{VII/1-50}
function specialCompressPageList(pages)
- if (#pages <= 1) or (pages[1]["number"] == "") then
- pages[1]["number"] = pages[1]["number"]:gsub('-',' ')
+--print(#pages..".. number:|"..pages[1]["number"].."| Special:"..pages[1]["special"])
+ if (pages[1]["number"] == "") then pages[1]["number"] = " " end
+ if (#pages <= 1) then
+ pages[1]["number"] = pages[1]["number"]:gsub('(.-)-',colorBox)-- replace "-" with ":\\ "
+-- pages[1]["number"] = pages[1]["number"]:gsub('-',':~')-- replace "-" with ":\\ "
return pages
end -- only one pageno
--[[
@@ -114,17 +117,22 @@ sortPages = {{ origin = { number=VII/1-715, special="" },
local volume
local page
local i
+--print("----------------------------------------")
for i=1,#pages do
- roman = string.gsub(pages[i]["number"],'%U*','') -- only uppercase to catch VII123f (folium pages)
- roman = string.format("%03d",tonumber(romanToNumber(roman)))
- volume = string.gsub(pages[i]["number"],'%a*','')
- if volume then volume = volume:gsub('-%d*','') end
- page = string.gsub(pages[i]["number"],'.*-','')
- page = string.format("%5s",page)
---print(roman..volume.." "..page)
- sortPages[#sortPages+1] = {
- origin = pages[i],
- sort = roman..volume.." "..page } -- no minus between Roman/Volume and first page
+ roman = string.gsub(pages[i]["number"],'%U*','') -- only uppercase to catch VII123f (folium pages)
+ if romanToNumber(roman) then
+ roman = string.format("%05d",tonumber(romanToNumber(roman)))
+ else
+ roman = ""
+ end
+ volume = string.gsub(pages[i]["number"],'%a*','')
+ if volume then volume = volume:gsub('-%d*','') end
+ page = string.gsub(pages[i]["number"],'.*-','')
+ page = string.format("%5s",page)
+ sortPages[#sortPages+1] = {
+ origin = pages[i],
+ sort = roman..volume.." "..page } -- no minus between Roman/Volume and first page
+--print(roman..volume.." "..page.." Special:"..pages[i]["special"])
end
-- sort the page list
table.sort(sortPages, function(a,b) return a["sort"] < b["sort"] end )
@@ -137,21 +145,25 @@ sortPages = {{ origin = { number=VII/1-715, special="" },
if #Pages == 2 then -- only two pages
local page1 = string.gsub(Pages[1]["number"],'%A*','') -- get prefix1
local page2 = string.gsub(Pages[2]["number"],'%A*','') -- ger prefix2
- if page1 == page2 then -- same prefix
+ if (page1 == page2) then -- same prefix
page1 = string.gsub(Pages[1]["number"],'.*-','') -- get page1
page2 = string.gsub(Pages[2]["number"],'.*-','') -- get page2
+ if ((type(tonumber(page1)) ~= "number") or (type(tonumber(page2)) ~= "number")) then return Pages end -- one is not numeric
if (page2-page1) == 1 then -- pagediff = 1
Pages[1]["number"] = Pages[1]["number"].."f"
Pages[2] = nil -- remove second page
return Pages
else -- page difference > 1
- pages[1]["number"] = pages[1]["number"]:gsub('-',' ')
+-- Pages[1]["number"] = pages[1]["number"]:gsub('-',':~') --'(.-)-',colorBox
+ Pages[1]["number"] = pages[1]["number"]:gsub('(.-)-',colorBox)
Pages[2]["number"] = string.gsub(Pages[2]["number"],'.*-','') -- use only number -> same prefix
return Pages -- Pages[1] is the same
end
else
- pages[1]["number"] = pages[1]["number"]:gsub('-',' ')
- pages[2]["number"] = pages[2]["number"]:gsub('-',' ')
+-- Pages[1]["number"] = pages[1]["number"]:gsub('-',':~')
+-- Pages[2]["number"] = pages[2]["number"]:gsub('-',':~')
+ Pages[1]["number"] = pages[1]["number"]:gsub('(.-)-',colorBox)
+ Pages[2]["number"] = pages[2]["number"]:gsub('(.-)-',colorBox)
return Pages -- different prefix -> simple return of the two pages
end
else -- more than two pages
@@ -178,8 +190,17 @@ sortPages = {{ origin = { number=VII/1-715, special="" },
i = i +1
end
sortPages = compressPageList(subPageList)
- -- no minus between Roman/Volume and first page
- pages[#pages+1] = { number = lastPrefix.." "..sortPages[1]["number"], special = sortPages[1]["special"] }
+ -- instead of minus between Roman/Volume and first page insert colon
+ if (stripLeadingSpaces(sortPages[1]["number"]) == "") then
+-- colon = ""
+ sortPages[1]["number"] = ""
+ pages[#pages+1] = { number = lastPrefix..sortPages[1]["number"], special = sortPages[1]["special"] }
+ else
+-- colon = ':~'
+ pages[#pages+1] = { number = colorBox(lastPrefix)..sortPages[1]["number"], special = sortPages[1]["special"] }
+ end
+-- pages[#pages+1] = { number = lastPrefix..colon..sortPages[1]["number"], special = sortPages[1]["special"] }
+ pages[#pages+1] = { number = colorBox(lastPrefix)..sortPages[1]["number"], special = sortPages[1]["special"] }
for i=2,#sortPages do
pages[#pages+1] = sortPages[i]
end
@@ -190,7 +211,7 @@ end
function replaceRoman(r)
local i = romanToNumber(r)
- if i then return "//"..string.format("%03d",i).."//"
+ if i then return "//"..string.format("%05d",i).."//"
else return r
end
end
@@ -202,16 +223,18 @@ function SORTprehook(data) -- replace roman with algebraic, eg Karl IX -> Karl
for i=1,#data do
entry = data[i]["Entry"]
elements = entry:split()
- local number = romanToNumber(elements[#elements])
- if number then
- local strNr = string.format("%03d",tostring(number))
- elements[#elements] = "//"..strNr.."//"
- entry = ""
- for j=1,#elements do entry=entry.." "..elements[j] end
- else
- entry:gsub("!(.-)%p",replaceRoman)
+ if (#elements > 1) then -- at least one space (two elements)
+ local number = romanToNumber(elements[#elements])
+ if number then
+ local strNr = string.format("%03d",tostring(number))
+ elements[#elements] = "//"..strNr.."//"
+ entry = ""
+ for j=1,#elements do entry=entry.." "..elements[j] end -- has leading space
+ else
+ entry:gsub("!(.-)%p",replaceRoman)
+ end
+ data[i]["Entry"] = entry:gsub("^%s*(.-)%s*$", "%1") -- strip leading space
end
- data[i]["Entry"] = entry
end
return data
end
@@ -228,4 +251,8 @@ function SORTposthook(data) -- the other way round as prehook
return data
end
+function colorBox(str)
+ return ("\\colorbox{black!15}{"..str.."}:~")
+end
+
diff --git a/Master/texmf-dist/tex/lualatex/xindex/xindex-base.lua b/Master/texmf-dist/tex/lualatex/xindex/xindex-base.lua
index e8ba4a4b827..78a2422bb43 100644
--- a/Master/texmf-dist/tex/lualatex/xindex/xindex-base.lua
+++ b/Master/texmf-dist/tex/lualatex/xindex/xindex-base.lua
@@ -6,7 +6,7 @@
-- LICENSE: LPPL1.3
-----------------------------------------------------------------------
-local info = { version = 0.05}
+local info = { version = 0.06}
-- check config
if pageNoPrefixDel ~= "" then
@@ -63,7 +63,7 @@ k = 0
table.sort(Index,UTFCompare)
if SORTposthook then Index = SORTposthook(Index) end
-writeLog(1,"------------------ Start list after table.sort(Index,UTFCompare)------------\n",2)
+writeLog(1,"\n------------------ Start list after table.sort(Index,UTFCompare)------------\n",2)
printList(Index,2)
writeLog(1,require 'xindex-pretty'.dump(Index),3) -- only for internal dump
writeLog(1,"\n------------------ end list after table.sort(Index,UTFCompare)------------\n",2)
diff --git a/Master/texmf-dist/tex/lualatex/xindex/xindex-cfg-common.lua b/Master/texmf-dist/tex/lualatex/xindex/xindex-cfg-common.lua
index 8237dd5022e..f988e865169 100644
--- a/Master/texmf-dist/tex/lualatex/xindex/xindex-cfg-common.lua
+++ b/Master/texmf-dist/tex/lualatex/xindex/xindex-cfg-common.lua
@@ -7,7 +7,7 @@
-----------------------------------------------------------------------
if not modules then modules = { } end modules ['xindex-cfg-common'] = {
- version = 0.05,
+ version = 0.06,
comment = "configuration to xindex.lua",
author = "Herbert Voss",
copyright = "Herbert Voss",
diff --git a/Master/texmf-dist/tex/lualatex/xindex/xindex-cfg.lua b/Master/texmf-dist/tex/lualatex/xindex/xindex-cfg.lua
index f4d726bd039..1db9fc37b4e 100644
--- a/Master/texmf-dist/tex/lualatex/xindex/xindex-cfg.lua
+++ b/Master/texmf-dist/tex/lualatex/xindex/xindex-cfg.lua
@@ -7,7 +7,7 @@
-----------------------------------------------------------------------
if not modules then modules = { } end modules ['xindex-cfg'] = {
- version = 0.05,
+ version = 0.06,
comment = "main configuration to xindex.lua",
author = "Herbert Voss",
copyright = "Herbert Voss",
diff --git a/Master/texmf-dist/tex/lualatex/xindex/xindex-dtk.lua b/Master/texmf-dist/tex/lualatex/xindex/xindex-dtk.lua
index 0104f37cece..e6b68f23fe2 100644
--- a/Master/texmf-dist/tex/lualatex/xindex/xindex-dtk.lua
+++ b/Master/texmf-dist/tex/lualatex/xindex/xindex-dtk.lua
@@ -7,7 +7,7 @@
-----------------------------------------------------------------------
if not modules then modules = { } end modules ['xindex-cfg'] = {
- version = 0.05,
+ version = 0.06,
comment = "DTK configuration to xindex.lua",
author = "Herbert Voss",
copyright = "Herbert Voss",
diff --git a/Master/texmf-dist/tex/lualatex/xindex/xindex-lapp.lua b/Master/texmf-dist/tex/lualatex/xindex/xindex-lapp.lua
index d0e01e634e6..d640662dd53 100644
--- a/Master/texmf-dist/tex/lualatex/xindex/xindex-lapp.lua
+++ b/Master/texmf-dist/tex/lualatex/xindex/xindex-lapp.lua
@@ -28,7 +28,7 @@
--~ n 2
--------------------------------
if not modules then modules = { } end modules ['xindex-lapp'] = {
- version = 0.05,
+ version = 0.06,
comment = "read parameter for xindex.lua",
author = "Steve Donovan",
copyright = "Steve Donovan",
diff --git a/Master/texmf-dist/tex/lualatex/xindex/xindex-lib.lua b/Master/texmf-dist/tex/lualatex/xindex/xindex-lib.lua
index f570771776d..8390c9f118b 100644
--- a/Master/texmf-dist/tex/lualatex/xindex/xindex-lib.lua
+++ b/Master/texmf-dist/tex/lualatex/xindex/xindex-lib.lua
@@ -7,7 +7,7 @@
-----------------------------------------------------------------------
if not modules then modules = { } end modules ['xindex-lib'] = {
- version = 0.05,
+ version = 0.06,
comment = "main library to xindex.lua",
author = "Herbert Voss",
copyright = "Herbert Voss",
@@ -330,7 +330,7 @@ end
function compressPageList(pages) -- called with (v["pages"])
- writeLog(1,"compressPageList: we have "..#pages.." pages for this entry",2)
+ writeLog(1,"compressPageList: we have "..#pages.." pages for this entry\n",2)
-- require 'xindex-pretty'.dump(pages) -- only for internal dump
pages = deletePageDups(pages) -- delete duplicate page numners with same special
local str
@@ -364,7 +364,7 @@ function compressPageList(pages) -- called with (v["pages"])
series = {pages[2]}
startIndex = 3
end
-if args_v then print ("compressPageList: more than two pages for the entry") end
+if args_v then print ("compressPageList: more than two pages for the entry\n") end
for i=startIndex,#pages do
if tonumber(pages[i-1]["number"]) and tonumber(pages[i]["number"]) then -- de we have something like 17--31 in the current list
if ((tonumber(pages[i]["number"])-tonumber(pages[i-1]["number"])) == 1) and
@@ -380,7 +380,7 @@ if args_v then print ("compressPageList: more than two pages for the entry") e
else -- series < minCompress
if fCompress then
if #series == 2 then -- two pages -> 3f
- writeLog(1,"compressPageList: Two consecutive pages for this entry",2)
+ writeLog(1,"compressPageList: Two consecutive pages for this entry\n",2)
if series[1]["special"] == series[2]["special"] then
newPages[#newPages+1] = { number = series[1]["number"]..page_folium[1], special = series[1]["special"] }
else
@@ -435,7 +435,7 @@ end
-- 1 digit
-- 0 symbol
-UTFdatafile = kpse.find_file("unicode-category.lua")
+UTFdatafile = kpse.find_file("xindex-unicode.lua")
local category_data = dofile(UTFdatafile)
local floor = math.floor
@@ -491,9 +491,9 @@ end
function UTFCompare(a,b)
-- a, b are something like \indexentry{foo}{bar}
- writeLog(1,"UTFCompare: "..a["Entry"]..", "..a["pages"][1]["number"].." - "..b["Entry"]..", "..b["pages"][1]["number"],2)
- k = k + 1
- if (k % 50) == 0 then writeLog(1,".",1) end
+-- writeLog(1,"UTFCompare: "..a["Entry"]..", "..a["pages"][1]["number"].." - "..b["Entry"]..", "..b["pages"][1]["number"].."\n",2)
+-- k = k + 1
+-- if (k % 50) == 0 then writeLog(1,".",1) end
local A,B,Apage,Bpage
if numericPage then
if tonumber(a["pages"][1]["number"]) then
@@ -510,8 +510,9 @@ function UTFCompare(a,b)
Apage = string.format("%09s",a["pages"][1]["number"])
Bpage = string.format("%09s",b["pages"][1]["number"])
end
- A = NormalizedUpper(getSortString(a["Entry"].." "..Apage..a["pages"][1]["special"]):gsub('!',' '))
- B = NormalizedUpper(getSortString(b["Entry"].." "..Bpage..b["pages"][1]["special"]):gsub('!',' '))
+ A = NormalizedUpper(getSortString(a["Entry"].." "..Apage..a["pages"][1]["special"]):gsub('!','')) -- replace! by empty
+ B = NormalizedUpper(getSortString(b["Entry"].." "..Bpage..b["pages"][1]["special"]):gsub('!',''))
+ writeLog(1,"UTFCompare: A--B "..A.."--"..B.."\n",2)
-- print(A,B)
--[[
if A == B then -- same entry, use also page number
@@ -807,7 +808,8 @@ function itemOutput(last, v, hyperpage)
str = str:gsub(str0[2],str0[3])
end
outFile:write(str)
--- lastItems[1] = Entry
+ lastItems = {}
+ lastItems[1] = Entry
else
for i = 1,excl+1 do
currentItems[i] = getItem(Entry,i-1) -- 0 ! 1 ! 2 ! ...
@@ -905,4 +907,27 @@ end
\indexentry {Schrift!Breite}{64}
\indexentry {Schrift!Tiefe}{64}
-]] \ No newline at end of file
+]]
+
+function shellsort(a)
+ local inc = math.ceil( #a / 2 )
+ while inc > 0 do
+ for i = inc, #a do
+ local tmp = a[i]
+ local j = i
+ while j > inc and not UTFCompare(a[j-inc],tmp) do
+ a[j] = a[j-inc]
+ j = j - inc
+ end
+ a[j] = tmp
+ end
+ inc = math.floor( 0.5 + inc / 2.2 )
+ end
+ return a
+end
+
+function stripLeadingSpaces(str)
+ return str:gsub("^%s*(.-)%s*$", "%1")
+end
+
+
diff --git a/Master/texmf-dist/tex/lualatex/xindex/xindex-pretty.lua b/Master/texmf-dist/tex/lualatex/xindex/xindex-pretty.lua
index 290c30d1c96..38b1dccc479 100644
--- a/Master/texmf-dist/tex/lualatex/xindex/xindex-pretty.lua
+++ b/Master/texmf-dist/tex/lualatex/xindex/xindex-pretty.lua
@@ -5,7 +5,7 @@
--
if not modules then modules = { } end modules ['xindex-pretty'] = {
- version = 0.05,
+ version = 0.06,
comment = "dump a Lua table for debugging",
author = "Steve Donovan",
copyright = "Steve Donovan",
diff --git a/Master/texmf-dist/tex/lualatex/xindex/unicode-category.lua b/Master/texmf-dist/tex/lualatex/xindex/xindex-unicode.lua
index d3f6c5b84a9..d3f6c5b84a9 100644
--- a/Master/texmf-dist/tex/lualatex/xindex/unicode-category.lua
+++ b/Master/texmf-dist/tex/lualatex/xindex/xindex-unicode.lua