What happened to help authoring in Mojave?

Someone please correct me if I'm mistaken, but I think Apple just deprecated the entire help infrastructure in Mojave.


I am doing final testing on a new build of my app. It really bugs me that help anchors don't work. It seemed like I could sometimes get them to work in the past. But now, nothing.


It is just a webview, so I decided I would just scrap the whole thing and do it all myself. 2 hours later, that's done. However, I still wanted to use those convenient anchors. I figured I would just call hiutil at runtime to extract the anchors and I would be all done. But hiutil doesn't work on Mojave anymore. It seems seems to create them OK. I can use hiutil to read a helpindex file created on Mojave. But I can't read the same helpindex file on Mojave.


I suppose that's irony for you. The one piece of the old help infrastructure that I thought I could salvage in my new version is now broken.


Congratulations, Apple!



That's the sound of one hand clapping.

Replies

Hi John,

I just recently came across the same problem. It seems hiutil is broken on Mojave.

My build script was set to use the local hiutil, so my anchors weren't working either.

I wound back to the High Sierra version of hiutil and everything sprang into life.


I did some tests:


chris$ which hiutil

/usr/bin/hiutil


chris$ hiutil -V

hiutil version 2.0 (60)


I've got an external caddy with all my older OS versions on:

chris$ /Volumes/High\ Sierra/usr/bin/hiutil -V

hiutil version 1.3.2 (55)


I created a temp dir and bunged some test files in.


chris$ hiutil -Caf test.helpindex ./testdir

chris$ hiutil -Af test.helpindex

"There was a problem unarchiving the index file."


Doing the same with the High Sierra version of hiutil works fine:

chris$ /Volumes/High\ Sierra/usr/bin/hiutil -Caf test.helpindex ./testdir

chris$ /Volumes/High\ Sierra/usr/bin/hiutil -Af test.helpindex

ais0001

ais0002

ais0003

ais0004

...

...


I can't get the Mojave version of hiutil to read back my anchors under any circumstances, regardles of which version of hiutil created the helpindex file.

Took me a while to find this as the only symptom you get presented with is that the Help system can't locate the help resource.

Frustrating.


I've built a test app that incorporates my main app's help and explicitly launches the help, using a UI button to open a page at an anchor.

I'll try calling an older hiutil from an xcode build phase.

Hopefully this will solve the problem.

Chris.


UPDATE:

I built a test app using Xcode 10 on Mojave.

Anchors don't work.

The app works fine on High Sierra.

I checked the contents of the helpindex file using hiutil -D and it's fine.


Conclusion (the same as yours): anchors don't work on Mojave.

Hi Chris,

Look me up on the internet and send me an e-mail. I'm "etresoft".