Markdown 查询工具 mdq 使用教程
1. 项目介绍
mdq 是一个类似于jq的工具,但它用于处理 Markdown 文档。mdq 提供了一种简单的方式来查询和提取 Markdown 文档中的特定部分,这使得处理如 GitHub PR 模板等 Markdown 文档变得更加方便。
2. 项目快速启动
安装 mdq
在开始使用 mdq 之前,你需要先安装它。以下是一些安装方法:
-
使用 Homebrew(仅限 Mac 和 Linux):
brew install mdq
-
使用 Docker:
docker pull yshavit/mdq
-
从最新版本下载二进制文件并解压。
使用 mdq
安装完成后,你可以通过以下命令开始使用 mdq:
cat example.md | mdq '# 快速启动'
这条命令会输出 example.md
文件中包含标题 "快速启动" 的部分。
3. 应用案例和最佳实践
确保提交者搜索了现有问题
在许多项目中,提交者需要在提交 bug 报告之前确认他们已经搜索了现有问题。使用 mdq,你可以这样做:
if echo "$ISSUE_TEXT" | mdq -q '- [x] 我已经搜索了现有问题'; then
# 执行后续操作
fi
提取提及的工单
如果你的 PR 文本中提到了一个工单,你可以使用 mdq 提取链接:
TICKET_URL=$(echo "$PR_TEXT" | mdq --output json '# Ticket | [](^https://tickets.example.com/[A-Z]+-\d+$)' | jq -r '.items[].link.url')
筛选大型表格
如果你有一个大型表格,你可以使用 mdq 来筛选特定的行和列:
cat oncall.md | mdq ':-: /On-Call|Alice/:-: *' | grep 'Alice'
这条命令会输出 Alice 的值班时间。
4. 典型生态项目
目前,mdq 的应用还比较新,但可以预见它将会在处理 Markdown 文档的自动化任务中发挥重要作用。以下是一些可能的生态项目:
- 自动化生成和更新项目文档。
- 在持续集成过程中检查 Markdown 文档的格式和内容。
- 开发扩展工具,以支持更多 Markdown 格式的查询和处理。
mdq 的开源社区正在不断成长,我们可以期待未来会有更多有趣的项目涌现。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考