思源笔记丨写了一个插件,用块引实现脚注和备注

Github:Achuan-2/siyuan-plugin-blockref-footnote: 用块引实现脚注备注

✨ 功能

使用思源的块引实现脚注和备注功能

使用 Tsundoku 主题演示,对嵌套引述块样式进行了优化

📝 使用介绍

插件需要思源笔记版本 >3.1.12

本插件支持高度自定义化,支持的设置如下:

  • 脚注存放位置:可以设置存放在当前文档或者指定文档,默认为 当前文档

  • 选中文本的样式:可以为选中文本添加加粗、高亮、斜体、下划线样式,默认:无样式

  • 插入脚注的顺序:顺序或者倒序,默认:顺序

  • 脚注标题:设置存放脚注的标题名,默认:脚注

  • 脚注块引锚文本:设置脚注引用的锚文本,默认:

  • 脚注内容模板:设置脚注的模板,推荐使用引述块或超级块组合,保证脚注内容属于同一个块。 ${selection} 表示选中文本的内容,${content} 代表脚注内容占位

    • 嵌套引述块模板

      >> ${selection}
      >> 
      > 💡${content}
      
    • 竖向超级块组合模板

      {{{row
      > ${selection}
      
      ${content}
      }}}
      

支持同时删除脚注引用和脚注内容,可以在脚注引用右键菜单,点击【插件-删除脚注】

🙏 致谢

❤️ 用爱发电

穷苦研究生在读ing,如果喜欢我的插件,欢迎给 GitHub 仓库点 star 和捐赠,这会激励我继续完善此插件和开发新插件。

  • 思源笔记

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

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

    22926 引用 • 92174 回帖 • 1 关注
2 操作
Achuan-2 在 2024-11-20 12:33:30 更新了该帖
Achuan-2 在 2024-11-19 12:49:35 更新了该帖

相关帖子

优质回帖
  • Achuan-2 2 1 赞同

    @participants

    v1.0.6 / 2024.11.20

    • ✨ 脚注内容模板新增 ${refID},代表选中文本所在的块 ID,现在可以通过模板插入选中文本所在的块链接了,方便在脚注内容里直接跳转到原来的块
      {{{row
      > ${selection} [[↩️]](siyuan://blocks/${refID})
      
      ${content}
      }}}
      {: style="border: 2px dashed var(--b3-border-color);"}
      

    思源笔记脚注插件支持直接跳转到原来的块.gif

  • Achuan-2 1 1 赞同

    要用思源笔记 3.1.12dev 版本

    插件添加工具栏的 api 有变动,我用了最新的 api,不适配旧版本

  • Achuan-2 1 1 赞同

    @participants

    插件更新 v1.0.5 / 2024.11.20

    • ✨ 支持设置脚注块引为块超链接
    • ✨ 支持设置脚注放在子文档

    PixPin20241120212520.png

欢迎来到这里!

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

注册 关于
请输入回帖内容 ...
  • Achuan-2 1

    v1.1.2 /2024.11.24 @participants

    • 🐛 过滤掉脚注文本的正则表达式优化
    • ✨ 选中文本添加自定义样式,现在支持对重叠文字添加不同脚注时,能保留不同脚注的选中文字样式,删除脚注时,只删除当前脚注选中的文本,不影响其他脚注选中文字的样式
    • ✨ 支持添加快捷键,默认快捷键 ctrl+shift+F,可在设置自行修改
  • 其他回帖
  • Achuan-2 1

    v1.1.6 / 2024.11.30 脚注支持有序编号! @participants

    • 💄 在插件设置里添加自定义 css 设置

    • ✨ 添加脚注弹出插件自定义的弹窗,进行输入脚注内容,可以避免使用块引浮窗不方便定位插件创建的单个块的问题,也能减少块引浮窗显示的延迟感

    • ✨ 脚注支持有序编号

      • 支持排序脚注编号
      • 支持排序脚注内容块
      • 支持删除后进行编号
      • 添加自动排序设置
      • 命令面板添加重新排序命令

  • Achuan-2

    v1.1.3 / 2024.11.24 @participants

    ✨ 脚注内容模板支持渲染 sprig 语法,现在可以在脚注内容中插入当前时间了

    >> ${{now | date "20060102 15:04:05"}} 摘抄
    >> ${selection} [[↩️]](siyuan://blocks/${refID})  
    >>   
    > 💡${content}
    

    PixPin20241124150511.png

    1 操作
    Achuan-2 在 2024-11-24 15:05:14 更新了该回帖
  • syuer9528

    叠甲:以下仅作为备注相关功能设计的讨论,非 feature request。

    点击“备注”按钮后,自动指定文档名这个功能要考虑的情况太多了,我目前想到的一些情况,想想都头大哈哈:

    脚注 、备注、读后感(这个相当于一种需要区别对待的特殊引用,和一般的脚注、备注有很本质的区别),不应被它的表现形式也是“引用”(或链接)所迷惑。

    当指定文档时:指定到哪个笔记本?如果要手动了怎么办?有的自动有的手动怎么办?那么就是不是需要在文档属性中指定一个自定义字段用于:处理脚注的一些细节、用于星图过滤……如果原文档中已经有了备注怎么办?需要不需要把已有的移到指定的文档中?怎么移动?

    如果是固定的一个文档,为什么要由它来统一管理所有的备注?

    所以是不是要指定的其实是一个笔记本?

    备注是不是可以涵盖浮评(COMMENT)功能?要不要显示回复时间?要不要用递归的大纲呈现回复关系(类似“回复盖楼”功能)?(这个是不是属于协作功能方面的设计了……目前设计这个笔记软件并不多)

    然后是细节:

    原文中的锚是不是应该是被引用文本?而不是那个角标?或者两者是可选?

    然后就是原文和备注之间应该是“链接”,然后备注到原文也是一个链接。其实就是手动建立非“引用”的两个链接,两个对接的锚。相当于手动添加两个链接,一个是原文指向备注,另一个是备注指向原文。

    仅作技术层面的交流探讨,感谢楼主辛勤制作的插件。

    2 操作
    syuer9528 在 2024-11-20 14:39:32 更新了该回帖
    syuer9528 在 2024-11-20 14:39:03 更新了该回帖
  • 查看全部回帖
Achuan-2
给时间以生命而不是给生命以时间,如果你喜欢我的分享,欢迎给我买杯咖啡 https://www.yuque.com/achuan-2 上海