出发点
我是一个比较懒的人,平时看书看了也就是看了,并没有把自己看书的心得体会做一个总结并记录下来,然而岁月就像一把杀猪刀,很多东西自己想回头用的时候发现已经记不大清楚了[保持微笑],这不免又得重新去找相关的资料,真的是费时费力[保持微笑]。所以我不得不强迫自己做笔记。
磨刀不误砍柴工,做笔记也是需要讲究效率的,在找寻一遍资料后,觉得用markdown做笔记实在是太便利了,它功能强大,语法也很简单,花个几分钟大概就能掌握它的语法了。现在很多云笔记,博客后台也都支持了Markdown的语法,可以说是做笔记的一大利器了。
在这里我推荐一款免费又专业的Markdown编辑工具--Typora,它目前只支持电脑端,Mac Os、Windows、Linux系统都支持,Windows下载网址在这里,选择跟你们电脑操作系统相匹配的版本安装就可以了。
下面是Markdown的一些语法介绍,花个几分钟基本就能看完了,这里有个问题就是,在简书上的Markdown编辑器有些语法并不支持,例如:[TOC]目录,表情包,脚注,高亮等,但是在Typora上是可以支持的,所以一款专业的Markdown编辑器还是很有必要的。输出是学习的最好的方式,把自己所学到的能清楚的讲给别人听,那应该是很好的理解了吧。希望对大家有所帮助:smile:
Markdown For Typora
概览
Markdown是由Daring Fireball创建的;原始的导向在这里。但是,它的语法在不同的解析器或编辑器之间有所不同。Typora正在使用GitHub Flavored Markdown.
[TOC]
块元素
段落和换行
一个段落是一行或多行连续行文档,在markdown源码中,段落是通过两个或多个空行来进行分隔的。对于Typora,你仅需要一个空行(按回车键)去创建一个新的段落。
按压shift+回车键去创建一个单行换行。大部分其他markdown解析器会忽视单行换行,为了让其他markdown解析器识别你的换行,你可以在行末留两个空格或者在行末插入
标题
标题可以在行首使用1-6个#号字符,对应于标题级别1-6。
例如:
# This is an H1
## This is an H2
###### This is an H6
在Typora中, 输入'#'s后跟标题内容,然后按回车键将创建一个标题。(注意:#号和标题间是有一个空格的,后面的符号和内容之间同理)
块引用
markdown 使用邮件风格符号‘>’进行块引用,它们呈现像这样:
> This is a blockquote with two paragraphs. This is first paragraph.
>
> This is second pragtaph. Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, tisus.
> This is another blockquote with one paragraph. There is three empty line to seperate two blockquote.
> Nested bock quotes by adding additional levels of '>'
上面显示的是源码效果,它们在文档中显示的效果如下:
This is a blockquote with two paragraphs. This is first paragraph.
This is second pragtaph. Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, tisus.
This is another blockquote with one paragraph. There is three empty line to seperate two blockquote.
Nested bock quotes by adding additional levels of '>'
在Typora中,输入'>'后跟你引用的内容将会生成一个引用块。Typora将会为你插入一个恰当的'>'或者换行符。嵌套块引用(一个块引用里引用另一个块引用)通过添加'>'的附加级别。
列表
输入* 列表条目1将会创建一个无序列表,*符号可以被+或者-号替换。
输入1.列表条目1将会创建一个有序列表,它们的markdown源码像下面这样:
### 无序列表
* 红色
* 绿色
* 蓝色
### 有序列表
1. 红色
2. 绿色
3. 蓝色
在文档中显示的效果如下:
无序列表
- 红色
- 绿色
- 蓝色
有序列表
- 红色
- 绿色
- 蓝色
任务列表
任务列表是带有标记为[ ]或[X]的项的列表[ ]代表没完成, [X]代表完成。例如:
- [ ] 一个任务列表条目
- [ ] 列表语法要求
- [ ] 正常格式 **格式**, @提及, #1234 refs
- [ ] 没完成
- [x] 完成
在文档中显示的效果如下:
- [ ] 一个任务列表条目
- [ ] 列表语法要求
- [ ] 正常格式 格式, @提及, #1234 refs
- [ ] 没完成
- [x] 完成
你可以改变完成/没完成的状态通过点击条目前边的可选框。
(受控)代码块
Typora 仅支持GitHub Flavored Markdown中的栅栏,不支持markdown中的原始代码块。
使用栅栏很简单:输入```然后按回车键。在三点之后添加一个可选的语言标识符,我们将通过语法高亮它,如下:
Here's an example:
```javascript
function test() {
console.log("notice the blank line before this function?");
}
```
syntax highlighting:
```python
def hello():
markdown = "hello world !!!"
print(markdown)
```
在文档中的效果如下:
Here's an example:
function test() {
console.log("notice the blank line before this function?");
}
syntax highlighting:
def hello():
markdown = "hello world !!!"
print(markdown)
数学块
你可以使用MathJax渲染LaTeXs数学表达式。添加一个数学表达式,输入$$
然后按回车键。将会触发一个输入栏来接受Tex/LaTex 源码,例如数学表达式:
在markdown源文件中,数学块是一个通过一对’$$‘标识符装饰的LaTeX 表达式,源码如下:
$$
\mathbf{V}_1 \times \mathbf{V}_2 = \begin{vmatrix}
\mathbf{i} & \mathbf{j} & \mathbf{k} \\
\frac{\partial X}{\partial u} & \frac{\partial Y}{\partial u} & 0 \\
\frac{\partial X}{\partial v} & \frac{\partial Y}{\partial v} & 0 \\
\end{vmatrix}
$$
想了解更多请单击这里。
对于数学块了解一下书写规则就好了,因为输入数学表达式实在是太繁杂了,有兴趣的可以自己去了解更多这方面的知识。
表格
输入|First Header|Second Header|
然后按回车键,将会创建一个具有两列的表格。
创建表格之后,把光标放置在表格上将会打开一个工具栏,工具栏可以实现对表格的大小,对齐方式进行定制,或者删除表格。你也可以使用上下文菜单复制和添加/删除个别列/行。
表格的全部语法描述如下,但是没有必要去了解全部的语法细节,因为在Typora中markdown源码会自动生成表格。
在markdown源码中,它们看起来像这样:
| First Header | Second Header |
| ------------- | ------------- |
| Content Cell | Content Cell |
| Content Cell | Content Cell |
在文档中,markdown解析器会根据你输入的语法显示成如下:
First Header | Second Header |
---|---|
Content Cell | Content Cell |
Content Cell | Content Cell |
你也可以在表格中包含内联markdown如:链接,粗体,斜体,或者删除线。
最后通过在标题行中包含冒号(‘:’)你可以定义文档在列中左对齐,右对齐或者居中对齐:
| Left-Aligned | Center Aligned | Right Aligned |
| :------------ |:---------------:| -----:|
| col 3 is | some wordy text | $1600 |
| col 2 is | centered | $12 |
| zebra stripes | are neat | $1 |
效果如下:
Left-Aligned | Center Aligned | Right Aligned |
---|---|---|
col 3 is | some wordy text | $1600 |
col 2 is | centered | $12 |
zebra stripes | are neat | $1 |
脚注
You can create footnotes like this[^footnote].
[^footnote]: Here is the *text* of the **footnote**.
将产生:
You can create footnotes like this[1].
将鼠标停在“脚注”上可查看脚注的内容。
横向规则
在空行上输入***或者---然后按回车键将画出一条横线
***
---
效果如下:
YAML Front Matter
Typora 现在支持YAML Front Matter在文章顶部输入---然后按回车键来引入一个元数据块。另外,你可以在Typora的顶部菜单中插入一个元数据块。
目录(TOC)
输入[toc]然后按回车键,将会创建一个目录,TOC会抽取出文档中的所有标题,并且目录会自动更新当你添加新的标题时。
如我输入[toc]按回车会出现如下目录:
[TOC]
跨度元素
span元素将在键入之后立即解析和呈现。将光标移动到这些span元素的中间会将这些元素扩展为markdown源码。下面是每个span元素的语法说明。
链接
markdown支持两种风格的链接:内联链接和引用。
在这两种风格样式中,链接文由[方括号]分隔。
创建一个内联链接,在链接文的结束方括号后面立即使用一组常规括号(圆括号),在圆括号里面,写上你想链接去的目的地址,以及链接的可选标题,用引号括起来。例如:
This is [an example](http://example.com/ "Title") inline link.
[This link](http://example.net/) has no title attribute.
形成效果如下:
This is an example inline link.
This link has no title attribute.
内部链接
你可以为标题设置href属性,它将创建一个书签,当你点击它的时候会跳转到该标题部分,例如:
命令(在windows中:Ctrl)+点击链接将会跳转到该标题部分,为了看清楚怎么写,请移动游标或者点击该链接将元素展开为markdown源。
引用链接
引用样式链接使用第二组方括号,在其中放置你选择的标签以标识链接:
This is [an example][id] reference-style link.
Then, anywhere in the document, you define your link label on a line by itself like this:
[id]: http://example.com/ "Optional Title Here"
在Typora中,它们将会被渲染成这样:
This is an example reference-style link.
Then, anywhere in the document, you define your link label on a line by itself like this:
隐式链接名称快捷方式允许你省略链接的名称,在这种情况下,链接文本身将用作名称。只需使用一组空方括号 - 例如,将“Google”一词链接到google.com网站,您就可以简单地写一下
[Google][]
And then define the link:
[Google]: http://google.com/
在Typora中,它们将会被渲染成这样:
Google
And then define the link:
在Typora中,点击这个链接将会展开来可以编辑,用Ctrl+点击链接可以用浏览器打开这个超链接。
URLs
Typora 允许你插入URLs作为链接,用<尖括号>包裹。
<i@typora.io>
变成i@typora.io.
Typora 将自动链接标准的URLs. e.g:www.google.com
图片
图片和链接具有相似的语法,但是图片要求添加一个!
号在开始的链接之前。插入一张图片的语法像这样:
![images.jpg](https://upload-images.jianshu.io/upload_images/16340574-2467285ac934571a.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
你可以使用拖放操作从图片文件或者web浏览器插入一张图片。你可以修改markdown源码通过点击图片。如果使用拖放操作添加的图像与您当前正在编辑的文档位于同一目录或子目录中,则将使用相对路径。
假如你使用markdown来构建网站,你可以在本地计算机上为图片预览指定一个URL前缀,在YAML Front Matters 中使用属性'typora-root-url',例如,在YAML Front Matters中输入typora-root-url:/User/Abner/Website/typora.io,然后输入![alt](/blog/img/test.png)
将被视为在Typora中![alt](file:///User/Abner/Website/typora.io/blog/img/test.png)
你可以找到更多详情从这里。
突出重点
markdown 使用星号(*
)和下划线(_
)作为突出重点。文档被一对*
或者_
包裹相当于被HTML的<em>
标签包裹。
*single asterisks*
_single underscores_
在文档中显示的效果如下:
single asterisks
single underscores
GFM(GitHub Flavored Markdown)将忽视单词中的下划线,这通常用于代码和名称,如下所示:
wow_great_stuff
do_this_and_do_that_and_another_thing.
要在其他方式用作强调分隔符的位置生成文字星号或者下划线,可以使用反斜杠转义:
\*this text is surrounded by literal asterisks\*
Typora 推荐使用*
号。
加粗
两个*
或者_
包裹内容将会当做HTML中的<strong>
标签
**double asterisks**
__double asterisks__
在文档中的显示效果如下:
double asterisks
double asterisks
Typora推荐使用**
符号。
代码
在代码中为了表明一个内联span,用反撇号包裹。不像一个预格式化代码块,一个span表明代码在正常的段落中,例如:
Use the `printf()`function.
在文档中展示的效果如下:
Use the printf()
function.
删除线
GFM添加创建删除线文本的语法,这在标准标记中是缺失的。
~~Mistaken text.~~
变成Mistaken text.
下划线
下划线由原始HTML提供支持。
<u>Underline</u>
变成<u>Underline</u>
表情包 :smile:
输入表情包语法:smile:
.
用户可以通过按esc键触发表情包的自动完成建议,或者在首选项面板上启动后自动触发。以上两种触发模式,通过进入文件->偏好设置->emoji自动完成进行设置,还支持直接输入utf-8表情字符。
内联公式
要使用这个特性,请在文件->偏好设置->Markdown->markdown扩展语法中启用它,然后用$
符号去包裹TeX命令,例如:$\lim_{x \to \infty} \exp(-x) = 0$
将会被渲染成LaTeX命令
为了触发公式预览效果,输入"$",然后按ESC键,输入公式的时候就可以看到预览效果了。
要了解更多详情请看这里。
下标
要使用这个特性,请在文件->偏好设置->Markdown->markdown扩展语法中启用它,然后用~
符号去包裹下标内容,例如:H~2~O
,X~long\ text~
/
显示的效果如下:
H2O,Xlong text
上标
要使用这个特性,请在文件->偏好设置->Markdown->markdown扩展语法中启用它,然后用^
符号去包裹下标内容,例如:X^2^
显示的效果如下:
X2
高亮
要是用此功能,请先在文件->偏好设置->Markdown选项卡中启用它,然后使用==
来包装高亮内容。例如==highlight==
==highlight==
HTML
你可以使用HTML来设置纯Markdown不支持的内容样式,例如:使用<span style="color:red">this text is red</span>
添加红色文本
<span style="color:red">this text is red</span>
嵌入内容
有些网站提供基于iframe的嵌入代码,你也可以将其粘贴到Typora中。例如:
<iframe height='265' scrolling='no' title='Fancy Animated SVG Menu' src='http://codepen.io/jeangontijo/embed/OxVywj/?height=265&theme-id=0&default-tab=css,result&embed-version=2' frameborder='no' allowtransparency='true' allowfullscreen='true' style='width: 100%;'></iframe>
显示的效果如下:
<iframe height='265' scrolling='no' title='Fancy Animated SVG Menu' src='http://codepen.io/jeangontijo/embed/OxVywj/?height=265&theme-id=0&default-tab=css,result&embed-version=2' frameborder='no' allowtransparency='true' allowfullscreen='true' style='width: 100%;'></iframe>
视频
你可以使用<video>
HTML标签来嵌套视频,例如:
<video src="xxx.mp4" />
<video src="xxx.mp4" />
其他HTML支持
你可以找到更多详情从这里.