Tree-sitter grammars with ABNF round-trip conversion
Plain text accounting is a way to describe
machine- and human-readable accounting journals. Each format below has a
tree-sitter grammar that is
converted to ABNF and back via
tree-sitter2abnf, verifying the grammar round-trips correctly.
For background see Journal entries as plain text and ABNF and Plain Text Accounting.
Beancount
Double-entry bookkeeping language with account directives, multi-currency support, and validation.
Goluca
Movement-based format using arrow notation to show flows between accounts.
PTA
General-purpose plain text accounting grammar covering transactions, balance checks, and metadata.