问题标签 [shfb]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
msbuild - 只有当 TeamCity 建造时,才会神秘地失败沙堡建造
我有一个相当大的解决方案,其中包含两个基于 Sandcastle + Sandcastle Help File Builder (SHFB) 的文档项目。这些项目既可以从命令行 ( msbuild project.shfb
) 正确构建,也可以使用 SHFB Visual Studio 2010 集成的 beta 版本。
但是,当我在 TeamCity 中运行构建时,我在文档构建中遇到了一个神秘的构建失败。SHFB 日志这样说:
果然,Sandcastle 正在寻找的文件(mscorlib.xml)不存在。但是构建工作在 TeamCity 之外,所以我会得出结论,Sandcastle 仅在涉及 TeamCity 时才寻找该文件。那么,为什么这只会导致 TeamCity 失败,而不是 msbuild 中的命令行失败?我很感激任何故障排除提示,因为我没有灵感了。
澄清(感谢@Sayed):TeamCity 构建代理是我可以成功运行命令行构建的同一台计算机,因此它是上述所有内容的同一台计算机。TeamCity Server 是另一台计算机,但不参与构建。
.net - 哪些规则适用于 SHFB 的 IntelliSenseComponent 的输出文件夹?
Noda Time有一个问题,即它发布的 XML 文档文件也包含所有内部和私有成员 - 这是一种耻辱。
幸运的是,Sandcastle Help File Builder有一个自定义的构建组件——IntelliSenseComponent
理论上它确实做了正确的事情。不幸的是,我无法弄清楚如何正确配置它。
文档给出了这个例子:
并指出:
上面给出的示例取自 Sandcastle Help File Builder 的配置文件。与它一起使用时,替换标签 {@SHBFFolder} 和 {@OutputFolder} 用于在文件路径中插入帮助文件构建器的文件夹和项目的输出文件夹。这些在构建时被替换为适当的值。如果在您自己的构建脚本中使用该组件,请将标签分别替换为组件装配和输出文件夹的相对或绝对路径。
好吧,我正在使用 SHFB,所以我希望它能够工作。但是,除了绝对的工作路径之外,我什么也得不到。我试过了:
(我只是将 XYZZY 用作易于搜索的东西。)
查看源代码,我希望我可以使用环境变量,但这不起作用:
虽然这确实......
这有效:
...但我真的不想要一个绝对路径名。
文档表明所有这些都应该非常容易......我错过了什么?
涉及的版本:
- SHFB:1.9.3.0
- 沙堡:2.6.10621.1
xml-documentation - 过滤继承的参数注释的内容
我有这样的评论:
对于实现方法,我希望有相同的文档,但没有那些段落有id="0"
, using inheritdoc
. 如何创作inheritdoc
元素?
在此上下文中不常见的id
属性使用应增加灵活性,使其不受文档中出现的段落顺序的约束。
sandcastle - 沙堡和 SHFB,对 TOC 隐藏字段?
我目前正在记录 WCF 服务,需要将 TOC 剥离到最低限度。是否可以从类的 TOC 中排除字段子主题?
提前致谢。
c# - Sandcastle 帮助文件生成器找不到文档源
我正在使用 Sandcastle Help File Builder 构建 VS 2010 C# 项目的文档。我已将.xml
编译器生成的文档和项目的 Visual Studio 解决方案.sln
文件添加到Documentation Sources。我还将项目的可执行文件添加.exe
到References。但是,它不是在构建。我收到这些警告和错误:
SHFB:警告 BE0006:无法找到“C:\Users\user\Music\Documents\Visual Studio 2010\Projects\SFML_Platformer\SFML_Platformer.sln”的任何文档源(配置:调试平台:AnyCPU)
SHFB:错误 BE0042:您必须以程序集或 Visual Studio 解决方案/项目文件的形式指定至少一个文档源
有什么问题?
c# - 使用 SHFB 的应用程序设置文档
我正在尝试使用 Sandcastle Help File Builder 在 Windows 帮助文件中记录我的应用程序的设置。
我已经使用设置 - 属性 - 定义记录了 Visual Studio 中的设置。
我可以在生成的 Settings.Designer.cs 文件中看到我在
[global::System.Configuration.SettingsDescriptionAttribute("description")]
有没有办法用 Sandcastle 提取这个,或者我应该使用不同的方法?
我可以在构建过程中看到生成的 xml 中的数据。我已将所有可见性设置为 true,但仍然无法在任何地方看到设置。
.net - SHFB - .NET xml 文件中的变音符号问题
我们正在使用 Sandcastle 和 SHFB 为 .NET 项目创建文档。基本上,这行得通。
不幸的是,我们正在使用带有德语语言包的 .NET(这将保持这种方式 ;-)),但显然 SHFB 在加载带有德语变音符号的 .NET 自己的 XML 文件时存在问题。
我们得到的是 XmlParser 抛出的异常,看起来它无法正确读取文件(尽管文件内的编码设置为 UTF8)。问题是这些文件不受我们控制,它们是由 Microsoft 创建的。
一个可能的解决方案可能是卸载 .NET 的德语语言包,但首先这更多的是一种解决方法而不是解决方案,其次卸载程序警告我们“一个或多个产品我停止工作”......这是有点太关键了,只是尝试一下。
有官方解决方案吗?
sandcastle - Sandcastle 帮助文件生成器:不是从 MAML 生成 HTML
我在我的 Sandcastle 项目中添加了一个 test.aml 文件,其中 BuildAction 为 None。
我还添加了一个 Content Layout.content 文件并将 test.aml 添加到布局中。当我构建帮助(仅限网站格式)时,主题包含在 TOC 中,但内容不存在。当我单击该主题时,没有任何反应,它仍保留在上一个主题上。
我是否遗漏了什么,或者这是 SHFB 的已知问题/限制?
我正在使用 SHFB 的 v1.9.4.0。
visual-c++ - Sandcastle、/doc 和非托管 C++
我从事一个使用非托管可视化 C++ 和少量 C# 的项目。我们正在尝试想出一种方法来记录我们的项目,包括 API 参考以及一些额外的概念文档。理想情况下,所有文档都放在一个 .chm 文件中,我们可以将其与我们的产品一起分发。
作为一名长期的 C++ 开发人员,我已经熟悉 Doxygen。有人建议我也研究一下 Sandcastle,但我遇到了一些障碍。
从许多其他来源,包括本网站上的其他帖子,众所周知,sandcastle 不支持非托管 C++。我确实找到了一篇似乎表明您仍然可以通过将 API 参考添加为概念主题来将 C++ 文档塞进沙堡的帖子。
使用 Visual Studio 2010,您可以在非托管 C++ 项目的项目设置中打开 /doc 选项。这会生成 .XDC 文件,然后 Studio 会将其编译为与您的 lib/dll/exe 一起使用的 .xml 文件。我被卡住的地方是不清楚你可以用这个 xml 文件做什么。我在网上找到的一些页面建议您可以将此文件用于智能感知,但我从未见过在非托管 C++ 中使用该文件。我希望我能够以某种方式在 Sandcastle Help File Builder 中使用这个 .xml 文件,但是我找不到任何关于如何在线完成的示例,而且我对 SHFB 所做的每一次尝试都失败了。如果我想添加现有的概念帮助文件,它似乎只需要 MAML 或 HTML 文件。
所以我的问题:
- 有没有办法让我的 /doc 生成的 .xml 文件进入我的 SHFB 帮助解决方案?
- 如果不是,非托管 C++ 的 /doc 选项有什么意义?
- 是否可以对我的 /doc 生成的 .xml 文件进行某种转换以生成 HTML 或 MAML,然后我可以通过 SHFB 导入这些文件?
这可以工作,还是我应该回到 Doxygen?
sandcastle - 在 SHFB 生成的 .chm 中包含 PDF 文件(Html 帮助文件 1)
我需要在我的沙堡文档中包含一个 pdf 文件。用户应该能够通过在 .chm 文件中单击它来导航到 pdf。是否有可能做到这一点?我一直在搜索所有论坛都没有正确的答案。我尝试在 xml 注释中使用 href 标记并提供 pdf 文件的 url。但它会打开浏览器而不是 pdf 文件。有没有人这样做过?