siyuan 笔记缩进逻辑混乱

使用 siyuan 两个月,用于实验记录和读书笔记。我同时也是 ob 和 logseq 的用户,笔记涉及很多有序及无序列表,会涉及各种大小标题,和列表的层级缩进。我用 sy 时总觉得哪里不顺手但又说不上来。

siyuan 对于层级和缩进的逻辑管理极其混乱,尤其是 tab 和 shift+tab 无法达到我预期的缩进和反缩进效果。请问各位如何解决这个问题?

如果大家需要录屏我后续会放个录屏,但是因为这个问题太普遍,我认为大家也许经历过,或许大家也有比较好的解决方法。sy 的编辑问题包括但不限于:

  1. 我想把某一行文字反缩进到上一层级(shift+tab),却连带着上面几行一起反缩进了,再按 tab 时却只对这一行缩进,siyuan 为何有时将好几行视为一个 block,有时将某一行视为一个 block??(这令我十分愤怒)
  2. 当我引用多行文字,但想将最后几行变为普通文本时,我似乎无法用任何快捷键做到,只能删除再粘贴成普通文本。
  3. 在我使用鼠标拖动某一行至其他文字下方时,这一行文字并未变成子层级,而是和目标文字左右分立(我知道这是 sy 这几年的新功能,但为什么我把文字拖到其他 block 的下方,它却会跑到别的地方),格式完全混乱,编辑体验和我写论文时折腾 word 排版有的一拼!

我希望 siyuan 对文字的处理逻辑是:

  1. 明确层级关系之间缩进和反缩进的管理,不要像 word 文档一样牵一发会动全身;
  2. 明确 block 的定义。例如 notion 中按 enter 时就是换成一个新的 block(换段),对其他 block 的任何格式和层级的操作不影响其他 block;按 shift+enter 则是仍在 block 内(仅换行不换段)。
  • 思源笔记

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

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

    20896 引用 • 81937 回帖 • 1 关注
2 操作
spiljj 在 2024-09-04 10:48:23 更新了该帖
spiljj 在 2024-09-04 10:47:18 更新了该帖

相关帖子

欢迎来到这里!

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

注册 关于
请输入回帖内容 ...
  • wilsons 1 赞同

    1,3 未发现问题,建议录屏展示重现步骤

    2 image.png

  • llej 1 1 赞同
    1. 可能是软换行?(shift+enter)这种情况下多行文本是在同一块的,不然应该回车建立的是多个块
    2. 可以 ctrl+x 然后 ctrl + shift + v
    3. 是否目标文本已在超级块中了,这时将块拖动到它的后面,默认是会水平分布的。将文本拖放到其他文本下方并不会变为子级,而是和该元素同级的,布局就得看他们的父级了。
    1 回复
  • spiljj

    感谢解答:

    1. 我一直是 enter 的, 除非我在创建无需列表要在同一 bullet 下换段才会用软换行. 这也是很疑惑的点, 有时好几行在同一个小标题下的时候, 更改一行的缩进会同时改动好几行, 所以我猜测有时 sy 会把一个副标题下的多行正文都当作同一个块
    2. 我是这样操作的, 我只是觉得不太方便, 如过能用某些快捷键解决就更好了
    3. 我没有主动触发过超级快

    问这个问题主要是发现 sy 很多文本编辑的行为和 logseq 差太远了, logseq 是大纲式笔记, 我又特别喜欢把文本归入层级, 我用 sy 主要为了管理一些文档(利用其数据库功能).

  • royc1 1 赞同

    直接录屏会好一点

  • 依然还是建议录屏看看问题

  • yawei 1 1 赞同

    录屏看一下吧。

    首先要明确一下你提的这三个问题是不是都是在使用列表(Outline)时遇到的,据我所知文字块(block)是不能锁进的。

    思源的列表逻辑参考的 Workflowy。

    第三条应该是触发了超级块。

  • 请为这三个问题分别录屏演示一下完整的操作步骤,以便分析

  • spiljj

    @participants

    感谢各位的注意,我上传了两个录屏,我所用的快捷键都展示在屏幕上了。

    第一个录屏对应的是场景 1,展示的是 shift+tab 我只想反缩进一行,sy 却把整个 bullet 全缩进了(英文的这行与上面几行是硬换行不是软换行),但当我按 tab 时,却只缩进了这一行而不是整个 bullet,想要恢复格式只能撤销撤销,我认为正确的逻辑应该是帮我只把这一行缩进。

    第二个录屏对应的是场景 1 的变体,展示的是我换行的时候的文字总要带个“a”,我各种删除和缩进操作以后才终于变成了正文(我自己都不知道咋办到的)。我知道可以选中文本右键将列表改为段落格式,但想必用 sy 的大多原来是 md 用户,追求的就是一个清晰的层级和格式编辑逻辑?总之 sy 的逻辑让我不太能 get 到,不知这些问题是不是 sy 格式私有化后出现的。

    再次感谢大家解答!!

    屏幕录制 1.mov
    屏幕录制 2.mov

    1 回复
  • ACai 1 1 赞同

    让我猜猜,

    视频 1

    最普通的段落块应该是不能缩进的,猜测段落块缩进是 bug。

    更新下,还是等其他佬来回答

    视频 2

    image.png

    a. 应该是主题原因,把列表项的子项 1. 显示为了 a.,这种情况你按下 enter 后按 Backspace 即可。我建议只在列表项中使用缩进。

  • royc1 1 1 赞同

    使用列表的时候,不要用退格键把列表项给删了

  • JeffreyChen 1 1 赞同

    视频一:

    1. 缩进只能应用于一整个列表项块(一个列表项块可以包含多个子内容块),一个列表项块里的所有子块都是共同缩进的;
    2. 视频中你按下 Shift+Tab 之后是把首层的列表项块删除了,所以就不能再缩进了;
    3. 再之后你按 Tab 只是在段落块内插入了一个制表符而已,不是缩进。只有列表项块可以缩进。

    视频二:

    在下图这个时候按 Backspace 删除列表项块,当前的空段落块就会并入上一个列表项块:

    image.png


    综上,只是你对思源的容器块和叶子块不熟悉,思源的逻辑是没有问题的。

    思源的块(block)是可以嵌套的,跟 Notion 不太一样。

  • 在我使用鼠标拖动某一行至其他文字下方时,这一行文字并未变成子层级,而是和目标文字左右分立(我知道这是 sy 这几年的新功能,但为什么我把文字拖到其他 block 的下方,它却会跑到别的地方),格式完全混乱,编辑体验和我写论文时折腾 word 排版有的一拼!

    应该是你没拖对位置,最好能录屏看看你的操作

请输入回帖内容 ...

推荐标签 标签

  • Hprose

    Hprose 是一款先进的轻量级、跨语言、跨平台、无侵入式、高性能动态远程对象调用引擎库。它不仅简单易用,而且功能强大。你无需专门学习,只需看上几眼,就能用它轻松构建分布式应用系统。

    9 引用 • 17 回帖 • 608 关注
  • Log4j

    Log4j 是 Apache 开源的一款使用广泛的 Java 日志组件。

    20 引用 • 18 回帖 • 34 关注
  • 笔记

    好记性不如烂笔头。

    308 引用 • 793 回帖
  • JWT

    JWT(JSON Web Token)是一种用于双方之间传递信息的简洁的、安全的表述性声明规范。JWT 作为一个开放的标准(RFC 7519),定义了一种简洁的,自包含的方法用于通信双方之间以 JSON 的形式安全的传递信息。

    20 引用 • 15 回帖 • 19 关注
  • 星云链

    星云链是一个开源公链,业内简单的将其称为区块链上的谷歌。其实它不仅仅是区块链搜索引擎,一个公链的所有功能,它基本都有,比如你可以用它来开发部署你的去中心化的 APP,你可以在上面编写智能合约,发送交易等等。3 分钟快速接入星云链 (NAS) 测试网

    3 引用 • 16 回帖 • 1 关注
  • Hibernate

    Hibernate 是一个开放源代码的对象关系映射框架,它对 JDBC 进行了非常轻量级的对象封装,使得 Java 程序员可以随心所欲的使用对象编程思维来操纵数据库。

    39 引用 • 103 回帖 • 707 关注
  • 智能合约

    智能合约(Smart contract)是一种旨在以信息化方式传播、验证或执行合同的计算机协议。智能合约允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转。智能合约概念于 1994 年由 Nick Szabo 首次提出。

    1 引用 • 11 回帖 • 5 关注
  • Chrome

    Chrome 又称 Google 浏览器,是一个由谷歌公司开发的网页浏览器。该浏览器是基于其他开源软件所编写,包括 WebKit,目标是提升稳定性、速度和安全性,并创造出简单且有效率的使用者界面。

    62 引用 • 289 回帖
  • CAP

    CAP 指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可兼得。

    11 引用 • 5 回帖 • 597 关注
  • 程序员

    程序员是从事程序开发、程序维护的专业人员。

    547 引用 • 3531 回帖
  • 旅游

    希望你我能在旅途中找到人生的下一站。

    89 引用 • 897 回帖
  • 周末

    星期六到星期天晚,实行五天工作制后,指每周的最后两天。再过几年可能就是三天了。

    14 引用 • 297 回帖 • 1 关注
  • 服务器

    服务器,也称伺服器,是提供计算服务的设备。由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力。

    124 引用 • 580 回帖
  • 心情

    心是产生任何想法的源泉,心本体会陷入到对自己本体不能理解的状态中,因为心能产生任何想法,不能分出对错,不能分出自己。

    59 引用 • 369 回帖
  • Tomcat

    Tomcat 最早是由 Sun Microsystems 开发的一个 Servlet 容器,在 1999 年被捐献给 ASF(Apache Software Foundation),隶属于 Jakarta 项目,现在已经独立为一个顶级项目。Tomcat 主要实现了 JavaEE 中的 Servlet、JSP 规范,同时也提供 HTTP 服务,是市场上非常流行的 Java Web 容器。

    162 引用 • 529 回帖 • 1 关注
  • sts
    2 引用 • 2 回帖 • 184 关注
  • Dubbo

    Dubbo 是一个分布式服务框架,致力于提供高性能和透明化的 RPC 远程服务调用方案,是 [阿里巴巴] SOA 服务化治理方案的核心框架,每天为 2,000+ 个服务提供 3,000,000,000+ 次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点。

    60 引用 • 82 回帖 • 604 关注
  • BookxNote

    BookxNote 是一款全新的电子书学习工具,助力您的学习与思考,让您的大脑更高效的记忆。

    笔记整理交给我,一心只读圣贤书。

    1 引用 • 1 回帖
  • 996
    13 引用 • 200 回帖
  • 设计模式

    设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。

    198 引用 • 120 回帖
  • Openfire

    Openfire 是开源的、基于可拓展通讯和表示协议 (XMPP)、采用 Java 编程语言开发的实时协作服务器。Openfire 的效率很高,单台服务器可支持上万并发用户。

    6 引用 • 7 回帖 • 100 关注
  • CSDN

    CSDN (Chinese Software Developer Network) 创立于 1999 年,是中国的 IT 社区和服务平台,为中国的软件开发者和 IT 从业者提供知识传播、职业发展、软件开发等全生命周期服务,满足他们在职业发展中学习及共享知识和信息、建立职业发展社交圈、通过软件开发实现技术商业化等刚性需求。

    14 引用 • 155 回帖
  • 自由行
    1 关注
  • 持续集成

    持续集成(Continuous Integration)是一种软件开发实践,即团队开发成员经常集成他们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。

    14 引用 • 7 回帖 • 2 关注
  • CodeMirror
    1 引用 • 2 回帖 • 134 关注
  • 工具

    子曰:“工欲善其事,必先利其器。”

    285 引用 • 727 回帖
  • Vim

    Vim 是类 UNIX 系统文本编辑器 Vi 的加强版本,加入了更多特性来帮助编辑源代码。Vim 的部分增强功能包括文件比较(vimdiff)、语法高亮、全面的帮助系统、本地脚本(Vimscript)和便于选择的可视化模式。

    28 引用 • 66 回帖