bookdown - 撰写和发表自己的网络书籍/文档
BOOKDOWN官网 - bookdown上有不少人发布了自己的电子书
bookdown-demo (一个demo,github源码)- Rstudio出品,Yihui Xie开发,著名单细胞课程在用,y叔也在用 【强力推荐】
bookdown的优势
- 完全开源,向收费说不
- 完全自定义,想干啥就干啥
- 有Rstudio背书,可以大胆的长期使用
- 静态网站,很容易部署到Internet
- 支持LaTeX,可以直接导出tex文档
- 导出排版好的PDF文档和kindle文档
- 使用十分方便,安装后可以专心使用RMarkdown写作
- 写完后直接排序组合,一键build成书
R Markdown的优势(值得系统学习)
- 代码与文本共存,程序员的最爱
- 轻量级,再大的文件也有着极快的读取速度
- 文末可以列出参考文献,科研狗的最爱
目前生信领域有两个用bookdown写得比较好的文档:
Analysis of single cell RNA-seq data - Hemberg / github
Data Integration, Manipulation and Visualization of Phylogenetic Trees - ggtree
快速开始(里面有详细教程)
- 完全开源,直接fork到自己的github(参考),然后git pull,写完直接push。
- 不想开源,那就下载bookdown-demo,可以用Dropbox来进行跨平台的编辑。
安装bookdown的R包
install.packages("bookdown")
用RStudio打开bookdown-demo.Rproj
打开R Markdown文件:index.Rmd,点击右侧的Build,生成初始的网页html文件,以及其他文件(PDF、epub,tex等)
撰写文档的基本逻辑
编写一个一个的Rmd文档,注意里面的标题要规范,最终书的标题就是从每一个Rmd文档中提取出来的。
修改 _bookdown.yml 文件,里面的 rmd_files: ["index.Rmd", "intro.Rmd"] 就是书籍的章节顺序,它会完全按顺序组合,一级标题就是一个章,二级标题就是章下面的一个小结,如此展开,Rmd的文件数量不限,最终只归总标题。
_bookdown.yml 文件里的 book_filename 是 PDF 文件的名字,index.Rmd 文件里的title才是真正的书名。
掌握了这些基本就可以开始写书了。
内容与形式彻底分离了,内容在Rmd里,以后不管bookdown这个包如何更新,都可以迅速完成网站的迁移。
使用细节
使用以下功能能让你的book更加专业,甚至能让你直接使用本工具来写毕业论文。
去掉一些不必要的花哨功能
去掉右侧的Facebook等链接,得改包。
优化搜索功能,搜索是确实烂,得改进包。
插入数学公式
插入代码
文内跳转
随时跳转到文档的任意一处,在标题后面添加 {#label} 来标记一个地方,然后用 \@ref(intro) 来构建跳转链接。
图像和表格也可以跳转,只不过在其表头要添加标记,跳转格式一样。
参考文献
参考文献稍微复杂些,需要在 book.bib 文件里手动输入参考文献。
我看有人用 betterbib,可以生成更为标准的参考文献。
注意:就算把文献添加到bib文件了,如果文中没有引用,那也还是不会出现在文中的。
建议使用 zotero-better-bibtex 插件,浏览文献官网,用插件导入文献zotero,然后到处LaTeX的参考格式,加到bib文件里即可。
可以接着谢益辉做的事:
搭建一个平台,构建合适的接口,让每个人都能开发自己的book;
主题,主题要能满足每个人的需求;
封面,自定义封面;
自定义功能;
优化搜索;
创建一个网站,能够自动读取github的Rmd文件,来生成一个html和pdf的书籍。
RMarkdown的基本语法
基本的markdown语法
标题,一级二级三级等
有序无序列表
粗体斜体
专有引用
段落引用
分割线
插入链接
插入图片
插入表格
插入视频
插入代码
RMarkdown进阶语法
插入数学公式
插入跳转链接
插入参考文献
参考:
Markdown基本语法
转载于:https://www.cnblogs.com/leezx/p/11351591.html
bookdown - 撰写和发表自己的网络书籍/文档相关推荐
- H3C 思科华为 等网络设备配置文档自动备份思路及实现方法
网络设备一般包含交换机.路由器.防火墙 H3C .思科.华为网络设备都可以使法这个方法自动备份配置文档 一般情况下我们是更新网络设配置,然后手动导出配置文档,save到一个指定目录,这种方式网络设备数 ...
- 华为18级工程师三年心血终成趣谈网络协议文档(附大牛讲解)
华为18级工程师三年心血终成趣谈网络协议文档(附大牛讲解) 程序员高级码农II 2020-09-25 07:23:00 前言 虽然在大学的时候大家都学过网络协议 ,但是肯定感觉网络协议的知识点非常多 ...
- 华为19级工程师三年心血终成趣谈网络协议文档(附清华大牛视频讲解和课件)
前言 虽然在大学的时候大家都学过网络协议 ,但是肯定感觉网络协议的知识点非常多 ,非常复杂.学的时候就浑浑噩噩,真正到了实践中更是糊里糊涂,一旦工作中遇到了网络问题,除了会简单地 ping 几下 ,基 ...
- 华为18级工程师三年心血终成趣谈网络协议文档(附讲解)
前言 虽然在大学的时候大家都学过网络协议 ,但是肯定感觉网络协议的知识点非常多 ,非常复杂.学的时候就浑浑噩噩,真正到了实践中更是糊里糊涂,一旦工作中遇到了网络问题,除了会简单地 ping 几下 ,基 ...
- 华为研究院19级研究员几年心得终成趣谈网络协议文档,附讲解
苦且绕不过去.经过多次放弃之后,我发现在我的职业生涯中,网络这一关无论如何也绕不过去.本来觉得写Java程序时可以依赖别人的库,所以就不用关心这么多底层的技术了,但是到后来才发现,服务数量一多,吞吐量 ...
- 华为研究院19级研究员几年心得终成趣谈网络协议文档
苦且绕不过去.经过多次放弃之后,我发现在我的职业生涯中,网络这一关无论如何也绕不过去.本来觉得写Java程序时可以依赖别人的库,所以就不用关心这么多底层的技术了,但是到后来才发现,服务数量一多,吞吐量 ...
- 华为研究院高级研究员几年心得终得趣谈网络协议文档,附资深架构师讲解
苦且绕不过去.经过多次放弃之后,我发现在我的职业生涯中,网络这一关无论如何也绕不过去.本来觉得写Java程序时可以依赖别人的库,所以就不用关心这么多底层的技术了,但是到后来才发现,服务数量一多,吞吐量 ...
- 华为研究院19级研究员几年心得终成趣谈网络协议文档,讲解
苦且绕不过去.经过多次放弃之后,我发现在我的职业生涯中,网络这一关无论如何也绕不过去.本来觉得写Java程序时可以依赖别人的库,所以就不用关心这么多底层的技术了,但是到后来才发现,服务数量一多,吞吐量 ...
- 网络协议文档阅读笔记-Introduction to DTLS(Datagram Transport Layer Security)
在互联网中安全的数据传输是至关重要的.很多敏感数据都通过互联网交互数据如金融交易数据,医药数据,媒体流数据等.SSL/TLS和IPSec就是为了确保互联网中传输数据的安全而创建的.许多网站使用的是SS ...
最新文章
- 一些挺不错的visualstudio主题样式
- 问题解决: SSR 的 1080 端口被占用
- 在ECS实例的centos系统中安装Hadoop
- 【LeetCode笔记】287. 寻找重复数(Java、快慢指针、原地、链表)
- 行健设计_行健要闻|“第四届‘天行健创新创业设计大赛”培训班成功举办
- SQL Server 2005 Analysis Services实践(一)
- java 格式化日期(DateFormat)
- 我是 Spring 菜鸟 -- 初始化方法 TODO
- appium+Python真机运行测试demo的方法
- centos 7 查看、更新系统版本
- ORACLE利用scn赚钱,在Oracle中增进SCN及案例介绍
- python第一记,长江雨课堂抓包刷课实战
- 服务器win10虚拟内存设置,win10虚拟内存设置多少合适?这样设置就最好!
- js 浏览器永久保存数据:localStorage
- kis商贸系列加密服务器,金蝶KIS商贸标准版系统登录
- Unicode HOWTO 中文翻译
- 【网络协议趣谈】HTTPS协议加密证书和工作模式
- 墨迹天气电脑版官方版 v1.0.1.5 最新版​
- 波士顿房价预测(TensorFlow2.9实践)
- 现场总线技术,主要有哪些优点
热门文章
- 互联网直播点播平台EasyDSS v3.2.4内核无法启动的原因分析及解决办法
- 滚珠螺杆的轴套怎么安装到螺杆中的?
- 数字化转型要避免“唯技术论”!
- CodeCraft-22 and Codeforces Round #795 (Div. 2) F. K-Set Tree
- 这样用信用卡就好了?其实你这是被坑了
- 计组 | 字长大杂烩——字、位、字节等基本概念、按字寻址与按字节寻址
- php eof 使用函数_PHP中EOF的用法介绍(附示例)
- Java8中用sun.misc.Contended避免伪共享(false sharing)
- 云服务器下,与嵌入式板子传递文件的几种方式 |FTP SFTP SCP TFTP NFS | 以及NFS 挂载失败常见问题
- SpringBoot配置Oracle数据库