微软开源全新的文档生成工具DocFX

微软放弃Sandcastle有些年头了,微软最近开源了全新的文档生成工具DocFX,目前支持C#和VB,类似JSDoc或Sphinx,可以从源代码中提取注释生成文档之外,而且还有语法支持你加入其他的文件链接到API添加额外的说明,DocFX会扫描你的源代码和附加的文件为你生成一个完整的HTML模版网站,你可以自己通过模版定制,目前已经内嵌了几个模版,包括静态的HTML页面和AngularJS页面。你还可以自己定制模版,具体参考 how to create custom template

源代码: https://github.com/dotnet/docfx

文档: http://dotnet.github.io/docfx/

  • 点击“查看源文件”的API来路由到GitHub的源代码(您的API必须推送到GitHub上)
  • 提供DNX版本跨平台支持。
  • Visual Studio的无缝内使用docfx。 注:官方docfx.msbuild的NuGet包现在在预发布版本。您也可以使用源代码编译,并在本地使用它。
  • 我们支持Docfx Flavored Markdown(DFM) 编写的文档。  DFM是Github上 Markdown(GFM),并增加了一些新的功能,包括文件包含 , 交叉引用 ,和YAML头100%兼容 。有关DFM详细说明,请参考DFM
 
dotnet core网站就是使用docfx生成的文档示例: dotnet core
在docfx中,最重要的就是生成文档,把markdown文件(gfm语法)转换成html,微软还开源一个基于gfm的并且很容易扩展的语法的markdown组件 MarkdownLite,代码包含在docfx,nuget库里包的名字是Microsoft.DocAsCode.MarkdownLite。
有一篇文档详细介绍了如何使用docfx: Getting Started with docfx,具体怎么使用请看这篇文章, 这里还有个OpenLiveWriter 的例子 Use docfx to auto-generate documents for OLW

FAQ:

Q: docfx是什么?

A: docfx是一个api文档编译软件,它能根据c#/vb源代码生成对应的文档元数据并生成文档(目前提供html),并支持普通md文件。

Q: docfx的输入和输出是什么?

A: docfx metadata需要源代码来生成文档元数据,docfx build使用文档元数据+普通md文件生成文档(html)

Q: docfx支持定制模板么?

A: 是的,可以参考文档

Q: docfx跨平台么?

A: docfx支持在dnx下运行。

DocFX的更多相关文章

  1. 微软开源全新的文档生成工具DocFX

    微软放弃Sandcastle有些年头了,微软最近开源了全新的文档生成工具DocFX,目前支持C#和VB,类似JSDoc或Sphinx,可以从源代码中提取注释生成文档之外,而且还有语法支持你加入其他的文 ...

  2. docfx组件介绍--MarkdownLite

    在docfx中,最重要的就是生成文档,把markdown文件(gfm语法)转换成html. 为了这一步,我们找了N个.net开源项目,发现要么是common markdown的,要么不容易扩展,没有一 ...

  3. docfx组件介绍--YamlSerialization

    在docfx中把元数据以yaml的形式保存,在metadata阶段会序列化数据到yaml文件中,在build阶段又需要从yaml文件反序列化出来.在使用过程中,意外发现yamldotnet在处理大量强 ...

  4. docfx开源啦

    废话不多说了,直接上地址: 源代码: https://github.com/dotnet/docfx 文档: http://dotnet.github.io/docfx/ clone git clon ...

  5. docfx预热中

    奋战了几个月,docfx终于有些像样了. 预览文档: http://aspnet.github.io/docfx/ 源代码正在准备开源中 Nuget包很快会发布 FAQ: Q: docfx是什么? A ...

  6. 使用DocFX生成文档

    使用DocFX命令行生成文档 使用docfx 命令 1.下载 https://github.com/dotnet/docfx/releases 2.使用 创建初始项目 docfx init -q 此命 ...

  7. docfx (一)

    什么是docFX? DocFX 是一个基于.NET的API文档生成器,当前支持 C# 和 VB.它可以通过你的代码中的三斜杠注释生成 API 参考文档.同样也支持你使用 Markdown 文件创建一些 ...

  8. DocFX生成PDF文档

    使用DocFX生成PDF文档,将在线文档转换为PDF离线文档. 关于DocFX的简单介绍使用DocFX生成文档 使用docfx 命令 1.下载 https://github.com/dotnet/do ...

  9. 入门干货之用DVG打造你的项目主页-Docfx、Vs、Github

    由于这三项技术涉及到的要点以及内容较多,希望大家有空能自己挖掘一下更多更深的用法. 0x01.介绍 VS,即VS2017以及以上版本,宇宙最好的IDE,集成了宇宙最有前景的平台,前阶段也支持了宇宙最好 ...

随机推荐

  1. VSTO 向office文档中插入内容

    原文:VSTO 向office文档中插入内容 Word: Word.Selection sec = ThisAddIn.appWord.Selection;            sec.Insert ...

  2. expdp时遇到ORA-31693&ORA-02354&ORA-01466

    expdp时遇到ORA-31693&ORA-02354&ORA-01466 对一个schema运行expdp导出,expdp命令: nohup expdp HQ_X1/HQ_X1 DU ...

  3. 微信 SDK 不能 分享

    说多了都是泪水,真的. 前段时间,做好了微信的分享功能,测试通过的,最近我又跑了一遍用例,发现不能启动微信客户端了,怎么都启动不了,日志如下:ignore wechat app signature v ...

  4. swift 简单语句 控制流语句

    在 Swift 中.有两种类型的语句:简单语句和控制流语句.简单语句是最常见的.用于构造表达式和声明.控制流语句则用于控制程序运行的流程,Swift 中有三种类型的控制流语句:循环语句.分支语句和控制 ...

  5. Mongodb中更新的学习小结

    今天继续很久没学习的mongodb的简单学习,今天来看的是更新.先来看简单的用法: use updatetest >switched to db updatetest 首先插入一下: db.th ...

  6. C库函数标准编程之fscanf()函数解读及其实验

    函数功能 fscanf()函数用于从参数stream的文件流中读取format格式的内容,然后存放到...所指定的变量中去.字符串以空格或换行符结束(实验1中会对它进一步说明) 函数格式 字符格式说明 ...

  7. centos7图形配置 firewall-config

    图形配置 firewall-config centos 7:systemctl stop firewalld.service #停止

  8. Android网络编程http派/申请服务

    最近的研究Android网络编程知识,这里有一些想法,今晚学习.与您分享. 在实际的应用程序的开发非常需要时间appserver请求数据,那么app怎样发送请求呢?以下的代码就是当中的一种情况.使用H ...

  9. 经典回忆Effective C++ 1

    c++ 联邦语言: typedef { unit C; unit Object-Oriented C++; unit Template C++; unit STL; }; notice: C++高效编 ...

  10. 六:Java之集合

    集合包括的内容非常多,我发现一个非常好的博客,感觉自己都没有写的必要了! 链接献上  Java集合