同步之前 QQ 频道版本 (4.1.1 - 4.3.3)所有功能更新,简单适配 MN4,不保证完全兼容。
全部更新内容:https://ohmymn.marginnote.cn/update.html
OhMyMN 已停止功能更新,不定期修复 bug,不回复相关提问,请互相帮助。
简介
对于 插件开发者
MarginNote 开放的 API 比较底层,导致上手比较困难,需要大量 Objective-C 以及 iOS 开发相关知识。OhMyMN 做的就是简化这一切,首先是将所有 API 翻译成 TypeScript 版本,并且封装了大量好用的方法,使得你不用接触到底层 API 也能进行开发。
其次,OhMyMN 提供了一套非常好用的模块化开发框架,将其与控制面板以及配置管理相绑定。想要开发一个和 OhMyMN 一样复杂的插件,离不开这些东西。
最后,OhMyMN 完全使用 TypeScript 进行开发,配合 VS Code,可以实现代码提示,类型检查,在编译期就能杜绝大多数的问题,进行功能重构时也非常方便。
目前 TypeScript 版 API 已经发布到 NPM,随着 OhMyMN v4.1.0 的发布,API 基本已经稳定,OhMyMN 的整体架构也已经稳定,基本不会进行大的调整。
API 文档:https://ohmymn.marginnote.cn/api/
开发文档: https://ohmymn.marginnote.cn/dev/
普通用户 要注意听了
模块可以类比于插件,是 OhMyMN 内部的插件。
首先要明白 OhMyMN 本质上是一个工具箱。里面所有的功能都是单独的模块,每个模块都被赋予了三种能力:
- 摘录时,修改摘录的内容或者获取摘录内容并进行其他操作。
- 脑图中选中卡片后,对卡片进行修改或获取信息并进行其他操作。
- 文档中选中文字后,获取文字或选区信息并进行其他操作。
有的模块可能三种能力都用了,有的可能只用了其中一个,也有的一个都没有,仅仅只是一些选项。
使用第一种能力的模块通常以 Auto 开头,比如 AutoTitle,AutoDef,表示可以在摘录时自动执行(默认不执行,需要开启 摘录时自动执行
)。使用第一种能力的模块通常还会使用第二种能力,以便处理已经存在的卡片。
第二种能力和第三种能力也通常同时使用,比如用来复制,搜索,导出。它们有一个共同的名字 —— 动作(Action)。所有模块的动作都会出现在 MagicAction for Card 和 MagicAction for Text 中,也就是一个按钮,点击就会执行相应的动作。
除此之外,所有模块被分为了两大类:
- 必选模块:无法关闭的模块。
- OhMyMN
- MagicAction for Card:一些与卡片有关的动作
- MagicAction for Text:一些与文本有关的动作
- 可选模块:可以选择开启的模块,可以在
OhMyMN-模块快捷开关
中启用
- Shortcut:使用 URL Scheme 触发动作,可自行设置快捷键来打开 URL Scheme。
- Gesture:使用手势触发动作。
- Toolbar:在点击卡片或者选择文字时添加动作工具栏。
- CopySearch:复制或搜索选中的文字或选中的卡片。
- AI: AI 动作,自定义 Prompts。
- AutoX
- Another AutoTitle:自动转标题。
- Another AutoDef:自动拆分摘录为标题和摘录两部分,提取标题。
- AutoFormat:自动格式化摘录,比如自动添加空格。
- AutoComplete:自动补全英文单词词形,填充单词信息,制成单词卡片。
- AutoReplace:自动替换摘录中的内容。
- AutoList:自动在指定位置换行,添加序号。
- AutoTag:自动添加标签或者提取部分内容为标签。
- AutoComment:自动添加评论或者提取部分内容为评论。
- AutoStyle:自动设置摘录颜色和填充样式。
- AutoOCR:自动对摘录的选区进行 OCR 识别或者矫正。
- AutoTranslate:自动翻译摘录的内容。
- AutoSimplify:自动将繁体转为简体中文。
这里就展示几个基本操作吧:
1、根据字数自动将摘录转为标题,有标题时直接合并标题,充分利用标题链接。
2、英文单词制卡,补全单词词形,充分利用标题链接。
3、对脑图卡片分层进行编号。
- 新增的工具栏,再一次增强 MagicAction。
- 公式识别
- 常规操作
- 进阶操作
使用方法
使用指南:https://ohmymn.marginnote.cn/guide/
PDF 版本的使用指南:
OhMyMN v4.4.0 文档.marginpkg (17.9 MB)
OhMyMN 非常的自由,功能强大。使用指南只提供最基本的使用方法,你需要自行探索使用技巧。现在你还可以在论坛 方法、技巧、工作流 学习到更多 OhMyMN 使用技巧,也欢迎分享你的使用技巧。
- 【OhMyMN 使用技巧分享】Another AutoTitle —— 自动转标题,自动合并标题
- 【OhMyMN 使用技巧分享】Another AutoDef —— 将摘录一分为二,提取标题
- 【OhMyMN 使用技巧分享】AutoComplete —— 摘录单词自动制卡
- 【OhMyMN 使用技巧分享】AntoFormat —— 中文格式优化
- 【OhMyMN 使用技巧分享】AutoList —— 摘录列表自动换行,自动编号
- 【OhMyMN 使用技巧分享】AntoStyle —— 自动设置摘录颜色和样式
- 【OhMyMN 使用技巧分享】重命名标题 —— 把卡片标题批量重命名这块彻底拿捏住!
- 【OhMyMN 使用技巧分享】MagicAction & Gesture —— 一键转标题,一键 OCR 公式
- 【OhMyMN 使用技巧分享】CopySearch —— 跳转欧陆词典查词只是冰山一角
- 【OhMyMN 使用技巧分享】AutoTranslate —— 自动翻译摘录
- 【OhMyMN 使用技巧分享】AutoOCR —— 小语种在线矫正,公式识别
注意事项
请认真阅读
-
OhMyMN 的使用逻辑与以往的插件均不相同,尤其是以 Auto 开头的模块,是真正的自动化。你需要设定执行的条件并开启
摘录时自动执行
,让它可以在你需要的时候自动执行。模块通常会提供预设,你可以直接选用,也可以自定义。OhMyMN 不推荐无差别执行,所以没有提供全局的开关来一键开启或关闭 OhMyMN。 -
所有模块的预设中自定义的优先级始终最高。
-
如果你正在创建笔记本,需要在创建完成后重新进入,让 OhMyMN 知道你刚导入的文档。
-
OhMyMN 只能处理摘录,从浏览器中拖进来的或者自己输入的都属于评论。
-
不要将 OhMyMN 和其他在摘录时自动执行的插件同时使用,可能会出现冲突。
-
自定义输入时需要
回车
确认,会出现保存成功的提示,同时输入法关闭。否则就是输入错误。 -
在插件设置中停用 OhMyMN 可以
清空配置
,如果出现错误导致崩溃,可以停用再启用插件。当然,大部分情况下都不需要清空配置,不然重新设置起来会非常的麻烦。 -
如果你划重点,MN 会重新获取新的摘录内容,进而导致 OhMyMN 的处理失效。可以在划完重点后稍微修改一下摘录选区,即可重新处理摘录。
-
划完重点后,OhMyMN 获取到的重点两边会出现两个
*
,比如**这是重点**
,在替换,筛选,提取等操作时要格外注意。 -
如果安装插件后看不到笑脸 Logo,可以尝试重新安装,如果还是不行,说明系统版本太低,可以尝试升级系统。
-
想要让 Auto 模块协同工作,必须先了解一下模块的执行顺序。
下载
MN4 目前只能在插件页面导入
ohmymn_v4_4_3.unsigned.mnaddon (618.6 KB)
AutoComplete 数据库彻底外置,现在支持导入两种数据库。第一次使用 AutoComplete 摘录会自动检测是否存在数据库,根据提示导入即可。不需要解压,直接导入压缩包。
- AutoCompleteData.online.zip: 之前在线 API 使用的数据库,可能更简洁一些。
- AutoCompleteData.zip: 单词更多,解释更详细。
数据库下载:Release AutoComplete Database · ourongxing/ohmymn · GitHub
备用下载地址(网络不好的):https://www.123pan.com/s/Ns8lVv-arEq.html
源码
marginnoteapp/ohmymn: MarginNote Addon Development Framework (github.com)