引言

  • markdown是什么, 谁在使用markdown, 以及为什么我应该/不应该使用它?
  • 我能从这篇文章中了解到什么, 怎么开始使用?

markdown有两个含义: 一套标记语法(类比html,wiki,orgmode), 原作者所写的一个将此标记格式转换为html标记格式, 用作web出版的perl脚本.
在github的pages, gist中; 在reddit, stackexchange的评论功能中都支持使用markdown.
其语法简洁, 可完全用于编辑软件文档/普通文章, 出版博客/书籍, 个人日记/知识管理.

本文从以下方面讨论Markdown与文档写作:

  • 基本语法与导出
  • 出版博客与书籍
  • 记录日记与维基
  • 排版与加速编辑
  • 解析工具及功能集成

语法与导出

语法与规则

语法有原作者规定的普通markdown格式(vanilla markdown flavor), 和经过各家针对自己的产品进行扩充功能的语法, 如github添加了编程语言代码块支持. 以下是Markdown语法及变体相关参考:

一句话语法

  1. 一个以上的空行, 划分出不同的段落; 中间没有空行的文本为一个段落.
  2. 3个以上'=': 1级标题; 3个以上'-': 二级标题; #{1,6}: 1~6级标题.
  3. *emphasize*, _emphasize_: 强调倾斜, 对应的标签为 <em>.
  4. **strong**, __strong__: 强调加粗, 对应的标签为 <strong>.
  5. * + -: 以这3个开头, 加上一个空格的是无序列表, 可以轮流在不同列表级别使用以显示不同的项目符号.
  6. 1.: 以数字开头, 然后'.'号, 加上'空格', 有序列表;
  7. 列表项目下的内容用 <TAB>4个空格 标识所属关系;
  8. 列表项目的嵌套用两个空格;
  9. 链接和引用方式: 前面是Alt文本, 后面是链接URL, 可选择性地加上'title'; 引用可以使用数字或任意字符标识.

    1. [blog](http://www.cnblogs.com/lywon "blog")
    2. [github][1]
    
    [1]: https://github.com/lywon "github"
  10. 图片链接, 只是比普通链接多用一个'!'.

    ```markdown

    ```

  11. 在引用文字前加上 >, 表示区块引用; 转换为标签 <blockquote>; 可以使用多级引用.
  12. 代码行内区段: 用 \code``的形式.
  13. 代码块用: <TAB>4个空格包围.
  14. 代码块增强(github flavor): </code> 或带上代码类型 <code>html;

    $('page-wrapper').title="hello";
  15. 使用如下命令发布markdown为html文件:

    ```bash    markdown my-notes.md ~/publish/my-notes.html```

书写工具

主要收集了编辑器对markdown的支持插件.

vim: vim-markdown

emacs: markdown-mode, org-mode

sublime: markdown

发布工具

cnblogs开放API

要在本地书写博客, 自动化的进行管理, 而不再使用博客园的web界面, 还好博客园提供
了API供使用: metaweblog.

发布与转换工具

TODO 翻译pandoc使用指南

TODO php markdown

https://michelf.ca/projects/php-markdown/

需要优化的需求

  1. 美化: 我知道一级标题和二级标题可以在文字下方使用3个以上 '-','='来表示, 但为了美观会让它们与上方文字对齐, 也就是说与上方英文字符数相同, 或等同于中文字符的两倍数. 如果手动完成未免太烦琐, 所以需要加上一个编辑器自动控制
  2. 美化: 就像在org-mode中的缩进一样, 对齐标题前的'#'字符.
  3. 功能: 能否像org-mode中的折叠展现, 移动, 甚至于转发.

用markdown简化书写的更多相关文章

  1. markdown | Latex | 书写测试

    我永远喜欢markdown! 建图 graph TD; 1-->2 1-->3 1-->4 2-->5 2-->6 3-->7 3-->8 4-->9 ...

  2. Sublime Text3下的markdown插件的安装及配置

    Sublime Text3下的markdown插件的安装及配置 安装准备--安装Package Control 安装MarkdownEditing 安装Markdown Preview或OmniMar ...

  3. Markdown中插入数学公式的方法

    Markdown中插入数学公式的方法 文章来源:http://blog.csdn.net/xiahouzuoxin/article/details/26478179 自从使用Markdown以来,就开 ...

  4. 使用Markdown写文档

    转载于:http://blog.csdn.net/xiahouzuoxin/article/details/19752603 Markdown是一种网络书写语言,其目标是实现易读易写,且兼容HTML语 ...

  5. 我的 MarkDown 学习笔记

    MarkDown 一种用于写作的轻量级[标记语言].它用简洁的语法代替排版,而不像一般的文字处理软件 Word 或者 Pages 有大量的排版.字体设置等. 如果你对文章的样式没有太多要求,只注重写文 ...

  6. Markdown的简单用法

    Markdown 是一种用来写作的轻量级标记语言,它用简洁的语法代替排版,而不像一般我们用的字处理软件 Word 或 Pages 有大量的排版.字体设置.它使我们专心于码字,用「标记」语法,来代替常见 ...

  7. SimpleMarkdown - 一款简单的Markdown编辑器

    源码地址: https://github.com/zhuangZhou/SimpleMarkdown 预览地址: http://hawkzz.com:8000 作者网站:http://hawkzz.c ...

  8. 优于 swagger 的 java markdown 文档自动生成框架-01-入门使用

    设计初衷 节约时间 Java 文档一直是一个大问题. 很多项目不写文档,即使写文档,对于开发人员来说也是非常痛苦的. 不写文档的缺点自不用多少,手动写文档的缺点也显而易见: 非常浪费时间,而且会出错. ...

  9. Markdown编辑器开发记录(二):Markdown编辑器的使用与开发入门

    Markdown编辑器的使用与开发入门 在部门做技术分享的时候简单整理了一下手里的资料 1 是什么 1.1 Markdown是一种轻量级标记语言 Markdown是一种轻量级标记语言,创始人为约翰·格 ...

随机推荐

  1. Fatal signal xx (SIGSEGV) at

    Fatal signal 11问题的解决方法 http://blog.csdn.net/tankai19880619/article/details/9004619 如何定位Android NDK开发 ...

  2. NC凭证接口(Java发送流和处理返回结果)

    问题描述: 金融行业在系统模块分为财务和业务两个系统,我公司是负责业务模块系统,NC公司负责财务系统.但是财务有时候需要生成凭证,这时候就涉及业务模块了,我方就需要写NC凭证接口.这时候就需要三方交互 ...

  3. 解决jeecg包升级之后无法启动的问题

    1.出现下述问题的解决办法. 解决包冲突问题,右键项目,选择properties 把lib目录下的jar吧添加上.remove调版本较低的包即可. 2. 解决方法,把jdk升级到1.7版本

  4. 使用MyEclipse 9.0 创建 struts2 的HelloWorld 工程

    作为眼高手低的典范,必须痛改前非,好好动手多做开发! 本文是struts2的入门指导,权当笔记! 在MyEclipse中,配置Apache tomcat 7.x 服务器 创建新的Web project ...

  5. 关于springMVC+Mybatis jar包详解

    1.Aopalliance.jar: 这个包是AOP联盟的API包,里面包含了针对面向切面的接口,通常spring等其它具备动态织入功能的框架依赖此包. 2.aspectjweaver-1.7.1.j ...

  6. Android之分页加载数据

    基本的原理和我的上一篇随笔“Android之下拉刷新ListView”差不多,代码里面有注释,这里就不废话了,直接上代码. 自定义的分页显示ListView——PagedListView.java代码 ...

  7. [从产品角度学excel 04]-单元格的“衣服”

    忘记发这里了..补发一下 这是<从产品角度学EXCEL>系列——单元格篇. 前言请看: 0 为什么要关注EXCEL的本质 1 excel是怎样运作的 2 EXCEL里的树形结构 3 单元格 ...

  8. 第一届山东省ACM——Balloons(java)

    Description Both Saya and Kudo like balloons. One day, they heard that in the central park, there wi ...

  9. window.event.srcElement与window.event.target 触发事件的元素

    IE浏览器支持window.event.srcElement , 而firefox支持window.event.target:<input type="text" onblu ...

  10. OPP Services Log

    SELECT FCPP.CONCURRENT_REQUEST_ID REQ_ID, FCP.NODE_NAME, FCP.LOGFILE_NAME  FROM FND_CONC_PP_ACTIONS ...