关于思源笔记块引平替脚注的改进建议

本贴最后更新于 342 天前,其中的信息可能已经时移世异

GitHub issue:块引导出脚注对*引用的优化 · Issue #11247 · siyuan-note/siyuan (github.com)

目前块引导出脚注只适配了对选中一句话进行引用
Clip_2024-05-04_10-51-44
在 GitHub 预览,效果是预期内的,很不错
Clip_2024-05-04_10-52-12
但是这种选中一句话的引用有一个问题,如果我想要一句话引用多个出处就做不到了,所以我会使用 * 作为锚文本来引用,比如下面这样子:
Clip_2024-05-04_11-02-32
但是目前思源对这种引用的脚注导出没有很好适配,导出的脚注依然有 *建议锚文本为 * 的,如果设置块引导出为脚注,则将 * 删除,直接为脚注引用语法
Clip_2024-05-04_11-01-57

此外,如果想用块引在思源笔记内实现脚注功能,要么块引新建文档要么基于段落块引用块引选中文字

新建文档的问题有两个

  1. 新建那么多脚注块引文档不切实际,就算不在乎文档树有这些文档,考虑到文档在搜索的优先级,这些文档也会影响到日常搜索体验
  2. 块引选中文字新建文档会导致一句话只能引用一个引用,不好再引用另一个了。

而基于段落块引用现在的问题主要在于在文章最后放备注内容,引用完了之后,这些备注内容依然会导出,要解决只能把这些块放到子文档里去,不是那么方便。
所以我还想建议,一个垂直超级块如果命名为脚注或者 Footnotes 的块则不导出(这个命名可以官方自定义,或者在导出设置里添加一个选项,凡是块命名为 xxx 的就都不导出)
Clip_2024-05-04_11-16-41

建议 1

  1. 块引用导出,锚文本为 * 的,如果设置块引导出为脚注,则将 * 删除,直接为脚注引用语法。因为没人会对 * 进行备注,* 只是一个占位符号,而且官方的块引转换就包含的转换锚文本为 *,可以看作是一个规范。
  2. 为了方便使用笔记末尾的段落块来引用,实现脚注功能,建议一个块如果命名为脚注或者 Footnotes 的块则不导出(这个命名可以官方自定义,或者在导出设置里添加一个选项,凡是块命名为 xxx 的就都不导出)这个建议也不仅仅可以用于笔记末尾段落块引用这个场景,还可以用于屏蔽某个块,毕竟个人笔记要导出,有些块可能是个人的备注等等,不希望导出。

改进这两点之后,思源的块引就完全可以代替脚注功能了

建议 2

还有一个想法,块引转换添加一个转换为 [*],锚文本为 [*] 的,只要引用的块在本文章内,就不在正文导出,只导出为脚注,并且导出时块引的锚文本删除,替换为脚注引用语法
这个会比要用块命名来避免导出更方便,[*] 这个文本也是参考脚注语法,或者改成 [^*] 就更像了。改成这样的话,使用块引的体验就几乎和 Markdown 脚注体验一致了

这样就意味着我要引用一篇文献,不一定要先把这篇文献放在文章末尾,而是直接可以在该段下面添加,然后块引进行引用,就完事。写完之后再把所有文献列表汇总放在末尾也不迟。
Clip_2024-05-04_11-33-16

关于思源笔记块引导出脚注的改进建议

多选 公开 永不结束 7 票
支持块引锚文本为 `*` 的,导出脚注时,不导出 *
28% 2 票
支持设置某个块不导出
14% 1 票
支持块引转换添加一个转换为 `[*]`,可以看作就是脚注的平替
57% 4 票

  • 思源笔记

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

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

    25024 引用 • 103101 回帖 • 1 关注
3 操作
Achuan-2 在 2024-05-04 12:29:20 更新了该帖
Achuan-2 在 2024-05-04 12:18:12 更新了该帖
Achuan-2 在 2024-05-04 11:57:53 更新了该帖

相关帖子

欢迎来到这里!

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

注册 关于
请输入回帖内容 ...

推荐标签 标签

  • 阿里巴巴

    阿里巴巴网络技术有限公司(简称:阿里巴巴集团)是以曾担任英语教师的马云为首的 18 人,于 1999 年在中国杭州创立,他们相信互联网能够创造公平的竞争环境,让小企业通过创新与科技扩展业务,并在参与国内或全球市场竞争时处于更有利的位置。

    43 引用 • 221 回帖 • 70 关注
  • Swift

    Swift 是苹果于 2014 年 WWDC(苹果开发者大会)发布的开发语言,可与 Objective-C 共同运行于 Mac OS 和 iOS 平台,用于搭建基于苹果平台的应用程序。

    36 引用 • 37 回帖 • 546 关注
  • Facebook

    Facebook 是一个联系朋友的社交工具。大家可以通过它和朋友、同事、同学以及周围的人保持互动交流,分享无限上传的图片,发布链接和视频,更可以增进对朋友的了解。

    4 引用 • 15 回帖 • 440 关注
  • Bug

    Bug 本意是指臭虫、缺陷、损坏、犯贫、窃听器、小虫等。现在人们把在程序中一些缺陷或问题统称为 bug(漏洞)。

    76 引用 • 1742 回帖
  • 强迫症

    强迫症(OCD)属于焦虑障碍的一种类型,是一组以强迫思维和强迫行为为主要临床表现的神经精神疾病,其特点为有意识的强迫和反强迫并存,一些毫无意义、甚至违背自己意愿的想法或冲动反反复复侵入患者的日常生活。

    15 引用 • 161 回帖
  • CodeMirror
    2 引用 • 17 回帖 • 157 关注
  • sts
    2 引用 • 2 回帖 • 225 关注
  • OpenResty

    OpenResty 是一个基于 NGINX 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。

    17 引用 • 54 关注
  • Office

    Office 现已更名为 Microsoft 365. Microsoft 365 将高级 Office 应用(如 Word、Excel 和 PowerPoint)与 1 TB 的 OneDrive 云存储空间、高级安全性等结合在一起,可帮助你在任何设备上完成操作。

    5 引用 • 34 回帖
  • OneDrive
    2 引用
  • TextBundle

    TextBundle 文件格式旨在应用程序之间交换 Markdown 或 Fountain 之类的纯文本文件时,提供更无缝的用户体验。

    1 引用 • 2 回帖 • 81 关注
  • 前端

    前端技术一般分为前端设计和前端开发,前端设计可以理解为网站的视觉设计,前端开发则是网站的前台代码实现,包括 HTML、CSS 以及 JavaScript 等。

    245 引用 • 1338 回帖
  • 倾城之链
    23 引用 • 66 回帖 • 161 关注
  • RemNote
    2 引用 • 16 回帖 • 8 关注
  • Notion

    Notion - The all-in-one workspace for your notes, tasks, wikis, and databases.

    10 引用 • 76 回帖
  • 数据库

    据说 99% 的性能瓶颈都在数据库。

    345 引用 • 742 回帖 • 2 关注
  • Love2D

    Love2D 是一个开源的, 跨平台的 2D 游戏引擎。使用纯 Lua 脚本来进行游戏开发。目前支持的平台有 Windows, Mac OS X, Linux, Android 和 iOS。

    14 引用 • 53 回帖 • 552 关注
  • DevOps

    DevOps(Development 和 Operations 的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。

    57 引用 • 25 回帖 • 8 关注
  • Sym

    Sym 是一款用 Java 实现的现代化社区(论坛/BBS/社交网络/博客)系统平台。

    下一代的社区系统,为未来而构建

    524 引用 • 4601 回帖 • 703 关注
  • 知乎

    知乎是网络问答社区,连接各行各业的用户。用户分享着彼此的知识、经验和见解,为中文互联网源源不断地提供多种多样的信息。

    10 引用 • 66 回帖
  • Q&A

    提问之前请先看《提问的智慧》,好的问题比好的答案更有价值。

    9531 引用 • 43396 回帖 • 104 关注
  • 学习

    “梦想从学习开始,事业从实践起步” —— 习近平

    172 引用 • 516 回帖
  • CSS

    CSS(Cascading Style Sheet)“层叠样式表”是用于控制网页样式并允许将样式信息与网页内容分离的一种标记性语言。

    199 引用 • 541 回帖 • 1 关注
  • OkHttp

    OkHttp 是一款 HTTP & HTTP/2 客户端库,专为 Android 和 Java 应用打造。

    16 引用 • 6 回帖 • 83 关注
  • CentOS

    CentOS(Community Enterprise Operating System)是 Linux 发行版之一,它是来自于 Red Hat Enterprise Linux 依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定的服务器以 CentOS 替代商业版的 Red Hat Enterprise Linux 使用。两者的不同在于 CentOS 并不包含封闭源代码软件。

    239 引用 • 224 回帖
  • 正则表达式

    正则表达式(Regular Expression)使用单个字符串来描述、匹配一系列遵循某个句法规则的字符串。

    31 引用 • 94 回帖
  • HHKB

    HHKB 是富士通的 Happy Hacking 系列电容键盘。电容键盘即无接点静电电容式键盘(Capacitive Keyboard)。

    5 引用 • 74 回帖 • 499 关注