docbook编写内核文档

简介: 【10月更文挑战第4天】linux早期内核文档使用docbook管理,Docbook提供了结构化文档的体系模板,使用SGML/XML定义了一系列文档元素,并可以把原始的文档源文件转换成各种文档格式。

linux早期内核文档使用docbook管理,Docbook提供了结构化文档的体系模板,使用SGML/XML定义了一系列文档元素,并可以把原始的文档源文件转换成各种文档格式。

转化示例:

xsltproc -o docbook.html /usr/share/xml/docbook/xsl-stylesheets-1.73.2/html/html.xsl docbook.xml
#通过模板文件转化定义文件为html格式

安装环境:

yum install docbook-style-xsl libxslt
#libxslt提供了命令操作, docbook-style-xsl提供了转换模板文件 
#文档地址http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl
# 文档使用介绍地址 https://tdg.docbook.org/tdg/5.2/ch01

参数样式表:

<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                version="1.0">
<!--调用的样式表-->
<xsl:import href="/usr/share/xml/docbook/xsl-stylesheets-1.73.2/html/chunk.xsl"/>
<xsl:param name="chunker.output.encoding" select="'utf-8'"/> 
<!--标准信息所使用语言-->
<xsl:param name="l10n.gentext.language" select="'zh_cn'"/>
<!--指定样式表-->
<xsl:param name="html.stylesheet" select="'docbook.css'"/>
<!--对于警告类信息是否使用图形 0 1-->
<xsl:param name="admon.graphics" select="1"/>
<!--生成的 HTML 文件存放的起始目录-->
<!--如果没有在 Makefile 或命令中指定,取消这里的注释
<xsl:param name="base.dir" select="'../html/'"/>
-->
<!--生成的 HTML 文件内容是否进行缩排 yes no-->
<xsl:param name="chunker.output.indent" select="'yes'"/>
<!--给节编号 0 1-->
<xsl:param name="section.autolabel" select="0"/>
<!--节的编号是否包含章的编号 0 1-->
<xsl:param name="section.label.includes.component.label" select="1"/>
<!--表格边框的属性是否使用预设 CSS 来指定-->
<xsl:param name="table.borders.with.css" select="0"/>
<!--参考书目是否进行编号-->
<xsl:param name="bibliography.numbered" select="1"></xsl:param>
<!--目录深度-->
<xsl:param name="toc.max.depth" select="2"/>
<!--sect#页面上显示目录-->
<xsl:param name="generate.section.toc.level" select="0"/>
<!--sect#可以生成目录条目-->
<xsl:param name="toc.section.depth" select="2"/>
<!--目录中收录哪些内容-->
<!--包括 toc,title,figure,table,example,equation -->
<!-- nop 为空 -->
<xsl:param name="generate.toc">
appendix  toc
article/appendix  nop
article   toc,title
book      toc,title,example
chapter   toc,title
part      toc,title
preface   toc,title
qandadiv  toc
qandaset  toc
reference toc,title
sect1     toc
sect2     toc
sect3     toc
sect4     toc
sect5     toc
section   toc
set       toc,title
</xsl:param>
<!--在源码中插入 <?linebreak?> 标记,生成 Html 时替换为<br> -->
<xsl:template match="processing-instruction('linebreak')">
<br/>
</xsl:template>
</xsl:stylesheet>

使用Makfile编译

OBJECT = all
SOURCE =  docbook.xml
PARAM = param.xsl
ARG = --output html/
COMPILER = xsltproc
$(OBJECT):$(SOURCE) $(PARAM)
    $(COMPILER) $(ARG) $(PARAM) $(SOURCE)
clean:
    rm -rf ../html/*.html

最新的kernel文档使用是通过reStructuredText方式管理,reStructuredText语法相对简单,属于纯文本标记语法。

相关文章
|
7月前
|
存储 安全 Linux
|
7月前
|
自然语言处理 算法 前端开发
C++与Doxygen:精通代码文档化之道
C++与Doxygen:精通代码文档化之道
596 0
[11-22]MASM32编程获取文件语言、版本信息v3
[11-22]MASM32编程获取文件语言、版本信息v3
|
7月前
|
Rust 监控 安全
【专栏】`ripgrep`(rg)是Linux下快速、内存高效的文本搜索工具,用Rust编写,支持PCRE2正则表达式
【4月更文挑战第28天】`ripgrep`(rg)是Linux下快速、内存高效的文本搜索工具,用Rust编写,支持PCRE2正则表达式。相比`grep`,它在处理大文件和复杂模式时更具优势。安装`rg`可通过软件包管理器,如在Debian系系统中使用`sudo apt install ripgrep`。基本用法包括简单搜索、递归搜索、忽略大小写、显示行号等。高级功能包括固定字符串搜索、多文件匹配、并行搜索、排除选项和区域搜索。适用于日志分析、代码审查等场景,是提升工作效率的利器。
617 4
|
Linux 开发者
开发常用的 Linux 命令3(文本处理、打包和压缩)
开发常用的 Linux 命令3(文本处理、打包和压缩)
|
Ubuntu 编译器 Linux
Linux驱动开发笔记(三):基于ubuntu的helloworld驱动源码编写、makefile编写以及驱动编译加载流程测试
前面学习了驱动的基础框架,上一篇编译了gcc7.3.0,那么为了方便很好的熟悉流程,本篇,将使用ubuntu18.04,直接编译ubuntu18.04的驱动,然后做好本篇文章的相关实战测试。
|
Java Linux Windows
使用python将word文档和pdf电子书进行格式互转(兼容Windows/Linux)
一些重要文档格式之间的互转在目前显得尤为重要,pdf作为通用格式在现在各个平台上兼容性是最好的,所以写python脚本将这些word文档批量转换pdf是最好的解决方案。 由于windows系统对于word文档有天然的兼容性优势,所以转换起来很简单,普遍上是通过comtypes模块。
使用python将word文档和pdf电子书进行格式互转(兼容Windows/Linux)
|
前端开发 iOS开发 MacOS
mac系统markdown文件编写
1.选择软件 (zettlr) 2.markdown简单语法 1.标题 2.目录树
248 0
|
Linux C语言
Linux:文件目录类指令(内含:文件目录所有用法总结摘要+所有用法案例)
Linux:文件目录类指令(内含:文件目录所有用法总结摘要+所有用法案例)
182 0
Linux:文件目录类指令(内含:文件目录所有用法总结摘要+所有用法案例)
|
XML Linux 数据格式
LINUX一个正确的mime xml范例
LINUX一个正确的mime xml范例
108 0

热门文章

最新文章