From 92df70634c796daf81679360e2cc092d28cb6edc Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sun, 17 Mar 2019 21:38:40 +0000 Subject: icite (17mar19) git-svn-id: svn://tug.org/texlive/trunk@50429 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/icite/README.md | 112 ++++++++ Master/texmf-dist/doc/latex/icite/icite.pdf | Bin 213292 -> 237025 bytes .../doc/latex/icite/samples/icite-biblatex.pdf | Bin 59993 -> 60828 bytes .../doc/latex/icite/samples/icite-biblatex.tex | 56 ++-- .../doc/latex/icite/samples/icite-minimal.pdf | Bin 0 -> 42307 bytes .../doc/latex/icite/samples/icite-minimal.tex | 72 +++++ .../doc/latex/icite/samples/icite-nobiblatex.pdf | Bin 56710 -> 57312 bytes .../doc/latex/icite/samples/icite-nobiblatex.tex | 57 ++-- Master/texmf-dist/source/latex/icite/Makefile | 50 ++-- Master/texmf-dist/source/latex/icite/README.md | 112 -------- Master/texmf-dist/source/latex/icite/icite.dtx | 310 +++++++++++++++++---- Master/texmf-dist/tex/latex/icite/icite.sty | 30 +- 12 files changed, 553 insertions(+), 246 deletions(-) create mode 100644 Master/texmf-dist/doc/latex/icite/README.md create mode 100644 Master/texmf-dist/doc/latex/icite/samples/icite-minimal.pdf create mode 100644 Master/texmf-dist/doc/latex/icite/samples/icite-minimal.tex delete mode 100644 Master/texmf-dist/source/latex/icite/README.md diff --git a/Master/texmf-dist/doc/latex/icite/README.md b/Master/texmf-dist/doc/latex/icite/README.md new file mode 100644 index 00000000000..05846e536a7 --- /dev/null +++ b/Master/texmf-dist/doc/latex/icite/README.md @@ -0,0 +1,112 @@ +--- +author: +- Robert Alessi +title: 'The icite package – README file' +--- + +Overview +======== + +`icite` is designed to produce from BibTeX or BibLaTeX bibliographical +databases the different indices of authors and works cited which are +called _indices locorum citatorum_. It relies on a specific +`\icite` command and can operate with either BibTeX or BibLaTeX. + +License and disclamer +===================== + +icite – Indices locorum citatorum + +Copyright ⓒ 2019 Robert Alessi + +Please send error reports and suggestions for improvements to Robert +Alessi: + +- email: + +- website: + +- comments, feature requests, bug reports: + + +This program is free software: you can redistribute it and/or modify it +under the terms of the GNU General Public License as published by the +Free Software Foundation, either version 3 of the License, or (at your +option) any later version. + +This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General +Public License for more details. + +You should have received a copy of the GNU General Public License along +with this program. If not, see . + +This release of icite consists of the following source files: + +- `icite.dtx` + +- `icite.ins` + +- `Makefile` + +License applicable to the documentation +--------------------------------------- + +Copyright ⓒ 2019 Robert Alessi + +The documentation file `icite.pdf` that is generated from the +`icite.dtx` source file is licensed under the Creative Commons +Attribution-ShareAlike 4.0 International License. To view a copy of this +license, visit or send +a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. + +Installation +============ + +1. Run `'latex icite.ins'` to produce the `icite.sty` + file; + +2. To finish the installation you have to move the `icite.sty` file into + a directory where LaTeX can find them. See the FAQ on `texfaq.org` + at for more on this. + +Development, Git Repository +=========================== + +Browse the code +--------------- + +You can browse icite repository on the web: + + +From this page, you can download all the releases of `icite`. For +instructions on how to install `icite`, please see above. + +Comments, Feature requests, Bug Reports +--------------------------------------- + + + +Download the repository +----------------------- + +`icite` development is facilitated by git, a distributed version +control system. You will need to install git (most GNU/Linux +distributions package it in their repositories). + +Use this command to download the repository + + git clone http://git.robertalessi.net/icite + +A new directory named icite will have been created, containing +`icite`. + +Git hosting +----------- + +Make an account on and navigate (while logged in) +to . Click *Fork* and you will +have in your account your own repository of `icite` where you will +be able to make whatever changes you like to. + diff --git a/Master/texmf-dist/doc/latex/icite/icite.pdf b/Master/texmf-dist/doc/latex/icite/icite.pdf index 02d254f85fb..c492cb5e314 100644 Binary files a/Master/texmf-dist/doc/latex/icite/icite.pdf and b/Master/texmf-dist/doc/latex/icite/icite.pdf differ diff --git a/Master/texmf-dist/doc/latex/icite/samples/icite-biblatex.pdf b/Master/texmf-dist/doc/latex/icite/samples/icite-biblatex.pdf index 3e6300f2959..f19d15473cf 100644 Binary files a/Master/texmf-dist/doc/latex/icite/samples/icite-biblatex.pdf and b/Master/texmf-dist/doc/latex/icite/samples/icite-biblatex.pdf differ diff --git a/Master/texmf-dist/doc/latex/icite/samples/icite-biblatex.tex b/Master/texmf-dist/doc/latex/icite/samples/icite-biblatex.tex index e52cb8b9d6a..b49bc3491cb 100644 --- a/Master/texmf-dist/doc/latex/icite/samples/icite-biblatex.tex +++ b/Master/texmf-dist/doc/latex/icite/samples/icite-biblatex.tex @@ -1,3 +1,8 @@ +\RequirePackage{filecontents} +\begin{filecontents*}{\jobname.xdy} +(merge-rule "\*" "" :eregexp) +(markup-locclass-list :open ": " :sep ", ") +\end{filecontents*} % Compile with --shell-escape \documentclass{article} \usepackage[english]{babel} @@ -17,11 +22,15 @@ \setlist[enumerate,2]{label=\roman*.} \usepackage[citecmd=autocite, defaultindex=none]{icite} -\IndexSubtypeAs{ancient}{pr-sources} +\IndexSubtypeAs{ancient}{\jobname-primary} \bibinput{bibsample} -\usepackage[xindy]{imakeidx} -\makeindex[name=pr-sources, title={Index locorum citatorum}] +\usepackage{classics} +\newclassic{plat}{#1|#1|#1} +\newclassic{arist}{#1|\textit{#1}|#1} + +\usepackage[xindy,nonewpage]{imakeidx} +\makeindex[name=\jobname-primary, title={Index locorum citatorum}] \usepackage[style=oxnotes]{biblatex} \addbibresource{bibsample.bib} @@ -40,11 +49,15 @@ index of passages cited in combination with Bib\LaTeX. The relevant part of the preamble which is used here follows: \begin{Verbatim} \usepackage[citecmd=autocite, defaultindex=none]{icite} -\IndexSubtypeAs{ancient}{pr-sources} +\IndexSubtypeAs{ancient}{icite-biblatex-primary} \bibinput{bibsample} +\usepackage{classics} +\newclassic{plat}{#1|#1|#1} +\newclassic{arist}{#1|\textit{#1}|#1} + \usepackage[xindy]{imakeidx} -\makeindex[name=pr-sources, title={Index locorum citatorum}] +\makeindex[name=icite-biblatex-primary, title={Index locorum citatorum}] \usepackage[style=oxnotes]{biblatex} \addbibresource{bibsample.bib} @@ -55,33 +68,34 @@ The relevant part of the preamble which is used here follows: \item |citecmd=autocite| instructs \textsf{icite} to use the |\autocite| command to insert the citations in the body text. \item |defaultindex=none| disables indexing by default. -\item |\IndexSubtypeAs{ancient}{pr-sources}| makes an exception for - authors whose |entrysubtype| field matches the string |ancient| and - instructs \textsf{icite} to have them indexed in an index named - |pr-sources|. -\item To actually produce the index, |\printindex[pr-sources]| is needed - at the end of the document. +\item |\IndexSubtypeAs{ancient}{icite-biblatex-primary}| makes an + exception for authors whose |entrysubtype| field matches the string + |ancient| and instructs \textsf{icite} to have them indexed in an + index named\\ |icite-biblatex-primary|. +\item To actually produce the index, + |\printindex[icite-biblatex-primary]| is needed at the end of the + document. \end{enumerate} \section*{Body text} Plato, \emph{Laches}: first -citation\icite[179a1--4]{Plato:Laches}. And -another\icite[179c5--180a1]{Plato:Laches}, and -another\icite[181b5--181c3]{Plato:Laches}. +citation\icite[\plat{179}[a][1--4]]{Plato:Laches}. And +another\icite[\plat*{179}[c][5]{180}[a][1]]{Plato:Laches}, and +another\icite[\plat*{181}[b][5]{181}[c][3]]{Plato:Laches}. Plato, \emph{Theaetetus}: first -citation\icite[142c2--142d3]{Plato:Theaetetus}. And -another\icite[142d4--5]{Plato:Theaetetus}, and -another\icite[143b5]{Plato:Theaetetus}. +citation\icite[\plat*{142}[c][2]{142}[d][3]]{Plato:Theaetetus}. And +another\icite[\plat{142}[d][4--5]]{Plato:Theaetetus}, and +another\icite[\plat{143}[b][5]]{Plato:Theaetetus}. Aristotle, \emph{Politica}: first -citation\icite[1252a25--1252.b27]{Aristotle:Politica}. And -another\icite[1253a5]{Aristotle:Politica}, and -another\icite[1253a30--39]{Aristotle:Politica}. +citation\icite[\arist*{1252}[a][25]{1252}[b][27]]{Aristotle:Politica}. And +another\icite[\arist{1253}[a][5]]{Aristotle:Politica}, and +another\icite[\arist{1253}[a][30--39]]{Aristotle:Politica}. This passage should not be indexed\icite[44--78]{Reynolds.Wilson1994}. -\printindex[pr-sources] +\printindex[\jobname-primary] \section*{Bibliographical database} \VerbatimInput{bibsample.bib} diff --git a/Master/texmf-dist/doc/latex/icite/samples/icite-minimal.pdf b/Master/texmf-dist/doc/latex/icite/samples/icite-minimal.pdf new file mode 100644 index 00000000000..e010128479b Binary files /dev/null and b/Master/texmf-dist/doc/latex/icite/samples/icite-minimal.pdf differ diff --git a/Master/texmf-dist/doc/latex/icite/samples/icite-minimal.tex b/Master/texmf-dist/doc/latex/icite/samples/icite-minimal.tex new file mode 100644 index 00000000000..32bb4a29b97 --- /dev/null +++ b/Master/texmf-dist/doc/latex/icite/samples/icite-minimal.tex @@ -0,0 +1,72 @@ +\documentclass{article} +\usepackage[english]{babel} + +\usepackage[small]{titlesec} + +\usepackage{latexcolors} +\usepackage[outputdir=TMP/]{minted} +\setminted{bgcolor=lavendermist} + +\usepackage{ccicons} +\usepackage{enumitem} +\setlist{nosep} +\setlist[itemize]{label=\textendash} +\setlist[enumerate,1]{label=(\alph*)} +\setlist[enumerate,2]{label=\roman*.} + +\usepackage{xurl} +\usepackage[colorlinks]{hyperref} + +\begin{document} +\vspace*{-.5in} +\noindent +\textbf{\textsf{icite sample file}} --- \cczero\ This +file is public domain + +\section*{Instructions} +\begin{enumerate} +\item Start a new document, copy and paste the code that follows. +\item The default citation command used by \textsf{icite} has been set + to \verb|autocite|. Adapt. +\item The \textsf{biblatex} style file selected is + \verb|oxnotes|. Adapt. +\item Insert the citations in the body text with + \mint{latex}|\icite[
][]{}|
+\item Compile the document with \verb|--shell-escape|.\footnote{More
+    information on how to do this: \url{https://texfaq.org/FAQ-spawnprog}}
+\end{enumerate}
+
+\begin{minted}{latex}
+\RequirePackage{filecontents}
+\begin{filecontents*}{\jobname.xdy}
+(merge-rule "\*" "" :eregexp)
+\end{filecontents*}
+%
+\documentclass{article}
+\usepackage[english]{babel}
+
+% load icite
+\usepackage[citecmd=autocite, defaultindex=loccit]{icite}
+\bibinput{bibliography}
+
+% prepare the index
+\usepackage[xindy]{imakeidx}
+\makeindex[%
+  name=loccit,
+  title={Index locorum citatorum},
+  options=-M \jobname.xdy]
+
+% load biblatex
+\usepackage[style=oxnotes]{biblatex}
+\addbibresource{bibliography.bib}
+
+\begin{document}
+
+Your document goes here.
+
+\printindex[loccit]
+\printbibliography
+\end{document}
+\end{minted}
+
+\end{document}
diff --git a/Master/texmf-dist/doc/latex/icite/samples/icite-nobiblatex.pdf b/Master/texmf-dist/doc/latex/icite/samples/icite-nobiblatex.pdf
index 8b0bdb72e5e..ae93aa9debb 100644
Binary files a/Master/texmf-dist/doc/latex/icite/samples/icite-nobiblatex.pdf and b/Master/texmf-dist/doc/latex/icite/samples/icite-nobiblatex.pdf differ
diff --git a/Master/texmf-dist/doc/latex/icite/samples/icite-nobiblatex.tex b/Master/texmf-dist/doc/latex/icite/samples/icite-nobiblatex.tex
index 6893247f108..d6f824d020b 100644
--- a/Master/texmf-dist/doc/latex/icite/samples/icite-nobiblatex.tex
+++ b/Master/texmf-dist/doc/latex/icite/samples/icite-nobiblatex.tex
@@ -1,3 +1,8 @@
+\RequirePackage{filecontents}
+\begin{filecontents*}{\jobname.xdy}
+(merge-rule "\*" "" :eregexp)
+(markup-locclass-list :open ": " :sep ", ")
+\end{filecontents*}
 % Compile with --shell-escape
 \documentclass{article}
 \usepackage[english]{babel}
@@ -18,11 +23,15 @@
 \setlist[enumerate,2]{label=\roman*.}
 
 \usepackage[defaultindex=none, nobibengine]{icite}
-\IndexSubtypeAs{ancient}{pr-sources}
+\IndexSubtypeAs{ancient}{\jobname-primary}
 \bibinput{bibsample}
 
-\usepackage[xindy]{imakeidx}
-\makeindex[name=pr-sources, title={Index locorum citatorum}]
+\usepackage{classics}
+\newclassic{plat}{#1|#1|#1}
+\newclassic{arist}{#1|\textit{#1}|#1}
+
+\usepackage[xindy,nonewpage]{imakeidx}
+\makeindex[name=\jobname-primary, title={Index locorum citatorum}]
 
 \begin{document}
 \DefineShortVerb{\|}
@@ -39,11 +48,15 @@ Bib\LaTeX.
 The relevant part of the preamble which is used here follows:
 \begin{Verbatim}
 \usepackage[defaultindex=none, nobibengine]{icite}
-\IndexSubtypeAs{ancient}{pr-sources}
+\IndexSubtypeAs{ancient}{icite-nobiblatex-primary}
 \bibinput{bibsample}
 
+\usepackage{classics}
+\newclassic{plat}{#1|#1|#1}
+\newclassic{arist}{#1|\textit{#1}|#1}
+
 \usepackage[xindy]{imakeidx}
-\makeindex[name=pr-sources, title={Index locorum citatorum}]
+\makeindex[name=icite-nobiblatex-primary, title={Index locorum citatorum}]
 \end{Verbatim}
 
 \paragraph{Remarks}
@@ -51,34 +64,36 @@ The relevant part of the preamble which is used here follows:
 \item |defaultindex=none| disables indexing by default.
 \item |nobibengine| instructs \textsf{icite} to insert the citations
   in the body text without using either \hologo{BibTeX} or Bib\LaTeX.
-\item |\IndexSubtypeAs{ancient}{pr-sources}| makes an exception for
-  authors whose |entrysubtype| field matches the string |ancient| and
-  instructs \textsf{icite} to have them indexed in an index named
-  |pr-sources|.
-\item To actually produce the index, |\printindex[pr-sources]| is
-  needed at the end of the document.
+\item |\IndexSubtypeAs{ancient}{icite-nobiblatex-primary}| makes an
+  exception for authors whose |entrysubtype| field matches the string
+  |ancient| and instructs \textsf{icite} to have them indexed in an
+  index named\\ |icite-nobiblatex-primary|.
+\item To actually produce the index,
+  |\printindex[icite-nobiblatex-primary]| is needed at the end of the
+  document.
 \end{enumerate}
 
 \section*{Body text}
 Plato, \emph{Laches}: first
-citation.\footnote{\icite[179a1--4]{Plato:Laches}.} And
-another,\footnote{\icite[179c5--180a1]{Plato:Laches}.}
-and another.\footnote{\icite[181b5--c3]{Plato:Laches}.}
+citation.\footnote{\icite[\plat{179}[a][1--4]]{Plato:Laches}.} And
+another,\footnote{\icite[\plat*{179}[c][5]{180}[a][1]]{Plato:Laches}.}
+and another.\footnote{\icite[\plat*{181}[b][5]{181}[c][3]]{Plato:Laches}.}
 
 Plato, \emph{Theaetetus}: first
-citation.\footnote{\icite[142c2--d3]{Plato:Theaetetus}.}
-And another,\footnote{\icite[142d4--5]{Plato:Theaetetus}.}
-and another.\footnote{\icite[143b5]{Plato:Theaetetus}.}
+citation.\footnote{\icite[\plat*{142}[c][2]{142}[d][3]]{Plato:Theaetetus}.}
+And another,\footnote{\icite[\plat{142}[d][4--5]]{Plato:Theaetetus}.}
+and another.\footnote{\icite[\plat{143}[b][5]]{Plato:Theaetetus}.}
 
 Aristotle, \emph{Politica}: first citation.\footnote{%
-  \icite[1252a25--b27]{Aristotle:Politica}.}  And
-another,\footnote{\icite[1253a5]{Aristotle:Politica}.}  and
-another.\footnote{\icite[1253a30--39]{Aristotle:Politica}.}
+  \icite[\arist*{1252}[a][25]{1252}[b][27]]{Aristotle:Politica}.}  And
+another,\footnote{\icite[\arist{1253}[a][5]]{Aristotle:Politica}.}
+and another.\footnote{%
+  \icite[\arist{1253}[a][30--39]]{Aristotle:Politica}.}
 
 This passage should not be
 indexed.\footnote{\icite[44--78]{Reynolds.Wilson1994}.}
 
-\printindex[pr-sources]
+\printindex[\jobname-primary]
 
 \section*{Bibliographical database}
 \VerbatimInput{bibsample.bib}
diff --git a/Master/texmf-dist/source/latex/icite/Makefile b/Master/texmf-dist/source/latex/icite/Makefile
index 8709733dd9c..35bf3e4a63d 100644
--- a/Master/texmf-dist/source/latex/icite/Makefile
+++ b/Master/texmf-dist/source/latex/icite/Makefile
@@ -6,13 +6,27 @@ LOCAL = $(shell kpsewhich --var-value TEXMFLOCAL)
 UTREE = $(shell kpsewhich --var-value TEXMFHOME)
 
 exts := md bib ins dtx html
-extsi := tex
+texsamples := $(basename $(wildcard $(PWD)/samples/*.tex))
 findopts := $(foreach ext,$(exts),-or -iname "*.$(ext)")
-findoptsi := $(foreach ext,$(extsi),-or -iname "*.$(ext)")
+
+
+# Look into this later
+# $(if $(wildcard $(PWD)/TMP/$(notdir $1).bcf),biber $(PWD)/TMP/$(notdir $1),)
+
+define dosamples
+	lualatex --output-dir=$(PWD)/TMP --shell-escape $1 >/dev/null
+	lualatex --output-dir=$(PWD)/TMP --shell-escape $1 >/dev/null
+	if [ -f $(PWD)/TMP/$(notdir $1)-primary.idx ]; \
+	then texindy -M $(PWD)/TMP/$(notdir $1).xdy $(PWD)/TMP/$(notdir $1)-primary.idx >/dev/null; fi
+	if [ -f $(PWD)/TMP/$(notdir $1).bcf ]; then biber $(PWD)/TMP/$(notdir $1) >/dev/null; fi
+	lualatex --output-dir=$(PWD)/TMP --shell-escape $1 >/dev/null
+	lualatex --output-dir=$(PWD)/TMP --shell-escape $1 >/dev/null
+endef
 
 all:	$(NAME).pdf
 #	test -e README.md || exit 0
 $(NAME).pdf: $(NAME).dtx
+	@ echo "Make documentation..."
 	lualatex --shell-escape --recorder --interaction=batchmode $(NAME).dtx >/dev/null
 	biber $(NAME) >/dev/null
 	lualatex --shell-escape --recorder --interaction=batchmode $(NAME).dtx >/dev/null
@@ -22,35 +36,16 @@ $(NAME).pdf: $(NAME).dtx
 	if [ -f primary.idx ]; then texindy -M icite.xdy primary.idx >/dev/null; fi
 	lualatex --shell-escape --recorder --interaction=nonstopmode $(NAME).dtx > /dev/null
 	lualatex --shell-escape --recorder --interaction=nonstopmode $(NAME).dtx > /dev/null
+	@ echo "Make sample files..."
 	if [ ! -d $(PWD)/TMP ]; then mkdir $(PWD)/TMP; fi
 	cp $(PWD)/samples/*.bib $(PWD)/TMP
-	lualatex --output-dir=$(PWD)/TMP --shell-escape samples/icite-biblatex.tex
-	lualatex --output-dir=$(PWD)/TMP --shell-escape samples/icite-biblatex.tex
-	texindy $(PWD)/TMP/pr-sources.idx
-	biber $(PWD)/TMP/icite-biblatex
-	lualatex --output-dir=$(PWD)/TMP --shell-escape samples/icite-biblatex.tex
-	lualatex --output-dir=$(PWD)/TMP --shell-escape samples/icite-biblatex.tex
-	lualatex --output-dir=$(PWD)/TMP --shell-escape samples/icite-nobiblatex.tex
-	lualatex --output-dir=$(PWD)/TMP --shell-escape samples/icite-nobiblatex.tex
-	texindy $(PWD)/TMP/pr-sources.idx
-	lualatex --output-dir=$(PWD)/TMP --shell-escape samples/icite-nobiblatex.tex
-	lualatex --output-dir=$(PWD)/TMP --shell-escape samples/icite-nobiblatex.tex
+	$(foreach file,$(texsamples), $(call dosamples, $(file)))
 	mv TMP/*.pdf samples/
 
 samples:
 	if [ ! -d $(PWD)/TMP ]; then mkdir $(PWD)/TMP; fi
 	cp $(PWD)/samples/*.bib $(PWD)/TMP
-	lualatex --output-dir=$(PWD)/TMP --shell-escape samples/icite-biblatex.tex
-	lualatex --output-dir=$(PWD)/TMP --shell-escape samples/icite-biblatex.tex
-	texindy $(PWD)/TMP/pr-sources.idx
-	biber $(PWD)/TMP/icite-biblatex
-	lualatex --output-dir=$(PWD)/TMP --shell-escape samples/icite-biblatex.tex
-	lualatex --output-dir=$(PWD)/TMP --shell-escape samples/icite-biblatex.tex
-	lualatex --output-dir=$(PWD)/TMP --shell-escape samples/icite-nobiblatex.tex
-	lualatex --output-dir=$(PWD)/TMP --shell-escape samples/icite-nobiblatex.tex
-	texindy $(PWD)/TMP/pr-sources.idx
-	lualatex --output-dir=$(PWD)/TMP --shell-escape samples/icite-nobiblatex.tex
-	lualatex --output-dir=$(PWD)/TMP --shell-escape samples/icite-nobiblatex.tex
+	$(foreach file,$(texsamples), $(call dosamples, $(file)))
 	mv TMP/*.pdf samples/
 
 lualatex:
@@ -61,7 +56,7 @@ clean: lualatex
 	rm -rf .backup
 	find -iname "*~" -or -iname "*.pdf" | xargs rm -rf
 	find ./* -type f -iname "Makefile" $(findopts) > ls-R
-	find ./* -type f -iname "samples/*" $(findoptsi) >> ls-R
+	find ./* -type f -iname "*.tex" | grep '/samples/' >> ls-R
 	rsync -avPr --files-from=ls-R . .backup
 	rm -rf *
 	cp -p -r .backup/* .
@@ -109,9 +104,10 @@ package: distclean all
 	cp -r samples/ doc/latex/$(NAME)/
 	mkdir -p source/latex/$(NAME)/
 	cp Makefile README.md $(NAME).{dtx,ins} source/latex/$(NAME)/
-	zip -r $(NAME).tds.zip tex doc source
+	# zip -r $(NAME).tds.zip tex doc source
 	rm -rf tex/ source/ doc/
-	tar czf $(NAME)-$(VERS).tar.gz $(NAME).tds.zip $(NAME)/
+	# tar czf $(NAME)-$(VERS).tar.gz $(NAME).tds.zip $(NAME)/
+	tar czf $(NAME)-$(VERS).tar.gz $(NAME)/
 	rm -rf $(NAME)/
 
 .PHONY: all lualatex clean distclean inst local uninst install uninstall zip package samples
diff --git a/Master/texmf-dist/source/latex/icite/README.md b/Master/texmf-dist/source/latex/icite/README.md
deleted file mode 100644
index 05846e536a7..00000000000
--- a/Master/texmf-dist/source/latex/icite/README.md
+++ /dev/null
@@ -1,112 +0,0 @@
----
-author:
-- Robert Alessi
-title: 'The icite package – README file'
----
-
-Overview
-========
-
-`icite` is designed to produce from BibTeX or BibLaTeX bibliographical
-databases the different indices of authors and works cited which are
-called _indices locorum citatorum_. It relies on a specific
-`\icite` command and can operate with either BibTeX or BibLaTeX.
-
-License and disclamer
-=====================
-
-icite – Indices locorum citatorum
-
-Copyright ⓒ 2019 Robert Alessi
-
-Please send error reports and suggestions for improvements to Robert
-Alessi:
-
--   email: 
-
--   website: 
-
--   comments, feature requests, bug reports:
-    
-
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU General Public License as published by the
-Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-
-This program is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
-Public License for more details.
-
-You should have received a copy of the GNU General Public License along
-with this program. If not, see .
-
-This release of icite consists of the following source files:
-
--   `icite.dtx`
-
--   `icite.ins`
-
--   `Makefile`
-
-License applicable to the documentation
----------------------------------------
-
-Copyright ⓒ 2019 Robert Alessi
-
-The documentation file `icite.pdf` that is generated from the
-`icite.dtx` source file is licensed under the Creative Commons
-Attribution-ShareAlike 4.0 International License. To view a copy of this
-license, visit  or send
-a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.
-
-Installation
-============
-
-1.  Run `'latex icite.ins'` to produce the `icite.sty`
-    file;
-
-2.  To finish the installation you have to move the `icite.sty` file into
-    a directory where LaTeX can find them. See the FAQ on `texfaq.org`
-    at  for more on this.
-
-Development, Git Repository
-===========================
-
-Browse the code
----------------
-
-You can browse icite repository on the web:
-
-
-From this page, you can download all the releases of `icite`. For
-instructions on how to install `icite`, please see above.
-
-Comments, Feature requests, Bug Reports
----------------------------------------
-
-
-
-Download the repository
------------------------
-
-`icite` development is facilitated by git, a distributed version
-control system. You will need to install git (most GNU/Linux
-distributions package it in their repositories).
-
-Use this command to download the repository
-
-    git clone http://git.robertalessi.net/icite
-
-A new directory named icite will have been created, containing
-`icite`.
-
-Git hosting
------------
-
-Make an account on  and navigate (while logged in)
-to . Click *Fork* and you will
-have in your account your own repository of `icite` where you will
-be able to make whatever changes you like to.
-
diff --git a/Master/texmf-dist/source/latex/icite/icite.dtx b/Master/texmf-dist/source/latex/icite/icite.dtx
index 64152276433..1e61a15d9c6 100644
--- a/Master/texmf-dist/source/latex/icite/icite.dtx
+++ b/Master/texmf-dist/source/latex/icite/icite.dtx
@@ -188,15 +188,27 @@ Running "make install" installs the files in the local TeX tree.
 %\NeedsTeXFormat{LaTeX2e}[1999/12/01]
 %\ProvidesPackage{icite}
 %<*package>
-    [2019/03/12 v1.1 Make Indices locorum citatorum]
+    [2019/03/17 v1.2 Make Indices locorum citatorum]
 %
 %<*driver>
 \documentclass{ltxdoc}
 \usepackage{filecontents}
 \begin{filecontents*}{\jobname.xdy}
+(merge-rule "\*" "" :eregexp)
 (markup-locclass-list :open "\tabto{3.5cm}" :sep ", ")
 \end{filecontents*}
 \begin{filecontents*}{\jobname.bib}
+@Book{Aristotle:Politica,
+  title =	 {Politica},
+  date =	 1964,
+  author =	 {Aristotle},
+  editor =	 {Ross, W. D.},
+  origdate =	 1957,
+  entrysubtype = {classical},
+  publisher =	 {Clarendon Press},
+  location =	 {Oxford}
+}
+
 @Book{Bürgel2016,
   shorttitle =	 {Ärztliches Leben\ldots},
   editortype =	 {reviser},
@@ -211,6 +223,16 @@ Running "make install" installs the files in the local TeX tree.
   author =	 {Bürgel, Johann Christoph}
 }
 
+@Software{classics,
+  title =	 {The Classics package},
+  subtitle =	 {Cite classic works},
+  author =	 {Lourenço de Lima, Eduardo C.},
+  publisher =	 {CTAN},
+  url =		 {http://www.ctan.org/pkg/classics},
+  date =	 {2013-02-02},
+  version =	 {0.1}
+}
+
 @Article{Dols1987,
   author =	 {Dols, Michael W.},
   title =	 {The Origins of the Islamic Hospital: Myth and
@@ -222,6 +244,19 @@ Running "make install" installs the files in the local TeX tree.
   pages =	 {367--390}
 }
 
+@InBook{Endress1992,
+  title =	 {Die Wissenschaftliche Literatur},
+  date =	 1992,
+  author =	 {Endress, Gerhard},
+  booktitle =	 {Grundriß der arabischen Philologie},
+  editor =	 {Fisher, Wolfdietrich},
+  volume =	 3,
+  note =	 {Supplement},
+  publisher =	 {Reichert},
+  location =	 {Wiesbaden},
+  pages =	 {3--152}
+}
+
 @Book{IAUMuller,
   sortname =	 {Ibn abi Usaybia},
   editor =	 {Müller, August},
@@ -238,32 +273,19 @@ Running "make install" installs the files in the local TeX tree.
   volumes =	 2
 }
 
-@MVBook{al-Nadim,
-  author =	 {\prname{ibn al-nadIm}},
-  title =	 {\arb[trans]{\uc{f}ihrist}},
-  sortname =	 {Ibn al-Nadim},
-  date =	 {1871/1872},
-  shorthand =	 {\arb[trans]{\uc{f}ihrist}},
-  editor =	 {Flügel, Gustav},
-  volumes =	 2,
-  location =	 {Leipzig},
-  entrysubtype = {classical}
-}
-
-@Book{al-Qifti,
-  sortname =	 {Ibn al-Qifti},
-  entrysubtype = {classical},
-  shorthand =	 {\prname{al-qif.tiyy}, \arb[trans]{\uc{t}a'rI_h}},
-  location =	 {Leipzig},
-  editor =	 {Lippert, Julius},
-  date =	 1903,
-  title =	 {\arb[trans]{\uc{t}a'rI_h al-.hukamA'}},
-  author =	 {\prname{ibn al-qif.tiyy}}
+@Software{imakeidx,
+  title =	 {The Imakeidx package},
+  subtitle =	 {A package for producing multiple indexes},
+  author =	 {Gregorio, Enrico and Beccari, Claudio},
+  publisher =	 {CTAN},
+  url =		 {http://www.ctan.org/pkg/imakeidx},
+  date =	 {2016-10-15},
+  version =	 {1.3e}
 }
 
 @Book{RaziShukuk,
-  author =	 {\prname{al-rAziyy}, \prname{mu.hammad
-                  ibn zakariyyA'}},
+  author =	 {\prname{al-rAziyy}, \prname{mu.hammad ibn
+                  zakariyyA'}},
   title =	 {\arb[trans]{\uc{k}itAb al-^sukUk `al_A
                   \uc{^g}AlInUs}},
   indextitle =	 {\arb[trans]{\uc{^s}ukUk}},
@@ -285,27 +307,37 @@ Running "make install" installs the files in the local TeX tree.
   author =	 {Ullmann, Manfred},
 }
 
-@InBook{Endress1992,
-  title =	 {Die Wissenschaftliche Literatur},
-  date =	 1992,
-  author =	 {Endress, Gerhard},
-  booktitle =	 {Grundriß der arabischen Philologie},
-  editor =	 {Fisher, Wolfdietrich},
-  volume =	 3,
-  note =	 {Supplement},
-  publisher =	 {Reichert},
-  location =	 {Wiesbaden},
-  pages =	 {3--152}
+@MVBook{al-Nadim,
+  author =	 {\prname{ibn al-nadIm}},
+  title =	 {\arb[trans]{\uc{f}ihrist}},
+  sortname =	 {Ibn al-Nadim},
+  date =	 {1871/1872},
+  shorthand =	 {\arb[trans]{\uc{f}ihrist}},
+  editor =	 {Flügel, Gustav},
+  volumes =	 2,
+  location =	 {Leipzig},
+  entrysubtype = {classical}
+}
+
+@Book{al-Qifti,
+  sortname =	 {Ibn al-Qifti},
+  entrysubtype = {classical},
+  shorthand =	 {\prname{al-qif.tiyy}, \arb[trans]{\uc{t}a'rI_h}},
+  location =	 {Leipzig},
+  editor =	 {Lippert, Julius},
+  date =	 1903,
+  title =	 {\arb[trans]{\uc{t}a'rI_h al-.hukamA'}},
+  author =	 {\prname{ibn al-qif.tiyy}}
 }
 
 @Software{usebib,
-  title = {The Usebib package},
-  subtitle = {A simple bibliography processor},
-  author = {Gregorio, Enrico},
-  publisher = {CTAN},
-  url = {http://www.ctan.org/pkg/usebib},
-  date = {2012-04-13},
-  version = {1.0a}
+  title =	 {The Usebib package},
+  subtitle =	 {A simple bibliography processor},
+  author =	 {Gregorio, Enrico},
+  publisher =	 {CTAN},
+  url =		 {http://www.ctan.org/pkg/usebib},
+  date =	 {2012-04-13},
+  version =	 {1.0a}
 }
 \end{filecontents*}
 \usepackage[english]{babel}
@@ -317,10 +349,10 @@ Running "make install" installs the files in the local TeX tree.
 \newunicodechar{Ǧ}{Ǧ} %
 \usepackage{arabluatex}
 \SetTranslitConvention{loc}
-\usepackage{varioref}
 \usepackage{xurl}
 \usepackage{uri}
 \usepackage{hyperxmp}
+\usepackage{varioref}
 \usepackage[numbered]{hypdoc}
 \hypersetup{unicode=true, colorlinks, allcolors=blue,
   linktocpage=true, pdfauthor={Robert Alessi}, pdftitle={The
@@ -335,9 +367,10 @@ Running "make install" installs the files in the local TeX tree.
   pdflicenseurl={https://creativecommons.org/licenses/by-sa/4.0/legalcode},
   pdfmetalang={en-US}, pdftype={Text}, pdfkeywords={bibtex, biblatex,
     indexing}}
+\usepackage{amsmath}
+\usepackage{cleveref}
 \CodelineIndex
 \usepackage[citecmd=autocite,defaultindex]{\jobname}
-\usepackage{cleveref}
 \IndexSubtypeAs{classical}{primary}
 \bibinput{icite}
 \usepackage[nonewpage,xindy]{imakeidx}
@@ -346,11 +379,13 @@ Running "make install" installs the files in the local TeX tree.
 \makeindex
 \makeindex[name=loccit]
 \makeindex[name=primary]
+\usepackage{needspace}
 \usepackage{tabto}
 \usepackage{classics}
 \newclassic{iau}{\classicsRoman{#1}|, #1|.#1}
 \newclassic{razi}{#1|.#1}
 \newclassic{nadim}{\classicsRoman{#1}|.#1|, #1}
+\newclassic{aristotle}{#1|\textit{#1}|#1}
 \usepackage[scale=1.5]{ccicons}
 \usepackage{dox}
 \doxitem{Option}{option}{options}
@@ -416,7 +451,7 @@ Running "make install" installs the files in the local TeX tree.
 %
 % \fi
 %
-% \CheckSum{316}
+% \CheckSum{352}
 %
 % \CharacterTable
 %  {Upper-case    \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
@@ -619,9 +654,9 @@ Running "make install" installs the files in the local TeX tree.
 % \DescribeMacro{\bibinput} Once \package{icite} is loaded, it must be
 % connected to at least one bibliographic |.bib| file. To that end,
 % \package{icite} uses the same \cs{bibinput} command as
-% \package{usebib}.\footnote{Please refer to \cite[1]{usebib} for more
-% detailed information on how to use this command.} An example
-% follows:---
+% \package{usebib}.\footnote{Please refer to \cite[1]{usebib} for
+% more detailed information on how to use this command.} An example
+% follows:--- %
 % \iffalse
 %<*example>
 % \fi
@@ -636,6 +671,8 @@ Running "make install" installs the files in the local TeX tree.
 %
 % \fi
 %
+% \subsection{Preamble-only commands}
+% The following commands may be found in the preamble only.
 % \paragraph{Styling the titles}
 % \DescribeMacro{\SetTitleStyle} By default, \package{icite} prints
 % the titles of the works cited in italics.\\
@@ -654,6 +691,21 @@ Running "make install" installs the files in the local TeX tree.
 % As this example shows, |#1| is the token that is replaced with the
 % actual title in the formatting directives of the \cs{SetTitleStyle}
 % command.
+% 
+% \paragraph{Delimiters}
+% \NEWfeature{v1.2}\DescribeMacro{\AuthorTitleDelim}
+% \cs{AuthorTitleDelim}\marg{delimiter} sets the delimiter between
+% authors and titles in the body text when the |nobibengine| option is
+% set to |true|. The default delimiter is a comma and a space.
+%
+% \DescribeMacro{\TitlePageDelim}
+% \cs{TitlePageDelim}\marg{delimiter} sets the delimiter between
+% titles and pages in the body text when the |nobibengine| option is
+% set to |true|. The default delimiter is a comma and a space.
+%
+% \subsection[\textsf{icite} for the Impatient]%
+% {\package{icite} for the Impatient}
+% Read \href{samples/icite-minimal.pdf}{\texttt{icite-minimal.pdf}}.
 %
 % \subsection{Entry fields}
 % \label{sec:entry-fields}
@@ -873,9 +925,11 @@ Running "make install" installs the files in the local TeX tree.
 % those whose |entrysubtype| field does not match the string
 % |classical| should go into the default |loccit| index. As for those
 % whose |entrysubtype| matches |classical|, they should to into an
-% index named |primary|. Furthermore, the \package{classics} package
-% is used to format references in which a volume number is used. In
-% this way, \package{xindy} only has numbers to handle:--- %
+% index named |primary|. \label{ref:classics-pkg}Furthermore, the
+% \package{classics} package is used to format references in which a
+% volume number is used.\footnote{For more information, see below
+% \vref{sec:classics-usage}.} In this way, \package{xindy} only has
+% numbers to handle:--- %
 % \iffalse
 %<*example>
 % \fi
@@ -964,6 +1018,109 @@ Running "make install" installs the files in the local TeX tree.
 % one can see, \prname{al-rAziyy} has been sorted under the letter R
 % and references to classical works have been formatted properly.
 %
+%
+% \subsection[The \textsf{classics} package]%
+% {The \package{classics} package} %
+% \label{sec:classics-usage}
+% As said above \vpageref{ref:classics-pkg}, it is advisable to use
+% the \package{classics} package to format volume, page, column, line
+% numbers and the like which are inserted in the \meta{post} optional
+% argument of the \cs{icite} command\autocite{classics}. An example of
+% using \package{classics} to format references to Aristotle according
+% to Bekker pagination follows:\footnote{See \cite[2]{classics} for
+% more information.}--- %
+% \iffalse
+%<*example>
+% \fi
+\begin{code}
+  % preamble:
+  \usepackage{classics}
+  \newclassic{aristotle}{#1|\textit{#1}|#1}
+\end{code}
+% \iffalse
+%
+% \fi
+% \iffalse
+%<*example>
+% \fi
+\begin{example}
+  In \emph{Politics}, Aristotle says that man is by nature a political
+  animal in the following passages: \aristotle{1253}[a][2--9] (Book~1)
+  and again in \aristotle{1278}[b][19] (Book~3). The latter passage
+  shows that one should read the whole section of Book~1 concerning
+  household management and the control of slaves
+  (\aristotle*{1253}[b][1]{1253}[b][39]).
+\end{example}
+% \iffalse
+%
+% \fi
+% The following prints the same body text while using \package{icite}
+% to have the passages cited inserted in the \emph{Index locorum
+% citatorum} (see below \vref{sec:index-loc-cit}):--- %
+% \iffalse
+%<*example>
+% \fi
+\begin{example}
+  In \emph{Politics}, Aristotle says that man is by nature a political
+  animal in the following passages:
+  \icite[\aristotle{1253}[a][2--9]]{Aristotle:Politica}[notecite]
+  (Book~1) and again in \icite[\aristotle{1278}[b][19]]%
+  {Aristotle:Politica}[notecite] (Book~3). The latter passage shows
+  that one should read the whole section of Book~1 concerning
+  household management and the control of slaves
+  \icite[\aristotle*{1253}[b][1]{1253}[b][39]]%
+  {Aristotle:Politica}[pnotecite].
+\end{example}
+% \iffalse
+%
+% \fi
+% As can be seen, the \cs{notecite} and \cs{pnotecite} commands have
+% been used to insert only the references in the body text.
+%
+% It is also advisable to use \package{xindy} to compile indices of
+% passages cited because \package{xindy}, unlike \package{makeindex}
+% or \package{xindex}, is able to sort numbers properly: for example,
+% with \package{xindy}, such a number as 81 will come before 100, but
+% will be sorted after 100 with the other two engines.
+% \begin{tcblisting}{text only, title=Caveat}
+%   \package{xindy} (actually |texindy|) is also designed to ignore
+%   \TeX\ commands by default. However, due to a missing line in
+%   |xindy/modules/base/tex.xdy|,\footnote{As the time of writing, in
+%   \package{xindy} v2.5.1.} this does not apply to so-called
+%   \enquote*{starred} \TeX\ commands, such as \cs{aristotle*} from
+%   the example above.
+% \end{tcblisting}
+% One easy way to get around this issue is to create a style file with
+% a single line that instructs \package{xindy} to ignore the asterisk
+% when processing the index, like so:--- %
+% \iffalse
+%<*example>
+% \fi
+\begin{tcblisting}{minted language=lisp, listing only, title=icite.xdy}
+  (merge-rule "\*" "" :eregexp)
+\end{tcblisting}
+% \iffalse
+%
+% \fi
+% 
+% The following example shows how this simple rule can be
+% applied:--- %
+% \iffalse
+%<*example>
+% \fi
+\begin{code}
+  % preamble:
+  \usepackage[xindy]{imakeidx}
+  \makeindex[name=loccit, options=-M icite.sty]
+  % document:
+  \printindex[loccit]
+\end{code}
+% \iffalse
+%
+% \fi
+% Of course, the document itself must be compiled with
+% |--shell-escape|.\footnote{See \cite[2--4]{imakeidx}.}
+%
 % \section{Appendix}
 % Designing the layout of indices is out of the scope of this
 % documentation. For information, the \package{tabto} package has been
@@ -984,7 +1141,9 @@ Running "make install" installs the files in the local TeX tree.
 % \label{ref:indices}
 % \subsubsection{Index of Passages Cited (modern authors)}
 % \printindex[loccit]
+% \needspace{8\baselineskip}
 % \subsubsection{\emph{Index locorum citatorum}}
+% \label{sec:index-loc-cit}
 % \printindex[primary]
 % 
 % \subsection{\texorpdfstring{\hologo{BibTeX}
@@ -1028,6 +1187,11 @@ Running "make install" installs the files in the local TeX tree.
 \RequirePackage{datatool}
 \RequirePackage{usebib}
 %    \end{macrocode}
+% If |nobibengine| is set to true, then \cs{ic@dfltcit} will be
+% redefined by \cs{icite} to \cs{ic@nullcmd} which does nothing.
+%    \begin{macrocode}
+\NewDocumentCommand{\ic@nullcmd}{O{}O{}m}{}
+%    \end{macrocode}
 % Define fields to be used by \package{icite}:
 %    \begin{macrocode}
 \define@reuse@key{author}
@@ -1073,7 +1237,32 @@ Running "make install" installs the files in the local TeX tree.
 }
 \@onlypreamble\SetTitleStyle
 %    \end{macrocode}
-% 
+% \DescribeMacro{\AuthorTitleDelim}
+% \changes{v1.2}{2019/03/17}{\cs{AuthorTitleDelim}: delimiter
+% between authors and titles}\cs{AuthorTitleDelim}\marg{delimiter}
+% sets the delimiter between authors and titles in the body text when
+% the |nobibengine| option is set to |true|. The default delimiter is
+% a comma.
+%    \begin{macrocode}
+\def\ic@authtitdelim{, }
+\NewDocumentCommand{\AuthorTitleDelim}{m}{%
+  \def\ic@authtitdelim{#1}
+}
+\@onlypreamble\AuthorTitleDelim
+%    \end{macrocode}
+% \DescribeMacro{\TitlePageDelim}
+% \changes{v1.2}{2019/03/17}{\cs{TitlePageDelim}: the delimiter
+% between titles and pages}\cs{TitlePageDelim}\marg{delimiter} sets
+% the delimiter between titles and pages in the body text when the
+% |nobibengine| option is set to |true|. The default delimiter is a
+% comma.
+%    \begin{macrocode}
+\def\ic@titpgdelim{, }
+\NewDocumentCommand{\TitlePageDelim}{m}{%
+  \def\ic@titpgdelim{#1}
+}
+\@onlypreamble\TitlePageDelim
+%    \end{macrocode} 
 % \DescribeMacro{\icite} \cs{icite} both inserts a formatted citation
 % and an entry in the \emph{index locorum citatorum}. It is to be used
 % in place of any \hologo{BibTeX} or Bib\LaTeX\ citation command the
@@ -1086,6 +1275,9 @@ Running "make install" installs the files in the local TeX tree.
 % qualified citation lists or so-called \enquote*{multicite} commands.
 %    \begin{macrocode}
 \NewDocumentCommand{\icite}{o o m O{\ic@dfltcit}}{%
+  \edef\ic@argiv{#4}%
+  \edef\ic@null{ic@nullcmd}%
+  \ifno@bibengine\let\ic@argiv\ic@null\else\fi%
   \edef\@shorthand{\get@bibentry{#3}{shorthand}}%
   \edef\@subtype{\get@bibentry{#3}{entrysubtype}}%
   \edef\@author{\get@bibentry{#3}{author}}%
@@ -1143,13 +1335,13 @@ Running "make install" installs the files in the local TeX tree.
         \fi}}
     \ifno@bibengine
     \ifx\@shorthand\empty%
-    \@useauthor, \TitleStyle{\@usetitle}%
+    \@useauthor\ic@authtitdelim\TitleStyle{\@usetitle}%
     \else%
     \@shorthand%
     \fi%
     \else%
-    \csname #4\endcsname{#3}%
     \fi%
+    \csname\ic@argiv\endcsname{#3}%
   }
   {\IfNoValueTF{#2}%
     {\DTLifdbempty{icite@indices}{%
@@ -1175,13 +1367,14 @@ Running "make install" installs the files in the local TeX tree.
           \fi}}%
       \ifno@bibengine
       \ifx\@shorthand\empty%
-      \@useauthor, \TitleStyle{\@usetitle}, {#1}%
+      \@useauthor\ic@authtitdelim\TitleStyle{\@usetitle}%
+         \ic@titpgdelim{#1}%
       \else%
       \@shorthand, {#1}%
       \fi%
       \else%
-      \csname #4\endcsname[{#1}]{#3}%
       \fi%
+      \csname\ic@argiv\endcsname[{#1}]{#3}%
     }
     {\DTLifdbempty{icite@indices}{%
         \ifno@index\else
@@ -1206,13 +1399,14 @@ Running "make install" installs the files in the local TeX tree.
           \fi}}%
       \ifno@bibengine
       \ifx\@shorthand\empty%
-      #1 \@useauthor, \TitleStyle{\@usetitle}, {#2}%
+      #1 \@useauthor\ic@authtitdelim\TitleStyle{\@usetitle}%
+         \ic@titpgdelim{#2}%
       \else%
       #1 \@shorthand, {#2}%
       \fi
       \else%
-      \csname #4\endcsname[#1][{#2}]{#3}%
       \fi%
+      \csname\ic@argiv\endcsname[#1][{#2}]{#3}%
     }%
   }%
 }
diff --git a/Master/texmf-dist/tex/latex/icite/icite.sty b/Master/texmf-dist/tex/latex/icite/icite.sty
index cf0dd1a23e5..8c31e46a24c 100644
--- a/Master/texmf-dist/tex/latex/icite/icite.sty
+++ b/Master/texmf-dist/tex/latex/icite/icite.sty
@@ -32,7 +32,7 @@
 %% 
 \NeedsTeXFormat{LaTeX2e}[1999/12/01]
 \ProvidesPackage{icite}
-    [2019/03/12 v1.1 Make Indices locorum citatorum]
+    [2019/03/17 v1.2 Make Indices locorum citatorum]
 \RequirePackage{xkeyval}
 \DeclareOptionX{citecmd}[cite]{\def\ic@dfltcit{#1}}
 \newif\ifdefault@index
@@ -55,6 +55,7 @@
 \RequirePackage{xparse}
 \RequirePackage{datatool}
 \RequirePackage{usebib}
+\NewDocumentCommand{\ic@nullcmd}{O{}O{}m}{}
 \define@reuse@key{author}
 \define@reuse@key{indexauthor}
 \define@reuse@key{sortname}
@@ -78,7 +79,20 @@
   \RenewDocumentCommand{\TitleStyle}{m}{#1}
 }
 \@onlypreamble\SetTitleStyle
+\def\ic@authtitdelim{, }
+\NewDocumentCommand{\AuthorTitleDelim}{m}{%
+  \def\ic@authtitdelim{#1}
+}
+\@onlypreamble\AuthorTitleDelim
+\def\ic@titpgdelim{, }
+\NewDocumentCommand{\TitlePageDelim}{m}{%
+  \def\ic@titpgdelim{#1}
+}
+\@onlypreamble\TitlePageDelim
 \NewDocumentCommand{\icite}{o o m O{\ic@dfltcit}}{%
+  \edef\ic@argiv{#4}%
+  \edef\ic@null{ic@nullcmd}%
+  \ifno@bibengine\let\ic@argiv\ic@null\else\fi%
   \edef\@shorthand{\get@bibentry{#3}{shorthand}}%
   \edef\@subtype{\get@bibentry{#3}{entrysubtype}}%
   \edef\@author{\get@bibentry{#3}{author}}%
@@ -136,13 +150,13 @@
         \fi}}
     \ifno@bibengine
     \ifx\@shorthand\empty%
-    \@useauthor, \TitleStyle{\@usetitle}%
+    \@useauthor\ic@authtitdelim\TitleStyle{\@usetitle}%
     \else%
     \@shorthand%
     \fi%
     \else%
-    \csname #4\endcsname{#3}%
     \fi%
+    \csname\ic@argiv\endcsname{#3}%
   }
   {\IfNoValueTF{#2}%
     {\DTLifdbempty{icite@indices}{%
@@ -168,13 +182,14 @@
           \fi}}%
       \ifno@bibengine
       \ifx\@shorthand\empty%
-      \@useauthor, \TitleStyle{\@usetitle}, {#1}%
+      \@useauthor\ic@authtitdelim\TitleStyle{\@usetitle}%
+         \ic@titpgdelim{#1}%
       \else%
       \@shorthand, {#1}%
       \fi%
       \else%
-      \csname #4\endcsname[{#1}]{#3}%
       \fi%
+      \csname\ic@argiv\endcsname[{#1}]{#3}%
     }
     {\DTLifdbempty{icite@indices}{%
         \ifno@index\else
@@ -199,13 +214,14 @@
           \fi}}%
       \ifno@bibengine
       \ifx\@shorthand\empty%
-      #1 \@useauthor, \TitleStyle{\@usetitle}, {#2}%
+      #1 \@useauthor\ic@authtitdelim\TitleStyle{\@usetitle}%
+         \ic@titpgdelim{#2}%
       \else%
       #1 \@shorthand, {#2}%
       \fi
       \else%
-      \csname #4\endcsname[#1][{#2}]{#3}%
       \fi%
+      \csname\ic@argiv\endcsname[#1][{#2}]{#3}%
     }%
   }%
 }
-- 
cgit v1.2.3