Как создать рабочие индексы для справки MacOS на Мохаве и Каталине - PullRequest
0 голосов
/ 23 февраля 2020

Это вклад "ответь на свой вопрос".

Я боролся за день, пытаясь заставить якорь работать в системе NSHelpManager в 10.15, чтобы иметь возможность открыть заданное Страница справки с методом openHelpAnchor:inBook:.

Документация Apple по справочной системе устарела и некоторое время не обновлялась. Справочная страница hiutil дает подсказку, в которой говорится:

Указатели справки Spotlight требуются в MacOS Mojave или более поздней версии.

Но использование любого из двух доступных форматов помогло не работает само по себе.

Поэтому мне пришлось провести обратный инжиниринг, просматривая справочные ресурсы самого XCode, чтобы найти решение.

1 Ответ

0 голосов
/ 23 февраля 2020

Хитрость заключается в том, чтобы сгенерировать два индексных файла, по одному для каждого формата, в папку .lproj:

hiutil -I corespotlight -Cf help.cshelpindex -a -s fr -l fr .
hiutil -I lsm -Cf help.helpindex -a -s fr -l fr .

Затем , и это недокументированный ключ , необходимо добавить запись в справку info.plist:

<key>HPDBookCSIndexPath</key>
<string>help.cshelpindex</string>

вместе с традиционной документированной записью HPDBookIndexPath.

Et voilà.

...