2.7 KiB
2.7 KiB
导出为 Word
将当前对话内容从 Markdown 转换并导出为 Word (.docx) 文件,支持代码语法高亮、引用块样式和更智能的文件命名。
功能特点
- 一键导出:在聊天界面添加“导出为 Word”动作按钮。
- Markdown 转换:将 Markdown 语法转换为 Word 格式(标题、粗体、斜体、代码、表格、列表)。
- 代码语法高亮:使用 Pygments 库为代码块添加语法高亮(支持 500+ 种语言)。
- 引用块支持:Markdown 引用块会渲染为带左侧边框的灰色斜体样式。
- 多语言支持:正确处理中文和英文文本,无乱码问题。
- 更智能的文件名:优先使用对话标题(来自请求体或基于 chat_id 查询),其次 Markdown 一级/二级标题,最后用户+日期。
支持的 Markdown 语法
| 语法 | Word 效果 |
|---|---|
# 标题1 到 ###### 标题6 |
标题级别 1-6 |
**粗体** 或 __粗体__ |
粗体文本 |
*斜体* 或 _斜体_ |
斜体文本 |
***粗斜体*** |
粗体 + 斜体 |
`行内代码` |
等宽字体 + 灰色背景 |
``` 代码块 ``` |
语法高亮的代码块 |
> 引用文本 |
带左侧边框的灰色斜体文本 |
[链接](url) |
蓝色下划线链接文本 |
~~删除线~~ |
删除线文本 |
- 项目 或 * 项目 |
无序列表 |
1. 项目 |
有序列表 |
| Markdown 表格 | 带边框表格 |
--- 或 *** |
水平分割线 |
使用方法
- 安装插件。
- 在任意对话中,点击"导出为 Word"按钮。
- .docx 文件将自动下载到你的设备。
说明
- 标题检测仅考虑一级/二级标题(h1/h2)。
- 若请求体或 metadata 提供
chat_id,当正文缺少标题时会从数据库查询对话标题。 - 默认字体:英文 Times New Roman,中文宋体/黑体,代码 Consolas。
依赖
python-docx==1.1.2- Word 文档生成Pygments>=2.15.0- 语法高亮(可选但建议安装)
两者已在插件文档字符串中声明,请确保环境已安装。
字体配置
- 英文文本:Times New Roman
- 中文文本:宋体(正文)、黑体(标题)
- 代码:Consolas
作者
Fu-Jie
GitHub: Fu-Jie/awesome-openwebui
许可证
MIT License