V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
ccyixia
V2EX  ›  分享创造

忍不了了,做了个插件让 OneNote 支持 Markdown

  ccyixia · 2021-12-15 04:12:24 +08:00 · 33145 次点击
这是一个创建于 944 天前的主题,其中的信息可能已经有所发展或是发生改变。

1 年多前,由于工作原因,主力开发机换成了 Windows ,还入了 Office 365 全家桶。于是在时隔多年后,再次用起了 OneNote 。不得不说,都快 2022 年了,OneNote 的码字体验还停留在十多年前,一堆大大小小的遗留问题。但我实在懒得折腾什么 Notion Obsidian (没有复杂的知识管理需求),只想找个本地 /靠谱 /大厂出品 /开箱即用的笔记软件,简单记录下工作相关内容。 毕竟人一旦习惯了 Markdown 的符号 #-,就真的回不去了。于是研究了下 OneNote 的 api ,决定自己动手,丰衣足食。

废话不多说,直接上动图。

简单来说,实现了基于行的实时渲染,每次按回车时自动渲染当前行。当然,这个实时 跟新世代编辑器字符级别的没法比,但已经足够好用了。

不仅如此,终于在 OneNote 上实现了可用级别的代码高亮,输入```创建代码块后,每敲一行自动着色。(之前要在 OneNote 里插入代码简直反人类,心疼自己)

以及 LaTex 转换到 OneNote 原生的数学公式(不是图片)。

除此之外,还支持TOC / todo / 水平线 / 脚注 等常见的语法,直接拿已有的 Markdown 内容粘贴到 OneNote 中, 然后按 F5 渲染,大概率是可以完美还原的(强行自信。。不过毕竟是 beta 版本,出现意外欢迎反馈)。

你可能会问:这种转换是单向的吗?我如果有一天想导出 Markdown 纯文本怎么办?在我看来,原始 Markdown 丢失是绝对不能接受的,所以我花了很大力气来解决这个问题:笔记中每个段落的 Markdown 原文都以某种格式隐藏存储在自身之中,可以随时读取,不依赖外部文件,任意编辑也不会破坏。而且这种格式是公开透明的,只需要用 OneNote api 拿到 XML 格式的笔记内容,所有秘密一览无余。

更重要的是,渲染后的内容可以原地随意增删修改,不必再重新切换回 Markdown 形态编辑;而且在导出 Markdown 时,内容也会相应更新——是的,实现了双向更新。当然,如果由于某些原因,你想切换回 Markdown 形态编辑,也是支持的。按 ctrl + , ,即可在编辑和预览之间切换。

说完实时渲染和双向更新,接下来夸一下 OneNote 。。其实 OneNote 编辑器在刚推出的时候还是很超前的,有了现在流行的 block level 编辑器的雏形。无论是列表、段落、表格,书写和调整起来都非常得心应手。(可惜之后多年编辑器层面都没什么大的更新,逐渐有点落伍了。不过微软家产品向后兼容都做的非常好,所以估计只能保守,不敢太激进。这里顺便提一下某老牌笔记软件,每一次大更新确实有新的东西,但后果就是会有不少用户抱怨之前的笔记格式乱了。微软的产品是绝对不会出现这种情况的)说回正题。。也多亏了这些设计,结合 Markdown 之后居然毫不违和,整体体验下来有点现代编辑器的味道了。个中玄妙,就待各位亲自上手把玩了。

One more little thing ,被吐槽无数的英文自动变成 Calibri 字体的问题好像也因为这种二次渲染模式的引入无意中解决了。。

最后,隆重介绍下,插件的名字:OneMark (毫无创意但也顺理成章),官网: https://onemark.neuxlab.cn 欢迎大家试用反馈。

ps: 只支持 OneNote Windows 桌面版,不支持 UWP 版本。

第 1 条附言  ·  2021-12-15 12:57:23 +08:00

@安装后没有反应的小伙伴们:请再次访问网站,试试下载64位版本。。正确安装后看到 OneNote 里多了个 tab,不需要任何额外多余的设置。

捕获5.PNG

如果64位的也不行,请加微信群沟通吧。

(欢迎大家加群,不过有一点要小声说明下:这几年卑躬屈膝做乙方,让我患上了严重的即时通讯恐惧症,特别怕消息提示音和电话。。所以,我本人在群里可能不会特别活跃,回复不一定及时,但每天还是会定时看的。

wechat.PNG

第 2 条附言  ·  2021-12-24 13:06:46 +08:00

上面的群满了无法扫码加入,又建了一个:

e93bff8fbd776137e521920f0c9f973.png

第 3 条附言  ·  2022-10-10 21:16:23 +08:00
🎉 OneMark 在 producthunt 发布啦!麻烦大家帮忙投票转发,跪谢! https://www.producthunt.com/posts/onemark
314 条回复    2024-05-24 12:54:49 +08:00
1  2  3  4  
Qotal
    1
Qotal  
   2021-12-15 04:18:27 +08:00   ❤️ 3
卧槽 这有点强啊。。。mark 白天下载试试
dingwen07
    2
dingwen07  
   2021-12-15 04:20:11 +08:00 via iPhone
好!
就想知道如果这个在 Android 、iOS 和 macOS 端打开会怎么样?
ccyixia
    3
ccyixia  
OP
   2021-12-15 04:28:51 +08:00
@dingwen07 和其他笔记一样打开,正常编辑,只是不能用 Markdown 形式编辑了。不过介绍里说了,支持双向更新的。无论在哪一端,任何以富文本方式做的修改,在 Windows 端切换或导出 Markdown 时都会更新。
geelaw
    4
geelaw  
   2021-12-15 04:54:55 +08:00   ❤️ 1
支持一下,我之前想要用 OneNote COM API 做些东西,但是感觉它的 marshal 有 bug 🤣 (见 https://github.com/GeeLaw/onenote-object-model
mdrof
    5
mdrof  
   2021-12-15 06:49:50 +08:00 via iPhone   ❤️ 1
厉害
devtiange
    6
devtiange  
   2021-12-15 06:55:53 +08:00   ❤️ 25
楼主厉害, 建议楼主去 OneNote team 帮他们把这该死的功能做进去.
AndyVerne
    7
AndyVerne  
   2021-12-15 06:58:39 +08:00 via Android   ❤️ 1
很棒的工作!
Just1n
    8
Just1n  
   2021-12-15 07:15:44 +08:00
这个怎么用? 我下载并安装了,然后呢? 需要什么设置嘛?
cmdOptionKana
    9
cmdOptionKana  
   2021-12-15 07:21:37 +08:00 via Android   ❤️ 4
微软应该给你丰厚奖金!
Just1n
    10
Just1n  
   2021-12-15 07:31:34 +08:00
楼上诸位有去试过嘛?
lemonloving
    11
lemonloving  
   2021-12-15 07:50:07 +08:00 via Android
楼主厉害,我之前也用 Onenote 后来全部迁移到 Obsidian 了
guisheng
    12
guisheng  
   2021-12-15 07:50:42 +08:00 via iPhone
能给 Apple note 加上吗? 目前想法是导出后转格式,倒是没想到在编辑器上动手。。。
lucifer9
    13
lucifer9  
   2021-12-15 08:03:18 +08:00
OneNote 最大的问题是默认新创建的笔记放最后还没法改这个设定
dunn
    14
dunn  
   2021-12-15 08:03:26 +08:00 via iPhone   ❤️ 5
厉害厉害 求个 mac 端的
Stevenv
    15
Stevenv  
   2021-12-15 08:20:21 +08:00 via iPhone
牛逼
chotow
    16
chotow  
   2021-12-15 08:27:38 +08:00   ❤️ 1
N 年前就有投票贴,请求微软支持 Markdown ,至今没有声迹。想了解一下,有没有可能做出 macOS 端的插件 🤤
RangerWolf
    17
RangerWolf  
   2021-12-15 08:31:27 +08:00
楼主太厉害了~
ddzy
    18
ddzy  
   2021-12-15 08:44:01 +08:00
有 Mac 端的吗?
HENQIGUAI
    19
HENQIGUAI  
   2021-12-15 08:55:03 +08:00
太牛批了,我之前考虑笔记软件的时候觉得 OneNote 非常棒,然而非常可惜它对代码高亮和 Markdown 的支持太弱鸡了,只能说楼主好人一生平安!建议微软赶紧招安!
zhxhwyzh14
    20
zhxhwyzh14  
   2021-12-15 08:55:48 +08:00
很强大,感谢分享
polaa
    21
polaa  
   2021-12-15 08:57:15 +08:00
> 只想找个本地 /靠谱 /大厂出品 /开箱即用的笔记软件
然而 onenote 不满足 靠谱 /开箱即用
TOUJOURSER
    22
TOUJOURSER  
   2021-12-15 08:58:11 +08:00   ❤️ 2
大佬后续有计划支持 mac 端的嘛
bytesfold
    23
bytesfold  
   2021-12-15 09:08:01 +08:00
牛逼!
QHKZ
    24
QHKZ  
   2021-12-15 09:10:08 +08:00 via iPhone
@lucifer9 OneNote2016 有个设置,开启了之后,鼠标放在分页列表列表上时会有+号出现,可以在两个页面之间插入新的页面
hanswu
    25
hanswu  
   2021-12-15 09:17:26 +08:00
确实牛逼 就是 安装完后没有反应
Silentims
    26
Silentims  
   2021-12-15 09:40:32 +08:00
安装之后需要什么设置吗?安装成功之后,重启 OneNote2016 桌面版之后,写了之后回车和 F5 都没有渲染
cat007
    27
cat007  
   2021-12-15 09:41:19 +08:00   ❤️ 1
帮顶一下,已经换 notion 了
xieyingli
    28
xieyingli  
   2021-12-15 09:41:23 +08:00
我擦。。。你去加入微软啊
ijk0
    29
ijk0  
   2021-12-15 09:43:13 +08:00 via iPhone
mark 等一个 Mac 版
xi_lin
    30
xi_lin  
   2021-12-15 09:46:42 +08:00
强,原来 onenote 的 api 这么开放的吗
xz410236056
    31
xz410236056  
   2021-12-15 09:47:44 +08:00
OneNote 对标的是 notability 和 goodnotes 这种东西吧。
qping
    32
qping  
   2021-12-15 09:48:04 +08:00   ❤️ 1
真是想睡觉有人就送枕头了, 前几天还在找的, 一万个感谢
sarlanori
    33
sarlanori  
   2021-12-15 09:51:27 +08:00
试用了一下,第一篇笔记都还行,新建了一篇笔记就怎么也不肯渲染了,按 `F5` 也没用。

![]( https://ftp.bmp.ovh/imgs/2021/12/e577801040eb7af6.png)
enchilada2020
    34
enchilada2020  
   2021-12-15 09:52:23 +08:00 via Android
卧槽太强了感谢!!!强烈要求楼主打入微软内部支持下 UWP😉
lqcc
    35
lqcc  
   2021-12-15 09:54:04 +08:00
都是牛人!
qping
    36
qping  
   2021-12-15 09:56:58 +08:00
安装以后 office 365 里面的 onenote ,没找到相关配置呢。。。
ugvfpdcuwfnh
    37
ugvfpdcuwfnh  
   2021-12-15 09:58:20 +08:00 via Android
有点厉害啊!有 word 版的吗?
xiozf
    38
xiozf  
   2021-12-15 09:59:53 +08:00
下载装上后直接测试可以使用,无任何设置。
OneNote 2016 在设置的“加载项”里能看到已加载 OneMark 。
供装上后没效果的人参考。
qping
    39
qping  
   2021-12-15 10:02:28 +08:00
能不能出个教程,怎么安装。。。 怎么试都不行。。
CallMeReznov
    40
CallMeReznov  
   2021-12-15 10:06:23 +08:00
ONENOTE FOR WINDOWS10 16001.14326
安装后无效果.
难道必须安装独立版本的 ONENOTE?
bugsnail
    41
bugsnail  
   2021-12-15 10:06:58 +08:00
微软打钱!!!
mafeifan
    42
mafeifan  
   2021-12-15 10:08:00 +08:00 via iPhone
支持一下 有 mac 版更好了
liuzhihang
    43
liuzhihang  
   2021-12-15 10:11:25 +08:00
牛哇
ParfoisMeng
    44
ParfoisMeng  
   2021-12-15 10:13:55 +08:00
去微软吧!
exploreexe
    45
exploreexe  
   2021-12-15 10:29:02 +08:00   ❤️ 1
这他妈微软自己不实现,逼着程序员自己写就很操蛋。
垃圾 OneNote 啥时候能官方支持 Markdown ,还有微软那个笔记导入工具现在压根就没法用,官方也不管,微软💊
cat9life
    46
cat9life  
   2021-12-15 10:29:28 +08:00
强,必须要试一下。
@ccyixia 话说我看到了 Web3
lniwn
    47
lniwn  
   2021-12-15 10:33:43 +08:00
这个很实用
suotm
    48
suotm  
   2021-12-15 10:33:47 +08:00
真的好强大,让我想切回 onenote 了
huyinjie
    49
huyinjie  
   2021-12-15 10:39:02 +08:00 via iPhone
牛逼
outtime
    50
outtime  
   2021-12-15 10:40:14 +08:00
太牛了!现在的富文本点起来真的好烦,期待 mac 端!
WIN2333
    51
WIN2333  
   2021-12-15 10:40:49 +08:00
强,这就滚回 OneNote2016
Zealous
    52
Zealous  
   2021-12-15 10:43:04 +08:00
棒!很实用!
viiii
    53
viiii  
   2021-12-15 10:44:49 +08:00   ❤️ 1
很好很强大, 重新打开了目前很少用的 OneNote 再抢救一下试试
noming
    54
noming  
   2021-12-15 10:45:22 +08:00
最新版的 office365 里的 onenote 也没法加载 onemark
xujinkai
    55
xujinkai  
   2021-12-15 10:46:39 +08:00 via Android
牛逼 极其牛逼
my101du
    56
my101du  
   2021-12-15 10:47:10 +08:00 via iPhone   ❤️ 3
亲, 这边建议你直接去微软 Onenote 组指导那帮人工作呢!

太赞了,期待全平台都能实现的那天。因为我在手机使用场景较多。
gooin
    57
gooin  
   2021-12-15 10:52:49 +08:00
牛牛牛
xujinkai
    58
xujinkai  
   2021-12-15 11:01:15 +08:00
看来 office365 带的 OneNote 加载不了
天杀的微软一个 OneNote 搞这么多版本
RockShake
    59
RockShake  
   2021-12-15 11:15:30 +08:00
OneNote 搞了这么久就不能直接自己出个插件系统么
Delbert
    60
Delbert  
   2021-12-15 11:21:11 +08:00
牛逼~(破音)
circsqua
    61
circsqua  
   2021-12-15 11:24:38 +08:00
能否再制作一个自动调整中英文字体的插件~
xlmo
    62
xlmo  
   2021-12-15 11:25:35 +08:00
装了无法加载

Microsoft® OneNote® 适用于 Microsoft 365MSO (版本 2111 Build 16.0.14701.20240) 64 位
ClutchBear
    63
ClutchBear  
   2021-12-15 11:26:27 +08:00
我赶快来测试一下.
Delbert
    64
Delbert  
   2021-12-15 11:29:17 +08:00
试了下,Office 2021 里面的 OneNote 和 onenote for windows 10 都加载不了
Youkochan0v0
    65
Youkochan0v0  
   2021-12-15 11:32:39 +08:00 via iPad
牛啊楼主
yisany
    66
yisany  
   2021-12-15 11:38:19 +08:00
厉害厉害,点个赞
FrankAdler
    67
FrankAdler  
   2021-12-15 11:47:24 +08:00
好东西
qq316107934
    68
qq316107934  
   2021-12-15 11:56:34 +08:00
Office 365 的 OneNote 无法加载,求助
JerryV2
    69
JerryV2  
   2021-12-15 12:00:51 +08:00
NB ,微软有你就是巨硬!
VersionD
    70
VersionD  
   2021-12-15 12:27:44 +08:00
使用 Office 365 的 OneNote ,无法加载+1 ,楼主有办法适配一下吗,还是需要调整什么 add-ins 的设置?
he1a2s0
    71
he1a2s0  
   2021-12-15 12:37:44 +08:00
历害!装过 OneMore 和 NoteHighlight ,不过都不如这个看起来方便,下载试试
xHliu
    72
xHliu  
   2021-12-15 12:43:14 +08:00 via Android
虽然已经没有用半年了,支持
xlpzhxhh
    73
xlpzhxhh  
   2021-12-15 12:49:01 +08:00
试了一下,latex 支持的公式还不够全。\mathbf \mathcal 这些都不支持
mangoDB
    74
mangoDB  
   2021-12-15 12:53:03 +08:00
感谢楼主,好人一生平安。
derek80
    75
derek80  
   2021-12-15 12:54:35 +08:00
虽然已经不太用了,还是要点个赞。
ccyixia
    76
ccyixia  
OP
   2021-12-15 13:00:56 +08:00
@Just1n
@hanswu
@Silentims
@qping
@qping
@CallMeReznov
@noming
@xlmo
@Delbert
@qq316107934
@VersionD

非常抱歉,之前给的是 32 位的安装程序,可能你们需要安装 64 位的。官网已经更新了,麻烦再去下载试试。如果还有问题,请加群沟通。
jip
    77
jip  
   2021-12-15 13:03:42 +08:00
太强大了!!!
ccyixia
    78
ccyixia  
OP
   2021-12-15 13:04:24 +08:00
@geelaw 大佬出现了!我搜资料的时候搜到过你这个项目,给我带来了很大帮助(顺便把你的博客翻了一遍,太强了),没想到居然在这里相遇了 (✧◡✧)
Akiya
    79
Akiya  
   2021-12-15 13:07:30 +08:00
微软应该给你发奖金
Iaoceot
    80
Iaoceot  
   2021-12-15 13:09:03 +08:00
one note 2016 实际测试,安装完以后 onenote2016 里面加载项没有东西,好像其他人是直接有加载项,咋回事啊?
skykale
    81
skykale  
   2021-12-15 13:10:32 +08:00 via iPhone
强啊!
Itoktsnhc
    82
Itoktsnhc  
   2021-12-15 13:11:40 +08:00
安装了 64 位的,在 Office 365 OneNote 里面显示为非活动应用程序加载项
ccyixia
    83
ccyixia  
OP
   2021-12-15 13:14:29 +08:00
@lemonloving 哈哈,老黄瓜如今新刷了绿漆,何日君再来?:)
he1a2s0
    84
he1a2s0  
   2021-12-15 13:14:38 +08:00
测试了,卸载了 32 位重新装 64 位,安装后在加载项中启用 OneMark 才正常
hahawode
    85
hahawode  
   2021-12-15 13:16:16 +08:00
不行没有效果

Microsoft® OneNote® 适用于 Microsoft 365MSO (版本 2111 Build 16.0.14701.20206) 64 位
.net v4.0.30319
ccyixia
    86
ccyixia  
OP
   2021-12-15 13:16:29 +08:00
@Itoktsnhc 看看上面 @he1a2s0 这位兄弟说的,可能要在加载项中启用 OneMark 才行。如果还有问题,加微信群吧。
ccyixia
    87
ccyixia  
OP
   2021-12-15 13:17:00 +08:00
ccyixia
    88
ccyixia  
OP
   2021-12-15 13:17:40 +08:00
@Iaoceot 试试安装 64 位的
hahawode
    89
hahawode  
   2021-12-15 13:19:35 +08:00
卸载重装 现在可以了
seaswalker
    90
seaswalker  
   2021-12-15 13:20:50 +08:00 via iPhone   ❤️ 1
awesome man
lemonloving
    91
lemonloving  
   2021-12-15 13:24:16 +08:00 via Android
@ccyixia 主要喜欢上了 Obisidian 的双向链接,之后考虑靠这个插件把 Onenote 当做知识沉淀的中间站点。谢谢你的开发,这的 tql !
ccyixia
    92
ccyixia  
OP
   2021-12-15 13:26:09 +08:00
@dunn
@ddzy
@TOUJOURSER
@ijk0
@mafeifan
@outtime

mac 端估计有点悬,几乎所有 office 的 VSTO 插件都没法直接在 mac 上运行。不过我个人也是需要 mac 端的,后面看看有没有其他技术方案,即使能实现部分功能,也是有很大帮助和提升的。
ccyixia
    93
ccyixia  
OP
   2021-12-15 13:34:49 +08:00
@lemonloving 双向链接 OneNote 也不是不能实现,总之我会想办法把各种牛逼的功能加进来的,哈哈~不是说服你哈,只是单纯讨论。
u823tg
    94
u823tg  
   2021-12-15 13:39:33 +08:00
老哥 666.试用了不错
perpetually
    95
perpetually  
   2021-12-15 13:40:50 +08:00   ❤️ 1
OneNote 搭载了极为先进的 markdown 格式
spacebound
    96
spacebound  
   2021-12-15 13:44:05 +08:00
终于出现了,太强了!
zhq566
    97
zhq566  
   2021-12-15 13:45:09 +08:00
好用 期待不断完善 感谢!
VersionD
    98
VersionD  
   2021-12-15 13:45:15 +08:00
@ccyixia 已试用,感觉还行,体验一段时间再说,顺便问问楼主这玩意儿未来会有什么收费标准吗。。毕竟有可能在公司电脑上使用
ccyixia
    99
ccyixia  
OP
   2021-12-15 13:45:43 +08:00
@xlpzhxhh 感谢反馈,请问能把测试不成功的 LaTex 发我试一下吗?我在网上搜了一个,好像没问题

$$
\begin{aligned} \nabla \times \vec{\mathbf{B}} -\, \frac1c\, \frac{\partial\vec{\mathbf{E}}}{\partial t} & = \frac{4\pi}{c}\vec{\mathbf{j}} \\ \nabla \cdot \vec{\mathbf{E}} & = 4 \pi \rho \\ \nabla \times \vec{\mathbf{E}}\, +\, \frac1c\, \frac{\partial\vec{\mathbf{B}}}{\partial t} & = \vec{\mathbf{0}} \\ \nabla \cdot \vec{\mathbf{B}} & = 0 \end{aligned}
$$

底层的渲染都是支持的,只是翻译到微软 office 数学公式这边,可能会有点差异,出现问题一个个解决就好:)
ccyixia
    100
ccyixia  
OP
   2021-12-15 13:49:29 +08:00
@xlpzhxhh 不过我试过很多公式,确实有各种微小的差异或不兼容,只能达到能看的级别,要想完美展示,还是需要渲染成图片。这个后面会加入支持的。
1  2  3  4  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2341 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 49ms · UTC 15:45 · PVG 23:45 · LAX 08:45 · JFK 11:45
Developed with CodeLauncher
♥ Do have faith in what you're doing.