HIUTIL(1) General Commands Manual HIUTIL(1)

hiutilutility for creating and examining Help Viewer indices

hiutil -I FORMAT -Cf file [-1agv] [-m NUM] [-s LANG | PATH] [-r URL] [-t EXT] dir

hiutil [-ADEFMST] -f file

hiutil is used to create .helpindex files in the Latent Symantic Mapping (LSM) help format and .cshelpindex files in the Spotlight help format. It is also capable of examining Spotlight help indices using the modes listed below. To examine LSM indices, use a version of hiutil earlier than 2.0.

Spotlight help indices are required in macOS Mojave or later. Spotlight indices are not compatible with versions earlier than macOS Mojave.

The macOS help system automatically generates indices for local help books (see ~/Library/Caches/com.apple.helpd/). If your help content will be hosted remotely, you may want to manually generate an index to include with your remote help book.

Creation, management, inspection, and information modes are listed directly below.

Create an index file at the location you specify. You must provide both a directory of HTML files to index and a path to an output file, which will be overwritten if the ouput file already exists.
Pass the index format type as either 'lsm' or 'corespotlight'.
Terminate Help Viewer and helpd if they are running and purge persisted Help Viewer related caches.

List the index's anchors separated by newlines.
List the index's anchor dictionary in XML. This includes a list of which files contain each anchor.
List the index's version dictionary in XML. It describes the system environment on which the index was created.
List all the files included in the index, separated by newlines. You can use the -v option with this mode to get titles and descriptions as well.
Print out usage data.
List the index's minimum term length.
List the index's stopwords separated by newlines.
List the terms indexed in each file.
Print out the version of the tool.

These can be used with any mode.

Pass in the path to a file, either one to be created or one to be examined.
Specify verbose output. Errors are always shown, but passing this argument once prints out warnings also. Passing the argument twice prints out errors, warnings, and progress notes.

These can only be used with the create mode.

Index one file at a time. The default is to use a queue to index several files in parallel. In combination with -vvv, this option can be useful in determining which file an error message is from.
Specify index anchors. The default is to have none. Without this flag, there will be no anchor dictionary in the index.
Exclude files that match the specified pattern. Uses NSPredicate's MATCHES comparison method on the file's path relative to the directory being indexed. This option can be passed as many times as necessary, once per pattern. Exclusions take precedence over files included with -i.
Generate summary text. This can be slow, but is useful if you don't have DESCRIPTION meta tags on some pages.
Include files that match the specified pattern. Uses NSPredicate's MATCHES comparison method on the file's path relative to the directory being indexed. The default patterns to index are ".htm" and ".html". If these defaults are undesirable, you may use -e above to exclude them. This option can be passed as many times as necessary, once per pattern.
Specify a minimum term length. The value can be 1, 2 or 3. It represents the number of consecutive tokens (typically a character) required for a term not to be ignored by the indexer. Recommended values are 3 for English and 1 for Chinese and other ideographic languages.
Include a remote URL with the index. This is only useful in Type 1 or Type 2 help books, because the URL is in the help bundle's Info.plist for Type 3 books. The URL should be fully qualified. For example:

Use stopwords. If you have your own stopwords .plist, provide that path. Otherwise, pass the two-character language code. For example:

Specify a locale for the index. Instead of having to boot into the locale to index, pass the language code or locale identifier here to index for that language. Example locale identifiers:

US English


List of default stopwords in different languages

Create .cshelpindex file from a directory of HTML help:

hiutil -I corespotlight -Caf /pathto/myhelp.cshelpindex /pathto/myhelpdir/

Inspect the anchors in a .cshelpindex file:

hiutil -I corespotlight -Af /pathto/myhelp.cshelpindex

Verbosely inspect the terms in a .cshelpindex file:

hiutil -I corespotlight -Tvf /pathto/myhelp.cshelpindex

hiutil requires macOS 10.14 or later.

05/22/2019 Darwin