How can I make an index?
I have been reading the documentation at: https://docs.racket-lang.org/pollen/quick-tour.html , but I didn't find the topic about how to make an index (when creating a book).
There is an example in the last link in this page: https://robjhyndman.com/hyndsight/indexing-in-latex/
Thank you for any help.
Pollen has no built-in facilities for building a keyword index for HTML; each author must design and implement their own system. It's quite an exercise. (Obviously, if you’re only targeting PDF via LaTeX, you can just use LaTeX’s system for this)
I have written a pretty good one for an upcoming project. Here’s an example of the output. It supports sub-entries using
! as a separator, with the idea that it will plug into LaTeX pretty easily if I need it to.
- In HTML, my
◊indextag function calls
html-index, which produces a link to the keyword index page with a custom attribute
data-index-entryas a kind of marker so it can be found again in the next step.
- My site uses a SQLite database to cache a bunch of stuff about each article each time it is rendered. (I decided to have a bit of fun and call this “crystalization”) As part of this process, the
crystalize-index-entries!function is called, which finds all links with a
data-index-entryattribute, and saves info about them into the
keywordindextable of the database.
- The program which generates the index is
- Because each article also has its own row in the database, I can use the
rowidcolumn to simulate page numbers in the output.
A few years ago I prototyped another system which was much simpler. See these lines in
pollen.rkt and the template file that produced the keyword index page. It didn't support sub-entries and also did not use a SQLite database; it just loaded the
doc of each file in a given pagetree looking for index entries. The upside of using a database is that it is faster.
Thank you for your help!
The example of the output for your upcoming project is really beautiful, unfortunatly I am a newbie and didn't understand very well how to do this... Maybe in the future (=
Pollen is awesome!
Deleting a branch is permanent. It CANNOT be undone. Continue?