markdown使用方法

2137 字
11 分钟
markdown使用方法

1. 什么是 Markdown#

Markdown 是一种轻量级的标记语言,可用于在纯文本文档中添加格式化元素。Markdown 由 John Gruber 于 2004 年创建,如今已成为世界上最受欢迎的标记语言之一。

核心特点:

  • 纯文本,任何编辑器都可打开
  • 语法简单,学习成本低
  • 可轻松转换为 HTML、PDF 等格式
  • 被 GitHub、Notion、Obsidian 等大量平台支持

2. 常用语法速查#

2.1 标题#

代码:

# 一级标题
## 二级标题
### 三级标题

效果:

一级标题#

二级标题#

三级标题#


2.2 强调#

代码:

*斜体*_斜体_
**粗体**__粗体__
***粗斜体***

效果:

斜体斜体

粗体粗体

粗斜体


2.3 列表#

无序列表 - 代码:

- 项目一
- 项目二
- 子项目

无序列表 - 效果:

  • 项目一
  • 项目二
    • 子项目

有序列表 - 代码:

1. 第一项
2. 第二项

有序列表 - 效果:

  1. 第一项
  2. 第二项

2.4 链接和图片#

代码:

[百度](https://www.baidu.com)
![图片描述](./567cd43873b1c3b76126d05f0c59c8e23546640216492036.jpg)

效果:

百度

图片描述
图片描述


2.5 代码块#

代码:

```python
print("Hello Markdown")
**效果:**
```python
print("Hello Markdown")

2.6 引用#

代码:

> 这是一段引用内容
> 可以多行

效果:

这是一段引用内容 可以多行


2.7 表格#

代码:

| 语法 | 效果 |
|------|------|
| *斜体* | 倾斜文字 |
| **粗体** | 加粗文字 |

效果:

语法效果
斜体倾斜文字
粗体加粗文字

2.8 任务列表#

代码:

- [x] 已完成事项
- [ ] 未完成事项

效果:

  • 已完成事项
  • 未完成事项

2.9 分隔线#

代码:

---

效果:


3. Markdown 扩展功能:Expressive Code#

基础的代码块展示能力有限。借助 Expressive Code 这类工具,你可以创建专业级的代码示例,包括编辑器外观、终端外观、行标记、文本高亮、代码折叠等功能。

Expressive Code 适用于 Astro、Starlight、VitePress 等现代静态站点生成器。


3.1 模拟编辑器框架#

通过 frame="editor" 属性,让代码块显示为代码编辑器外观,并支持自定义文件标题。

代码:

my-test-file.js
console.log('标题属性示例');

效果:

my-test-file.js
console.log('标题属性示例');

3.2 模拟终端框架#

通过 frame="terminal" 属性,让代码块显示为终端窗口外观。

代码:

PowerShell 终端示例
Write-Output "这个有标题!"

效果:

PowerShell 终端示例
Write-Output "这个有标题!"

不设标题的终端:

Terminal window
echo "此终端框架没有标题"

3.3 覆盖框架类型#

使用 frame="none" 可以移除框架,只显示纯代码块。

代码:

console.log('看,没有框架!');

效果:

console.log('看,没有框架!');

3.4 标记整行或行范围#

使用 markins(插入)、del(删除)等属性来高亮指定行。

代码:

// 第1行 - 通过行号定位
// 第2行 - 此行标记为删除
// 第3行
// 第4行 - 通过行号定位
// 第5行 - 此行标记为插入

效果:

// 第1行 - 通过行号定位
// 第2行 - 此行标记为删除
// 第3行
// 第4行 - 通过行号定位
// 第5行 - 此行标记为插入

标记行范围:

// 第1行 - 通过行号定位
// 第2行 - 此行标记为删除
// 第3行
// 第4行 - 通过行号定位
// 第5行 - 范围 "5-6" 标记为插入
// 第6行 - 范围 "5-6" 标记为插入

3.5 为行标记添加标签#

使用 mark 属性时,可以同时添加自定义标签文字。

代码:

// 这一行会有一个"可折叠"标签
// 这一行没有标签
console.log('正常工作');

3.6 使用类似 Diff 的语法#

使用 +- 符号直观标记新增或删除的行。

代码:

此行将标记为已删除
此行将标记为已插入
这是常规行

效果:

此行将标记为已删除
此行将标记为已插入
这是常规行

结合语法高亮:

// 整个块都会以 JavaScript 高亮显示
- console.log('要删除的旧代码');
+ console.log('新的闪亮代码!');

3.7 标记行内的单独文本#

使用 mark 属性配合正则表达式,高亮行内的特定单词。

代码:

function demo() {
// 标记行内的任何给定文本
return '支持给定文本的多个匹配项';
}

效果:

function demo() {
// 标记行内的任何给定文本
return '支持给定文本的多个匹配项';
}

3.8 自动换行#

使用 wrap 属性控制长代码是否自动换行。

开启换行(wrap=true):

// 这是一个非常长的字符串,除非容器极宽,否则很可能无法适应可用空间
function getLongString() {
return '这是一个非常长的字符串,除非容器极宽,否则很可能无法适应可用空间';
}

关闭换行(wrap=false):

// 这是一个非常长的字符串,除非容器极宽,否则很可能无法适应可用空间
function getLongString() {
return '这是一个非常长的字符串,除非容器极宽,否则很可能无法适应可用空间';
}

3.9 可折叠部分#

使用 collapse 属性将长代码或样板代码折叠起来。

代码:

可折叠的样板代码
// 所有这些样板设置代码将被折叠
import { someBoilerplateEngine } from '@example/some-boilerplate';
import { evenMoreBoilerplate } from '@example/even-more-boilerplate';
// 直到块末尾的所有代码将再次被折叠
function main() {
console.log('实际业务代码');
}

效果:

可折叠的样板代码
// 所有这些样板设置代码将被折叠
import { someBoilerplateEngine } from '@example/some-boilerplate';
import { evenMoreBoilerplate } from '@example/even-more-boilerplate';
// 直到块末尾的所有代码将再次被折叠
function main() {
console.log('实际业务代码');
}

3.10 显示行号#

使用 showLineNumbers 属性开启行号显示。

代码:

// 此代码块将显示行号
console.log('来自第2行的问候!');
console.log('我在第3行');

效果:

// 此代码块将显示行号
console.log('来自第2行的问候!');
console.log('我在第3行');

更改起始行号:

// 此行显示为第5行
console.log('来自第6行的问候!');

3.11 如何启用 Expressive Code#

Expressive Code 是 Astro 生态的插件。如果你的博客基于 AstroStarlight,可以按以下步骤集成:

1. 安装:

Terminal window
npm install expressive-code

2. 配置(astro.config.mjs):

import { defineConfig } from 'astro/config';
import expressiveCode from 'expressive-code';
export default defineConfig({
integrations: [expressiveCode()],
});

3. 使用:

之后在 Markdown 或 MDX 文件中,即可通过上述语法使用所有功能。

更详细的安装与配置选项,建议查阅 Expressive Code 官方文档


4. 小贴士#

场景建议
写教程代码块 + 实际效果对比展示
记笔记多用列表和标题,少用复杂格式
写博客善用引用块突出金句
团队文档统一代码块语言标识

5. 写在最后#

掌握 Markdown 不需要背语法,用的时候查一下,一周左右就能形成肌肉记忆。

推荐练习方式:每天用 Markdown 写一篇短笔记,一周即可熟练。

参考资料#

Markdown 基础语法#

本文中 Markdown 基础语法部分参考自以下官方文档和资料:

  1. Microsoft Learn - Markdown 是什么?

  2. Microsoft Learn - Markdown 最佳做法

  3. 阿里云文档中心 - Markdown 使用指南

  4. 阿里云开发者社区 - MarkDown 语法手册

  5. 腾讯云开发者社区 - Markdown简要语法规则

  6. 百度开发者中心 - Markdown中如何添加参考文献和引用

Expressive Code 扩展功能#

本文中 Expressive Code 部分参考自以下官方文档:

  1. Expressive Code 官方文档 - Text & Line Markers

  2. Expressive Code 官方文档 - Editor & Terminal Frames

  3. Expressive Code 官方文档 - Configuration

  4. Expressive Code GitHub 仓库

  5. @expressive-code/core - npm 包

扩展阅读#


END#

感谢您的阅读!

支持与分享

如果这篇文章对你有帮助,欢迎分享给更多人或赞助支持!

赞助
markdown使用方法
https://www.xn--yet00na8848c.top/posts/guide/这是一篇markdown使用文章/
作者
小高拐拐
发布于
2026-06-06
许可协议
CC BY-NC-SA 4.0

评论区

Profile Image of the Author
小高拐拐
小高拐拐喵喵喵
公告
欢迎来到小高拐拐の博客!
音乐
封面

音乐

暂未播放

0:00 0:00
暂无歌词
分类
标签
站点统计
文章
4
分类
4
标签
10
总字数
3,805
运行时长
0
最后活动
0 天前

目录