Skip to content

Latest commit

 

History

History
181 lines (155 loc) · 4.77 KB

ledgerTalk.org

File metadata and controls

181 lines (155 loc) · 4.77 KB

Conquering your Finances with Emacs and Ledger

About Me

What is ledger?

  • ledger-cli.org
  • Double entry accounting
  • Linux, Mac, Windows
  • Command line
  • Written by John Wiegley (2003)

Double Entry?

  • All money has a source and destination account
    PayeeAmount
    Paycheck+ $100
    Bought stuff- $20
    Total$80

Try This

Assets:Checking Account$100
Income:Paycheck-$100
Assets:Checking Account-$20
Expenses:Stuff$20
Total$0

The Five Accounts

  • Assets
  • Expenses
  • Income
  • Liabilities
  • Equity

Accounting Equations

  • Net worth = Assets - Liabilities
  • Net income = Income - Expenses

Ledger Transactions

2016/01/01 * Cash Transfer
    Assets:Bank:Checking                        $200
    Assets:Bank:Savings                        -$200
2016/01/02 * Loan Payment
    Liabilities:Loans:Student Loans             $150
    Assets:Bank:Checking                       -$150
2016/01/03 * Thinking Cup
    Expenses:Coffee Shops                      $3.50
    Assets:Bank:Checking

Your Accounts

ledger -f ledger.dat balance
            $-150.00  Assets:Bank
              $50.00    Checking
            $-200.00    Savings
               $3.50  Expenses:Coffee Shops
             $146.50  Liabilities
              $-3.50    Credit Card
             $150.00    Loans:Student Loans
--------------------
                   0

Your Bank Statement

ledger -f ledger.dat register checking
16-Jan-01 Cash Transfer       Assets:Bank:Checking         $200.00      $200.00
16-Jan-02 Loan Payment        Assets:Bank:Checking        $-150.00       $50.00
16-Jan-03 Thinking Cup        Assets:Bank:Checking          $-3.50       $46.50

What’s the Point?

  • It’s your data
  • Expressive reporting capability

Time Periods

ledger bal "Liabilities:Credit Card" --begin "last month"
ledger reg "Expenses:Shopping" --period "last october"
ledger reg eating -M

Transaction Properties

ledger reg "Assets:Roth IRA:2015" and @Contribution
ledger reg "Expenses" and %Gift
ledger bal Assets Liabilities --cleared

ledger-mode

(use-package ledger-mode
  :ensure t
  :init
  (setq ledger-clear-whole-transactions 1)

  :config
  (add-to-list 'evil-emacs-state-modes 'ledger-report-mode)
  :mode "\\.dat\\'")

Thank You