找回密码
 立即注册
查看: 11483|回复: 80

[软件] 推荐一个PC的开源复式记账软件beancount

[复制链接]
     
发表于 2019-6-7 15:42 | 显示全部楼层 |阅读模式
本帖最后由 Prushka 于 2025-1-3 16:30 编辑

虽然直接安装Windows版本的beancount很蛋疼,但是现在有了WSL。在WSL里面安装beancount+fava的难度可比下一个Visual Studio 2019的C编译工具小多了。再加上VSCode里面的beancount插件补全功能也很好用,可以说是比较完美的PC记账软件选择了吧。

优点:
- 纯文本格式的数据,完全由你自己掌控
- 开源软件,用得放心
- fava生成的报表很好看

缺点:
- 账户分类只支持英文
- 要折腾一下WSL

报表示例图:

账本示例图:


入门教程:https://wzyboy.im/post/1063.html

如果你只打算在wsl里面用beancount的话,可以看看操作图解:https://zhuanlan.zhihu.com/p/68525917

====
20250103更新:翻新了一个Windows的beancount+fava打包便携版

回复

使用道具 举报

     
 楼主| 发表于 2025-1-3 16:31 | 显示全部楼层
Beancount在Windows上安装,一直有一个绕不过去的编译问题,官方推荐的几种方式(MSVC编译器、WSL、Cygwin)都对非电脑专业用户很不友好(程序员也会被绕一下)。

幸好,我发现GitHub上早有人创建了Beancount+Fava的可执行打包exe脚本,但是疏于更新,上次发布已是三年前了。我fork了这个repo,并把打包的Beancount和Fava更新到了最新版本(Beancount 3.0.0 + Fava 1.30)。现将使用流程记录于下。

安装压缩包到系统

  • Release界面Action点进去之后的Artifacts界面下载GitHub Action打包好的fava.zip
  • 然后按Win+R,输入cmd并回车,进入cmd界面,输入:
    1.   mkdir C:\Users\Public\bin\fava
    复制代码
    无反应或输出「子目录或文件已存在」为正常。
  • 然后按Win+E 进入资源管理器界面,在上方地址栏输入C:\Users\Public\bin\fava,按回车进入该目录。
  • 把先前下载好的fava.zip层层解压,直到看见apppython两个文件夹。
    解压完成后可能会报「不支持的压缩算法」错误,不用管。
  • 把这两个文件夹拷贝到先前打开的C:\Users\Public\bin\fava目录中。

设置启动Fava快捷方式

  • 使用Fava时,需要设置一个主文件(参考1byvoid博文),这里以main.bean为例,也可以叫1.bean114514.bean,都不影响。
  • 在账本主文件同级文件夹(main.bean文件存放的目录),右键—新建—文本文档,然后将其打开,复制以下内容进去:
    1.    C:\Users\Public\bin\fava\app\Scripts\fava.exe main.bean
    复制代码
    注意,如果你的主文件不叫main.bean,那就把上面这行最后的main.bean换成你的主文件带后缀名全名。
  • 然后保存,并关闭,把这个新建 文本文档.txt重命名为fava.bat,并保存。
  • 最后双击启动fava.bat,会看见一个窗口弹出,上面有一行小字:
    1.    Starting Fava on http://127.0.0.1:5000
    复制代码

  • 按住Ctrl,点击窗口中的后面那行链接(或者打开你的浏览器,在地址栏里输入后面的地址也行),就能进入Fava的网页界面。
  • 要关闭Fava,直接点右上角的❌就行。
回复

使用道具 举报

发表于 2019-6-7 16:11 | 显示全部楼层
支付宝或微信要是愿意增加记账功能,这些记账软件迟早退出历史舞台
回复

使用道具 举报

     
 楼主| 发表于 2019-6-7 16:12 来自手机 | 显示全部楼层
guyfawkes 发表于 2019-6-7 16:11
支付宝或微信要是愿意增加记账功能,这些记账软件迟早退出历史舞台

那自然

—— 来自 HMD Global Nokia X7, Android 9上的 S1Next-鹅版 v2.1.2
回复

使用道具 举报

     
发表于 2019-6-7 16:16 来自手机 | 显示全部楼层
之前研究过,有两个痛点所以没有迁移过去
一个是没有好用的安卓端app
一个是没有精确到时刻

— from Sony G8441, Android 9 of S1 Next Goose v2.1.2
回复

使用道具 举报

     
 楼主| 发表于 2019-6-7 16:21 | 显示全部楼层
月千一夜 发表于 2019-6-7 16:16
之前研究过,有两个痛点所以没有迁移过去
一个是没有好用的安卓端app
一个是没有精确到时刻

手机上的记账app大多是单式的,复式基本上没有(除了很久没更新的贝壳记账和难用的GNUCash)

记账为什么要精确到时刻……这个粒度也太细了吧
回复

使用道具 举报

     
发表于 2019-6-7 16:21 | 显示全部楼层
记账的话Android我用“钱迹”,感觉不错。PC端直接用Excel了(
回复

使用道具 举报

     
发表于 2019-6-7 16:24 | 显示全部楼层
早就被安利过了,对我来说最大的痛点就是外出记账不方便。
回复

使用道具 举报

     
 楼主| 发表于 2019-6-7 16:37 | 显示全部楼层
Lisylfn 发表于 2019-6-7 16:21
记账的话Android我用“钱迹”,感觉不错。PC端直接用Excel了(

excel记多了感觉有点“重”,这个更轻量一点
回复

使用道具 举报

     
 楼主| 发表于 2019-6-7 16:38 | 显示全部楼层
萌名雪 发表于 2019-6-7 16:24
早就被安利过了,对我来说最大的痛点就是外出记账不方便。

毕竟PC软件
回复

使用道具 举报

发表于 2019-6-7 16:42 来自手机 | 显示全部楼层
依云老师安利之后我在用vim-beancount,还挺不错的
方不方便看个人,对于我来讲没有内置云端存储是加分项
回复

使用道具 举报

     
发表于 2019-6-7 16:43 | 显示全部楼层
手机上一直用bluecoins,虽然不能直接读取支付宝微信信用卡的记录需要手动填写,但就是觉得好用
回复

使用道具 举报

     
发表于 2019-6-7 17:20 来自手机 | 显示全部楼层
Hieda 发表于 2019-6-7 16:42
依云老师安利之后我在用vim-beancount,还挺不错的
方不方便看个人,对于我来讲没有内置云端存储是加分项 ...

现在用的Moneywiz,被它的内置云同步弄得不厌其烦…

— from Sony G8441, Android 9 of S1 Next Goose v2.1.2
回复

使用道具 举报

头像被屏蔽
     
发表于 2019-6-7 17:39 来自手机 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

头像被屏蔽
     
发表于 2019-6-7 17:40 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

发表于 2019-6-7 17:41 来自手机 | 显示全部楼层
虽然好久不用现金了,但我还是愿意用第三方软件记账
回复

使用道具 举报

发表于 2019-6-7 18:13 | 显示全部楼层
都折騰WSL了  干嘛不上SQL-Ledger  
回复

使用道具 举报

     
 楼主| 发表于 2019-6-7 18:21 来自手机 | 显示全部楼层
gofbayrf 发表于 2019-6-7 18:13
都折騰WSL了  干嘛不上SQL-Ledger

wsl现在真不折腾,特别傻瓜化操作。

—— 来自 HMD Global Nokia X7, Android 9上的 S1Next-鹅版 v2.1.2
回复

使用道具 举报

     
 楼主| 发表于 2019-6-7 18:21 来自手机 | 显示全部楼层
暗藏流 发表于 2019-6-7 17:40
记账当然最好的是在手机上,随身而且手机自己就是个钱包。电脑太不方便了 ...

可以手机记录纯文本之后输入电脑做分析

—— 来自 HMD Global Nokia X7, Android 9上的 S1Next-鹅版 v2.1.2
回复

使用道具 举报

     
发表于 2019-6-7 20:29 | 显示全部楼层
马一下
回复

使用道具 举报

     
发表于 2019-6-8 00:41 | 显示全部楼层
不懂记账,开始用对这种表格的美感感觉很爽

我就有一个问题,我用信用卡花了20块钱吃饭
        Liabilities:CreditCard:DiscoverIt           -28.66                USD
        Expenses:Eating                                                   28.66                 USD

在fava里的Income statement没有问题
为什么Balance sheet就看着很奇怪



Equity
-xxx CNY
-xxx USD
Before
-xxx CNY
-xxx USD
  CN
  -xxx CNY
  US
  -xxx USD
Earnings
28.66 USD
    Current
    28.66 USD

我不太理解为什么在equity里面一定要自动加一个Earnings-Current,因为我没有赚钱,这是让什么归零啊
回复

使用道具 举报

     
发表于 2019-6-8 03:35 来自手机 | 显示全部楼层
waox 发表于 2019-6-8 00:41
不懂记账,开始用对这种表格的美感感觉很爽

我就有一个问题,我用信用卡花了20块钱吃饭

负债增加相应权益减少,的确不是赚钱,因为实际上是预支收入举债
回复

使用道具 举报

发表于 2019-6-8 04:23 | 显示全部楼层
请问楼主,这个软件支持自动计算资产评估吗?比如投资收益和资产减记。正常情况下买东西当时应该不会有明显的资产变化,而是在使用过程中通过不断的资产增值或减记来体现。至于买菜这种根本没必要记。
回复

使用道具 举报

发表于 2019-6-8 04:25 | 显示全部楼层
Prushka 发表于 2019-6-7 16:21
手机上的记账app大多是单式的,复式基本上没有(除了很久没更新的贝壳记账和难用的GNUCash)

记账为什么 ...

肯定要精确到时刻,不然怎么计算资产的增值和减记?
回复

使用道具 举报

     
发表于 2019-6-8 05:19 来自手机 | 显示全部楼层
guyfawkes 发表于 2019-6-7 16:11
支付宝或微信要是愿意增加记账功能,这些记账软件迟早退出历史舞台

支付宝有个简单的记账功能
回复

使用道具 举报

     
 楼主| 发表于 2019-6-8 05:25 来自手机 | 显示全部楼层
lixianfyss 发表于 2019-6-8 04:25
肯定要精确到时刻,不然怎么计算资产的增值和减记?

以天为单位啊

—— 来自 HMD Global Nokia X7, Android 9上的 S1Next-鹅版 v2.1.2
回复

使用道具 举报

     
 楼主| 发表于 2019-6-8 05:32 | 显示全部楼层
本帖最后由 Prushka 于 2019-6-8 05:50 编辑
lixianfyss 发表于 2019-6-8 04:23
请问楼主,这个软件支持自动计算资产评估吗?比如投资收益和资产减记。正常情况下买东西当时应该不会有明显 ...

你是说这种吗?


证券投资的话请看这里 使用 Beancount 记录证券投资
回复

使用道具 举报

     
 楼主| 发表于 2019-6-8 05:44 | 显示全部楼层
waox 发表于 2019-6-8 00:41
不懂记账,开始用对这种表格的美感感觉很爽

我就有一个问题,我用信用卡花了20块钱吃饭
当小明决定开始用复式簿记的时候,他从 Equity 里倒一些豆子其他桶里(或从其他桶倒一些豆子到 Equity 里),将其他桶的数字调节成符合当前实际情况即可。实际操作中,人们一般只关心 Income 和 Expenses 桶的数字在某段时间内的变化,并不关心它的总数(除非你想统计你出生到现在一共收入多少、支出多少),只要把 Assets 和 Liabilities 调节准就行了。这便是 Equity 的作用——存放已有的「权益」。


所以不用关心Equity里面的东西,只要不报错一般就不会有问题。
回复

使用道具 举报

     
发表于 2019-6-8 07:29 来自手机 | 显示全部楼层
waox 发表于 2019-6-8 00:41
不懂记账,开始用对这种表格的美感感觉很爽

我就有一个问题,我用信用卡花了20块钱吃饭

因为是复式记账嘛
回复

使用道具 举报

发表于 2019-6-8 08:07 | 显示全部楼层
Prushka 发表于 2019-6-8 05:32
你是说这种吗?

主要是固定资产投资,证券一般不需要这种记账软件。记账软件主要就是反应所购买的固定资产的价值变化状况,如果买的产品有严重的资产减记现象,购买前需要非常谨慎。
回复

使用道具 举报

     
发表于 2019-6-15 01:00 来自手机 | 显示全部楼层
Prushka 发表于 2019-6-7 15:42
虽然直接安装Windows版本的beancount很蛋疼,但是现在有了WSL。在WSL里面安装beancount+fava的难度可比下一 ...

楼主怎么导入银行账单啊?比如招行的借记卡和信用卡账单?
回复

使用道具 举报

     
发表于 2019-6-15 01:37 来自手机 | 显示全部楼层
楼主这套让我对电子记账这套东西更加惧怕了,
还是专门手写记账好了
回复

使用道具 举报

发表于 2019-6-15 05:00 | 显示全部楼层
猫不萌 发表于 2019-6-15 01:37
楼主这套让我对电子记账这套东西更加惧怕了,
还是专门手写记账好了

请问手写记账有哪些作用?平常买菜吃饭,坐车通信水电费这些都是刚性支出,且无法变卖,感觉记录下来没有用。
回复

使用道具 举报

发表于 2019-6-15 05:21 | 显示全部楼层
org-mode 不是也能做计算吗?tag 什么也都支持,win osx linux 直接用就行了。
回复

使用道具 举报

     
 楼主| 发表于 2019-6-15 05:38 来自手机 | 显示全部楼层
本帖最后由 Prushka 于 2019-6-15 06:12 编辑
猫不萌 发表于 2019-6-15 01:37
楼主这套让我对电子记账这套东西更加惧怕了,
还是专门手写记账好了

电子记账图个后期处理分析省事,程序自动计算了。beancount和手写记账其实也没什么区别罢。
回复

使用道具 举报

     
 楼主| 发表于 2019-6-15 05:55 | 显示全部楼层
网银患者 发表于 2019-6-15 01:00
楼主怎么导入银行账单啊?比如招行的借记卡和信用卡账单?

https://yuchi.me/post/beancount-intro/
https://morefreeze.github.io/2016/10/beancount-thinking.html
导入支付宝账单:http://lidongchao.com/2018/07/20/has_header_in_csv_Sniffer/

总之都需要手动调整下格式,最好是用python编一个小脚本
回复

使用道具 举报

     
 楼主| 发表于 2019-6-15 06:11 | 显示全部楼层
ekdc11 发表于 2019-6-15 05:21
org-mode 不是也能做计算吗?tag 什么也都支持,win osx linux 直接用就行了。

报表难弄
回复

使用道具 举报

     
发表于 2019-6-15 08:31 来自手机 | 显示全部楼层
我用记账城市。这东西其实如果不是花钱比较随意平常不注意的人,其实用处不是很大。

----发送自 Sony G8441,Android 9
回复

使用道具 举报

     
发表于 2019-6-15 08:34 来自手机 | 显示全部楼层
lixianfyss 发表于 2019-6-15 05:00
请问手写记账有哪些作用?平常买菜吃饭,坐车通信水电费这些都是刚性支出,且无法变卖,感觉记录下来没有 ...

我也不知道,我习惯了粗略的记,防止我想不起来某一次大开支的原因
回复

使用道具 举报

     
发表于 2019-6-15 08:43 | 显示全部楼层
本帖最后由 旧游时节 于 2019-6-15 08:45 编辑

之前用过一段时间的Ledger,也是复式记账+文本文档管理账单。结果后来有几天忙着没记后来也就懒得记了。

反正现在消费都走微信支付宝,自己盘点的时候也麻烦不到哪去。每天去记录反而更花时间。
回复

使用道具 举报

     
 楼主| 发表于 2019-6-15 10:18 | 显示全部楼层
旧游时节 发表于 2019-6-15 08:43
之前用过一段时间的Ledger,也是复式记账+文本文档管理账单。结果后来有几天忙着没记后来也就懒得记了。

...

我也考虑过用ledger,但是beancount的报表实在是太好看了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|上海互联网违法和不良信息举报中心|网上有害信息举报专区|962110 反电信诈骗|举报电话 021-62035905|Stage1st ( 沪ICP备13020230号-1|沪公网安备 31010702007642号 )

GMT+8, 2025-4-22 04:15 , Processed in 0.097039 second(s), 7 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表