作为一个头(ku)秃(bi)的开发者,查阅各种文档是家常便饭,但由于中国特色在查阅一些文档时总是加载中。而且有时外场调试还不一定有网,因而将文档本地化是相当有必要的。本文介绍了一种将文档编译为静态网页并本地查阅的方法。
以Pixhawk飞控相关文档为例。APM的官方wiki是用Sphinx进行编译,支持的格式也比较丰富,编译为静态html后可以方便的查找和跳转。而PX4相关的文档主要是用gitbook进行编译管理,相比与Sphinx增加了多语言的切换,但作为静态网页挂载时无法直接跳转。因而考虑使用Nginx作为web服务器挂载网页gitbook类的文档。
建议以下的步骤都在Linux系统下操作,虚拟机或WSL。Win也可以,但会有这样那样的奇怪问题。
APM文档本地化
1 | # 相关指令 |
编译完成截图
之前的版本目录会抽风来着,不过问题不大。新版本好像修复了这个问题
可以将主页的相关路径改为存放相关载具的路径,这样打开主页即可跳转相关的文档
打开ardupilot\index.html
,定位到177行左右,将https://ardupilot.org
替换为存放html主页的文件夹,比如file:///F:/Progroming/_Doc_Src/ardupilot_wiki/_build
之后编写一个python小脚本就可以方便的管理文档啦。
PX4文档本地化
PX4的文档比APM更多更杂,常用的是PX4的开发者手册和Mavlink的开发者手册,相关的repo链接如下
分别为Mavlink的开发者手册,px4的开发手册和用户手册,qgc的开发手册
1 | https://github.com/mavlink/mavlink-devguide.git |
gitbook编译文档比之前的方便,不过编译时各种插件还是有些bug(win上),linux上可以成功编译,安装好gitbook之后进行编译,生成_book
目录以及相关的语言。
1 | cd <dir of docs> |
不过缺点是无法直接单击跳转,考虑用Nginx辅助,安装Nginx后修改配置文件
可以使用nginx -t
命令查看nginx.conf
的具体路径
在配置文件中的http中添加下面的配置,可以添加多个,修改玩配置文件后重启nginx
1 | server { |
然后就可以通过访问127.0.0.1:<port_num>
愉快的使用本地文档啦
伸手党的福利
当然,懒得走上面的编译流程可以直接下载编译好的文档,因为时间问题,没有把所有的文档都编译为最新版本,有需自取。后缀为文档的更新日期和git的commit hash,PX4文档的hash实在找不到了,只记得对应的版本了。
关注公众号,并回复”无人机文档”下载相关文件