1.爱上Obsidian
笔记软件是我一直在关注的一个重点内容,也尝试过很多软件,在转换的过程中丢失数据是很让人恼火的一件事情。在经历了很多的软件后,wiznote(为知笔记)的本地化存储,开放的格式捕获了我的芳心,后来推出的docker私有化部署也让我忍受了很多的wiz缺点。后来还去尝试过theBrian这样的超新鲜的脑图,在看到theBrian”双链“效果,当时就想如果有一个能把笔记和theBrian结合的软件就好了,当时还在ahk的群里看到宽哥在推广Obsidian时,去看了一眼,觉得就是一个markdown的编辑器啊,就没有深入的去了解过。
在看到wiz被收购的消息,我是为它感到欣慰的,至少这么多年的坚持还是有收获的,但新的新版本wiznote x 客户端,完善了很多新的特性功能,但在群里不提数据本地化的事情,通过收购公司的主营,我猜想这个基本不可能实现了,都想用老的客户端去养老的想法了。这时宽哥又发了一个Obsidian的新版本,我看了一下,好像有些还是能符合我的需求的,就尝试了一下。
这一试用,可以看到达到了我的一些需求,本地化、开放的格式、可私有化同步。就逐步的进入到了Obsidian世界中了。
2.同步之痛
如果只有一种设备,那么Obsidian的表现还是不错的,但在当下,谁还没有个多端同步的需求。目前我主要的有windows、iphone这两种设备。在看大家的同步方案时,我觉得苹果公司提供的iCloud是很好的同步云,为什么不选用这个方案了?
在此看了 东东的同步方案介绍后 ,知道了这个原始的同步方案的问题,东东是这么说的:
在手机版obsidian上创建笔记库,在windows上下载icloud,登录icloud账号,obsidian选择在icloud中打开笔记文件。 经过如上操作之后就解决了同步问题,本篇完(并没有) 起初我是通过这种方案,但是使用一段时间后发现,在写笔记的过程中,obsidian经常弹出“文件被外部修改,正在合并”的提示,然后再icloud中就会出现若干个重复笔记。 类似这样: 而且写着写着经常会有几行笔记消失了。 所以以上几宗罪使icloud同步变得很难用。
可以从这段话可以看出原始的iCloud同步方案是有问题的。在文章中,东东介绍了解决方案原理和程序,我直接去使用了。在使用的过程中,也出现了一个问题,我习惯是休眠笔记本,再恢复使用,经常就会出现东东的程序无响应,导致我的笔记没有同步,而且杀死程序在启动经常会出现同步数据被覆盖的问题。
3.我的解决方案
原理已经有了,只是要解决休眠恢复的问题就可以了。这里我就借用了开源的力量,方案如下:
所需的现有程序:
FreeFileSync,开源同步软件,我用的最新版本。
RealTimeSync,FreeFileSync的定时监控软件,FreeFileSync自带。
windows 版 iCloud
剩余的就是用ahk(autohotkey)做好Obsidian启动、运行、退出时的数据同步就可以了。
4.操作步骤
4.1备份现有Obsidian数据
备份现有Obsidian数据!!!
备份现有Obsidian数据!!!
备份现有Obsidian数据!!!
重要的事情说三遍!!!
4.2 程序安装
windows端:
FreeFileSync
iCloud
Obsidian
OBiplus
iphone端:
Obsidian
4.3 iphone端设置
打开手机版obsidian,选择Creat new vault
然后写下你的笔记本名字,下方打开 Store in icloud 的开关,第一步就先到这里。
4.4windows FreeFileSync 端设置
FreeFileSync的设置如下:
左边选择Obsidian的库文件夹,右边选择icloud的Obsidian库文件夹。
快捷键F6,设置比较为文件内容:
快捷键F8设置为双向比较,另外建议设置删除为历史版本,这样就不怕误同步的问题了。
把这个设置另存为一个批处理作业,会保存一个ffs_batch的文件。
4.5 windows RealTimeSync 端设置
在FreeFileSync的安装文件夹,你还会看到一个RealTimeSync的程序,需要的设置如下:
打开程序,把刚刚保存的ffs_batch文件拖放到窗口,空闲时间设置建议是120秒或以上的时间。
设置后也另存为一个ffs_real的文件。
4.6 windows OBiplus端设置
OBiplus的下载地址在这里:
下载后运行OBiplus.exe
配置好相关的程序和配置文件路径:
点击保存并使用就可以了。
如果出现一些启动问题,可以直接手写一个Setting.ini配置文件,GUI就是方便配置:
[config]
FFS_app_path=C:\Program Files\FreeFileSync\FreeFileSync.exe
ffs_batch_path=C:\Program Files\FreeFileSync\SyncSettings-obs1.ffs_batch
obs_app_path=D:\user\Obsidian\Obsidian.exe
RTFFS_app_path=C:\Program Files\FreeFileSync\RealTimeSync.exe
RTffs_batch_path=C:\Program Files\FreeFileSync\RealTime obs1.ffs_real
以后每次启动不是去点击Obsidian,而是启动OBiplus,这样在启动时会同步数据,运行的过程中每2分钟同步一次,退出Obsidian时,也同步一次数据。
通过这样的设置,接可以借助开源的程序,实现Obsidian windows与iphone通过iCloud同步,资源占用也不大,相对来说同步的程序、监控的程序有着更稳定的工作性能。