# 标题

语句: # 标题名

n 级标题就有 n 个 #

# 斜体

语句: * 文本内容 *

# 粗体

语句: ** 文本内容 **

加粗的斜体则用三个 * 进行包围

# 公式

我们这里的 Hexo 博客使用的是 KaTex 插件,语法与 LaTex 基本一致

$$ 实现内嵌式公式, $$$$ 实现公式居中展示

KaTex 说明文档

# 行内代码

语句:一对反引号(`)

# 块代码

语句:

  • 通过在代码块首尾分别添加 三个反引号 (```) 实现
  • 通过对整个代码块施加 一个缩进符(Tab键) 实现(此方法需要前面空一行)

测试代码:

    // 通过缩进符实现代码块
    int main() {
        int a = 0;
        a++;
        return a;
    }

```
// 通过三个反引号实现代码块
int main() {
    int b = 10;
    b--;
    return b;
}
```

测试结果:

// 通过缩进展示代码块
int main() {
    int a = 0;
    a++;
    return a;
}
// 通过三个反引号实现代码块
int main() {
    int b = 10;
    b--;
    return b;
}

# 代码高亮

实现方法:

  • 在三个反引号后面加上 key 值
  • 常用的几个 key 值为 cpp、java、python、matlab、markdown

测试代码:

```cpp
string s;
vector<int> nums;
```

测试结果:

string s = '';
vector<int> nums;

另,用缩进符实现的代码块似乎无法实现高亮

language key
ActionScript actionscript
Apache apache
AppleScript applescript
AsciiDoc asciidoc
AspectJ asciidoc
AutoHotkey autohotkey
AVR Assembler avrasm
Axapta axapta
Bash bash
BrainFuck brainfuck
Cap’n Proto capnproto
Clojure REPL clojure
Clojure clojure
CMake cmake
CoffeeScript coffeescript
C++ cpp
C# cs
CSS css
D d
Dart d
Delphi delphi
Diff diff
Django django
DOS.bat dos
Dust dust
Elixir elixir
ERB(Embedded Ruby) erb
Erlang REPL erlang-repl
Erlang erlang
FIX fix
F# fsharp
G-code(ISO 6983) gcode
Gherkin gherkin
GLSL glsl
Go go
Gradle gradle
Groovy groovy
Haml haml
Handlebars handlebars
Haskell haskell
Haxe haxe
HTML html
HTTP http
Ini file ini
Java java
JavaScript javascript
JSON json
Lasso lasso
Less less
Lisp lisp
LiveCode livecodeserver
LiveScript livescript
Lua lua
Makefile makefile
Markdown markdown
Mathematica mathematica
Matlab matlab
MEL (Maya Embedded Language) mel
Mercury mercury
Mizar mizar
Monkey monkey
Nginx nginx
Nimrod nimrod
Nix nix
NSIS nsis
Objective C objectivec
OCaml ocaml
Oxygene oxygene
Parser 3 parser3
Perl perl
PHP php
PowerShell powershell
Processing processing
Python’s profiler output profile
Protocol Buffers protobuf
Puppet puppet
Python python
Q q
R r
RenderMan RIB rib
Roboconf roboconf
RenderMan RSL rsl
Ruby ruby
Oracle Rules Language ruleslanguage
Rust rust
Scala scala
Scheme scheme
Scilab scilab
SCSS scss
Smali smali
SmallTalk smalltalk
SML sml
SQL sql
Stata stata
STEP Part21(ISO 10303-21) step21
Stylus stylus
Swift swift
Tcl tcl
Tex tex
text text/plain
Thrift thrift
Twig twig
TypeScript typescript
Vala vala
VB.NET vbnet
VBScript in HTML vbscript-html
VBScript vbscript
Verilog verilog
VHDL vhdl
Vim Script vim
Intel x86 Assembly x86asm
XL xl
XML xml
YAML yml

# 链接

语句

  • []()

测试代码:
[Jianky's blog](https://jiankychen.github.io/)

测试结果:
Jianky's blog

# 插入图片

语句

  • ![]()

测试代码:
![Jianky](_data/iamges/avatar.jpg)

测试结果:
Jianky

# 注释

语句

  • [//]:
  • [comment]:
  • [^_^]:

测试代码

a

[//]: b

[comment]: c

d

[//]: <> (This is also a comment.)

[//]: # (This may be the most platform independent comment)

e

[comment]: <> (This is a comment, it will not be included)

[^_^]: 注意这里要另起一行,整体缩进
    commentted-out contents
    should be shift to right by four spaces (`>>`).

g

测试结果

a

d

e

g

# 转义字符

特殊符号 命名实体 十进制编码
空格 &nbsp; &#160;
全角空格 &emsp; &#12288;
' &apos; &#39;
" &quot; &#34;
( &#40;
) &#41;
< &lt; &#60;
> &gt; &#62;
[ &#91;
] &#93;
{ &#123;
} &#125;
´ &acute; &#180;
° &deg; &#176;
® &reg; &#174;
© &copy; &#169;

参考:

# 绘制流程图

VScode 可借助插件 Markdown Preview Mermaid Support 实现流程图

流程图方向:

  • TB :top bottom - 从上到下
  • BT :bottom top - 从下到上
  • RL :right left - 从右到左
  • LR :left right - 从左到右
  • TD :等同于 TB

流程块形状:

  • [] :方形
  • () :圆角
  • (()) :圆形
  • {} :菱形
  • {{}} :六角形
  • [\\] :平行四边形
  • [//] :平行四边形

连接线样式:

  • --> :有向箭头
  • --- :无向连接线
  • -.- :虚线
  • === :加粗线条

测试代码 1

```mermaid
graph LR;
    A --> B;
    B --> X;
    X --> C;
```

测试结果 1

graph LR;
    A --> B;
    B --> X;
    X --> C;

测试代码 2

```mermaid
graph LR
    1[A] --> 2(B) --- 3((C)) -.- 4[/D/]
```

测试结果 2

graph LR
    1[A] --> 2(B) --- 3((C)) -.- 4[/D/]

利用 Markdown Preview Mermaid Support 插件画流程图

绘制流程图的语法

Mermaid 流程图外,也可以通过 Flowchart 的方式绘制流程图

注意,hexo 默认不支持 Flowchartmerimaid 流程图,需要安装插件,具体可参考 Hexo 引入 Mermaid

shoka 主题对于流程图 mermaid 的支持暂时因 puppeteer 插件而无法正常显示,具体可见 multi-markdown-it 安装与配置

# 参考资料

markdown demo

编辑器测评

编辑器推荐:vscode,Joplin,Typora,sublime,Moeditor

Create slide deck written in Marp Markdown on VS Code.