GitHub issue:块引导出脚注对*引用的优化 · Issue #11247 · siyuan-note/siyuan (github.com)
目前块引导出脚注只适配了对选中一句话进行引用
在 GitHub 预览,效果是预期内的,很不错
但是这种选中一句话的引用有一个问题,如果我想要一句话引用多个出处就做不到了,所以我会使用 *
作为锚文本来引用,比如下面这样子:
但是目前思源对这种引用的脚注导出没有很好适配,导出的脚注依然有 *
,建议锚文本为 *
的,如果设置块引导出为脚注,则将 *
删除,直接为脚注引用语法。
此外,如果想用块引在思源笔记内实现脚注功能,要么块引新建文档要么基于段落块引用块引选中文字
新建文档的问题有两个
- 新建那么多脚注块引文档不切实际,就算不在乎文档树有这些文档,考虑到文档在搜索的优先级,这些文档也会影响到日常搜索体验
- 块引选中文字新建文档会导致一句话只能引用一个引用,不好再引用另一个了。
而基于段落块引用现在的问题主要在于在文章最后放备注内容,引用完了之后,这些备注内容依然会导出,要解决只能把这些块放到子文档里去,不是那么方便。
所以我还想建议,一个垂直超级块如果命名为脚注或者 Footnotes 的块则不导出(这个命名可以官方自定义,或者在导出设置里添加一个选项,凡是块命名为 xxx 的就都不导出)
建议 1
- 块引用导出,锚文本为
*
的,如果设置块引导出为脚注,则将*
删除,直接为脚注引用语法。因为没人会对*
进行备注,*
只是一个占位符号,而且官方的块引转换就包含的转换锚文本为*
,可以看作是一个规范。 - 为了方便使用笔记末尾的段落块来引用,实现脚注功能,建议一个块如果命名为脚注或者 Footnotes 的块则不导出(这个命名可以官方自定义,或者在导出设置里添加一个选项,凡是块命名为 xxx 的就都不导出)这个建议也不仅仅可以用于笔记末尾段落块引用这个场景,还可以用于屏蔽某个块,毕竟个人笔记要导出,有些块可能是个人的备注等等,不希望导出。
改进这两点之后,思源的块引就完全可以代替脚注功能了
建议 2
还有一个想法,块引转换添加一个转换为 [*]
,锚文本为 [*]
的,只要引用的块在本文章内,就不在正文导出,只导出为脚注,并且导出时块引的锚文本删除,替换为脚注引用语法
这个会比要用块命名来避免导出更方便,[*]
这个文本也是参考脚注语法,或者改成 [^*]
就更像了。改成这样的话,使用块引的体验就几乎和 Markdown 脚注体验一致了
这样就意味着我要引用一篇文献,不一定要先把这篇文献放在文章末尾,而是直接可以在该段下面添加,然后块引进行引用,就完事。写完之后再把所有文献列表汇总放在末尾也不迟。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于