From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id CAXlAHVY81//PwAA0tVLHw (envelope-from ) for ; Mon, 04 Jan 2021 18:03:33 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id 4NwKOHRY819cDgAAbx9fmQ (envelope-from ) for ; Mon, 04 Jan 2021 18:03:32 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 3374A940341 for ; Mon, 4 Jan 2021 18:03:32 +0000 (UTC) Received: from localhost ([::1]:57338 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kwUCY-00055r-TF for larch@yhetil.org; Mon, 04 Jan 2021 13:03:30 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:43484) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kwU9n-00053T-Pb for emacs-orgmode@gnu.org; Mon, 04 Jan 2021 13:00:39 -0500 Received: from mail-pj1-x1032.google.com ([2607:f8b0:4864:20::1032]:53191) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kwU9k-00020a-Ph for emacs-orgmode@gnu.org; Mon, 04 Jan 2021 13:00:39 -0500 Received: by mail-pj1-x1032.google.com with SMTP id v1so57892pjr.2 for ; Mon, 04 Jan 2021 10:00:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wakatara.com; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to; bh=Y2Wz4e4ln8KcMXhJ7eEvHXnvF66voWbX3OZjSMhq9UQ=; b=DWnuVPKAdI6DYurIQx6O3cJNQwDnO/ajyV5ei5lgRKtLjxL0txxGjARpFwRyZjJqLK bhj5YKAYtGiQ322SZeDoqfTsZwdmo5DDCdNkBKxlw4Rhw2JmQs7ur4ihcIbUgHuDNTl6 ihjwi6avDelyeOeP1Xj7+GX1RM+/g3WSlIwhcd+/zpAACijx6UeLYhWLLn6/GyEksFR6 qmeR8mvbBnS8G+G6/HPBseHAl0qHClbzndGbKAMzUt+YlCBTFrfOiWxWr6Z567JDhUZu 3oLgPo8jx+Z5Yn3Ai3Z0GlPHsM+6MKgSA6B/dd/x0kpbYc0V//V0lxgPT6uZqpbLA8l9 mP0g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=Y2Wz4e4ln8KcMXhJ7eEvHXnvF66voWbX3OZjSMhq9UQ=; b=huv6ILJioeWSymQDxN/fG0XqmjPu+jTqpBdAPMFhjYeuKwwM1+WKC9+dZ0O6K1WX4h bznCevMo8utsHK0zQYqs7kr484dAaMLzzQ69iqYIiksaiR6RhlG628lZQlNHooJgXqJe FhHfaRtKXCW55KUceex0ziatjK4UmdSefDGNgSF+8pNBAW9V0riwCxtYrJWCKHaXaYiD Ovu/FYqjzV38K5hYgRwod6+HUOuW80/CuoGwClvoFNLh+PTm19b0NYOBhTQRJsW3Gxjq 7GBVPEQq2vbUGczuXr3K/EL4MWv4dn8XoqTTCDVqqSZJQwkMgruGIThyJdNsjzfud3aR qexg== X-Gm-Message-State: AOAM533tgN/O6lwm5OzQ2fuRdGM3lJYy+vCEmUnk6SYgP6WsNouS1OlA exraHaSGWlexGdgINOR577WoXQVRUh/BWO9X5aX94Gg8qVjK476f X-Google-Smtp-Source: ABdhPJza0D0jPlTQUiODSe45uKZiWYVYS5GiU6Cz9oZ04Y966e2DCTuEWXEHQzEyn1XBaNUlI4gUeTQJdxBeC/98FAs= X-Received: by 2002:a17:90a:4096:: with SMTP id l22mr68400pjg.114.1609783232092; Mon, 04 Jan 2021 10:00:32 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Daryl Manning Date: Tue, 5 Jan 2021 01:59:56 +0800 Message-ID: Subject: Re: Accounting WAS Emacs-orgmode Digest, Vol 179, Issue 4 To: Org-mode Content-Type: multipart/alternative; boundary="000000000000b6e4e205b816dde9" Received-SPF: pass client-ip=2607:f8b0:4864:20::1032; envelope-from=daryl@wakatara.com; helo=mail-pj1-x1032.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Migadu-Flow: FLOW_IN X-Migadu-Spam-Score: -2.53 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=wakatara.com header.s=google header.b=DWnuVPKA; dmarc=none; spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Migadu-Queue-Id: 3374A940341 X-Spam-Score: -2.53 X-Migadu-Scanner: scn0.migadu.com X-TUID: FIys7XajliAI --000000000000b6e4e205b816dde9 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable I do not use ledger within org-mode bit use a combo of libraries to make ledger entries *look* and act like org-mode with folding. I find this work (for me) much better than trying to mess with babel and having inline ledger (basically, I treat my ledger file as a... ahem... ledger... I track personal, budget, stock portfolio this way. It's very flexible and way way better than using Quicken which does find with my Canuck accounts, but cannot integrate my SG bank or stock broker.). So I use `ledger-mode` directly configured like this in my init.el ``` ;; =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Ledger mode =3D=3D=3D=3D=3D=3D=3D=3D=3D (use-package ledger-mode :ensure t :defer t :hook (ledger-mode . outline-minor-mode) :bind (:map ledger-mode-map ("TAB" . org-cycle)) :config (font-lock-add-keywords 'ledger-mode outline-font-lock-keywords) :mode ("\\.ledger$" . ledger-mode) ) This also allows stars to deliineate hierarchy in the ledger and then fold and unfold like an org doc. Super handy. So, in one pane on my screen I have the ledger open (the tricky thing is always setting up accounts and opening balances though there are some nice tutorials for setting those up (if you have multiple currencies, *do* set up accounts by currency early eg. Assets:CAD:Bank of Montreal Assets:SGD:OCBC and for Liabilities like Credit Cards, lines of credit etc as well The nice thing about this is you can have the ledger buffer open in one panel and use C-{COR} for pulling up a balance report in the other pane which automatically balances when you save the ledger file. Also, in practical terms for day to day, rather than input things manually, I highly recommend downloading csvs (or similar formats) from your bank and using the ruby gem `reckon` which is a bayesian predictor that will learn from your ledger on how to expense your bank account entries and then write out the ledger file for you. Super handy. Overly long blog post here: https://daryl.wakatara.com/tracking-your-finances-with-reckon-and-ledger/ to get you goin if it's not just a formatting thing. It also has some suggestions for category setups and the like. Ledger is a bit steep to get started with but once you've got it setup it does not require much time (especially with reckon) and is way more flexible than something like Quicken if you have a complex financial life. Anyhow, you do need to vinset a little time, but I have to admit I am pretty impressed with it. As someone else noted, you can also take a look at beancount, though I personally still prefer the emacs integration available in ledger. Hope this helped! ciao ! Daryl. PS> Even outside of emacs, I'd personally love to see people build some more tools on top of the ledger format. I keep wanting to take a shot at some portfolio tools, but never seem to be able to fit in the time. =3D] On Tue, Jan 5, 2021 at 1:01 AM wrote: > > 19. accounting (Uwe Brauer) > 20. Re: accounting (Eric S Fraga) > 21. Re: Org to ConTeXt exporter? (Ludovic Court=C3=A8s) > 22. Re: accounting (Dr. Arne Babenhauserheide) > 23. Re: ob-haskell (Leo) > 24. Re: accounting (Daniele Nicolodi) > 25. Re: accounting (Uwe Brauer) > 26. Re: accounting (Charles Millar) > 27. Re: accounting (Eric S Fraga) > > > > ------------------------------ > > Message: 19 > Date: Mon, 04 Jan 2021 09:54:00 +0100 > From: Uwe Brauer > To: emacs-orgmode@gnu.org > Subject: accounting > Message-ID: <87ble56q1j.fsf@mat.ucm.es> > Content-Type: text/plain > > > Hi > > https://orgmode.org/worg/org-contrib/babel/languages/ob-doc-ledger.html > > Points out how to use ledger within org mode. > > Is there any simpler solution? > > Regards > > Uwe Brauer > > > > > ------------------------------ > > Message: 20 > Date: Mon, 04 Jan 2021 09:31:58 +0000 > From: Eric S Fraga > To: emacs-orgmode@gnu.org > Subject: Re: accounting > Message-ID: <871rf1m4j5.fsf@ucl.ac.uk> > Content-Type: text/plain > > On Monday, 4 Jan 2021 at 09:54, Uwe Brauer wrote: > > Points out how to use ledger within org mode. > > Is there any simpler solution? > > How do you wish it to be simpler? What is it you wish to do? > -- > : Eric S Fraga via Emacs 28.0.50, Org release_9.4.4-166-g291993 > > > > ------------------------------ > > Message: 22 > Date: Mon, 04 Jan 2021 11:19:50 +0100 > From: "Dr. Arne Babenhauserheide" > To: Uwe Brauer > Cc: emacs-orgmode@gnu.org > Subject: Re: accounting > Message-ID: <87o8i5t35l.fsf@web.de> > Content-Type: text/plain; charset=3D"utf-8" > > > Uwe Brauer writes: > > > https://orgmode.org/worg/org-contrib/babel/languages/ob-doc-ledger.html > > > > Points out how to use ledger within org mode. > > > > Is there any simpler solution? > > Do you mean simpler accounting in org-mode, or do you mean simpler > ledger-integration? > > You can always tangle your ledger-data and use a ledger commandline > client. Also Emacs has direct support for ledger. Here=E2=80=99s a setup = via > use-package: > > (use-package ledger-mode :ensure t :defer 20 > :config > (org-babel-do-load-languages > 'org-babel-load-languages > '((ledger . t)))) > > Best wishes, > Arne > -- > Unpolitisch sein > hei=C3=9Ft politisch sein > ohne es zu merken > -------------- next part -------------- > ------------------------------ > > Message: 24 > Date: Mon, 4 Jan 2021 12:13:31 +0100 > ------------------------------ > > Message: 25 > Date: Mon, 04 Jan 2021 13:43:31 +0100 > From: Uwe Brauer > To: "Dr. Arne Babenhauserheide" > Cc: Uwe Brauer , emacs-orgmode@gnu.org > Subject: Re: accounting > Message-ID: <87eej06ff0.fsf@mat.ucm.es> > Content-Type: text/plain; charset=3D"utf-8" > > >>> "AB" =3D=3D Arne Babenhauserheide writes: > > > Uwe Brauer writes: > > >> > https://orgmode.org/worg/org-contrib/babel/languages/ob-doc-ledger.html > >> > >> Points out how to use ledger within org mode. > >> > >> Is there any simpler solution? > > > Do you mean simpler accounting in org-mode, > > > This is what I meant. > > > or do you mean simpler ledger-integration? > > The example in this link is ok, also the output (the result of the > ledger operation) is not very nicely formatted. > > > You can always tangle your ledger-data and use a ledger commandline > > client. Also Emacs has direct support for ledger. Here=E2=80=99s a s= etup via > > use-package: > > > (use-package ledger-mode :ensure t :defer 20 > > :config > > (org-babel-do-load-languages > > 'org-babel-load-languages > > '((ledger . t)))) > > > Best wishes, > > Arne > > --000000000000b6e4e205b816dde9 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I do not use ledger within org-mode bit use a combo o= f libraries to make ledger entries *look* and act like org-mode with foldin= g. I find this work (for me) much better than trying to mess with babel and= having inline ledger (basically, I treat my ledger file as a... ahem... le= dger... I track personal, budget, stock portfolio this way. It's very f= lexible and way way better than using Quicken which does find with my Canuc= k accounts, but cannot integrate my SG bank or stock broker.).

So I use `ledger-mode` directly configured like this in m= y init.el

```
;; =3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D Ledger mode =3D=3D=3D=3D=3D=3D=3D=3D=3D
(use-package ledger-mo= de
=C2=A0 :ensure t
=C2=A0 :defer t
=C2=A0 :hook
=C2=A0 (ledger= -mode . outline-minor-mode)
=C2=A0 :bind
=C2=A0 (:map ledger-mode-map=
=C2=A0 =C2=A0 =C2=A0 =C2=A0 ("TAB" . org-cycle))
=C2=A0 :c= onfig
=C2=A0 (font-lock-add-keywords 'ledger-mode outline-font-lock-= keywords)
=C2=A0 :mode
=C2=A0 ("\\.ledger$" . ledger-mode)<= br>=C2=A0 )

This also allows stars to deliineate h= ierarchy in the ledger and then fold and unfold like an org doc. Super hand= y.

So, in one pane on my screen I have the ledger = open (the tricky thing is always setting up accounts and opening balances t= hough there are some nice tutorials for setting those up (if you have multi= ple currencies, *do* set up accounts by currency early

eg.=C2=A0 Assets:CAD:Bank of Montreal
=C2=A0 =C2=A0 =C2= =A0=C2=A0 Assets:SGD:OCBC
and for Liabilities like Credit Cards, = lines of credit etc as well

The nice thing about t= his is you can have the ledger buffer open in one panel and use C-{COR} for= pulling up a balance report in the other pane which automatically balances= when you save the ledger file.

Also, in prac= tical terms for day to day, rather than input things manually, I highly rec= ommend downloading csvs (or similar formats) from your bank and using the r= uby gem `reckon` which is a bayesian predictor that will learn from your le= dger on how to expense your bank account entries and then write out the led= ger file for you. Super handy.

Overly long bl= og post here:
to get you goin if it&= #39;s not just a formatting thing.

It also ha= s some suggestions for category setups and the like.

Ledger is a bit steep to get started with but once you've got i= t setup it does not require much time (especially with reckon) and is way m= ore flexible than something like Quicken if you have a complex financial li= fe.

Anyhow, you do need to vinset a little ti= me, but I have to admit I am pretty impressed with it.

<= /div>
As someone else noted, you can also take a look at beancount, tho= ugh I personally still prefer the emacs integration available in ledger.

Hope this helped!

= ciao !
Daryl.
PS> Even outside of emacs, I'd per= sonally love to see people build some more tools on top of the ledger forma= t. I keep wanting to take a shot at some portfolio tools, but never seem to= be able to fit in the time.=C2=A0 =3D]


On Tue, Jan 5, 2021 at 1:01 AM <emacs-orgmode-request@gnu.org> wrote:

=C2=A0 19. accounting (Uwe Brauer)
=C2=A0 20. Re: accounting (Eric S Fraga)
=C2=A0 21. Re: Org to ConTeXt exporter? (Ludovic Court=C3=A8s)
=C2=A0 22. Re: accounting (Dr. Arne Babenhauserheide)
=C2=A0 23. Re: ob-haskell (Leo)
=C2=A0 24. Re: accounting (Daniele Nicolodi)
=C2=A0 25. Re: accounting (Uwe Brauer)
=C2=A0 26. Re: accounting (Charles Millar)
=C2=A0 27. Re: accounting (Eric S Fraga)
=C2=A0


------------------------------

Message: 19
Date: Mon, 04 Jan 2021 09:54:00 +0100
From: Uwe Brauer <ou= b@mat.ucm.es>
To: emacs-orgmod= e@gnu.org
Subject: accounting
Message-ID: <87ble56q1j.fsf@mat.ucm.es>
Content-Type: text/plain


Hi

https://orgmode.org/worg/org-= contrib/babel/languages/ob-doc-ledger.html

Points out how to use ledger within org mode.

Is there any simpler solution?

Regards

Uwe Brauer




------------------------------

Message: 20
Date: Mon, 04 Jan 2021 09:31:58 +0000
From: Eric S Fraga <e.fraga@ucl.ac.uk>
To: emacs-orgmod= e@gnu.org
Subject: Re: accounting
Message-ID: <871rf1m4j5.fsf@ucl.ac.uk>
Content-Type: text/plain

On Monday,=C2=A0 4 Jan 2021 at 09:54, Uwe Brauer wrote:
> Points out how to use ledger within org mode.
> Is there any simpler solution?

How do you wish it to be simpler?=C2=A0 What is it you wish to do?
--
: Eric S Fraga via Emacs 28.0.50, Org release_9.4.4-166-g291993



------------------------------

Message: 22
Date: Mon, 04 Jan 2021 11:19:50 +0100
From: "Dr. Arne Babenhauserheide" <arne_bab@web.de>
To: Uwe Brauer <oub@= mat.ucm.es>
Cc: emacs-orgmod= e@gnu.org
Subject: Re: accounting
Message-ID: <= 87o8i5t35l.fsf@web.de>
Content-Type: text/plain; charset=3D"utf-8"


Uwe Brauer <oub@mat.= ucm.es> writes:

> https://orgmode.org/worg= /org-contrib/babel/languages/ob-doc-ledger.html
>
> Points out how to use ledger within org mode.
>
> Is there any simpler solution?

Do you mean simpler accounting in org-mode, or do you mean simpler
ledger-integration?

You can always tangle your ledger-data and use a ledger commandline
client. Also Emacs has direct support for ledger. Here=E2=80=99s a setup vi= a
use-package:

(use-package ledger-mode :ensure t :defer 20
=C2=A0 :config
=C2=A0 (org-babel-do-load-languages
=C2=A0 =C2=A0'org-babel-load-languages
=C2=A0 =C2=A0'((ledger . t))))

Best wishes,
Arne
--
Unpolitisch sein
hei=C3=9Ft politisch sein
ohne es zu merken
-------------- next part --------------
------------------------------

Message: 24
Date: Mon, 4 Jan 2021 12:13:31 +0100
------------------------------

Message: 25
Date: Mon, 04 Jan 2021 13:43:31 +0100
From: Uwe Brauer <ou= b@mat.ucm.es>
To: "Dr. Arne Babenhauserheide" <arne_bab@web.de>
Cc: Uwe Brauer <oub@= mat.ucm.es>, emacs-orgmode@gnu.org
Subject: Re: accounting
Message-ID: <87eej06ff0.fsf@mat.ucm.es>
Content-Type: text/plain; charset=3D"utf-8"

>>> "AB" =3D=3D Arne Babenhauserheide <arne_bab@web.de> writes:

=C2=A0 =C2=A0> Uwe Brauer <oub@mat.ucm.es> writes:

=C2=A0 =C2=A0>> https:/= /orgmode.org/worg/org-contrib/babel/languages/ob-doc-ledger.html
=C2=A0 =C2=A0>>
=C2=A0 =C2=A0>> Points out how to use ledger within org mode.
=C2=A0 =C2=A0>>
=C2=A0 =C2=A0>> Is there any simpler solution?

=C2=A0 =C2=A0> Do you mean simpler accounting in org-mode,


This is what I meant.

=C2=A0 =C2=A0> or do you mean simpler ledger-integration?

The example in this link is ok, also the output (the result of the
ledger operation) is not very nicely formatted.

=C2=A0 =C2=A0> You can always tangle your ledger-data and use a ledger c= ommandline
=C2=A0 =C2=A0> client. Also Emacs has direct support for ledger. Here=E2= =80=99s a setup via
=C2=A0 =C2=A0> use-package:

=C2=A0 =C2=A0> (use-package ledger-mode :ensure t :defer 20
=C2=A0 =C2=A0>=C2=A0 =C2=A0:config
=C2=A0 =C2=A0>=C2=A0 =C2=A0(org-babel-do-load-languages
=C2=A0 =C2=A0>=C2=A0 =C2=A0 'org-babel-load-languages
=C2=A0 =C2=A0>=C2=A0 =C2=A0 '((ledger . t))))

=C2=A0 =C2=A0> Best wishes,
=C2=A0 =C2=A0> Arne




=C2=A0
--000000000000b6e4e205b816dde9--