关于obsidian内的换行问题

之前我是用的typora,现在转到obsidian,有一些问题特来请教。
markdown语法会自动忽略一个换行符,两个连续的换行符才能实现预览界面的换行。
typora的实时预览功能是按下一次回车,就可以在源代码里面实现两个回车的效果。但是obsidian的实时预览却只是一个换行符,在严格模式下甚至不能换行,必须连续输入两个换行符,很不方便,但是关掉严格模式,段落之间没有空行看起来特别紧凑不美观。就像着obsidian有无类似的功能,按下一个换行符直接输入两个?

2 个赞

可以在行间用全角空格

这不还是连打两个回车么

我一般是先再编辑视图换好行,再统一在中间添上全角空格。

同问! 楼主解决了么?


easy typing 插件

这个插件没有这个功能吧,我安装了,没找到


试过了,无效

同样的疑问,我搞定了。
1.在编辑器中打开严格换行。

2.在easy typing插件中打开如下开关:

4 个赞

可以试试 Linter 这个插件。
image
在行距里面设置每个段落前后空行,每次编辑完文稿一个快捷键它就会自动帮您格式化。

因为Obsidian和typora的设计逻辑不同。

typora的实时预览是所见即所得的,类似于富文本编辑器的效果;而Obsidian则提供了渲染结果,(阅读模式)和源码编辑(编辑模式)两个独立的显示。只是后者提供了一些简单的渲染来提升视觉效果而已,但它本质是是显示的源码而非所见即所得页面。

这背后的哲学是,页面能原模原样、正确无虞地显示源码的样子,以期完全掌控文字,知根知底。这是非所见即所得编辑背后的哲学。^1

所以,正确的方式是,慢慢适应它。你不能总是用所见即所得编辑器的逻辑来使用源码编辑器,那会非常别扭。两次回车键其实也并不很麻烦。

当然,如果非要这样,这是可以通过一些插件[^2]来实现的,或者使用其他软件^3,在Obsidian应用中,把一个回车键映射为两个也可以。

[^2]: 比如easy typing插件。

1 个赞

大佬你好,想问下如果想遵循源码渲染的模式(非所见即所得),严格换行模式是打开好点还是关闭好点呢

还是打开为好,毕竟这符合MarkDown的语法格式,换到其他编辑器的时候也不会乱。

Obsidian 的严格换行选项仅影响预览模式下的显示效果,而不影响源码模式下的显示效果。是否开启这个选项,并不关乎编辑器或 markdown 本身的设计哲学,而仅仅与你的书写习惯有关。

在开启该选项的情况下,Obsidian 会将前方不带有空格的单个换行符坍缩为一个空格,将连续多个换行符视为开启新的段落,将前方带有连续多个空格的单个换行符视为硬断行。关闭该选项则会将前方不带有空格的单个换行符也视为硬断行。也就是说,是否开启这个选项,仅仅决定硬断行如何书写和解析。

标准 markdown 语法要求通过多个空格后接单个换行符实现硬断行,开启严格换行选项更符合这个要求。如果你想追求笔记语法的通用性和兼容性,则最好打开这个选项。

如果你和我一样认为标准 markdown 语法的硬断行设计很糟糕(竟然用不可见的空格符的数量来控制文本排版行为,我觉得这很不符合它的设计哲学),因而希望改由单个换行符表达硬断行,那么也可以选择关闭这个选项。

1 个赞

当然,如果既希望保持笔记语法的通用性和兼容性,又不希望使用标准 markdown 丑陋的空格换行语法,可以考虑开启严格换行模式,并采用反斜杠 \ 来表示硬断行,Obsidian支持这种语法,一些其他 markdown 解析器也支持。一种最为通用但并不优雅的做法是采用标签 <br \> 表示硬断行。

1 个赞

另一点需要注意的是,无论你是否开启严格换行模式选项,在表示开启新段落时,都应使用两个或以上换行符而非一个换行符。后者要么被视为硬断行符号,要么被忽略并坍缩为一个空格。

例外是,考虑到 Obsidian 没有块层级,因而仅有段落引用功能,无块引用功能。当你需要模拟块引用时,可以临时将硬断行当作开启新段落来使用,前提是你知道自己在干什么。

1 个赞

before convert 输入 回车和 竖线
new pattern 输入 空格空格回车竖线

image
这个插件设置的最下面,现在有这个功能

1 个赞