说下一直困扰我的问题

本贴最后更新于 1030 天前,其中的信息可能已经事过境迁

思源笔记编辑器里是有 block 的概念的,一个 block 可以理解为一个段落。在手动编辑过程中,一个段落一个回车这个没有问题,但是通过复制粘贴网页时,可能出现一个 block 中对应了多个段落的情况,如图所示:

image.png

这个其实是多个段落,应该对应到多个 block 当中,现在这种情况我只能一行一行的敲回车把这一大段的内容拆开到多个 block 当中。能否出一个功能能按照换行符自动拆分 block?或者在粘贴的时候就按照换行符自动拆成 block。

然后再说下 block 的这种设计方式,我个人认为 block 和自然的段落就应该是一对一的关系,不应该出现一个 block 可以对应多个自然段落(手动编辑时可以通过 shift+enter 实现),这样反而复杂了整个文章形式上的架构,在编辑文章时要考虑文章整体和 block 的关系,还要考虑 block 和自然段落的关系,在同一个 block 中如果有多个自然段落的行间距是要小于两个 block 之间的行间距的,文章就会显得很割裂,比如这个图

image.png

可以看到上面和下面虽然语义上是同一个模块的,但是由于 block 和 block 内自然段落的存在看起来非常的奇怪,当然可以通过敲回车再一一调整好。但这个其实已经对文章编辑造成一定的负面影响,最简单的解决方式就是自然段落(有换行符的)默认就是一个 block,有需要合并的 block 可以使用 super block 处理。

这个是我在使用笔记过程中遇到的一些困扰,希望开发者能考虑一下,大家也可以讨论一下。

  • 思源笔记

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

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

    24879 引用 • 102381 回帖

相关帖子

欢迎来到这里!

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

注册 关于
请输入回帖内容 ...
  • sorceress via macOS

    同意,block 的概念很好,但目前很难看出 block 的边界/分清不同 block (需要把鼠标放到左边才能看到当前的 block),让人操作时容易产生困惑

    1 操作
    sorceress 在 2022-06-07 12:53:33 更新了该回帖
  • qylixin via macOS
    作者

    block 是为了编辑内容服务的,而且只是在有限的范围内(双链、反链),现在出现了编辑内容时还要考虑 block 的存在而调整内容或格式,有点本末倒置了。

    一句话概括的话,block 是手段而不是目的。

  • 在文本编辑中有软回车与硬回车两个不同的概念, 块内换行对应软回车, 分块对应硬回车, 各有各的作用~

    1 回复
  • qylixin 1 评论 via macOS
    作者

    软回车在文本编辑中解决了什么问题?它存在的必要性是什么?

    解决需要换行但不需要分段的情况, 比如诗歌
    shuoying
  • foolishman83 1 赞同

    软回车很有用啊,比如法律学习中,对于一些法条下面还有多个款项的,像是第 23 条第二款第三项之类的,我一般都是将他们换行但不分段,因为他们逻辑上是与前面内容不可分割的,换行是为了美观,不分段是确保他们在一个段落块,这样就确保我在引用包括随机学习的时候整条内容都能引用或者显示出来。因此,软回车很有必要。软回车和硬回车有其各自应用场合。

    1 回复
  • qylixin via macOS
    作者

    我的理解,超级块就可以解决你的问题

    1 回复
  • 从视觉外观上,软换行能够从视觉上直观的体现出“换行但内容相关(和硬换行区分明显)”。但是超级块如果不做特殊样式设计的话,没办法有同样一目了然的效果。

  • 关于软硬换行批量切换,有现成的 quicker 动作可以做到。

    1 回复
  • qylixin via macOS
    作者

    quicker 动作指的是快捷键吗?还是。。?

    1 回复
  • 思源笔记块拆分为多个块 - by 风渡巛 - 动作信息 - Quicker

    quicker 的一个动作,类似一个小程序吧,依托 quicker 才能运行,试试看就知道了。

  • 概念 应该保持简单。

    一个 block 对应一个段落没啥问题。

    如无必要不增实体--奥坎姆剃刀。

  • 我觉得对于复制粘贴过来的内容,一个段落对应一个段落块,而自己在编辑时,根据自己的需求再自行 Shift+Enter 块内换行。

请输入回帖内容 ...

推荐标签 标签

  • Node.js

    Node.js 是一个基于 Chrome JavaScript 运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node.js 使用事件驱动, 非阻塞 I/O 模型而得以轻量和高效。

    139 引用 • 269 回帖 • 1 关注
  • 小薇

    小薇是一个用 Java 写的 QQ 聊天机器人 Web 服务,可以用于社群互动。

    由于 Smart QQ 从 2019 年 1 月 1 日起停止服务,所以该项目也已经停止维护了!

    34 引用 • 467 回帖 • 758 关注
  • PHP

    PHP(Hypertext Preprocessor)是一种开源脚本语言。语法吸收了 C 语言、 Java 和 Perl 的特点,主要适用于 Web 开发领域,据说是世界上最好的编程语言。

    179 引用 • 408 回帖 • 484 关注
  • DNSPod

    DNSPod 建立于 2006 年 3 月份,是一款免费智能 DNS 产品。 DNSPod 可以为同时有电信、网通、教育网服务器的网站提供智能的解析,让电信用户访问电信的服务器,网通的用户访问网通的服务器,教育网的用户访问教育网的服务器,达到互联互通的效果。

    6 引用 • 26 回帖 • 530 关注
  • 友情链接

    确认过眼神后的灵魂连接,站在链在!

    24 引用 • 373 回帖
  • Firefox

    Mozilla Firefox 中文俗称“火狐”(正式缩写为 Fx 或 fx,非正式缩写为 FF),是一个开源的网页浏览器,使用 Gecko 排版引擎,支持多种操作系统,如 Windows、OSX 及 Linux 等。

    7 引用 • 30 回帖 • 390 关注
  • 生活

    生活是指人类生存过程中的各项活动的总和,范畴较广,一般指为幸福的意义而存在。生活实际上是对人生的一种诠释。生活包括人类在社会中与自己息息相关的日常活动和心理影射。

    230 引用 • 1454 回帖 • 1 关注
  • 百度

    百度(Nasdaq:BIDU)是全球最大的中文搜索引擎、最大的中文网站。2000 年 1 月由李彦宏创立于北京中关村,致力于向人们提供“简单,可依赖”的信息获取方式。“百度”二字源于中国宋朝词人辛弃疾的《青玉案·元夕》词句“众里寻他千百度”,象征着百度对中文信息检索技术的执著追求。

    63 引用 • 785 回帖 • 109 关注
  • SQLite

    SQLite 是一个进程内的库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。SQLite 是全世界使用最为广泛的数据库引擎。

    5 引用 • 7 回帖
  • OpenStack

    OpenStack 是一个云操作系统,通过数据中心可控制大型的计算、存储、网络等资源池。所有的管理通过前端界面管理员就可以完成,同样也可以通过 Web 接口让最终用户部署资源。

    10 引用 • 3 关注
  • Logseq

    Logseq 是一个隐私优先、开源的知识库工具。

    Logseq is a joyful, open-source outliner that works on top of local plain-text Markdown and Org-mode files. Use it to write, organize and share your thoughts, keep your to-do list, and build your own digital garden.

    7 引用 • 69 回帖 • 1 关注
  • etcd

    etcd 是一个分布式、高可用的 key-value 数据存储,专门用于在分布式系统中保存关键数据。

    6 引用 • 26 回帖 • 547 关注
  • JetBrains

    JetBrains 是一家捷克的软件开发公司,该公司位于捷克的布拉格,并在俄国的圣彼得堡及美国麻州波士顿都设有办公室,该公司最为人所熟知的产品是 Java 编程语言开发撰写时所用的集成开发环境:IntelliJ IDEA

    18 引用 • 54 回帖 • 3 关注
  • RESTful

    一种软件架构设计风格而不是标准,提供了一组设计原则和约束条件,主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。

    30 引用 • 114 回帖 • 7 关注
  • Shell

    Shell 脚本与 Windows/Dos 下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的。但是它比 Windows 下的批处理更强大,比用其他编程程序编辑的程序效率更高,因为它使用了 Linux/Unix 下的命令。

    124 引用 • 74 回帖 • 2 关注
  • B3log

    B3log 是一个开源组织,名字来源于“Bulletin Board Blog”缩写,目标是将独立博客与论坛结合,形成一种新的网络社区体验,详细请看 B3log 构思。目前 B3log 已经开源了多款产品:SymSoloVditor思源笔记

    1063 引用 • 3455 回帖 • 165 关注
  • 负能量

    上帝为你关上了一扇门,然后就去睡觉了....努力不一定能成功,但不努力一定很轻松 (° ー °〃)

    89 引用 • 1239 回帖 • 415 关注
  • Gzip

    gzip (GNU zip)是 GNU 自由软件的文件压缩程序。我们在 Linux 中经常会用到后缀为 .gz 的文件,它们就是 Gzip 格式的。现今已经成为互联网上使用非常普遍的一种数据压缩格式,或者说一种文件格式。

    9 引用 • 12 回帖 • 169 关注
  • sts
    2 引用 • 2 回帖 • 224 关注
  • React

    React 是 Facebook 开源的一个用于构建 UI 的 JavaScript 库。

    192 引用 • 291 回帖 • 385 关注
  • 深度学习

    深度学习(Deep Learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。

    53 引用 • 40 回帖
  • Sym

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

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

    524 引用 • 4601 回帖 • 702 关注
  • JVM

    JVM(Java Virtual Machine)Java 虚拟机是一个微型操作系统,有自己的硬件构架体系,还有相应的指令系统。能够识别 Java 独特的 .class 文件(字节码),能够将这些文件中的信息读取出来,使得 Java 程序只需要生成 Java 虚拟机上的字节码后就能在不同操作系统平台上进行运行。

    180 引用 • 120 回帖
  • Java

    Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

    3195 引用 • 8215 回帖
  • Python

    Python 是一种面向对象、直译式电脑编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。

    556 引用 • 675 回帖
  • JRebel

    JRebel 是一款 Java 虚拟机插件,它使得 Java 程序员能在不进行重部署的情况下,即时看到代码的改变对一个应用程序带来的影响。

    26 引用 • 78 回帖 • 678 关注
  • 导航

    各种网址链接、内容导航。

    43 引用 • 177 回帖