
Precision Helper 实现了两种程序扩展(插件)的接口。命令行接口和 Pascal Script接口。
程序插件可以在不同方面明显的扩展产品的功能,并且可以是第三方创建的。
首选的可用插件:
- HTML Tidy——使用知名的工具检查、清理和重新格式化主题
- 从文件创建新项目——从现有主题文件创建新项目的向导
- Edit HHC——在外部 HTML 编辑器中编辑 TOC 源文件
- Edit HHK——在外部 HTML 编辑器中编辑索引源文件
- 项目状态——显示当前项目的简要状态信息
- 日期和时间——插入实际的日期和时间到当前编辑的主题
怎样安装扩展?
所有的扩展必须安装到 Precision Helper 程序文件夹中的 Extras 子文件夹。
在 Windows 2000/XP 中默认安装程序时,这个文件夹的位置为:
"C:\Documents and Settings\%UserName%\AppData\Precision\precisionhelper\Extras"
在 Windows Vista (或更新版本)中默认安装程序时,这个文件夹的位置为:
"C:\Users\%UserName%\AppData\Roaming\Precision\precisionhelper\Extras"
每个扩展还应该放置在不同的文件夹。当然,对于共享相同组件(文件)的扩展集,可以保存在同一文件夹。
插件配置文件
每个插件通过在配置文件中指定的参数来定义。它们的扩展名必须为 .PHE(即MyExtension.phe)。
Pascal Script 接口的配置文件很简单,实际上只包含了描述信息。相比而言,命令行接口的配置文件包含参数和操作的完整定义,Precision Helper 必须处理每个步骤(执行前、执行后等)。
Pascal Script 接口
下面的例子演示了 Pascal Script 接口插件的配置文件。
[Precision Helper Extension] Interface=pascalscript ; 扩展的默认标题和说明 Caption=New from files Hint=Create a new help project from an existing topic files ; 扩展的本地化标题和说明 Caption.cs=Nový ze souborů Hint.cs=Vytvořit nový projekt nápovědy z existujících souborů témat [IDE] ; Precision Helper IDE 的一部分,此扩展应该可用在那里 ribbonHOME=1 ribbonTOC=0 ribbonIDX=0 ribbonPUB=0 ribbonTOOLS=1 ribbonHELP=0 TopicSource=0
例子中的参数应该比较明确的。此类插件的代码放置在 RunScript.pas 文件中。如果插件含有 GUI (可视化用户界面),那么它必须在 RunScript.dfm 文件中进行定义。
要编辑和设计 Pascal Script 接口的插件,您可使用任何编辑器,但我们推荐使用我们开发的 pdScript IDE 产品,它包含了 Precision Helper pascal 脚本接口的完整支持(请参阅 http://www.be-precision.com/products/pdscript/)。
就像从例子开始创建您自己的插件那样,您可使用预定义的现有扩展,可以在上面提及的文件夹中找到它们。
命令行接口
下面的例子演示了命令行接口插件的配置文件,包括每个参数的说明。
[Precision Helper Extension] ; 接口 ; pascalscript - Pascal Script 接口 ; cmdline - Command-line 接口 ; 执行外部程序时可以带上指定的参数。 ; (请参阅‘程序’和‘命令行’部分了解更多信息) Interface=cmdline Caption=Edit HHC Hint=Open the table of contents source file in an external html editor Caption.cs=Upravit HHC Hint.cs=Otevřít zdrojový soubor obsahu v externím html editoru [Script] ; 尚未实现 ExecOnLoad=0 [Application] ; 要执行的程序。可以是准确路径或含有环境变量的路径, ; 或者包含下列宏的其中一个: ; %X% - 用来运行在 Precision Helper 中预定义的某个工具。 ; (X 可以为:1 - Html 编辑器;2 - 网页浏览器;4 - 图像编辑器;5 - 文件管理器) ; %ENVIRONMENT_VARIABLE% - 任何环境变量 ; %REG:HKxx\KeyPath,ValueName|DefaultValue% - 注册表中的值 ; %APPEXTRAS% - Precision Helper 的扩展文件夹 ; %APPTEMPLATES% - Precision Helper 的模板文件夹 ; %APPFOLDER% - 包含 PrecisionHelper.exe 的文件夹 ; %APPTEMP% - Precision Helper 的临时文件夹(即...\Precision Helper\Temp\...) ; %PROJECTFILE% - 当前项目文件 ; %PROJECTFOLDER% - 当前项目文件夹 ; %APPSAMPLES% - Precision Helper 的 Samples 文件夹 %1% [Command-line] ; 命令行参数。可以包含 [Application] 段提到的宏(但 %X% 除外)和下列宏: ; %1 - 在 Precision Helper 中当前选择项的文件名(TOC 中的主题、索引中的主题、files 段包含的文件等) ; %2 - 项目的源文件名(HHP) ; %3 - 项目的目标 CHM 文件 ; %4 - 目录的源文件名(HHC) ; %5 - 关键字索引的源文件名(HHK) ; %6 - 本扩展当前安装的文件夹 ; %7 - 本扩展当前选项文件名 Parameters="%4" ; Precision Helper 会一直等待,直到扩展的执行结束。 ; 当您使用扩展时如果仍在操作程序时请不要使用这个值。 ; 在 [Application] 段使用了 %X% 宏时此参数无效。 waitfor=0 ; 在执行前保存 TOC saveTOC=1 ; 在执行前保存 IDX saveIDX=0 ; 在执行前保存整个项目 saveProject=0 ; 在执行前保存当前主题 saveTopic=0 ; 执行扩展时,Precision Helper 将在下一个激活前重新载入 TOC。 ; 如果 'waitfor=1',则会在关闭扩展后重新载入 TOC reloadTOC=1 ; 类似 reloadTOC,但应用于关键字索引 reloadIDX=0 ; 类似 reloadTOC,但应用于整个项目 reloadProject=0 ; 类似 reloadTOC,当应用于当前主题 reloadTopic=0 ; 类似 reloadTOC,但重新载入所有扩展(适合于要实现插件管理器功能的扩展) reloadExtras=0 [IDE] ; Precision Helper GUI 部分,此扩展应该可用在那里 ribbonHOME=0 ribbonTOC=1 ribbonIDX=0 ribbonPUB=0 ribbonTOOLS=0 ribbonHELP=0 TopicSource=0
正如您在参数说明中看到的,实际上您可以使用任何外部工具作为插件,因为 Precision Helper 并不直接依赖于它的执行(除了可能需要等待它执行结束),也不依赖于它的输出。
其他插件选项
- 插件图标必须保存在名为 "icon16.png" 和 "icon24.png" 的文件中,并且必须放置在配置文件附近。
- Pascal Script 接口的每个插件含有包含自身选项的专用文件。此文件必须与配置文件的主名称相同,但扩展名为 .PHEINI(请参阅 "NewFromFolder" 插件)。
- Pascal Script 接口的完整语法(类、方法、类型等)还不可用,不过支持的语法列表可以在提及的插件编辑器中名称为 "Precision Helper" 的代码主题模板中找到,这个编辑器即 pdScript IDE 产品(更多信息请参阅 http://www.be-precision.com/products/pdscript/)。