将Org转换成HTML文档,一键复制粘贴到微信公众号,支持自定义CSS。
macOS 安装包目前使用 ad-hoc 签名(未经过 Apple 公证)。首次打开若提示「无法验证开发者」或「已损坏」,任选其一:
- 打开「系统设置 → 隐私与安全性」,在底部点击「仍要打开」;
- 或执行
xattr -dr com.apple.quarantine /Applications/mp-org.app后重新打开。
mp-org使用 toml 文件配置,配置文件位置:
- Lin:
/home/<user>/.config/mp-org/config.toml - Win:
C:\Users\<user>\AppData\Roaming\mp-org\config.toml - Mac:
/Users/<user>/Library/Application Support/mp-org/config.toml
mp-org允许配置多个主题,运行时按需选择。首先在平台特定的配置目录内新建 theme 文件夹,保存多个 css 文件,以 Linux 为例:
~/.confg/mp-org/themes theme1.css theme2.css
修改 config.toml 增加如下内容:
[theme.theme1]
name = "主题1"
path = "theme1.css"
[theme.theme2]
name = "主题2"
path = "theme2.css"重新运行mp-org即可。
具体的主题 css 格式如下:
/* 一级标题样式 */
h1 {
}
/* 二级标题样式 */
h2 {
}
/* 三级标题样式 */
h3 {
}
/* 四级标题样式 */
h4 {
}
/* 图片样式 */
image {
}
/* 引用样式 */
blockquote {
}
/* 段落样式 */
p {
}
/* 粗体样式 */
strong {
}
/* 链接样式 */
a {
}
/* 有序列表样式 */
ol {
}
/* 无序列表样式 */
ul {
}
/* 列表项样式 */
li {
}
/* 行内代码样式 */
code {
}
/* 代码块样式 */
pre {
}代码块高亮使用Shiki的 everforest-light 主题,行内颜色由Shiki生成,无需在主题中配置。
微信公众号在保存草稿时会重建正文:只保留内联样式,并且会丢弃 pre 上的盒模型样式(背景、内边距、圆角、外边距)以及 pre 内的裸换行和空格。mp-org已做如下处理:
- 代码块的卡片样式会从
pre自动挪到外层section上,因此主题里针对pre写的样式仍然有效; - 换行和空格分别转成
<br>和 = =; - 请使用
px等像素单位,避免rem=、=var()和自定义属性,微信不支持它们。
mp-org支持通过调用外部程序上传本地图片,如:
[image]
uploader = "/path/to/uploader"点击「上传本地图片」时,将以 uploader <local file path> 的形式调用uploader程序,并用 stdout 替换原有的本地图片路径。
发布新版本时统一修改 package.json=、=src-tauri/Cargo.toml=、=src-tauri/Cargo.lock=、=src-tauri/tauri.conf.json 中的版本号,提交 release: x.y.z 并推送 tag,GitHub Actions 会自动构建并创建 draft release。
当前使用 ad-hoc 签名(=bundle.macOS.signingIdentity: “-“=),因此用户首次打开需要手动放行。有 Apple Developer 账号后可切换为正式签名 + 公证:
- 把
src-tauri/tauri.conf.json中的bundle.macOS.signingIdentity改成 Developer ID Application 证书名; - 在仓库 Secrets 中配置
APPLE_CERTIFICATE=、=APPLE_CERTIFICATE_PASSWORD=、=APPLE_SIGNING_IDENTITY=、=APPLE_ID=、=APPLE_PASSWORD=、=APPLE_TEAM_ID=(或 =APPLE_API_KEY系列); - 推送新 tag,CI 会自动完成签名与公证。
- docube
- org、markdown等文档管理工具