[ANN] 关于复式记账语言 Beancount 过分难用这件事

2022-04-16 10:54:17 +08:00
 gaocegege
作为一个工程师,很长时间以来不知道如何管理自己的财务,直到看到了 BYVoid 的这篇文章 https://byvoid.com/zhs/blog/beancount-bookkeeping-1/ ,于是开始尝试使用 Beancount 来记账。它不仅可以用非常简单的语法来记账,并且提供了类似于 SQL 的查询语言,可以构建自己感兴趣的查询结果,更清晰地了解自己的财务状况。当然,最最最重要的是,它是开源的,不会像各种记账 App 一样,做不下去就跑路,可能记得账都没法导出保存下来。

但是,在使用的时候,也遇到了一个比较大的问题,主要是没有各类记账 App 那么易用,尤其是在导入账单方面。Beancount 要求你的每一笔账都是要对齐的,而我的支出通常分散在各个不同的 App 或者银行卡里,有时用支付宝付款,有时用微信,或者直接用银行卡。这就使得每天记账对账特别苦恼。

为了解决这个问题,https://github.com/deb-sig/double-entry-generator 应运而生。它提供了便捷的方法能够把支付宝或者微信的账单直接导入到 Beancount 中,并且利用 Beancount 的生态工具如 Fava 等进行可视化的展现。

想时刻跟踪自己的财务情况,不想依赖第三方的独立记账 App 的同时又不想手动记账的朋友们,可以了解一下!

不过,也可能有一个副作用,记账记得太清楚,可能会让自己感到不适(怎么花了这么多!)
6200 次点击
所在节点    分享创造
39 条回复
N032138
2022-04-19 14:46:49 +08:00
@gaocegege 说的我又想装回来了,每天数数自己兜里的仨瓜俩枣的
gaocegege
2022-04-19 14:58:11 +08:00
@N032138 每个月记账的那几天,总是最有动力工作的时候 (误
Xhack
2022-04-19 16:36:47 +08:00
用 cli 记账总觉得太麻烦,现在重写了一个,还行
gaocegege
2022-04-19 18:24:21 +08:00
@Xhack 重写了一个什么东西呢?
curoky
2022-04-19 19:41:23 +08:00
@gaocegege 如果真的只是 beancount 设计不好,代码烂,但是产品形态没有问题的话,肯定会是百花齐放的一个局面,说白了复式记账这玩意又不是有多难实现,这么多牛逼财务公司,也不见贡献一个一个开源个人使用的版本。另外跟国内的生态壁垒也有很大的关系,各个 app 数据打不通,各种恶心人。复式记账讲究的是精确+全量,做不到这两个前提,就是扯蛋…
curoky
2022-04-19 19:43:33 +08:00
@gaocegege 这话有道理,最近工资涨了之后,感觉之前花那么多时间去记那些小钱,纯粹是浪费生命…
maleclub
2022-04-19 21:16:36 +08:00
@gaocegege 一点天赋都没有,入手就麻烦的是创建 account ,忘了就可以开始记账,边记边问电报群的老司机,慢慢地( 2-3 周)就基本上手了
Xhack
2022-04-20 08:28:22 +08:00
@gaocegege Beancount
rv54ntjwfm3ug8
2022-04-20 13:13:23 +08:00
最后发现还是 GNUcash 好用
gaocegege
2022-04-21 08:54:03 +08:00
@rv54ntjwfm3ug8 这个我倒是没看过,回头去学习一个
zhzy0077
2022-04-21 13:04:44 +08:00
beancount 不支持中文大家都是怎么解决的?我用 hledger/GnuCash 的最大原因就是这俩支持中文
TripleZ
2022-04-21 19:24:27 +08:00
@rv54ntjwfm3ug8 GnuCash 貌似只能 GUI 上操作?不像 beancount, ledger 这种是 plain-text 的吧。
gaocegege
2022-04-22 17:51:26 +08:00
@zhzy0077 支持中文呀,你是说哪方面不支持,账户名称么
zhzy0077
2022-04-23 00:59:09 +08:00
@gaocegege 对的 各种中文账户翻译成不管是英语还是拼音都很难理解 点名住房公积金和基本养老保险
TripleZ
2022-04-23 11:18:48 +08:00
@zhzy0077 账户只有第一层不支持中文,其它层级都是支持的呀。比如 “Assets:微信支付” 这样是合法的。
zhzy0077
2022-04-23 14:29:56 +08:00
@TripleZ 我刚刚试了是有报错的 Beancount 2.3.5

1.beancount:1: Invalid account name: Assets:工资

我重新确认了下当时的正则现在还在:
https://github.com/beancount/beancount/blob/master/beancount/core/account.py#L33
gaocegege
2022-04-24 09:19:34 +08:00
@zhzy0077 我现在是用英文,不过我没思考过用中文名字的账户,担心出 bug hh
TripleZ
2022-04-24 19:10:39 +08:00
@zhzy0077 不好意思,是我记错了。是前两级不能用中文。
wdssmq
2022-04-25 14:17:57 +08:00
Beancount 复式记账:接地气的 Why and How - zsx's Blog
https://blog.zsxsoft.com/post/41

很早就见过介绍,一直没尝试。。然后刚安装的时候提示缺 c++ Orz 。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://tanronggui.xyz/t/847297

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX