2012-09-18 15 views
3

我使用Voodoopad創建我的幫助文檔,如here所述。基本上我有一個運行腳本構建階段,它告訴Voodoopad將我的文檔導出爲html。 Voodoopad文檔設置爲在出口時運行hiutil創建幫助索引。hiutil在Mountain Lion中沒有正確編制索引?

在注意到我的許多幫助錨點沒有工作之後,我將其追溯至極度困難。當我從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欄是頭標籤的關閉。每個文件的第一部分是基本相同的:

<!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> 

用來工作只是罰款hiutil這一確切的HTML。自從我上次運行這個以來,我升級到Mountain Lion和Xcode 4.5。

是否有其他人使用hiutil,它是爲你工作?

回答

3

如果你在你的HTML文件的頂部使用這個開場白:

< DOCTYPE HTML PUBLIC 「 - // W3C // DTD XHTML 1.0 Strict標準// EN」「HTTP://www.w3。組織/ TR/XHTML1/DTD/XHTML1-strict.dtd」 >
< HTML的xmlns = 「http://www.w3.org/1999/xhtml」 >

,並通過像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

+0

是的,我現在看到,從Voodoopad出口標記無效。正如你所說的那樣將doctype改爲XHML 1.0,並且在導出的標記中修正一些錯誤的辦法。感謝你的回答! – zpasternack

1

這不是一個正確的答案,但我的解決方法是使用Lion(1.2)附帶的hiutil版本來構建我的幫助索引。

我對此並不滿意,但現在會做。如果有人有這個問題,並想學習如何做到這一點,你可以read my blog post about it

更新:發佈rdar://12326432

更新:我已經從蘋果聽說這是臭蟲#11981648重複(這仍然是在這一刻打開)。