增强编辑器插件已发布,欢迎大家使用

项目地址

siyuan-plugin-enhance-editor

为什么要写这个插件,参考 用 codemirror 小写了个 latex 公式的提示插件 这篇帖子

目前通过思源本体的集市就可以进行安装

上架的插件相比之前帖子里的改变了什么

  1. 已经可以和数学增强插件联动了,你可以先在编辑器里进行具有代码提示的插件,然后在下方的编辑器中进行修改或者其它一些更方便的操作。
    view.gif

    需要注意的是,通过数学增强插件修改后,本身的 LaTex 公式会失去格式(例如手动打的回车,这点可能还需要研究一下,或者之后可以做一个格式化的快捷键

  2. 编辑器中的快捷键目前设定为 vscode 中的快捷键,当然一般来说也用不到那些,但是比较常用的例如 ctrl+z, ctrl+y 之类的已经可以用了,而且不会触发思源本体的全局快捷键

  3. 通过 ctrl+enterctrl+shift+enter 可以触发原本编辑器中的“在下方插入块”和“在上方插入块”

  4. 按下两次 esc 会退出编辑器(不改成按下一次就触发是因为不太清楚思源里面退出的操作,按两次好像也没那么麻烦)

  5. 每次弹出编辑器的时候会自动调整暗色和亮色
    image.png

之后继续改进的方向

  1. 在使用过程中我会继续删除提示中不属于 KaTex 的部分(因为用的是 MathJax 的关键词库),另外之后可能会增加一些可以自行配置的部分(比如把 json 配置文件移动到 public 文件夹,可以自己添加或者删除代码提示关键词或者 snippets 之类的,KaTex 的宏毕竟没办法复制到正经 LaTex 文件里)
  2. 对数学增强插件进行修改,现在已经有了官方的触发点击不可编辑块的事件,不再需要通过监听整个编辑器实现
  3. 实现数学增强插件和本插件的联动,比如说下方编辑器光标所在位置会在上方高亮,这样的话可能需要修改 mathlive 本体
  4. 增强编辑器的代码格式化(自动判断环境和 \\ 添加回车和制表符之类的,不指望能做好)
  5. 支持 HTML 块和 sql 块(包括其中的 js)的代码提示和高亮(这一点应该 codemirror 本身会有已经开发好的东西,之后看看),不过需要思源本体能够提供 open-noneditableblock 事件触发的更多信息
  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    22250 引用 • 88929 回帖
  • 插件
    98 引用 • 575 回帖 • 3 关注
  • LaTeX

    LaTeX(音译“拉泰赫”)是一种基于 ΤΕΧ 的排版系统,由美国计算机学家莱斯利·兰伯特(Leslie Lamport)在 20 世纪 80 年代初期开发,利用这种格式,即使使用者没有排版和程序设计的知识也可以充分发挥由 TeX 所提供的强大功能,能在几天,甚至几小时内生成很多具有书籍质量的印刷品。对于生成复杂表格和数学公式,这一点表现得尤为突出。因此它非常适用于生成高印刷质量的科技和数学类文档。

    12 引用 • 54 回帖 • 71 关注
  • 数学
    32 引用 • 86 回帖 • 3 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • 支持大佬,插件好好用!

  • 其他回帖
  • WingDr 1

    感谢建议,这个实现起来好像并不是特别困难,我之后会尝试

    另外我猜你想要的是 math-enhance 插件,这个插件使用的 mathlive 有已经开发好的 shortcut 输入功能(虽然得在代码里添加,但是这个文档里有可以试用的部分),之后我也会尝试在两方面进行更新

  • EmptyLight

    没刷到这个帖子在上一个帖子发了回复,不过内容和改进方向比较重复,我就不复读一遍了。

    这里说一点可能存在的问题。

    数学增强插件里面的渲染是用#shadowroot 包装的,普通的 css 和 js 不能作用于数学增强插件的显示框(问就是我试过)

    数学增强插件不能渲染 katex 宏的内容,如果有自己定义的关键词,增强插件的渲染会有问题(可能对高亮有影响?)

    1 回复
  • 太酷了!

  • 查看全部回帖