代码已上传至 obsidian-sheets-basic
240612: 切换到阅读模式再打印导出 PDF 已能正确渲染,包括表格内图片、数学公式等。
240630: 编辑模式合并单元格测试 GIF
250124: 表格内脚注现在与软件默认行为一致。测试文本:
| | |
| ------ | ------ |
| 1 [^1] | 2 [^2] |
| | ^ |
[^1]: footnote1
[^2]: footnote2
你可以比较它们在阅读模式下的差异。
插件现在基本上设置为稳定版本了。基于测试结果,我可能偶尔会在插件的 GitHub 描述中更新可运行版本信息。
- 如遇任何问题,可使用插件 ‘rebuildCurrent’ 命令,默认快捷键 F5。
- 用于合并单元格,将取消合并,该单元格将变为普通单元格。
- 用于普通单元格,将刷新所在表格。请勿将鼠标光标置于合并识别符所在单元格。
- 用于表格外,将刷新当前活动页面。
- 推荐导出 PDF 前刷新一次,再切换到阅读模式导出。因为 Obsidian 在编辑模式和阅读模式之间存在缓存,并且目前没有提供精准清除缓存的方法。
- 不要在表体第一行使用向上合并,即不要合并表头和表体。
插件历史沿革:
Sheets Extended 是由 @NicoNekoru 开发的在阅读模式和代码块内合并表格单元格的插件。该插件功能十分丰富,但有一些 bug。
我不是计算机专业的,所以我选择编写原插件的简单版本。代码为纯 JS 实现,原本是希望给作者参考,让他尽快修复的。
但由于迟迟没能等到作者的任何回复,随着我经验增长,我在我的插件新加了编辑模式合并单元格的功能。尽管我依然期待作者修复,现在这个简单版本的插件也具备独立功能了。
6 个赞
雪鸢
(Z)
2
楼主。表格原插件在callout里渲染不出来,能居中。 你的精简代码能渲染出来。但是居中不了
原版插件在和 table extant 一起在同一个笔记中时,导出的PDF没问题,这个插件会导致table extant的乱掉
@nqyijian Table Extended 和 Sheets Extended 或本插件都是通过语法标记对表格进行处理,且彼此语法完全不同,择一而用即可。
@diyaojz 参 怎么使表格内容垂直居中啊 - #2,来自 PlayerMiller
本插件主要是合并单元格,其余表格相关需求请使用搜索功能或论坛新建“疑问解答”话题提问。
群友:<^
这种语法渲染的表格在 anyblock 的 tab 模式下不显示
由于群里有人说到和AnyBlock的配合问题,我去测试了一下。
然后想起这几个插件的选用有时可能也会导致小白选择困难,借楼贴个比较图。该比较能够从一定程度上说明与其他插件的配合程度(但在这里表现更好的表格插件版本不意味着与所有插件配合都更好)
(该借楼补充其实感觉放哪都不合适……无论是单独开一篇、还是放AnyBlock主题里、还是放这里。算了,还是放这吧……)
1 个赞
表格崩掉的问题
群友:这个如果合并了表格,如果没有这个插件,表格会被正确识别吗?不敢用
sheets extented不会崩,table exteneded会崩,所以我更建议前者。
sheets extented没有插件的话长前面第一列第三行那个样子。我认为没有插件不影响体验,完全可以脑内渲染。
而我不建议 Table Exteneded,他那个有没有插件有可能样式会崩掉。他的那个语法设计就有问题
语法设计问题
table exteneded的语法设计
|a|b|
|待会左边要合并我||
第二行第二列的合并标志,是两个|
之间没有任何内容,空格也不允许。如果两个|
之间有空格,那么就表示一个空的单元格。但是两个|
之间没有内容,会导致没有插件的情况下渲染器不认为这是一个表格,表格会崩掉
| Markdown | Rendered HTML |
|--------------|---------------|
| *Italic* | *Italic* | \
| | |
| - Item 1 | - Item 1 | \
| - Item 2 | - Item 2 |
| ```python | ```python \
| .1 + .2 | .1 + .2 \
| ``` | ``` |
还有一种语法是在表格最后的 |
后面还有个 \
用来表示特殊的表格合并(一个单元格内容存在多行)。但同样的,没有插件的情况下渲染器不认为这种东西是个表格,表格也会崩掉。
而sheets extented的语法设计
|a|b|
|待会左边要合并我|<|
这个语法设计必不可能崩,也几乎不会误选
其他区别 / 区别总结
前者是 ^^
上合并,||
(中间无空格) 左合并
后者是 ^
上合并,<
左合并
主要吹了sheets extented,那table exteneded有没有什么更优的点?
- 可能有一些功能增强,但这类功能很多是破坏性的(离了插件后,语法连个表格都不是。即功能增强依赖的语法并非table的超集,不向下兼容)
- 例如支持跨单元格的代码块或引用块,通过末尾
\
语法 (不向下兼容,不建议)
- 额外支持无表头模式(不向下兼容,不建议)
- table exteneded,他直接用的 markdown-it-mulitmd-table,和博客中的表格合并语法是相同的。这意味着该软件开发成本的降低,以及在对博客迁移时的兼容
但是就设计而言,sheets extented 更好,但没有其对应的 markdown-it 插件。但我相信以后也会有的!(大不了我后面研究一下怎么迁移过去)
熊猫别熬夜
(噗~)
12
大佬,咨询个问题,如何在实时编辑时取消合并的表格…
zhaorc
(zhaorc)
17
哈哈 我知道,我使用Sheets Basic合并单元格是没问题的,但是用Sheets Extended就不生效,所以顺便问一下
@zhaorc 这个插件是 Sheets Basic。Sheets Extended 并非我撰写及维护,抱歉无法解答相关疑问。推荐去对应 GitHub 询问作者。其次可以在中英论坛、网络社群使用搜索功能,或新建话题提问。你也可查看本话题 #1 的说明里是否有解答你疑问的内容。