Appearance
Markdown 工具链
Markdown 的生态系统非常丰富,有许多工具可以帮助你创建、编辑、转换和管理 Markdown 文档。在本章中,我们将介绍 Markdown 工具链的各个组成部分。
转换工具(Markdown 转 HTML、PDF 等)
命令行工具
Pandoc
Pandoc 是一个功能强大的文档转换工具,支持 Markdown 转换为多种格式。
- 安装:
brew install pandoc(macOS)或choco install pandoc(Windows) - 基本用法:bash
# Markdown 转 HTML pandoc input.md -o output.html # Markdown 转 PDF pandoc input.md -o output.pdf # Markdown 转 Word pandoc input.md -o output.docx
marked
marked 是一个 Node.js 库,用于将 Markdown 转换为 HTML。
- 安装:
npm install -g marked - 基本用法:bash
marked input.md > output.html
markdown-it
markdown-it 是一个功能强大的 Markdown 解析器,支持插件扩展。
- 安装:
npm install markdown-it - 基本用法:javascript
const markdownIt = require('markdown-it'); const md = markdownIt(); const result = md.render('# Hello, markdown-it!'); console.log(result);
在线转换工具
- Markdown to HTML:https://markdown-to-html.com/
- Markdown to PDF:https://markdown2pdf.com/
- Pandoc Online:https://pandoc.org/try/
语法检查工具
markdownlint
markdownlint 是一个 Markdown 语法检查工具,可以帮助你保持 Markdown 文档的一致性。
- 安装:
npm install -g markdownlint-cli - 基本用法:bash
markdownlint input.md
textlint
textlint 是一个文本 lint 工具,支持 Markdown 文件的语法检查。
- 安装:
npm install -g textlint - 基本用法:bash
textlint input.md
alex
alex 是一个检查文本中偏见和歧视性语言的工具。
- 安装:
npm install -g alex - 基本用法:bash
alex input.md
自动化工作流
GitHub Actions
可以使用 GitHub Actions 自动化 Markdown 文档的处理:
yaml
# .github/workflows/markdown.yml
name: Markdown Lint
on: [push, pull_request]
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Markdown Lint
uses: markdownlint-cli/markdownlint-cli-action@v0.11.0
with:
files: .Git Hooks
可以使用 Git hooks 在提交前检查 Markdown 文档:
bash
# .git/hooks/pre-commit
#!/bin/bash
# 检查 Markdown 语法
markdownlint *.md
# 如果检查失败,阻止提交
if [ $? -ne 0 ]; then
echo "Markdown 语法检查失败,请修复后再提交"
exit 1
fi编辑器集成
许多编辑器都支持 Markdown 语法检查和自动格式化:
- VS Code:安装 "Markdownlint" 扩展
- Sublime Text:安装 "MarkdownLint" 插件
- Atom:安装 "linter-markdown" 插件
集成工具与插件
VS Code 插件
- Markdown All in One:提供 Markdown 编辑的各种功能
- Markdown Preview Enhanced:增强的 Markdown 预览功能
- Markdownlint:Markdown 语法检查
- Code Spell Checker:拼写检查
Sublime Text 插件
- MarkdownEditing:Markdown 编辑增强
- MarkdownPreview:Markdown 预览
- MarkdownLint:Markdown 语法检查
Atom 插件
- markdown-preview-plus:增强的 Markdown 预览
- linter-markdown:Markdown 语法检查
- autocomplete-paths:路径自动完成
浏览器扩展
- Markdown Viewer:在浏览器中预览 Markdown 文件
- Markdown Here:在邮件中使用 Markdown
- StackEdit:在线 Markdown 编辑器
版本控制工具
Git
Git 是一个分布式版本控制系统,非常适合管理 Markdown 文档:
- 跟踪变更:记录文档的每一次变更
- 分支管理:可以在分支上进行实验性编辑
- 协作:支持多人协作编辑
GitHub
GitHub 是一个基于 Git 的代码托管平台,提供了 Markdown 支持:
- 在线编辑:可以在浏览器中编辑 Markdown 文件
- Pull Request:支持代码审查和协作
- GitHub Pages:可以将 Markdown 文件转换为静态网站
GitLab
GitLab 是一个开源的代码托管平台,也提供了 Markdown 支持:
- 在线编辑:支持在浏览器中编辑 Markdown 文件
- Merge Request:支持代码审查和协作
- GitLab Pages:可以将 Markdown 文件转换为静态网站
内容管理系统
Netlify CMS
Netlify CMS 是一个开源的内容管理系统,支持 Markdown:
- 可视化编辑:提供可视化的 Markdown 编辑器
- Git 集成:直接将内容保存到 Git 仓库
- 预览功能:实时预览 Markdown 渲染效果
Forestry
Forestry 是一个无头内容管理系统,支持 Markdown:
- 可视化编辑:提供直观的编辑界面
- Git 集成:与 Git 仓库无缝集成
- 媒体管理:支持图片和其他媒体文件的管理
Contentful
Contentful 是一个内容管理平台,支持 Markdown:
- API 驱动:提供 RESTful API 访问内容
- Markdown 支持:可以使用 Markdown 编辑内容
- 多环境支持:支持开发、测试和生产环境
小结
Markdown 工具链非常丰富,从转换工具到语法检查工具,从自动化工作流到集成工具与插件,这些工具可以帮助你更高效地创建、编辑和管理 Markdown 文档。
在选择工具时,应该根据自己的需求和使用场景选择合适的工具。例如,如果你需要将 Markdown 转换为多种格式,可以使用 Pandoc;如果你需要在编辑器中获得更好的 Markdown 编辑体验,可以安装相应的编辑器插件。
在接下来的章节中,我们将介绍 Markdown 的实践指南,包括技术文档模板、学术与教育应用等内容。