enter image description here

Using a table didn't work, and I am kind of at a loss on where to even begin. I read the documentation for makeidx, and sense I'm not referencing pages, but rather verse citations, I don't think it will work. Thanks for the help.

  • Welcome to TeX.SX! Please do not paste code as images, but as code. Why manually?
    – Bobyandbob
    Commented Nov 16, 2017 at 23:49
  • 1
    Describe better, what you want to do! Is that a bible index you want to get? What should be the content of the index, how is the bible displayed, show us a short compilable code you have tried so far!
    – Mensch
    Commented Nov 17, 2017 at 0:25
  • Something related that came up recently. But in this case it's not clear whether you want to generate that data, or you already have that data (the index) and you're only asking how to typeset it. Commented Nov 17, 2017 at 0:54
  • 1
    Perhaps the multicol package will help you if you simply want to typeset data you already have. Commented Nov 17, 2017 at 0:57
  • If you want to generate the data from your document then have a look at tex.stackexchange.com/questions/332701/… Commented Nov 17, 2017 at 0:59

1 Answer 1


This isn't as tough as you think. Use imakeidx instead of makeidx.

You can format how the biblical book titles (e.g. Genesis) look by using .ist files that dictate how the index should be formatted when it gets converted into working LaTeX code when you process the index.

Next, when you index an entry in your text, you do so like this:

\index[HB]{02@Exodus!3210 @32:10}

Here, \index is the command. [HB] signals this is a separate index called HB (for Hebrew Bible citations). We open the brackets to signal what is actually being indexed. On the left side of the @ signs is the key for sorting the entry with other entries. The 02 means this item goes into the second group, after whatever is labelled 01 and before 03. On the right hand side of the at signs is what it should actually look like in the index. So 02 looks like "Exodus" in the pdf. The ! separates one index level from the next, so our main item is 02 which shows up as "Exodus" and the sub-item is 3210_ which shows up as 32:10. (The space after 3210 means it sorts before a verse range like 3210-15). So you get...



For more info see my older posts, e.g. How to use different formatting for multiple indices with imakeidx and .ist files?, imakeidx - grouping under italic term, and Automatically italicise index entries with subitems. I'm by no means an expert but I did build a scripture index and format it exactly as I needed it doing this. It is doable, so don't despair.

You must log in to answer this question.