引言

  • 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. gdb调试器的使用

    想要使用gdb调试程序的话,首先需要gcc -g main.c -o test 然后运行gdb test对程序进行调试 l (小写的l,是list的首字母),用以列出程序 回车    是运行上一个命令 ...

  2. excellent cushioning and also vitality go back with this boot

    The particular manufactured fine mesh higher almost addresses the complete boot. Here is the sort of ...

  3. 第八章 交互技术,8.4 Weex 双11会场大规模应用的秒开实战和稳定性保障(作者:鬼道)

    8.4 Weex 双11会场大规模应用的秒开实战和稳定性保障 前言 Native 开发的诸多亮点中,流畅体验和系统调用是最多被提及的.流畅体验体现在页面滚动/动画的流畅性,背后是更好的内存管理和更接近 ...

  4. 一键批量添加材质的法线贴图-unity插件

    有时候材质做完后需要更改贴图,或者增加贴图,数量少的时候可以一张张添加和修改,数量多的时候就只能代码生成了.原理是通过名字的关联:主贴图和法线贴图大多数只是后缀的不同上,如果不是那是美术规范没做好啊, ...

  5. web.config SetAttributes

    <appSettings> <add key="DomainProxy" value="http://e3api.lcsyzx.cn/api/" ...

  6. [Java] JSP笔记 - Filter 过滤器

    一.什么是Web过滤器 Servlet API 很久以前就已成为企业应用开发的基石,而 Servlet 过滤器则是对 J2EE 家族的相对较新的补充. Servlet 过滤器是可插入的 Web 组件, ...

  7. (转载)详解网络传输中的三张表,MAC地址表、ARP缓存表以及路由表

    郑重声明:原文转载于http://dengqi.blog.51cto.com/5685776/1223132 向好文章致敬!!! 一:MAC地址表详解 说到MAC地址表,就不得不说一下交换机的工作原理 ...

  8. Window系统性能获取帮助类

    前言: 这个是获取Windows系统的一些性能的帮助类,其中有:系统内存.硬盘.CPU.网络(个人测试还是比较准的).Ping.单个进程的内存.Cpu.网络(不准).    最初在这个的时候在各种搜索 ...

  9. 输出 Office 报表

    以 word 为例: 将 word 存为 Word2003 XML,其中苹果等部分即是 xml 如下: 服务器端通常输出 HTML,HTML 是文本,XML也是文本,可以简单的套用服务器端网页的思路. ...

  10. MySQL日志

    在MySQL中共有4中日志:错误日志.二进制日志.查询日志和慢查询日志 一.错误日志 错误日志名 host_name.err,并默认在参数DATADIR指定的目录中写入日志文件.可使用 --log-e ...