我使用 Voodoopad 创建我的帮助文档,如所述 here .基本上我有一个运行脚本构建阶段,它告诉 Voodoopad 将我的文档导出为 html。 Voodoopad 文档设置为在导出时运行 hiutil 以创建帮助索引。
在注意到我的许多帮助 anchor 都不起作用后,我将其追溯到 hiutil。当我在从 Voodoopad 导出的 html 上运行 hiutil 时,出现了一堆错误:
Zach-iMac:Desktop zach$ hiutil -a --create Help/ --file Help/Help.helpindex -1 -vvv
index.html -- Parse error: The operation couldn’t be completed. (NSXMLParserErrorDomain error 76.)
index.html -- Parse error: Error 76, Description: (null), Line: 14, Column: 8
index.html -- Finished parsing
每个文件都会重复这些错误。第 14 行第 8 列是 head 标签的结尾。每个文件的第一部分基本相同:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="Content-Style-Type" content="text/css">
<meta name="AppleTitle" content="VideoBuffet Help">
<meta name="AppleIcon" content="appicon16.png">
<title>Index</title>
<meta name="Generator" content="Cocoa HTML Writer">
<meta name="CocoaVersion" content="1138.23">
<style type="text/css">
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px 'Lucida Grande'}
</style>
</head>
<body>
这个 HTML 曾经与 hiutil 一起工作得很好。自从我上次运行它后,我升级到了 Mountain Lion 和 Xcode 4.5。
还有其他人在使用 hiutil,它对你有用吗?
最佳答案
如果您在 HTML 文件的顶部使用此序言:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
并通过像 http://validator.w3.org/#validate_by_upload+with_options 这样的验证器运行您的 HTML
并修复所有问题,直到验证器返回成功,它应该与 hiutil 1.3 一起工作。不管怎样,它对我有用。
另见 http://lists.apple.com/archives/apple-help-authoring/2012/Sep/msg00018.html
关于html - hiutil 在 Mountain Lion 中没有正确索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12473402/