Ok, I think I've found the answer. My thanks go to Gilu, whose info led me to the following solution. Here is the MWE (a little expanded to better see how it works).
\documentclass[openany]{book}
\usepackage{imakeidx}
\makeindex[name=one,title=Index One, intoc, options= -s one.ist]
\makeindex[name=four,title=Index Four, intoc, options= -s four.ist]
\makeindex[name=six,title=Index Six, intoc, options= -s six.ist]
\usepackage[hangindent=0pt,subindent=0pt,subsubindent=0pt]{idxlayout}
\begin{document}
Some text.
\index[one]{Acts of the Avocados!2:2}
\index[one]{Acts of the Avocados!5:5}
\index[one]{Acts of the Avocados!3:3}
\index[one]{Acts of the Avocados!5:5}
\index[one]{Acts of the Avocados!6:6}
\index[one]{Acts of the Avocados!7:7}
\index[one]{Acts of the Avocados!8:8}
\index[one]{Romaines!3:3}
\index[one]{Romaines!4:4}
\index[one]{Romaines!5:5}
\index[four]{Aristotle!Metaphysalis!205c}
\index[four]{Aristotle!Metaphysalis!306d}
\index[four]{Plato!Tomatoes!407e}
\index[four]{Cicero!Lettuce!115}
\index[six]{Bananerges}
\index[six]{Appleadorus}
\index[six]{Plato}
\index[six]{Plato!\textit{Potatoes}!144a}
\index[six]{Plato!\textit{Potatoes}!166d}
\printindex[one]
\printindex[four]
\idxlayout{itemlayout=abshang}
\printindex[six]
\end{document}
Things that have changed:
1) I added idxlayout to make life easy when it comes to turning off indents within the indices without having to mess around in the class file, as suggested by Gilu, 2) I set up the .ist files correctly for what I want to achieve and 3) I added a line of idxlayout code to re-apply indents for the subject index, which comes last.
Now, here are the new .ist files, followed by the .ind files they produce in case anyone else has to customize their index in a similar way. I used the page cited in my question to find the "keys" to controlling different aspects of the index formatting in the .ist files (index style files). This is the link: https://www.sharelatex.com/learn/Indices#/Parameters_for_the_.5Cmakeindex_command.
I messed around with the .ist files until they produced an .ind file that read like working code, so if anyone has to format an index in the same way, that would be my number one tip from this experience: mess around with your .ist files until the .ind files they make when you run (xe)latex look like latex code that should work. Sometimes that means opening curly brackets under one key and closing them under another key.
Final thing: Always make sure your text editor doesn't convert straight quotes (") into curly quotes in your .ist files when you're not looking. It will screw things up.
one.ist:
item_0 "\\indexspace \\vspace{-12pt} \n \\textit{\\item "
item_x1 " } \n \\subitem "
delim_0 " \\hfill "
delim_1 " \\hfill "
delim_2 " \\hfill "
one.ind (although it's set off like code here, this is just the contents of the file; setting it up as code in the forum post editor makes it easier to read):
\begin{theindex}
\textit{\item Acts of the Avocados }
\subitem 2:2 \hfill 1
\subitem 3:3 \hfill 1
\subitem 5:5 \hfill 1
\subitem 6:6 \hfill 1
\subitem 7:7 \hfill 1
\subitem 8:8 \hfill 1
\indexspace
\textit{\item Romaines }
\subitem 3:3 \hfill 1
\subitem 4:4 \hfill 1
\subitem 5:5 \hfill 1
\end{theindex}
four.ist: (\no indent was added because without it there was a space moving the \item in)
item_0 " \\indexspace \n \\item \\noindent \\vspace{10.5pt}"
item_x1 " \n \\subitem \\textit{"
item_x2 " \n } \\subitem "
delim_0 " \\hfill "
delim_1 " \\hfill "
delim_2 " \\hfill "
four.ind:
\begin{theindex}
\item \noindent \vspace{10.5pt}Aristotle
\subitem \textit{Metaphysalis
} \subitem 205c \hfill 1
\subsubitem 306d \hfill 1
\indexspace
\item \noindent \vspace{10.5pt}Cicero
\subitem \textit{Lettuce
} \subitem 115 \hfill 1
\indexspace
\item \noindent \vspace{10.5pt}Plato
\subitem \textit{Tomatoes
} \subitem 407e \hfill 1
\end{theindex}
six.ist:
delim_0 " \\hfill "
delim_1 " \\hfill "
delim_2 " \\hfill "
six.ind:
\begin{theindex}
\item Appleadorus \hfill 1
\indexspace
\item Bananerges \hfill 1
\indexspace
\item Plato \hfill 1
\subitem \textit{Potatoes}
\subsubitem 144a \hfill 1
\subsubitem 166d \hfill 1
\end{theindex}
I'll wait a few days before accepting my own post as the answer since someone may have a more elegant solution.
This question was a follow-on question, as noted in the post. The answer was posted in the original question thread, linked in the top post here, but I repeat it for completeness.
The above solution in the comments thanks to David Carlisle solves the problem. In my function, I define
\bigfunction{
...
\index{item|foo}
...
}
where foo is defined, e.g.
\newcommand{foo}[1]{#1*}
to get starred page numbers, and similarly for other formats.
I have to then redefine the function \bigfunction at the beginning of each section to get different versions of foo for each section.
Best Answer
You get a warning:
which tells you exactly what you need to do.
Alternatively, run
pdflatex
with the-shell-escape
option.Explanation:
splitindex
is not in the “list of safe programs” allowed to be called from the restricted shell escape.Another possibility, with just two indices, is to remove the
splitindex
option.