简单了解onetastic宏开发
onetastic宏与VBA相近,接下来基于一个实例简单了解一下onetastic的宏开发
我习惯用OneNote编写笔记,并且使用缩进进行排版,但是当我将onenote的笔记复制到博客园的markdown编辑器时,发现缩进都没了。(当然,现在如果我要把OneNote笔记转移到博客园,那么我会选择使用TinyMCE5编辑器)
OneNote中的内容如图示意:
这是复制到博客园的markdown编辑器的效果:
这其实涉及一个老生常谈的问题——markdown中如何缩进,答案是使用“   "
在段落前加上一个“   ”就等价于一个缩进
所以只需要在OneNote的段落文本前根据缩进量加上“   ”就行了,那么要怎么加呢?
考虑到笔记中存在大量的缩进,而且每个缩进的缩进量不同,所以最好的办法是使用onetastic的宏进行自动添加。
具体的思考如下:
首先百度了一下onetastic的宏代码,看了一下别人的教程,通过查看官方文档以及例子初步掌握语法(如果之前接触过VBA,那么会感觉很熟悉)
开发onetastic宏的官方帮助文档
Welcome - Onetastic Macro Documentation (getonetastic.com)
相关的中文教程
onenote三方插件Onetastic ②:内置对象与函数解析 | 小斯想 (cas01.com)
从教程以及官方文档中可以知道onetastic能读取到段落Paragraph的缩进indent,此时可以先去看看有没有人已经造了轮子,查看onetastic的商店
输入MD或者markdown 但是都没有结果,搜索缩进也没有结果,但是indent还是有点收获。
通过查看别人写好的“Remove All……"的代码,发现就是很简单的foreach循环,所以直接在别人的代码上进行修改,添加if判断,然后直接使用语法糖 + 进行字符串拼接,最终得到了需要的自定义宏
虽然有点麻烦,但是效果还是不错的:
效果图:
此时直接复制到博客园效果: