2

我一直在努力改进我们的 PS 文档并开始使用PlatyPS。到目前为止,一切都很好,我现在有很好的降价文档。我还能够从中生成 MAML 以与 CLI 文档一起使用,并且能够从我的模块中删除文档注释字符串。

不幸的是,当我导入我的模块时,它无法看到 MAML 帮助文件,而且Get-Help我导出的函数非常简单。

我的理解是,在模块内打包MAML时,需要如下放置:

MyModuleName/
  |_ en-US/
     |_ MyModuleName-help.xml

但是,我已经这样做了,但我仍然无法从命令行使用Get-Helpor看到正确的帮助文档-?。这是我第一次尝试使用不使用文档注释的外部帮助文档,所以我希望我错过了一步或犯了 MAML 初学者的错误。

4

1 回答 1

0

事实证明,我在从降价源生成 MAML 时遇到了问题。我按照PlatyPS指南进行操作,New-ExternalHelp并没有为我碰巧正在测试的命令生成帮助。

这些命令未使用Verb-Noun命名法命名,并且文件与其匹配功能共享一个名称。我取了其中一个函数并给它起了一个Verb-Noun名字,并对其相应的.md文件做了同样的事情。使用Verb-Noun.md,New-ExternalHelp现在生成命令的 MAML 并将它们放在MyModuleName-help.xml.


然而,这不是我想要的。这些特定的函数被故意命名为命令,我不想遵循Verb-Noun它们的命名法。可能是一个边缘案例,但我也确实找到了解决方案。经过一些测试,.md就 MAML 生成而言,只有该命令的源文件中的命令名称很重要。

文件名需要与Verb-Noun.md模式匹配,但您可以在FunctionName内部调用命令,帮助将为命令正确生成FunctionName,而不是Verb-Noun. 现在,当我导入模块时,我得到了以前缺少的命令的正确帮助主题。

现在我的.md文件不再匹配命令名称,但这不是世界末日。

于 2022-02-09T05:09:34.737 回答