From 1e06fcc402b29940f4d8eafaca626a048d017e08 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 20 Sep 2019 21:33:07 +0000 Subject: xindex (20sep19) git-svn-id: svn://tug.org/texlive/trunk@52134 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/lualatex/xindex/CHANGELOG | 1 + .../texmf-dist/doc/lualatex/xindex/xindex-doc.pdf | Bin 359030 -> 375260 bytes .../texmf-dist/doc/lualatex/xindex/xindex-doc.tex | 152 ++++++++++++++++++++- 3 files changed, 152 insertions(+), 1 deletion(-) (limited to 'Master/texmf-dist/doc/lualatex') diff --git a/Master/texmf-dist/doc/lualatex/xindex/CHANGELOG b/Master/texmf-dist/doc/lualatex/xindex/CHANGELOG index ca08cd5a9ba..0fd24c3209e 100644 --- a/Master/texmf-dist/doc/lualatex/xindex/CHANGELOG +++ b/Master/texmf-dist/doc/lualatex/xindex/CHANGELOG @@ -1,3 +1,4 @@ +0.14 2019-09-01 - added variable idxnewletter 0.13 2019-06-07 - fix for minCompress < 2 0.12 2019-06-05 - fix for fCompress=false - added rangeSymbol to the config files diff --git a/Master/texmf-dist/doc/lualatex/xindex/xindex-doc.pdf b/Master/texmf-dist/doc/lualatex/xindex/xindex-doc.pdf index 84fcec9a5ed..daa8bdfe0ca 100644 Binary files a/Master/texmf-dist/doc/lualatex/xindex/xindex-doc.pdf and b/Master/texmf-dist/doc/lualatex/xindex/xindex-doc.pdf differ diff --git a/Master/texmf-dist/doc/lualatex/xindex/xindex-doc.tex b/Master/texmf-dist/doc/lualatex/xindex/xindex-doc.tex index b7870604a7e..0df28b2f707 100644 --- a/Master/texmf-dist/doc/lualatex/xindex/xindex-doc.tex +++ b/Master/texmf-dist/doc/lualatex/xindex/xindex-doc.tex @@ -79,7 +79,7 @@ \def\setVersion#1{\setVVersion#1!!} \def\setVVersion#1=#2!!{\def\xIndexVersion{#2}} -\setVersion{version = 0.13}% can be autimatically changed by perl +\setVersion{version = 0.14}% can be autimatically changed by perl \title{Program and package \texttt{xindex} \\--\\ \normalsize \xIndexVersion\ (\today)} \author{Herbert Voß\thanks{hvoss@tug.org}} @@ -1222,6 +1222,156 @@ und foo\index{foo|fbox} \end{externalDocument} +The headings are printed by default as \Lcs{textbf}. This can be changed in the config file +by setting the +variable \texttt{idxnewletter}, for example: \verb|idxnewletter = "\\textit"|. If you need some +more code here then define an own macro for it, which can be seen in the following example. It has +an own config file \Lfile{xindex-header.lua} which has the line + +\verb|idxnewletter = "\\idxnewletter"| + +In the documents preamble there is the definition: + +\verb|\newcommand\idxnewletter[1]{\textbf{\textit{#1}}}| + +\begin{externalDocument}[ +% grfOptions={width=\dimexpr\linewidth-2\fboxsep-2\fboxrule}, + mpwidth=0.55\linewidth, + pages={2}, + frame=false, + compiler=lualatex, + crop, + xindex, + xindexOptions=-c header, + force, + runs=2,code,docType=latex, + showFilename, + align=\centering, + lstOptions={columns=fixed}]{xindex} +\documentclass{scrartcl} +\usepackage{filecontents} +\begin{filecontents*}{xindex-header.lua} +----------------------------------------------------------------------- +-- FILE: xindex-header.lua +-- DESCRIPTION: configuration file for xindex.lua +-- REQUIREMENTS: +-- AUTHOR: Herbert Voß +-- LICENSE: LPPL1.3 +----------------------------------------------------------------------- + +if not modules then modules = { } end modules ['xindex-header'] = { + version = 0.14, + comment = "main configuration to xindex.lua", + author = "Herbert Voss", + copyright = "Herbert Voss", + license = "LPPL 1.3" +} + +itemPageDelimiter = "," -- Hello, 14 +compressPages = true -- something like 12--15, instaead 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 +rangeSymbol = "--" +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" -- not used !!! +indexOpening = "" -- commands after \begin{theindex} +idxnewletter = "\\idxnewletter" + +--[[ + 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', 'š', 'ß' }, + { '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', 'Ž' } +} + +\end{filecontents*} +\makeatletter +\def\theindex{% only for demonstration + \section*{\indexname} + \parskip\z@ \@plus .3\p@\relax \parindent\z@ + \let\item\@idxitem} +\makeatother +%StartVisiblePreamble +\usepackage{makeidx}\makeindex +\newcommand\idxnewletter[1]{\textbf{\textit{#1}}} +%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 \verb|xindex -c header | +\index{@\texttt{}} +\index{123} +\newpage +\printindex +\end{document} +\end{externalDocument} + + + \section{Case sensitive index entries} By default \textsf{foo} and \textsf{Foo} are two different entries and will handled differently by \Lprog{xindex}: \textsf{Foo} will be as an own entry \emph{before} \textsf{foo}. Let's see -- cgit v1.2.3