Re: Abridged summary of ledger-cli@googlegroups.com - 2 updates in 1 topic

25 views
Skip to first unread message

Daryl Manning

unread,
Oct 29, 2025, 11:27:44 PM (7 days ago) Oct 29
to ledge...@googlegroups.com
I'd be interested in hearing about the variability you think there is in the file format (I use a stricter format for *myself*) 
like, for example, not allowing prefixed currencies and such and demanding ISO 3 letter curency codes etc, but would be interested 
in hearing the types of things that we all feel _should_ be removed. I've been quietly working on a Go port (just not a huge Rust fan 
tho it's great for systems work), but wanted to add in features that would make it better for business reporting, stock portfolio trakcing, and
in particular, I've ended up using a python tool for doing my business reporting pyreport a lot which I'd love to bake in.

Willing to share the Go code as well, but I do like the idea of a tighter "spec" to the ledger plain text accounting format, and a fresh code base start. 

(I know someone mentioned a Rust port before, so not sure if this is the same one, but just find Go easier to find collaborators for on things and 
despite Rust's systems edge performance, have only really seen it useful for deep high performance systems programming - though I'll probably 
eat those words in a few years when I move over to it as a primary language off Go... 😂)

One thing I need... a better name than *ledgor*... 😂

ciao !
Daryl.


On Thu, Oct 30, 2025 at 7:18 AM <ledge...@googlegroups.com> wrote:
Martin Michlmayr <t...@cyrius.com>: Oct 29 06:35PM +0800

I saw on GitHub that there's a new Rust port of Ledger being worked
on.
 
Can I ask what the plan is for this port? Is this going to be a 100%
compatible port (i.e. the current test suite will ...more
John Wiegley <jwie...@gmail.com>: Oct 29 02:43PM -0700

>>>>> "MM" == Martin Michlmayr <t...@cyrius.com> writes:
 
MM> I saw on GitHub that there's a new Rust port of Ledger being worked on.
MM>
MM> Can I ask what the plan is for this port? Is this going ...more
You received this digest because you're subscribed to updates for this group. You can change your settings on the group membership page.
To unsubscribe from this group and stop receiving emails from it send an email to ledger-cli+...@googlegroups.com.

Simon Michael

unread,
Oct 31, 2025, 2:29:43 AM (6 days ago) Oct 31
to ledge...@googlegroups.com
On 2025-10-29 17:27, Daryl Manning wrote:
> I'd be interested in hearing about the variability you think there is in
> the file format (I use a stricter format for *myself*)
> like, for example, not allowing prefixed currencies and such and
> demanding ISO 3 letter curency codes etc, but would be interested
> in hearing the types of things that we all feel _should_ be removed.

It's very complex. A few things that come to mind (still true as far as
I know):

- Multiple formats can be mixed in the journal file. Journal entries and
directives, but also timeclock entries, python code and value
expressions (as part of journal entries and directives I think) which
are a turing complete programming language themselves.

- There's great flexibility in the syntax, which is a double edged
sword. It feels pleasant for users in the beginning but complicates life
ever after for implementors (and in the end, for users as well).
Beancount's syntax is too restrictive for comfort in some ways, but eg
requiring strict ISO dates, and ISO currency codes on the right hand
side, are two small things that simplify a lot.

- The syntax for everything right of the account name in postings stands
out as particularly complex - amounts, costs, lot prices, lot dates, lot
labels, balance assertions, balance assignments, and comments can all be
combined there, in many different ways.

- Allowing spaces in account names brings in the two-space delimiter
requirement, which beginners always trip up on. Also it makes scripting
harder, later. Again it's a double-edged sword, costly though also
sometimes pleasant.

You might be interested to review hledger's journal format[1]. It copies
most though not all of Ledger's (not value expressions, eg). But you can
see I've documented some syntax as first class and pushed some other
parts into a legacy section[2]. Also I discuss syntax differences at [3].

[1] https://hledger.org/1.50/hledger.html#journal
[2] https://hledger.org/1.50/hledger.html#other-syntax
[3] https://hledger.org/ledger.html#journal-format-differences


Reply all
Reply to author
Forward
0 new messages