Синтаксис языка Beancount
Здесь представлен краткий, но исчерпывающий справочник по синтаксису языка Beancount, сочетающий практическую структуру, правила и примеры. Для получения более подробной информации см. Шпаргалку.
Обзор
Beancount — это система бухгалтерского учета с двойной записью в виде простого текста. Его язык структурирован вокруг трех основных строительных блоков:
- Товары (валюты, акции, баллы и т. д.)
- Счета (иерархические, категоризированные книги)
- Директивы (датированные записи, фиксирующие события или конфигурацию)
Товары
Т овары всегда пишутся заглавными буквами, например, USD, EUR, AAPL, BTC, MILES, HOURS.
Счета
Счета представляют собой разделенные двоеточиями иерархические имена с заглавной буквы. Они должны начинаться с одного из пяти корневых типов счетов:
| Название | Тип | Типичное содержимое | Пример |
|---|---|---|---|
Assets | + | Наличные, Банк, Инвестиции | Assets:Checking |
Liabilities | - | Кредитные карты, Кредиты | Liabilities:CreditCard |
Income | - | Зарплата, Проценты | Income:EmployerA |
Expenses | + | Покупки, Счета | Expenses:Food:Dining |
Equity | - | Начальные/Конечные остатки | Equity:Opening-Balances |
- Компоненты должны быть написаны с заглавной буквы, разделены двоеточиями (
:), без пробелов. - В компонентах допускаются цифры и тире.
- Корневые названия счетов можно настроить с помощью опций (см. ниже).
Директивы
Директивы — это основные операторы в файле Beancount. Большинство начинается с даты, за которой следует тип директивы и аргументы. Они обрабатываются в хронологическом порядке (по дате), а не в порядке следования в файле.
Общий формат:
YYYY-MM-DD <директива> <аргументы...>