Markdown和Haroopad介绍文档

[TOC "float:right"]

什么是Markdown

Markdown 是一种轻量级标记语言,创始人为约翰·格鲁伯(John Gruber)。简而言之的说,它可以通过类似HTML的标记语法,使普通文本内容具有一定的格式。

Markdown有哪些优点

  • 纯文本实现,使用任何文本编辑器均可编辑,全平台通用。
  • 排版清晰简洁,可读性较高,使用扩展可以获得更多语法格式支持,漂亮美观。
  • 语法简洁,上手较快,任何人均可在短时间内学会。即使不会语法的读者,也可以读懂其原始文件的内容。
  • 丰富的工具链支持:
    • 编辑器:各种支持所见即所得的编辑器,如本文介绍的Haroopad。
    • 平台支持:各大博客系统、Wiki系统均有相关插件,代码托管平台Github也支持使用Markdown来编写Readme文件。
    • 和其他格式进行转化:可以方便的转化为HTML文件等。

Markdown的基本语法

Markdown的基本语法非常简单,本文即用Markdown完成。

标题

可以在标题内容前输入特定数量的井号('#')来实现对应级别的HTML样式的标题(HTML提供六级标题)。例如:

# 一级标题

#### 四级标题

一级和二级标题还有一种写法:

一级标题

===================

二级标题

--------------------

特殊格式字体

在需要改变的文字片段前后 使用一对符号可以改变文字为特殊格式:

  • 粗体 使用**文字**或者__文字__ 效果:这里请大家尤其注意!
  • 斜体 使用*文字*或者_文字_ 效果:会不调用父类的 析构函数 呢?
  • 高亮 使用==文字== 效果:这里是高亮的重点,但这里不是。
  • 下划线 使用++文字++ 效果:如果此时的++判断结果为真++……
  • 删除线 使用~~文字~~ 效果:1.2的版本已经修复这个Bug?
  • 上角标 使用^文字^ 效果:单位圆的方程式是x2+y2=1。
  • 下角标 使用~文字~ 效果:最常见的氧化反应是C+O2=CO2

外部内容嵌入

  • 图像 使用![text](url)来贴入图片 效果:

  • 链接 使用[linkText](url)来插入链接 效果:

    博客首页
  • 电子邮件 使用<邮件地址>来插入邮件地址 效果:cdsama@gmail.com

列表

无序列表

使用如下格式(*+-可以任意替换):

    * 第一章
* 第二章
+ 第一条
+ 第二条
- 第一则

效果:

  • 第一章
  • 第二章
    • 第一条
    • 第二条
      • 第一则
有序列表

使用如下格式(即为效果):

  1. 内容
  2. 内容
  3. 内容

表格

简单表格如下,分号的位置表示对齐方式:

|这里是列名一|列二|三|
|:-|:-:|-:|
|这列是左对齐|这列是居中对齐|这列是右对齐|
|左对齐|居中对齐|右对齐|

效果:

这里是列名一 列二 三
这列是左对齐 这列是居中对齐 这列是右对齐
左对齐 居中对齐 右对齐
1 2 3

分割线

以下三个连续符号构成一个分割线,分别是三种不同的分割线:

***

---

___

效果:




换行、空格和标记符号

在浏览器中一般情况下,Markdown会删除所有换行和空格,打乱原有的缩进和排版。通过回车和至少两个空格可以强制换行。

要打出连续空格可以用输入法输入全角中文空格或者:

半字大的空白 或 

全字大的空白 或 

不断行的空白格 或 

若要输出符号原本的意思可以加斜线\来输出 例如:

* 不是列表

引用

使用右尖括号即可插入一段引用,例如:

> 这里是一段引用
>> 书是人类进步的阶梯。 --高尔基
>
> 退出二级引用

效果:

这里是一段引用

书是人类进步的阶梯。 --高尔基

退出二级引用

代码

使用一对反引号即可包含一个行内代码使用一对三个反引号可以包括多行代码,另外多行Tab也可以用于代码段,例如:

code

code blocks

效果:print("hello");

#include <iostream>
int main()
{
std::cout<<"hello world!""<<std::endl;
return 0;
}

Haroopad介绍

Haroopad是一个韩国人写的Markdown编辑器,项目主页是:

Haroopad - The Next Document processor based on Markdown

Haroopad的优点和缺点

优点:

  • 跨Windows、Mac、Linux三大平台。
  • 支持实时渲染,可以在编写的时候实时查看效果。
  • 支持复制、导出到HTML。
  • 支持多种编程语言语法高亮。
  • 支持绘制各种流程时序图等非标准Markdown格式。

缺点:

  • 暂时不支持导出到PDF等格式

Haroopad支持的额外语法

目录

单行插入

脚注

使用[^id] [^id]:text即可生成一对脚注 [1]

代码语法高亮

在```后加入编程语言名称

例如````python`

@requires_authorization
def somefunc(param1='', param2=0):
'''A docstring'''
if param1 > param2: # interesting
print 'Greater'
return (param2 - param1 + 1) or None
class SomeClass:
pass
>>> message = '''interpreter
... prompt'''

计划任务列表

使用- [ ] task name - [x] finished task来创建计划任务。

效果:

  • [x] 任务1
  • [x] 任务2

图像绘制

图像绘制使用了mermaid引擎(访问该项目地址)。

目前支持流程图和时序图,可以在该项目Wiki上查看更多用法,以下列举两个最基本的例子。

流程图:

graph TD
subgraph 子图
a1[矩形]
a2>旗帜形]
a3(圆角方形)
end
subgraph 第二个子图
b1((圆形))
b2{斜方形}
end
a1-->|实线箭头|a2
a2-->a1
a2-.->|虚线箭头|a3
a3-.->a2
a3==>|加粗箭头|a1
a1==>a3
b1---b2
b2---|实线无箭头|b1
a1-->b1

时序图:

sequenceDiagram
Alice->>Bob: Hello Bob, how are you?
alt is sick
Bob->>Alice: Not so good :(
else is well
Bob->>Alice: Feeling fresh like a daisy
end
opt Extra response
Bob->>Alice: Thanks for asking
end

tests


  1. 这里是一个示例脚注。 ↩︎

test markdown的更多相关文章

  1. NiceMark——我的Markdown编辑器

    NiceMark--我的Markdown编辑器 闲来无事,写了一个Markdown编辑器.基于electron,完全采用Web前段技术(Html,css,JavaScript)实现.代码已托管在Git ...

  2. Markdown 图片助手-MarkdownPicPicker

    title: Markdown 图片助手 v0.1 toc: true comments: true date: 2016-06-04 16:40:06 tags: [Python, Markdown ...

  3. 前端学Markdown

    前面的话   我个人理解,Markdown就是一个富文本编辑器语言,类似于sass对于css的功能,Markdown也可以叫做HTML预处理器,只不过它是一门轻量级的标记语言,可以更简单的实现HTML ...

  4. 好用的Markdown编辑器一览 readme.md 编辑查看

    https://github.com/pandao/editor.md https://pandao.github.io/editor.md/examples/index.html Editor.md ...

  5. mac好用的markdown编辑器

    在刚开始接触markdown的时候,就被吸引了.此后一直在找贴心的好用的markdown编辑器.印象笔记和马克飞象配合着用也是挺好的,唯一的缺点就是比较封闭,发个笔记的链接给同学,还得注册才能看,导致 ...

  6. Markdown学习笔记

    分为两步: 1.阅读Markdown中文官网的文档 2.下载MarkdownPad2将中文官网中文档的例子敲一遍,其中Markdownpad2为官网中推荐的编辑器 备注: 如果只看中文官网文档,不边看 ...

  7. Linux 中优秀的文本化编辑思想大碰撞(Markdown、LaTeX、MathJax)

    这样一个标题可能不太准确,因为确实无法准确地解释什么叫"文本化编辑思想".其实我这篇随笔主要是想探讨 Markdown.LaTeX.MathJax,有兴趣的朋友可以继续往下看,同时 ...

  8. Markdown是怎样接管我的各种的写作工作的

    对于一个程序猿来说,没有什么比单纯的写代码更能让人兴奋了.如果能让你像写代码一样写文档,不用再面对那些繁琐的样式,你会怎么看?它就是Markdown!即使博客园已经有不少介绍的文章了,但是我依然还是不 ...

  9. markdown常用语法总结

    转自markdown示例[模板] 1.1.段落标题 根据原文中的文档标题可以对应设置标题. # 一级标题## 二级标题### 三级标题 效果 => 一级标题 二级标题 三级标题 1.2.斜体.加 ...

  10. 基于 Cmd MarkDown 的 markdown 语法学习

    首先我要打一个属于干货的广告:CmdMarkDown 是非常好用的markdown编辑器软件,支持全平台,由作业部落出品,分为客户端与WEB端两种使用场景. 本篇博客学习的markdown语法都是基于 ...

随机推荐

  1. gradle下载地址

    gradle下载:http://services.gradle.org/distributions

  2. Jaunt登陆索尼PSVR,为其提供大量VR视频

    索尼PS VR自从推出就广受用户青睐,当然不仅仅是其低于高端VR头显的价格,还在于PS VR提供的丰富游戏内容.近日,国外视频网站Jaunt还专门为PSVR推出了专版APP,为其提供超过 150 个沉 ...

  3. Codeforces 486E LIS of Sequence 题解

    题目大意: 一个序列,问其中每一个元素是否为所有最长上升子序列中的元素或是几个但不是所有最长上升子序列中的元素或一个最长上升子序列都不是. 思路: 求以每一个元素为开头和结尾的最长上升子序列长度,若两 ...

  4. 基于redis的点赞功能设计

    前言 点赞其实是一个很有意思的功能.基本的设计思路有大致两种, 一种自然是用mysql等 数据库直接落地存储, 另外一种就是利用点赞的业务特征来扔到redis(或memcache)中, 然后离线刷回m ...

  5. js基础2

    什么是DOM? DOM:文档对象模型(Document Object Model),又称为文档树模型.是一套操作HTML文档的API. 什么是文档对象模型? DOM将html文档看成了一个对象,htm ...

  6. 常用的js正则表达式

    正则表达式,一个十分古老而又强大的文本处理工具,仅仅用一段非常简短的表达式语句,便能够快速实现一个非常复杂的业务逻辑.熟练地掌握正则表达式的话,能够使你的开发效率得到极大的提升. 下面是一些,在前端开 ...

  7. jquery-lazyload延迟加载图片

    下载地址:https://github.com/tuupola/jquery_lazyload用法:头部引用<script src="jquery.js" type=&quo ...

  8. 删除mysql中root用户恢复方法

    1.# service mysqld stop  #停止mysql数据库服务 2.# service mysqld start --skip-grant-tables #跳过授权表启动mysql数据库 ...

  9. js中函数的一些理论知识

      函数的一些理论知识 1. 函数:                执行一个明确的动作并提供一个返回值的独立代码块.同时函数也是javascript中的一级公民(就是函数和其它变量一样). 2.函数的 ...

  10. Python之路第一课Day5--随堂笔记(模块)

    本节课程大纲: 1.模块介绍 2.time &datetime模块 3.random 4.os 5.sys 6.shutil 7.json & picle 8.shelve 9.xml ...