为什么要用obsidian来记账呢,这并不是为了折腾,而是反抗资本的剥削。
我是随某记近十的用户,当然一直没有充值,最近要导出之前的账目,居然要收大百的费用。之前从来没有听过要收费,受不了这种欺负。
想起用obsidian来记笔记的初衷就是为了不受制于人,一切数据都掌握在自己手里。于是我毅然寻找免费的,开源的记账方案。
一开始,gnucash这个开源的软件进入到了我的视野,用了一段时间,pc端已经是专业级的存在了,但是移动端作者却没有开发,功能小得可怜,最关键的,我发现它不能插入附件。
这时,我开始梳理自己的需求:
- 开源,免费
- 复式记账功能
- 可以方便导入导出数据
- 跨平台(安卓,win,mac)
- 可以在记一笔账的时候,插入附件
- 有往来款项(借入,借出)到期日倒计时功能。
很显然gnucash是做不到的,我找了市面上几乎所有的app或者是软件,很负责任地说,到目前为止满足上面6条的记账软件,我还没有找到。
就在要放弃的时候,接触到了beancount这个项目,这是文本记账的开源项目,突然受到启发,完全可以利用dataviewjs来解析beancount的数据格式。经过一番努力,果然可以。
于是为了实现更多的功能,我自定义了bean数据格式让obsidian读取。实现了所有的功能。先看图。
说明一下,
2025-03-15 * “早餐:永和豆浆” ----->这是日期和描述
支出:食品 25.50 ----->这是借方科目和金额
资产:建行0328 -25.50 ----->这是贷方科目和金额
![] ----->这是附件
“早餐” ----->这是备注
到期时间: ----->这是往来科目的到期时间
^id20250315073015 ----->这是块链接标识



