Перейти до основного вмісту

Довідник параметрів Fava для веб-інтерфейсу Beancount

Параметри налаштування Fava для книг Beancount: налаштуйте веб-інтерфейс за допомогою директив fava-option у ваших файлах книги.

Налаштуйте стандартний Fava за допомогою датованих директив custom "fava-option". Ці параметри відокремлені від основних параметрів Beancount.

Це посилання було виконано з Beancount 3.2.3, beanquery 0.2.0 та Fava 1.30.16. Матриця описує цю стандартну версію. Beancount.io має окрему панель керування та бекенд; його доступні параметри не гарантують, що кожна функція стандартного Fava там доступна.

Синтаксис​

Значення — це рядки в лапках, включно з цілими числами та булевими значеннями. Цей повний приклад розбирається як у Beancount, так і у Fava:

; Minimal Fava configuration
option "operating_currency" "USD"
2000-01-01 custom "fava-option" "language" "en"
2000-01-01 custom "fava-option" "default-page" "income_statement/"
2000-01-01 custom "fava-option" "indent" "2"
2000-01-01 custom "fava-option" "show-closed-accounts" "false"

Дата обов’язкова. Fava обробляє завантажені користувацькі директиви у хронологічному порядку; пізніше скалярне значення замінює раніше встановлене. Повторювані налаштування collapse-pattern, import-dirs і insert-entry накопичуються. Правила вставки використовують їхні дати для вибору цільового місця, тому ці дати мають значення.

Щоб відтворити приклади локально, встановіть uv, а потім створіть тимчасове середовище:

uv venv .venv-fava-docs
uv pip install --python .venv-fava-docs/bin/python 'fava==1.30.16'
uv tool install beancount-io
source .venv-fava-docs/bin/activate
bea --file main.beancount check
fava main.beancount

Спершу створіть main.beancount з блоку конфігурації або використайте наявний реєстр. Команди оболонки вище використовують POSIX-шляхи. bea check перевіряє синтаксис і бухгалтерський облік Beancount; додатково Fava перевіряє власні назви параметрів і значення. Також перевірте звіт про помилки Fava.

Настройки за замовчуванням нижче були зчитані з встановленого FavaOptions dataclass і перевірені за допомогою версійного парсера опцій. «Не встановлено» означає None; порожня колекція означає відсутність налаштованих записів. Колонка типу значення описує вміст рядка в лапках.

Stock optionТип значенняЗа замовчуванням
languageПідтримуваний код перекладуНе встановлено
localeКод локалі BabelНе встановлено; стає en, коли core render_commas true
default-pageВідносний шлях звіту, опціонально з фільтрамиincome_statement/
fiscal-year-endФіскальна дата MM-DD12-31
indentЦіле число2
currency-columnЦіле число61
show-closed-accountsБулеве значенняfalse
show-accounts-with-zero-transactionsБулеве значенняtrue
show-accounts-with-zero-balanceБулеве значенняtrue
show-metadata-indicatorsБулеве значенняtrue
collapse-patternРегулярний вираз для рахунків; повторюванийПорожній список
sidebar-show-queriesЦіле число5
default-fileШлях до файлу, або пропущене значення для цього файлуНе встановлено
insert-entryРегулярний вираз для рахунків; повторюваний, датовані місцяПорожній список
auto-reloadБулеве значенняfalse
use-external-editorБулеве значенняfalse
import-configШлях конфігурації імпортуНе встановлено
import-dirsШлях до директорії; повторюванийПорожній список
invert-gains-losses-colorsБулеве значенняfalse
invert-income-liabilities-equityБулеве значенняfalse
conversion-currenciesКоди валют через пробіл в одному рядкуПорожній кортеж
account-journal-include-childrenБулеве значенняtrue
uptodate-indicator-grey-lookback-daysЦіле число60
upcoming-eventsЦіле число7

Використовуйте "true" або "false" для булевих значень. Порівняння нечутливе до регістру: "TRUE" також активує опцію. Будь-який рядок, крім варіанту регістру "true", вважається хибним. Його парсер цілих чисел перевіряє синтаксис цілого числа, а не позитивний діапазон; використовуйте позитивні розміри макету та невід’ємні лічильники.

Відображення та локалізація​

language​

Встановлює переклад інтерфейсу, наприклад "en", "de" або "zh_CN". Якщо не встановлено, Fava домовляється з браузером. Локаль має мати переклад, наданий Fava; синтаксично валідний код мови сам по собі недостатній.

locale​

Встановлює форматування чисел незалежно від мови інтерфейсу, наприклад "en_US" або "de_DE". Без цієї опції Fava використовує свій неліокалізований шаблон чисел. Core option "render_commas" "TRUE" забезпечує запасний варіант en. Він не наслідує мову браузера.

Навігація та макет​

default-page​

Встановлює цільове місце у головній книзі, наприклад "balance_sheet/" або "journal/?time=year". Скопіюйте частину після ідентифікатора книги (ledger slug) із робочого URL Fava для зразків. Не додавайте / на початок: шляхи до звітів відносні до цієї книги.

fiscal-year-end​

Встановлює межі часових фільтрів у рамках фінансового року. Наприклад, "03-31" завершує фінансовий рік 31 березня. Підтримує фільтри для фінансового року та кварталів; не змінює дати транзакцій. Fava також приймає значення місяця більше за 12 для позначення фінансового року, що завершується в наступному календарному році.

indent​

Встановлює відступ для проводок (posting indentation) у згенерованих записах та форматуванні редактора. Використовуйте рядок із додатним цілим числом, наприклад "4".

currency-column​

Встановлює колонку вирівнювання валюти при збереженні або вирівнюванні проводок. Також позиціонує вертикальну лінію-помічник редактора. Значення за замовчуванням — "61".

Видимість вмісту​

show-closed-accounts​

Включає закриті рахунки до дерев звітних рахунків. Рахунки з ненульовими залишками залишаються видимими незалежно від цього налаштування.

show-accounts-with-zero-transactions​

Включає рахунки без операцій до дерев рахунків. Не приховує рахунок із ненульовим залишком.

show-accounts-with-zero-balance​

Включає рахунки з нульовим звітним балансом. Вимкніть це за допомогою "false" для більш компактного дерева.

collapse-pattern​

Відповідає іменам рахунків, які потрібно звузити (згорнути) в деревах рахунків. Повторюйте директиву для кількох шаблонів. Наприклад, "^Assets:Investments" згинає цей рахунок і його нащадків.

Обмежує кількість збережених запитів, посилання на які відображаються в боковій панелі. "0" приховує ці посилання. Див. кастомні посилання та запити.

show-metadata-indicators​

Відображає невеликі бейджі метаданих у журналах. Встановіть "false", щоб приховати бейджі, не видаляючи метадані з головної книги.

Керування файлами​

default-file​

Вибирає файл, який спочатку відкривається редактором, та резервне місце для нових записів. Відносний шлях розв'язується від файлу, що містить директиву. Якщо значення відсутнє, вибирається файл, що містить директиву. Без цієї опції резервним є головний файл книги. Існуючий файл також повинен бути включений до книги, щоб бути редагованим джерелом.

insert-entry​

Розміщує новий запис перед відповідним користувацьким директивом у файлі, що містить цей директив. Його регулярний вираз співпадає з назвою рахунку з початку; він ніколи не шукає у сирих рядках файлу. Fava розглядає проведення транзакцій у зворотному порядку — від останнього до першого. Для першого рахунку з відповідним збігом обирає останнє правило, датоване строго раніше, ніж новий запис. Якщо жодне правило не підходить, додає в стандартний файл. Реалізація вставки є авторитетом для цих правил.

Створіть ці три файли в одній директорії. main.beancount постачає рахунки та містить:

; main.beancount
option "title" "Insertion Demo"
option "operating_currency" "USD"
include "january.beancount"
include "february.beancount"
2000-01-01 open Assets:Checking USD
2000-01-01 open Assets:Cash USD
2000-01-01 open Assets:Wallet USD
2000-01-01 open Expenses:Food USD
2000-01-01 custom "fava-option" "default-file"
2024-01-01 custom "fava-option" "insert-entry" "^Expenses:Food$"

january.beancount містить:

; january.beancount
2024-01-01 custom "fava-option" "insert-entry" "^Assets:Checking$"

february.beancount містить:

; february.beancount
2024-02-01 custom "fava-option" "insert-entry" "^Assets:Checking$"

Запустіть Fava з main.beancount. Додайте ці транзакції через форму транзакцій; вони є входом для операції вставки, а не додатковим файлом для підключення заздалегідь:

2024-01-15 * "January groceries"
  Expenses:Food       10.00 USD
  Assets:Checking    -10.00 USD
 
2024-02-01 * "Same-day boundary"
  Expenses:Food       20.00 USD
  Assets:Checking    -20.00 USD
 
2024-02-15 * "February groceries"
  Expenses:Food       30.00 USD
  Assets:Checking    -30.00 USD
 
2024-02-16 * "Cash groceries"
  Expenses:Food       40.00 USD
  Assets:Cash        -40.00 USD
 
2024-02-17 * "Unmatched cash transfer"
  Assets:Cash         50.00 USD
  Assets:Wallet      -50.00 USD

Перші два записи йдуть перед січневим правилом. Третій — перед лютневим правилом. Четвертий спочатку перевіряє Assets:Cash, не знаходить співпадінь, потім застосовує правило Expenses:Food в основному файлі. П’ятий не має відповідного рахунку і додається до main.beancount. Збереження пакету оновлює номери рядків правил у міру вставки записів.

auto-reload​

Автоматично оновлює сторінку, коли Fava виявляє зміну у зовнішньому джерелі. Якщо false, Fava пропонує сповіщення про оновлення. Зміни, виконані через сам Fava, вже активують оновлення.

use-external-editor​

Відкриває посилання на джерело через схему URL beancount://. Встановіть обробник на комп’ютері, що запускає браузер, і забезпечте доступ до файлів книги. Це не автоматичне підключення до файлів на розміщеному сервері.

import-config​

Вказує на конфігурацію імпортера Python. Це налаштування інтеграції: створіть конфігурацію і встановіть залежності імпортера перед використанням звіту імпорту. Три вказані пакети вище не надають конфігурацію імпортера для банку.

import-dirs​

Додає директорію для сканування кандидатів на імпорт. Повторюйте директиву, щоб додати більше директорій. Використовуйте реальні доступні директорії; встановлення опції не створює їх автоматично.

Фінансовий відображення​

unrealized​

Не є стандартною опцією Fava 1.30.16. Fava повідомляє про Unknown option з іменем у зворотніх лапках, якщо ви додаєте її. Не використовуйте її для конфігурації стандартних рахунків нереалізованого прибутку.

Знімок вихідного коду Beancount.io, переглянутий 2026-09-07, справді містить окреме текстове поле з назвою unrealized з початковим значенням "Unrealized" у своєму парсері опцій бекенду та таблиці налаштувань на панелі керування. Це підтверджує наявність цього поля. Однак це не доводить, що його зміна створює Income:Unrealized або Expenses:Unrealized, або що конкретне розгортання використовує цей знімок.

invert-income-liabilities-equity​

Інвертує відображення знаків Доходів, Заборгованостей і Власного капіталу у звіті про прибутки й збитки та балансі. Витрати зберігають свої знаки. Записи журналу, журнали рахунків і збережені проводки залишаються незмінними.

conversion-currencies​

Замінює варіанти вибору конвертації на список, розділений пропусками, в одному рядку:

; Conversion dropdown
2000-01-01 custom "fava-option" "conversion-currencies" "USD EUR"

Повторне використання цієї опції замінює попередній список. Якщо не встановлено, Fava пропонує робочі валюти плюс товари, які вона розпізнає як валюти за стандартом ISO 4217.

account-journal-include-children​

За замовчуванням включає записи дочірніх рахунків у журналі рахунка. Встановіть це значення у "false", щоб починати лише з цього рахунка.

invert-gains-losses-colors​

Інвертує кольори, які використовуються для нереалізованих прибутків і збитків у виглядах балансів за ринковою вартістю та пробних балансів. Змінюються лише кольори, а не суми чи назви рахунків.

Моніторинг​

uptodate-indicator-grey-lookback-days​

Керує періодом відліку сірого індикатора свіжості. Увімкніть індикатори рахунків за допомогою fava-uptodate-indication: TRUE у директиві open рахунка; див. приклад UI metadata.

upcoming-events​

Керує лічильником сповіщень бічної панелі для майбутніх подій у межах заданої кількості днів. "0" вимикає лічильник.

Рекомендована конфігурація​

Ця повна конфігурація є відправною точкою для базового оточення вище. Вона змінює налаштування відображення без завантаження плагінів або додаткових файлів:

option "operating_currency" "USD"
2000-01-01 custom "fava-option" "language" "en"
2000-01-01 custom "fava-option" "locale" "en_US"
2000-01-01 custom "fava-option" "default-page" "income_statement/"
2000-01-01 custom "fava-option" "fiscal-year-end" "12-31"
2000-01-01 custom "fava-option" "indent" "2"
2000-01-01 custom "fava-option" "currency-column" "61"
2000-01-01 custom "fava-option" "show-closed-accounts" "false"
2000-01-01 custom "fava-option" "show-accounts-with-zero-transactions" "true"
2000-01-01 custom "fava-option" "show-accounts-with-zero-balance" "false"
2000-01-01 custom "fava-option" "show-metadata-indicators" "true"
2000-01-01 custom "fava-option" "collapse-pattern" "^Assets:Investments"
2000-01-01 custom "fava-option" "sidebar-show-queries" "5"
2000-01-01 custom "fava-option" "auto-reload" "false"
2000-01-01 custom "fava-option" "use-external-editor" "false"
2000-01-01 custom "fava-option" "invert-income-liabilities-equity" "false"
2000-01-01 custom "fava-option" "invert-gains-losses-colors" "false"
2000-01-01 custom "fava-option" "conversion-currencies" "USD EUR"
2000-01-01 custom "fava-option" "account-journal-include-children" "true"
2000-01-01 custom "fava-option" "upcoming-events" "7"
2000-01-01 custom "fava-option" "uptodate-indicator-grey-lookback-days" "60"

Перегляд ваших поточних опцій​

У стандартному Fava відкрийте сторінку Довідка → Опції для довідки по встановленій версії та перевірте помилки після зміни директиви. Офіційна допомога по опціях 1.30.16 пояснює налаштування.

У панелі керування Beancount.io відкрийте сторінку налаштувань книги. Таблиця опцій Fava показує підмножину, що повертає бекенд. Цей інтерфейс був перевірений на знімку вихідного коду продукту, а не через аутентифіковану виробничу сесію. Відображене поле не означає, що розміщена панель реалізує стандартний редактор Fava, імпорти чи маршрути URL.

Див. також​

Джерело: https://beancount.io/uk/docs/Basics/fava-options