软件分享:Obsidian高亮插件与Teable

前言

时间过的好快,两个月没写博客了
上次[[2024.04.26]]写一篇,写完草草了事也没有发😅

写篇近期使用的软件分享文,凑合看吧🙃

主要分为2类

  1. Obsidian插件
  2. Teable

Obsidian插件

代码高亮

我想大多人,看网上的推荐代码高亮都是Editor Syntax Highlight,我也是
但用习惯Vscode,回过头来看这个代码样式就会觉得代码样式好丑啊🙄

个人使用的是Vscode的Monokai主题,非常喜欢这个代码配色,配色如图:

image-20240506224817408

实在接受不了Editor Syntax Highlight这个插件的配色,太丑了如图:

image-20240506225150090

网上高亮没有推荐其他的同类插件
后面还想着以后自己开发个插件,然后后续通过插件市场搜索关键字就发现了obsidian-shiki-plugin,发现代码竟然可以替换成想要Vscode风格,太棒了,所以这里安利一波

开启后,效果图:

image-20240506225648007

还支持行号,在关键字后面加上showLineNumbers关键字即可

编辑模式:

image-20240507000217401

渲染模式:

image-20240506225710547

支持N多种风格,我这里选择个人喜爱的Monokai

image-20240506225746856

注意事项:python只能写python,不能写大写PYTHON或者Python,否则不会高亮

排版格式化

这个插件可以对笔记进行格式化和样式化,实现排版的统一,有点类似于写代码的自动格式化
其实个人之前一直是使用Markdown prettifier,但后来开发大大舍弃自己项目直接跑去使用Linter了🤣

我从一开始就是使用Markdown prettifier,后续第一次尝试Linter发现配置项太多了!!!
对比图:

Markdown prettifier仅有几项

image-20240506222727883

Linter密密麻麻

image-20240506222829255

第一次觉得复杂直接卸载了,但3月维护插件的时候,又想到这个,尝试下来配置好后竟然意外好用!
而且因为很多选项可以选,也意味着自定义程度非常高,所以非常推荐大家使用Linter,而非Markdown prettifier

说说2个打动我的点,也是Markdown prettifier所不具备的

  1. 可以自动移除YAML中标签的#号(YAML添加#,会使标签属性值失效,所以YAML的标签不能写#
  2. 自动更换YAML中的文件名,一般我们如果更改文件名,还要手动更改YAML,而Linter可以自动更改

高亮YAML

这个是自己写的一个平替CSS,之前使用插件Editor Syntax Highlight来高亮YAML区域
Obsidian加载插件是需要时间,想着能不能少个插件,让Obsidian打开的速度加快
查看了下这个插件,代码也挺多,就想着通过CSS实现类似,也就有了以下代码(就2行),实现跟插件一样的功能

未开效果:

image-20240506223933209

开启后效果:

image-20240506223948954

CSS代码片段如下,可以更改成自己想要的颜色

1
2
3
4
5
6
7
8
9
10
span.cm-atom {
/* 属性高亮 */
color: #f39b35;
}

span.cm-hmd-frontmatter.cm-hmd-frontmatter.cm-def {
/* 分割线高亮 */
color: #98e342 !important;
}

Remotely Save新版本问题

这个估计很多使用Obsidian的朋友都知道,是一个同步插件,这里讲个阿里OSS新版本的坑
我之前一直使用老版本没有更新,但是3月的时候,想着把所有插件更新下

一更新(0.3.25>0.4.16),WTF,竟然不能用了!!
果然能用的东西就不要频繁更新doeg

插件会报错:Invalid region:region was not a validDNS name.
电脑网络正常,但提示DNS错误,后续排查无果,看issues/450才知道新版本的region竟然变了😅
当然也可能一直都是这个写法,只是以前老版本可能比较兼容?(听答主的意思,好像是如此😑)

说说解决方案(issues写了,这里再写下)

老版本:

  • Endpoint:oss-cn-shenzhen.aliyuncs.com
  • Region:oss-cn-shenzhen-internal.aliyuncs.com

新版本:

  • Endpoint:oss-cn-shenzhen.aliyuncs.com
  • Region:oss-cn-shenzhen

也就是Region变化了,其他没啥

Teable

我个人经常会掏一些软件尝试进行平替,如果有更优的表现,就纳入自己的软件列表,替待掉原有的

浏览阮一峰的网络日志的时候了解到一个在线表格软件:Teable

同类软件我之前有了解过:AirTable、vika维格表
AirTable 国外产品,要习惯英文,英文水平不行
vika 维格表不够精简,对于极简主义来说不能接受

说说个人的 3 个推荐理由

  1. 极简
  2. 全面 API

我之前有用语雀的表格,但语雀软件本身又比较重,又有笔记、又有小记、虽然更新优化了性能,但使用起来还是给我笨重的感觉
软件还是得专事专做,当然这个度得自己把握好,软件分太散,割裂感太强,太紧,All in One 又会觉得过于重

然后看到,Teable 的 Github 的介绍页面,百万数据的表格示例
打开 N 快,响应非常流畅,瞬间心动
具体可以示例参考:百万数据Demo

极简

软件就单单只做表格,没有什么花里胡哨的东西
没有文档、没有模板、没有广告等等
没有其他不该有的东西

一切深得极简主义人的心

全面 API

然后 API 也是我一个心动的点,支持所有操作,是所有!
不管账户、表格数据、权限、空间等等….
这对于程序员来说就有很大的操作空间了,我能直接用脚本去操纵我的数据,简直不要太过心动

上一个遇到类似的软件还是印象笔记,可惜我心中的大象已死
后续遇到的很多软件,例如 Flomo、Cubox 等,都没有提供全面的 API,仅仅提供一个剪藏的接口,其实觉得蛮可惜的
因为全面的 API 意味着我有更大的自由度操作我的数据,而非仅仅增加数据

拿 Cubox举个例子,也是我之前遇到的一个痛点
我假设我 Obsidian 引用了 Cubox 中一篇文章,插入了Cubox 的分享链接
Cubox 中的这篇文章相当于仅作为文献的价值存在
当我把 Obsidian 的这篇笔记删除的时候,我 Cubox 的引用文怎么同步删除?因为笔记已经删除,文献也没有存在的必要了
我没办法去判断我 Cubox 中的文章是否还有被 Obsidian 引用

当然要实际来说的话,方法肯定是比问题多
例如,我 Cubox 的文章可以添加 Obsidian 标签,例如我删除 Obsidian 的文章前可以先删除下 Cubox
但这都不够优雅,太麻烦了

可以自动化的事情,就不应该自己上手来做

如果我有对应的数据接口,直接爬取所有 Obsidian 文件的引用链接,再对比 Cubox 的引用链接,两者进行一个差集计算,然后自动删除没有用的文章,岂不美哉

当然开放接口,也意味着服务器要应对更大的压力,也可以理解
只是有的话,真的是很加分的项


软件分享:Obsidian高亮插件与Teable
https://linguoguang.com/2024/05/06/2024.05.06/
作者
linguoguang
发布于
2024年5月6日
许可协议