我为 Linux 和 FreeBSD 编写了一个小型 C 库,并且我将为它编写文档。我试图了解有关创建手册页的更多信息,但没有找到为库制作手册页的最佳实践的说明或描述。我特别感兴趣的是放置函数手册页的哪个部分? 3?也许有很好的例子或手册?为库中的每个函数创建手册页是一个坏主意吗?
答案1
库的手册页将放在第 3 节中。
对于手册页的良好示例,请记住,有些手册页是使用 groff 的特定细节编写的和/或使用并非真正可移植的特定宏。
手册页的可移植性总是存在一些陷阱,因为某些系统可能(或可能不)使用特殊功能。例如,在记录dialog
,我必须记住(并解决)各种系统中显示示例的差异(这是不合理的)。
开始于阅读man man
提到标准宏的相关部分,以及比较这些针对 FreeBSD 和 Linux 的描述。
您是选择为库编写一个手册页,还是为函数(或函数组)编写单独的手册页,取决于函数描述的复杂程度:
进一步阅读:
答案2
我用罗恩。您只需编写 Markdown,它就会将其变成手册页。还有一个(能力稍差)js它的克隆称为标记者。
我一直通过使用END_MAN
分隔的heredocs 来记录我的脚本,并使用相同的END_MAN
分隔heredocs 来记录我的C/C++ 代码(除了在/* */
.两者都可以使用 sed 轻松提取,然后可呈现到联机帮助页中。 (通过一点 UNIX 信号黑客技术和 inotifywait,您可以实时提取和查看您的手册页部分,并在源更新时重新加载手册页浏览器。)
至于该部分,那么对于用户级 C 库来说,3 就是它。您可以阅读有关章节编号(以及其他内容)的信息男人(1)。
如果您想查看一些可读的、结构良好的示例手册页,我会看一下 Plan9https://swtch.com/plan9port/unix/库,您可以在其中了解其创建者及其文档系统可能如何c
让UNIX
这些东西发挥作用。
答案3
答案4
您可以使用以下方式记录 API强力氧以 HTML 形式提供参考,并生成手册页和其他格式以供离线阅读。
doxygen 的优点在于它是一种“内联”文档,如 JavaDoc 或 PythonDoc,兼作界面注释(或 vv.,注释兼作文档文本);您将文档文本添加到源文件/头文件中,然后从那里提取文档文本,这提高了保持最新状态的机会。