朋友,你好!
借此页面,向您推介蚕子原创的两款 Obsidian(以下简称 Ob)插件【多彩预览】和【增强编辑】,希望能对Ob软件使用有所帮助。
蚕子的编程能力有限,源码未经ts或js等平台开发,参考 RTL Support、Sort And Permute Lines、FootNotes 等插件代码后直接魔改 main.js 文档而成,敬请国内插件开发者批评指正,感谢!
我们先来了解一下【多彩预览】插件,目前版本为 v0.0.8,主要支持以下功能:
一、按下 ESC 键切换编辑/预览模式
虽然 Ob 自带 Ctrl+E 快捷键用来切换编辑/预览模式,也允许用户自由指定新的按键组合,但是Ob不允许指定单键做为快捷键,而指定 ESC 单键来切换模式,原因有二:
- ESC 键处在键盘左上角,我们的手指更容易就位,同时也符合常见软件的操作习惯;
- 在用新键切换到预览模式之前,我们有更多机会来处理源文本,这为后续功能做好了铺垫。
二、判断末尾信息,强制切换模式
在 Ob 的所见即所得(WYSIWYG)技术尚未实现之时,很多用户希望减少模式切换的操作量,将DataView查询、MOC索引等页面保持在预览模式,而把那些频繁修改的日记、纯文字页面保持在编辑模式。
为此,蚕子设想过很多种方案,包括设置所有页面默认进入预览模式、将每则笔记的最终模式记录到数据文件中、在笔记 YAML 或正文中留下特征信息进行判断并切换模式等,最终敲定以下方案:
打开笔记时,判断笔记末尾的文本信息来自动切换编辑/预览模式
- 如果笔记末尾有 三个空格(代表撑开显示窗),会强制进入预览模式;
- 如果笔记末尾有 三次换行(代表增加输入点),则自动进入编辑模式。
三、按下 Shift+ESC 键左右拆分窗口
作为 Ob 的功能特色,蚕子希望窗口布局和模式切换的操作更加便捷,特别增加了以下功能:
按下 Shift+ESC 快捷键后,当前笔记会强制进入编辑模式,同时在右侧拆分一个新窗口,并强制进入预览模式,便于我们对笔记进行文本编辑和效果查看。
四、指定多组关键词以不同背景色进行预览
其实,前面三项并不是【多彩预览】插件的核心功能,多彩预览是指笔记正文在预览模式下显示为多种颜色以方便我们查阅。
虽然我们可以用<span...></span>等 Html 语法对文字进行设色,但是操作繁琐,对源文本污染较重,特别是笔记中需要标色的文字较多时,更需要一种自动化添加和去除设色语法的方案。
如上图,我们需要在【多彩预览】设置窗口中【启用此项,以下设置方可生效】。
可以在【1-5组关键词】的输入框中指定颜色和词组,也可以在第1项【正则表达式】处编写匹配数据或特定文本的表达式,注意格式必须符合要求方可生效。
当按下 ESC 键后,Ob 笔记从编辑模式(纯色背景)切换到预览模式之前,插件会根据面板中的参数及表达式来对正文中特定的文字进行Html语法替换,最终显示为多彩背景的预览效果。
提示:可以用鼠标点击【模式切换】按钮来查看一下插件对源文本做了哪些自动替换。
再次按下 ESC 键,这些自动替换出现的Html语法字符会自动清除,并不会影响原文编辑。
结束语
本文对【多彩预览】插件的功能做了简单介绍,如有不妥不尽之处,敬请指出。
期待您能提出关于预览模式的更多建议,我们共同努力,在所见即所得实现之前,打造更加个性的多彩预览效果。
欢迎加入Obsidian交流QQ群获取插件文件包。
蚕子(QQ:312815311)于2021-08-25
功能更新(2021-08-25)
应Obsidian群的群友建议,对【多彩预览】插件进行功能优化,现已支持【前缀bg设置背景色、无前缀设置文字颜色】。
这样同一组关键词和颜色值,可以被我们指定为文字颜色或背景颜色,让预览效果更加丰富。下图是英文笔记中的多彩效果。
为满足不同用户的设色需求,最新版本已经支持设置6组关键词格式,敬请测试。