Zum Hauptinhalt springen

Fava-Optionen

Vollständige Referenz der Konfigurationsoptionen von Fava. Erfahren Sie, wie Sie Fava mit benutzerdefinierten fava-option-Direktiven in Ihren Beancount-Buchungsdateien anpassen.

Konfigurieren Sie die Standardversion von Fava mit datierten custom "fava-option"-Direktiven. Diese Einstellungen sind von den Beancount-Kernoptionen getrennt.

Die Beispiele dieser Referenz wurden mit Beancount 3.2.3, beanquery 0.2.0 und Fava 1.30.16 ausgeführt. Die Tabelle beschreibt diese Standardversion. Beancount.io verwendet ein eigenes Dashboard und Backend. Die dort angebotenen Einstellungen belegen nicht, dass dort jede Funktion der Standardversion von Fava verfügbar ist.

Syntax

Werte sind Zeichenketten in Anführungszeichen. Das gilt auch für Ganzzahlen und boolesche Werte. Dieses vollständige Beispiel lässt sich sowohl von Beancount als auch von Fava einlesen:

; 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"

Das Datum ist erforderlich. Fava verarbeitet die geladenen benutzerdefinierten Direktiven in Datumsreihenfolge. Eine spätere skalare Einstellung ersetzt eine frühere. Wiederholte Einstellungen für collapse-pattern, import-dirs und insert-entry werden dagegen gesammelt. Einfügeregeln wählen anhand ihres Datums einen Zielort aus. Diese Datumsangaben haben daher eine konkrete Bedeutung.

Um die Beispiele lokal nachzuvollziehen, installieren Sie uv. Erstellen Sie anschließend eine temporäre Umgebung:

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

Erstellen Sie zunächst main.beancount aus dem Konfigurationsblock, oder verwenden Sie eine vorhandene Buchungsdatei. Die Shell-Befehle oben verwenden POSIX-Pfade. bea check prüft die Beancount-Syntax und die Buchhaltung. Fava prüft zusätzlich seine eigenen Optionsnamen und Werte. Sehen Sie sich deshalb auch den Fehlerbericht von Fava an.

Die folgenden Standardwerte wurden aus der installierten Datenklasse FavaOptions ausgelesen und mit dem Optionsparser dieser Version abgeglichen. „Nicht gesetzt“ bedeutet None. Eine leere Sammlung bedeutet, dass keine Einträge konfiguriert sind. Die Spalte „Werttyp“ beschreibt den Inhalt der Zeichenkette in Anführungszeichen.

Option der StandardversionWerttypStandardwert
languageCode einer unterstützten ÜbersetzungNicht gesetzt
localeBabel-GebietsschemaNicht gesetzt; wird zu en, wenn die Kernoption render_commas wahr ist
default-pageRelativer Berichtspfad, optional mit Filternincome_statement/
fiscal-year-endGeschäftsjahresdatum MM-DD12-31
indentGanzzahl2
currency-columnGanzzahl61
show-closed-accountsBoolescher Wertfalse
show-accounts-with-zero-transactionsBoolescher Werttrue
show-accounts-with-zero-balanceBoolescher Werttrue
show-metadata-indicatorsBoolescher Werttrue
collapse-patternRegulärer Ausdruck für Konten; wiederholbarLeere Liste
sidebar-show-queriesGanzzahl5
default-fileDateipfad; ohne Wert wird diese Datei verwendetNicht gesetzt
insert-entryRegulärer Ausdruck für Konten; wiederholbare, datierte EinfügeorteLeere Liste
auto-reloadBoolescher Wertfalse
use-external-editorBoolescher Wertfalse
import-configPfad zur ImportkonfigurationNicht gesetzt
import-dirsVerzeichnispfad; wiederholbarLeere Liste
invert-gains-losses-colorsBoolescher Wertfalse
invert-income-liabilities-equityBoolescher Wertfalse
conversion-currenciesWährungscodes, durch Leerzeichen getrennt in einer ZeichenketteLeeres Tupel
account-journal-include-childrenBoolescher Werttrue
uptodate-indicator-grey-lookback-daysGanzzahl60
upcoming-eventsGanzzahl7

Verwenden Sie "true" oder "false" für boolesche Werte. Der Vergleich unterscheidet nicht zwischen Groß- und Kleinschreibung: Auch "TRUE" aktiviert eine Option. Jede Zeichenkette, die keiner Schreibvariante von "true" entspricht, wird als falsch behandelt. Der Ganzzahlparser prüft die Schreibweise als Ganzzahl, aber keinen positiven Wertebereich. Verwenden Sie für Layoutgrößen positive Werte und für Anzahlen nichtnegative Werte.

Anzeige und Lokalisierung

language

Legt die Sprache der Oberfläche fest, beispielsweise "en", "de" oder "zh_CN". Ist die Option nicht gesetzt, stimmt Fava die Sprache mit dem Browser ab. Für das Gebietsschema muss eine mit Fava ausgelieferte Übersetzung vorhanden sein. Ein syntaktisch gültiger Sprachcode allein reicht nicht aus.

locale

Legt die Zahlenformatierung unabhängig von der Oberflächensprache fest, beispielsweise "en_US" oder "de_DE". Ohne diese Option verwendet Fava sein nicht lokalisiertes Zahlenformat. Die Kernoption option "render_commas" "TRUE" setzt den Ersatzwert en. Die Browsersprache wird nicht übernommen.

default-page

Legt die Zielseite innerhalb des Buchungsbestands fest, etwa "balance_sheet/" oder "journal/?time=year". Kopieren Sie aus einer funktionierenden URL der Standardversion von Fava den Teil nach dem Slug des Buchungsbestands. Stellen Sie kein / voran: Berichtspfade sind relativ zu diesem Buchungsbestand.

fiscal-year-end

Legt die Grenzen der Zeitfilter für Geschäftsjahre fest. Beispielsweise endet bei "03-31" das Geschäftsjahr am 31. März. Die Einstellung unterstützt Filter für Geschäftsjahre und Geschäftsquartale. Transaktionsdaten werden dadurch nicht verändert. Fava akzeptiert auch Monatswerte über 12, um ein Geschäftsjahr zu benennen, das im nächsten Kalenderjahr endet.

indent

Legt die Einrückung von Buchungszeilen in erzeugten Einträgen und bei der Editorformatierung fest. Verwenden Sie eine positive Ganzzahl als Zeichenkette, beispielsweise "4".

currency-column

Legt beim Speichern oder Ausrichten von Buchungszeilen die Spalte für die Währung fest. Die Einstellung positioniert auch die senkrechte Hilfslinie im Editor. Der Standardwert ist "61".

Sichtbarkeit von Inhalten

show-closed-accounts

Zeigt geschlossene Konten in den Kontenbäumen der Berichte an. Konten mit einem Saldo ungleich null bleiben unabhängig von dieser Einstellung sichtbar.

show-accounts-with-zero-transactions

Zeigt Konten ohne Transaktionen in Kontenbäumen an. Ein Konto mit einem Saldo ungleich null wird durch diese Einstellung nicht ausgeblendet.

show-accounts-with-zero-balance

Zeigt Konten an, deren Saldo im Bericht null beträgt. Deaktivieren Sie die Option mit "false", um den Kontenbaum zu verkürzen.

collapse-pattern

Gleicht Kontonamen ab, um die entsprechenden Einträge im Kontenbaum einzuklappen. Wiederholen Sie die Direktive für mehrere Muster. Beispielsweise klappt "^Assets:Investments" dieses Konto und seine Unterkonten ein.

Begrenzt die Anzahl gespeicherter Abfragen, die in der Seitenleiste verlinkt werden. "0" blendet diese Links aus. Siehe benutzerdefinierte Links und Abfragen.

show-metadata-indicators

Zeigt kleine Metadatenmarkierungen in Journalen an. Setzen Sie die Option auf "false", um die Markierungen auszublenden, ohne Metadaten aus den Buchungsdaten zu entfernen.

Dateiverwaltung

default-file

Wählt die Datei aus, die der Editor zunächst öffnet. Sie ist zugleich das Ausweichziel für neue Einträge. Ein relativer Pfad wird ausgehend von der Datei aufgelöst, die die Direktive enthält. Ohne Wert wird die Datei mit der Direktive ausgewählt. Fehlt die Option vollständig, dient die Hauptbuchungsdatei als Ausweichziel. Damit eine vorhandene Datei als Quelle bearbeitbar ist, muss sie auch in den Buchungsbestand eingebunden sein.

insert-entry

Platziert einen neuen Eintrag vor einer passenden benutzerdefinierten Direktive in der Datei, die diese Direktive enthält. Der reguläre Ausdruck wird vom Anfang eines Kontonamens aus abgeglichen. Er durchsucht keine rohen Dateizeilen. Fava betrachtet die Buchungszeilen einer Transaktion von der letzten bis zur ersten. Für das erste Konto mit einer gültigen Übereinstimmung wählt es die neueste Regel, deren Datum strikt vor dem neuen Eintrag liegt. Passt keine Regel, wird der Eintrag an die Standarddatei angehängt. Maßgeblich für diese Regeln ist die Implementierung des Einfügevorgangs.

Erstellen Sie diese drei Dateien im selben Verzeichnis. main.beancount enthält die Konten und die Dateieinbindungen:

; 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 enthält:

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

february.beancount enthält:

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

Starten Sie Fava mit main.beancount. Fügen Sie diese Transaktionen über das Transaktionsformular hinzu. Sie sind Eingaben für den Einfügevorgang und keine zusätzliche Datei, die vorher eingebunden werden soll:

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

Die ersten beiden Einträge werden vor der Januarregel eingefügt. Der dritte wird vor der Februarregel eingefügt. Beim vierten versucht Fava zunächst Assets:Cash, findet keine Übereinstimmung und verwendet anschließend die Regel für Expenses:Food in der Hauptdatei. Beim fünften passt kein Konto zu einer Regel. Er wird an main.beancount angehängt. Beim Speichern mehrerer Einträge werden die Zeilennummern der Regeln während des Einfügens aktualisiert.

auto-reload

Lädt die Seite automatisch neu, wenn Fava eine externe Änderung der Quelldateien erkennt. Ist die Option deaktiviert, zeigt Fava einen Hinweis zum Neuladen an. Änderungen, die über Fava selbst vorgenommen werden, lösen bereits ein Neuladen aus.

use-external-editor

Öffnet Quellverweise über das URL-Schema beancount://. Installieren Sie einen entsprechenden Handler auf dem Computer, auf dem der Browser läuft. Stellen Sie sicher, dass er auf die Buchungsdateien zugreifen kann. Dadurch entsteht keine automatische Verbindung zu Dateien auf einem gehosteten Server.

import-config

Verweist auf eine Python-Importerkonfiguration. Dies ist eine Integrationseinstellung: Erstellen Sie die Konfiguration und installieren Sie die Abhängigkeiten des Importers, bevor Sie den Importbericht verwenden. Die drei oben festgelegten Pakete enthalten keine Konfiguration für einen Bankimporter.

import-dirs

Fügt ein Verzeichnis hinzu, das nach importierbaren Dateien durchsucht werden soll. Wiederholen Sie die Direktive, um weitere Verzeichnisse hinzuzufügen. Verwenden Sie vorhandene, zugängliche Verzeichnisse. Das Setzen der Option legt sie nicht an.

Finanzdarstellung

unrealized

Keine Option der Standardversion von Fava 1.30.16. Wenn Sie sie hinzufügen, meldet Fava Unknown option , gefolgt vom Namen in Backticks. Verwenden Sie sie nicht, um in der Standardversion Konten für nicht realisierte Gewinne zu konfigurieren.

Der am 2026-09-07 geprüfte Quellcodestand von Beancount.io stellt dagegen ein separates Zeichenkettenfeld namens unrealized mit dem Standardwert "Unrealized" bereit. Es erscheint im Optionsparser des Backends und in der Einstellungstabelle des Dashboards. Damit ist belegt, dass das Feld dort existiert. Daraus folgt nicht, dass eine Änderung des Felds Income:Unrealized oder Expenses:Unrealized anlegt. Ebenso wenig belegt dies, dass eine bestimmte bereitgestellte Instanz diesen Quellcodestand verwendet.

invert-income-liabilities-equity

Kehrt die angezeigten Vorzeichen von Erträgen, Verbindlichkeiten und Eigenkapital in der Gewinn- und Verlustrechnung sowie der Bilanz um. Die Vorzeichen der Aufwendungen bleiben erhalten. Journaleinträge, Kontenjournale und gespeicherte Buchungszeilen bleiben unverändert.

conversion-currencies

Ersetzt die Auswahlmöglichkeiten der Währungsumrechnung durch eine mit Leerzeichen getrennte Liste in einer einzigen Zeichenkette:

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

Wird diese Option wiederholt, ersetzt die neue Liste die vorherige. Ist sie nicht gesetzt, bietet Fava die Berichtswährungen sowie jene Waren beziehungsweise Währungseinheiten an, die es als ISO-4217-Währungen erkennt.

account-journal-include-children

Bezieht standardmäßig Einträge aus Unterkonten in das Journal eines Kontos ein. Setzen Sie die Option auf "false", um zunächst nur dieses Konto anzuzeigen.

invert-gains-losses-colors

Kehrt die Farben für nicht realisierte Gewinne und Verluste in der Bilanz und der Saldenbilanz bei Darstellung zu Marktwerten um. Die Einstellung ändert die Farben, nicht die Beträge oder Kontonamen.

Überwachung

uptodate-indicator-grey-lookback-days

Legt den Rückblickzeitraum der grauen Aktualitätsanzeige fest. Aktivieren Sie Kontoindikatoren mit fava-uptodate-indication: TRUE in der open-Direktive des Kontos. Siehe das Metadatenbeispiel für die Oberfläche.

upcoming-events

Legt fest, für wie viele Tage im Voraus kommende Ereignisse in der Benachrichtigungsanzahl der Seitenleiste berücksichtigt werden. "0" deaktiviert diese Anzahl.

Empfohlene Konfiguration

Diese vollständige Konfiguration dient als Ausgangspunkt für die oben beschriebene Standardumgebung. Sie ändert Anzeigeeinstellungen, ohne Plugins zu laden oder zusätzliche Dateien zu benötigen:

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"

Aktuelle Optionen anzeigen

Öffnen Sie in der Standardversion von Fava die Seite Hilfe → Optionen, um die Referenz für die installierte Version zu sehen. Prüfen Sie nach einer Änderung einer Direktive den Fehlerbericht. Die offizielle Optionshilfe für 1.30.16 erläutert die Einstellungen.

Öffnen Sie im Beancount.io-Dashboard die Einstellungsseite eines Buchungsbestands. Die Tabelle mit den Fava-Optionen zeigt die vom Backend zurückgegebene Teilmenge. Diese Oberfläche wurde anhand des Produktquellcodes geprüft, nicht in einer authentifizierten Sitzung des Produktivsystems. Ein angezeigtes Feld bedeutet nicht, dass das gehostete Dashboard den Editor, die Importe oder die URL-Routen der Standardversion von Fava implementiert.

Siehe auch

Quelle: https://beancount.io/de/docs/Basics/fava-options