V1.0

最终修改于2016/10/19

概述

软件工程中,一份优雅的文档不仅能降低团队成员之间的沟通难度,而且能给之后的开发者提供一个非常有效的引导。本团队为了规范整个项目中文档的格式,便于统一管理与清晰的阅读,特制订以下格式规范。

为了方便博客端和Github端的文档统一编写,统一风格,因此选用Markdown语法作为文档编写的格式。但是由于Markdown为纯文本格式,对图片、颜色、表格等元素的支持非常困难,因此在编写图片表格较多的博客时,允许使用Microsoft Office Word中的博客功能进行编辑,本团队cnblogs博客中已经对于htmlMarkdown格式进行了统一的CSS样式处理,可以得到统一的样式风格。但是由于目前还不能将Word样式的表格转换为Markdown格式保存在Github中,因此在编写表格和图片不多的文档时还是应该尽量使用Markdown,方便同时上传至博客和Github中。

格式规范

不论是在Markdown还是在Word中,为了应用博客和Github中预设好的CSS样式,需要将文档的的格式规范化。本文将格式大致分为三个部分标题文本样式文本组织

标题

标题是文档的逻辑组织结构最重要的标识。建议将文本分成清晰的树状逻辑结构,并用标题加以标识和区分。html中一共提供了6级标题,但是我们只使用其中的三个:标题1、标题2、标题3。分别代表了三个从高到低的逻辑层次,样式如下

标题1示例

标题2示例

标题3示例

如果标题之间逻辑层次较强,或者标题较多,可以对标题进行编号,统一使用标题1序号.标题2序号.标题3序号的形式,序号均为阿拉伯数字,序号和标题之间有一个空格。样式示例如下

1 这是标题1

1.1 这是标题2

1.1.1 这是标题3

文本样式

加粗

对于需要强调的文本部分,应给予加粗,示例如下

这是无关紧要的这是重要的这也是无关紧要的

行内代码

对于某些专业名词,或者其他需要用这个样式强调的部分应标记为行内代码,示例如下

我正在使用Markdown

文本组织

列表

对于某些并列关系强的文本,且每段文本长度并不是很长(一行左右),应采用列表方式呈现,一般来说不建议使用带有序号的列表,且最好不要列表下嵌套列表。示例如下

  • 我今天要吃饭
  • 明天也要吃饭
  • 后天就撑死了

引用

对于某些其他文章的摘抄或者转述,或者因为格式需要需要开辟一小块类似文本框的区域时,应采用引用(其实每一个之前的示例都是写在引用里面的)。示例如下

床前明月光

疑是地上霜

举头望明月

低头思故乡

代码

所有语言的代码,应写在代码框中,而不是直接截图,方便他人直接拷贝和阅读(因为有不同语法成分高亮的功能),示例如下

int main()
{
printf("this is a test.");
}

Markdown语法

在介绍Markdown的语法之前,首先推荐一款Markdown编辑器。虽然有很多在线的编辑器,但是经我试用以后体验都不是很好,而且需要网络的支持,有着很多的局限性。在试用了很多软件之后,我发现Typora 这款软件比较适合在PC端进行Markdown的编写。这款软件能实时渲染最终效果,而不是像其他软件那样一边是代码一边是预览,而是所见即所得,直接在一个窗口内编辑且直接看到最终的效果。

这是下载地址Typora

下面继续将从 标题文本样式文本组织三个方面来介绍Markdown的语法

标题

Markdown中,标题的输入方式是在标题前加入#(没有空格),根据#数量的不同,分别表示1级~6级标题

比如#+这是一个一级标题##+这是一个二级标题,显示效果是这样的

这是一个一级标题

这是一个二级标题

在我们的文档规范中,标题只使用1~3级。

文本样式

加粗

Markdown中加粗一段文本可以用在文本前后各加入两个*来实现

比如**+这是一段加粗文本+**,显示效果是这样的

这是一段加粗文本

而在Typora 中,要输入加粗文本有一个快捷键ctrl+B,程序会自动打出前后各两个*并将光标移到其中,可以直接输入加粗文本的内容。

行内代码

Markdown中将一段文本设置成行内代码可以用在文本前后各加入一个`来实现

由于`不能嵌套,这里不能演示示例

Typora 中,行内代码同样有一个快捷键ctrl+`,程序会自动补全并将光标移到其中,可以直接输入行内代码的内容。

文本组织

列表

Markdown中将一段文本设置为无序列表可以用在其之前加入*+或者-来实现,注意中间需要有一个空格,如

*+ Space+第一项内容

*+ Space+第二项内容

显示效果如下

  • 第一项内容
  • 第二项内容

而在Typora 中,如果输入了第一个列表项,按下Enter后,将会自动生成下一个列表项,如果已经输入结束,可以连续打两个Enter来退出列表项的编辑。

顺便一说,加入1.+Space可以生成有序列表项,但是格式规范并不推荐这样做。

引用

Markdown中将一段文本设置为引用可以用在其之前加入>来实现

例如>+这是一段引用

这是一段引用

Typora中插入引用的快捷键是Ctrl+Shift+Q

代码

Markdown中将一段文本设置为代码可以利用Typora中的快捷键Alt+Ctrl+F来实现

在代码块中可以选择程序语言,以便提供不同的高亮展示,例如

int main()
{
printf("this is a test.");
}

其他

超链接

可以利用Typora中的快捷键Ctrl+K来实现

按下快捷键后,程序会自动补全[](),前者是超链接显示的文本,后者是超链接的链接地址

表格

Typora中按下快捷键Ctrl+T可以方便的插入表格,可以选择行列数,替代了原生Markdown语法反人类的表格编辑方式。

更多

这里只介绍了一部分Markdown的语法,关于全面的语法介绍,可以参考这个网址Markdown语法说明(中文版)

Word博客写作规范

由于Markdown是纯文本模式,对于某些表格和图片较多的博客,如Scrum Meeting总结这样有大量图片和表格的博客内容支持并不是很好(或者说是虽然支持但是不是很美观和易用)。考虑到这些富图片和表格的博客多为记录,并不需要同步发布在Github中,所以这些博客仍然使用Word博客功能进行编写。

关于Scrum Meeting博客,现在已经有了一套模板Docx文件,今后可以直接在这上边修改发布。如果需要有其他的博客需要利用Word进行编写,在下面介绍一些编写规范。

整体格式规范

  • 所有文本都不应设置自定义的字体,应保持默认状态。这样做的目的是为了不覆盖博客中的CSS模板设置的字体
  • 所有文本都不应该设置自定义字号,保持默认状态,原因同上
  • 所有大小标题使用Word自带的标题1标题2等进行设置
  • 如需要引用,可以直接使用Word中自带的引用,可以在博客中被自定义样式识别并适配
  • 可以直接加粗文本
  • 可以直接使用Word自带的列表

一些特例

  • 如需要行内代码,请将文本标为斜体
  • 如需要使用代码块功能,请先发表后在博客园的编辑器中进行插入
  • 如需要使用超链接功能,请先发表后在博客园的编辑器中进行插入

OverWatch团队文档格式规范的更多相关文章

  1. Atitit usrQBK1600 技术文档的规范标准化解决方案

    Atitit usrQBK1600 技术文档的规范标准化解决方案 1.1. Keyword关键词..展关键词,横向拓展比较,纵向抽象细化拓展知识点1 1.2. 标题必须有高大上词汇,参考文章排行榜,1 ...

  2. 【好文翻译】一步一步教你使用Spire.Doc转换Word文档格式

    背景: 年11月,微软宣布作为ECMA国际主要合作伙伴,将其开发的基于XML的文件格式标准化,称之为"Office Open XML" .Open XML的引进使office文档结 ...

  3. 【itext】7步制作兼容各种文档格式的Itext5页眉页脚 实现page x pf y

    itext5页眉页脚工具类,实现page x of y 完美兼容各种格式大小文档A4/B5/B3,兼容各种文档格式自动计算页脚XY轴坐标 鉴于没人做的这么细致,自己就写了一个itext5页眉页脚工具类 ...

  4. C#word(2007)操作类--新建文档、添加页眉页脚、设置格式、添加文本和超链接、添加图片、表格处理、文档格式转化

    转:http://www.cnblogs.com/lantionzy/archive/2009/10/23/1588511.html 1.新建Word文档 #region 新建Word文档/// &l ...

  5. Java导出freemarker实现下载word文档格式功能

    首先呢,先说一下制作freemarker模板步骤, 1. 在WPS上写出所要的下载的word格式当做模板 2. 把模板内不固定的内容(例:从数据库读取的信息)写成123或者好代替的文字标注 3. 把固 ...

  6. wordxml文档格式说明

    近期需要对word xml文档进行各种操作,需要熟悉 wordxml 文档格式,搜索了一番后发现 open xml sdk 官网的文档最好.就按照官网说明来记录一番 1 word xml 文档基本格式 ...

  7. windwos文档格式转换成unix格式

    在工作学习中我们避免不了需要将一些脚本和命令记录在笔记里面,我使用的是有道云笔记,每当我将上次记录在有道云的脚本复制出来进行使用的时候,总会报一些奇怪的错误,要么是包含换行符,要么就是格式不对,但是我 ...

  8. 导出WPS office文档格式的说明

     针对microsoft office的文档格式,WPS office分别提供wps对应doc,et对应xls两种格式,word和excel是办公系统使用的普及度最广的文件格式,而国内的政府行政单 ...

  9. Java利用jacob实现文档格式转换

    实现文档格式之间的转换,我使用的是jacob-1.7版本,需要jacob.jar来调用activex控件,本机需安装WPS/office,还需要jacob.jar以及jacob.dll 其中:    ...

随机推荐

  1. linux 学习随笔-压缩和解压缩

    .gz 由gzip压缩工具压缩的文件 .bz2 由bzip2压缩工具压缩的文件 .tar 由tar打包程序打包的文件 .tar.gz 先由tar打包,gzip压缩 .tar.bz2 先由tar打包,b ...

  2. SqlServer--delete、truncate 、Drop删除表的区别

    --删除表中的全部数据,自动编号不清零. --1.delete from Biao --删除表中的全部数据,自动编号清零. --2.truncate table Biao --truncate特点: ...

  3. .NET轻量级RPC框架:Rabbit.Rpc

    最近准备写一个.NET的管理平台应用在公司,由于存在大量的Client => Server,Server => Client的请求需求在加上之前一直接触了解过RpcClient组件的开发, ...

  4. Linux系统检查查看桌面环境

    Linux的桌面系统系统多达十几种,像gnome.kde.mate.cinnamon.lxde.xfce.jwm等.比较常用的一般是gnome.kde.xfce等.那么如何判断Linux系统安装了哪种 ...

  5. SQL Server 关于列的权限控制

    在SQL SERVER中列权限(Column Permissions)其实真没有什么好说的,但是好多人对这个都不甚了解,已经被人问了几次了,所以还是在这里介绍一下,很多人都会问,我能否单独对表的某列授 ...

  6. IO is frozen on database xxx, No user action is required

    最近遇到一起关于"I/O is frozen on database xxx. No user action is required. However, if I/O is not resu ...

  7. 问题解决——MFC resource.h 无法添加、提交到SVN

    =================================版权声明================================= 版权声明:原创文章 禁止转载  请通过右侧公告中的“联系邮 ...

  8. 在Windows Server 2012 R2中搭建SQL Server 2012故障转移集群

    需要说明的是我们搭建的SQL Server故障转移集群(SQL Server Failover Cluster)是可用性集群,而不是负载均衡集群,其目的是为了保证服务的连续性和可用性,而不是为了提高服 ...

  9. Windows Server 2012 虚拟化实战:域

    在Windows Server系统中,一些服务必需要构建在域的环境中,这不仅是为了统一验证和资源共享,同时也是为了网络安全.为构建虚拟化测试,我们需要先搭建域环境.之前先来大概了解一下域. 在使用工作 ...

  10. 烂泥:haproxy学习之手机规则匹配

    本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb. 今天我们来介绍下有关haproxy匹配手机的一些规则配置. 一.业务需要 现在根据业务 ...