Coder Social home page Coder Social logo

ledger-mode's Introduction

Join the chat at https://gitter.im/use-package/Lobby Build Status master Status License GitHub release

Ledger: Command-Line Accounting

Ledger is a powerful, double-entry accounting system that is accessed from the UNIX command-line. This may put off some users, since there is no flashy UI, but for those who want unparalleled reporting access to their data there are few alternatives.

Ledger uses text files for input. It reads the files and generates reports; there is no other database or stored state. To use Ledger, you create a file of your account names and transactions, run from the command line with some options to specify input and requested reports, and get output. The output is generally plain text, though you could generate a graph or html instead. Ledger is simple in concept, surprisingly rich in ability, and easy to use.

For the Impatient

I know, you just want to build and play. If you have all the dependencies installed, then simply do this:

$ git clone [email protected]:ledger/ledger.git
$ cd ledger && ./acprep update  # Update to the latest, configure, make

Now try your first ledger command:

$ ./ledger -f test/input/sample.dat reg

For help on keeping your journal have a look at the documentation, the wiki, and the Resources section at the end of this file. An Emacs mode for Ledger files can be found in the ledger/ledger-mode repository and a vim plugin is located in the ledger/vim-ledger repository.

Docker version

If you have Docker installed on your computer or server, you can use a Docker version of this software, without installing any further dependencies:

$ docker run --rm -v "$PWD"/test/input:/data dcycle/ledger:1 -f /data/sample.dat reg

Dependencies

If you wish to proceed in this venture, you'll need a few dependencies. Note that some features, e.g. --import require building Ledger with Python support. The easiest way to get them for your platform is to run this handy Python script:

$ ./acprep dependencies

If that doesn't completely work, here are the dependencies for building the current master branch:

Dependency Version (or greater)
CMake 3.16.2
Boost 1.72
Gmp 6.1.2
Mpfr 4.0.2
utfcpp 3.2.3
ICU 63 optional
gettext 0.17 optional
libedit 20090111-3.0 optional
Python 3.9 optional
Gpgmepp 1.13.1 optional
doxygen 1.9.5 optional, for make docs
graphviz 2.20.3 optional, for make docs
texinfo 4.13 optional, for make docs
lcov 1.6 optional, for make report, used with ./acprep gcov
sloccount 2.26 optional, for make sloc

macOS

You can use Homebrew or MacPorts to install build dependencies for Ledger easily on macOS.

1. Homebrew

If you use Homebrew, to install the dependencies you would run:

$ brew install cmake boost boost-python3 gmp mpfr

2. MacPorts

If you build stuff using MacPorts on macOS, as I do, here is what you would run:

$ sudo port install -f cmake python37 \
     libiconv zlib gmp \
     mpfr ncurses ncursesw \
     gettext libedit boost-jam \
     boost +st+python37+icu texlive doxygen graphviz \
     texinfo lcov sloccount

Conda

The dependencies for building Ledger are available from conda-forge on certain platforms (for example, linux-64), which can be used with Conda or mamba.

With Conda you could run:

$ conda install -c conda-forge python=3 cmake boost gmp mpfr \
     gettext libedit texinfo doxygen graphviz

Ubuntu

If you're going to build on Ubuntu, sudo apt-get install ... the following packages (current as of Ubuntu 18.04):

$ sudo apt-get install build-essential cmake doxygen \
     libboost-system-dev libboost-dev python3-dev gettext git \
     libboost-date-time-dev libboost-filesystem-dev \
     libboost-iostreams-dev libboost-python-dev libboost-regex-dev \
     libboost-test-dev libedit-dev libgmp3-dev libmpfr-dev texinfo tzdata

Debian

Debian 10 (bullseye), Debian 11 ("bullseye"), Debian testing and Debian unstable (sid) contain all components needed to build ledger. You can install all required build dependencies using the following command:

$ sudo apt-get install build-essential cmake autopoint texinfo python3-dev \
     zlib1g-dev libbz2-dev libgmp3-dev gettext libmpfr-dev \
     libboost-date-time-dev libboost-filesystem-dev \
     libboost-graph-dev libboost-iostreams-dev \
     libboost-python-dev libboost-regex-dev libboost-test-dev

Fedora

You can install all required build dependencies under Fedora using the following command (tested with Fedora 32):

$ sudo dnf install boost-date-time boost-devel boost-filesystem \
    boost-iostreams boost-python3-devel boost-regex boost-system \
    boost-test cmake doxygen gettext git gmp-devel libedit-devel \
    mpfr-devel python3-devel texinfo tzdata

Building

The next step is preparing your environment for building. While you can use cmake . and make, I've prepared a script that does a lot more of the footwork for you:

$ ./acprep update
# or, if you want to use the Boost libraries with suffix -mt, install in
# $HOME/local and build with 2 processes in parallel
$ ./acprep update --boost-suffix=-mt --prefix=$HOME/local -j2

Please read the contents of CMakeFiles/CMakeOutput.log and CMakeFiles/CMakeError.log if the configure step fails. Also, see the help subcommand to acprep, which explains some of its many options. It's pretty much the only command I run for configuring, building and testing Ledger.

You can run make check to confirm the result, and make install to install.

Resources

Now that you're up and running, here are a few resources to keep in mind:

If you have ideas you'd like to share, the best way is either to e-mail me a patch (I prefer attachments over pasted text), or to get an account on GitHub. Once you do, fork the Ledger project, hack as much as you like, then open a pull request on GitHub.

ledger-mode's People

Contributors

afh avatar atheriel avatar bcc32 avatar bkuhn avatar cpitclaudel avatar csrhodes avatar damiencassou avatar dependabot[bot] avatar ecraven avatar enderw88 avatar felipebalbi avatar fuco1 avatar georgek avatar hexagonal-sun avatar jabranham avatar jwiegley avatar kain88-de avatar kljohann avatar marcowahl avatar merriam avatar mpalmer avatar purcell avatar rladams avatar scfc avatar simonmichael avatar tbm avatar thdox avatar the-kenny avatar vanicat avatar yurikhan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ledger-mode's Issues

ledger-mode-clean-buffer truncates account declarations

When I run ledger-mode-clean-buffer all of my account declarations become truncated in an identical fashion which immediately breaks the ledger file. Specifically:

account Expenses

becomes:

acExpenses

This happens to all my account declarations. Once that happens, running reports immediately errors and I can no longer use the file with the command line ledger until I manually fix all the account declarations. ledger-mode-clean-buffer worked perfectly until a recent update to ledger-mode. Other types of declarations (such as for commodities) appear unaffected.

Ledger version is 3.1.1-20160111; ledger-mode is the version currently in MELPA (20180126.1808). Please let me know if I can provide any other useful information.

Reconciling files that use "include"?

I tried to reconcile a ledger file that uses the include directive to import another file and the result was somewhat surprising: The reconciliation buffer showed all the transaction -- including those from the other file -- but I could not actually reconcile any of them. If I selected an "included" transaction with SPC, then the transaction changed its color in the buffer but the underlying text file remained unchanged. Also, the reconciled total was not adapted.

Is this is a known issue? Or is it possible that I did something wrong?

trailing whitespace not removed when prefilling account name in minibuffer

Hello,

if the cursor is on an account line which has some amount and 'ledger-report', 'ledger-reconcile' or any other function which needs an account name as input is run, the account the cursor is on is pasted into the minibuffer including trailing whitespace, which makes the preselection useless. As an example, consider the following transaction (square brackets indicate cursor position):

2017-01-01 sample transaction
    expenses:someexpe[n]se    10.00
    accounts:payable

When running 'ledger-report' and then choosing 'balance', the prefilled account name is 'expenses:someexpense '. As of course there is no such account, I have to reenter the account name without the trailing spaces manually.

I looked at the code a bit but couldn't find the problem (don't know much elisp), I guess it's a simple removal of trailing whitespace somewhere in the internal context providing functions.

Could you please fix this?

Thanks a lot,

Simon

Ability to run ledger-report and pass report name and account name simultaneously

Hi!

I would like to make a custom hydra map to quickly access ledger-mode reports. It should be similar to what org-mode agenda dispatcher provides. It is possible to create custom reports in ledger-mode, but they cannot be accessed via keyboard shortcuts like in org-mode agenda dispatcher. Ideally it would great to have dispatcher built into ledger-mode because there's a lot of accounts and custom reports can exist.

It looks like the the easiest way is to create custom menu using hydra. I found that ledger-report command accepts one argument -- the report name. Is there any way to pass the account name (with two arguments including a report name and an account name)?

The whole idea is to create 2 hydra mappings:

  1. For choosing the report,
  2. For choosing the account.

I already have the first, but couldn't find how to achieve the same goal for the second.

Thanks!

using with hledger

The command C-c C-a for adding a new transaction can be used with hledger? How? Using it a got hledger: command xact is not recognized, run with no command to see a list

Missing newline at end of file confuses C-c C-q

In a file containing just the following (no end-of-line), C-c C-q indents the last line by three spaces. That is, this:

2017-09-01 * Eversource
    Expenses:Utilities:Electricity            $14.33
    Assets:Home

becomes this:

2017-09-01 * Eversource
    Expenses:Utilities:Electricity            $14.33
       Assets:Home

Is this expected?

Highlighting issues on 'account' lines

The ledger-font-xact-highlight-face overlay covers one character too much when positioned on account lines (maybe it should just be removed when the point isn't on a transaction?)

ledger-mode-

Additionally, comments on account lines are not highlighted as comments:

ledger-mode

`Invalid read syntax, "integer, radix 601656"` when reconciling

When reconciling with C-c, C-r, I select the account ("Liabilities:Credit Cards:American Express") and it immediately returns the error Invalid read syntax, "integer, radix 601656". this is emacs for Mac 25.2, ledger-mode 20170702.200.

I haven't explored it a lot yet, but it's possible that it's having trouble with the fact that some of my postings are "backwards." The source includes a negative amount rather than the target having a positive amount:

2017/03/24 CVS PHARMACY
    Liabilities:Credit Cards:American Express  $-15.76
    Expenses:Pharmacy

(I'd like to fix all of these, but I probably need to write some elisp to automate it. The tool I used to import records wrote them this way.)

Ledger Mode version 20170604.1757 Add Transaction not working correctly

When I press C-c C-a, in the past, the point would drop to the mini-buffer and pre-populate it with Transaction: YYYY/MM/, I would fill in the additional data, hit Return and it would create the entry in the ledger file.

Now when I press C-c C-a, I get the calendar mini-window to select the date (just like you see with org-mode when you C-c C-s to schedule a TODO or APPT) if I either select a new date or just hit Return(today's date), the only thing it does is populate the ledger file with the date.

I moved that .emacs.d out of the way and installed spacemacs with the financial layer and C-c C-a works like it is supposed to.
Spacemacs is using ledger-mode-2017042301748 and flycheck-ledger-20140605.1146.

So I moved the version below back to .emacs.d. Deleted ledger-mode-20170604.1757 and replaced it with ledger-mode-2017042301748 and it works like it is supposed to.

ArchLinux
Ledger 3.1.1-3 --- Although this is weird: Printout from yaourt -Ss ledger = aur/ledger 3.1.1-3 but Printout from ledger --version = Ledger 3.1.1-20160111.
ledger-mode-20170604.1757
flycheck-ledger-20140605.1146

This is my init.el file:

;;;  init.el --- Emacs startup file

;;; Commentary:

;; This file is the start up file for Emacs.

;;; Code:

(defconst custom-file (expand-file-name "custom.el" user-emacs-directory))
(when (not (file-exists-p custom-file))
  (write-region "" nil custom-file))
(setq custom-file custom-file)
(load custom-file)

;;; package setup
(require 'package)
(setq load-prefer-newer t
      package-enable-at-startup nil
      package-archives
      '(("gnu" . "https://elpa.gnu.org/packages/")
        ("org" . "http://orgmode.org/elpa/")
        ("melpa" . "https://melpa.org/packages/")))
(package-initialize)

;; Bootstrap "use-package"
(unless (package-installed-p 'use-package)
  (package-refresh-contents)
  (package-install 'use-package))

(setq use-package-verbose t
      use-package-always-ensure t)

(use-package ledger-mode
  :mode "\\.ledger\\'"
  :config
  (define-key ledger-mode-map (kbd "C-c c") 'ledger-mode-clean-buffer)
  (setq ledger-post-amount-alignment-at :decimal
        ledger-post-amount-alignment-column 49
        ledger-clear-whole-transactions t)
  (use-package flycheck-ledger))

;;; init.el ends here

'account' lines are not taken into account by TAB-completion

In a file containing the following, pressing TAB doesn't complete Exp to Expenses.

account Expenses:Rent

2017/01/01 Landlord
  Exp

I don't expect this to be a very common use case, but sometimes it helps to list accounts first before starting a new ledger.

highlight-regexp doesn't work in ledger-mode ?

I just tried using highlight-regexp to highlight "TODO" in yellow, but it doesn't work unless I turn off font-lock-mode. That's a pity, and as far as I know unusual, that they won't coexist ?

auto-mode-alist setup missing?

The README says this:

ledger-mode will automatically associate itself with .ledger files when
installed as a package.

… but it doesn't seem to. Did I miss something?

Should be as simple as this :)

;;;###autoload
(add-to-list 'auto-mode-alist '("\\.ledger\\'" . ledger-mode))

Let me know if a PR is preferable.

Enhancement: ledger-add-note

I have written an interactive convenience function to add notes about the transaction to the ledger entry under the point. It saves time and effort in finding the right spot and writing the tag.

I could not find anything similar in the ledger-mode, so this might be useful to others, too.

The comment tag is hard coded to 'note' but the function can easily be made more flexible.

(defun ledger-add-note ()
  "Add a note to the current ledger entry.

Adds a new comment line starting with ' ; note: ' and places
point to the end. The new line is always placed after other
comments."
  (interactive)
  (ledger-navigate-beginning-of-xact)
  (let ((beg-of-xact (point)))
    (ledger-navigate-end-of-xact)
    (unless (re-search-backward "^ +;" beg-of-xact t)
      (goto-char beg-of-xact))
    (end-of-line)
    (insert "\n\t; note: ")
    (ledger-magic-tab)))

--group-by account incompatible with --daily

Perhaps not a bug, but if not, should probably be documented.

Given the following journal:

2017/06/01 income
    A   $30
    I

2017/06/01 buy
    Ex   $15
    A

2017/06/02 sell
    A   $10
    I

2017/06/03 buy
    Ex   $3
    A

I can sort the register by account (ledger -f /tmp/test.ledger --group-by account reg) and it works correctly:

Report: reg
Command: ledger -f /tmp/test.ledger --group-by account reg
===========================================================================================================

A
17-Jun-01 income                A                               $30          $30
17-Jun-01 buy                   A                              $-15          $15
17-Jun-02 sell                  A                               $10          $25
17-Jun-03 buy                   A                               $-3          $22

Ex
17-Jun-01 buy                   Ex                              $15          $15
17-Jun-03 buy                   Ex                               $3          $18

I
17-Jun-01 income                I                              $-30         $-30
17-Jun-02 sell                  I                              $-10         $-40

But if I want that report to be further summarized by day (ledger -f test.dat --group-by account --daily reg), only the first account works correctly. Each following account includes all of
the preceding accounts:

Report: reg
Command: ledger -f /tmp/test.ledger --group-by account --daily reg
===========================================================================================================

A
17-Jun-01 - 17-Jun-01           A                               $15          $15
17-Jun-02 - 17-Jun-02           A                               $10          $25
17-Jun-03 - 17-Jun-03           A                               $-3          $22

Ex
17-Jun-01 - 17-Jun-01           A                               $15          $15
                                Ex                              $15          $30
17-Jun-02 - 17-Jun-02           A                               $10          $40
17-Jun-03 - 17-Jun-03           A                               $-3          $37
                                Ex                               $3          $40

I
17-Jun-01 - 17-Jun-01           A                               $15          $15
                                Ex                              $15          $30
                                I                              $-30            0
17-Jun-02 - 17-Jun-02           A                               $10          $10
                                I                              $-10            0
17-Jun-03 - 17-Jun-03           A                               $-3          $-3
                                Ex                               $3            0

I would expect the following result:

Report: reg
Command: ledger -f /tmp/test.ledger --group-by account --daily reg
===========================================================================================================

A
17-Jun-01 - 17-Jun-01           A                               $15          $15
17-Jun-02 - 17-Jun-02           A                               $10          $25
17-Jun-03 - 17-Jun-03           A                               $-3          $22

Ex
17-Jun-01 - 17-Jun-01           Ex                              $15          $15
17-Jun-03 - 17-Jun-03           Ex                               $3          $18

I
17-Jun-01 - 17-Jun-01           I                              $-30         $-30
17-Jun-02 - 17-Jun-02           I                              $-10         $-40

ledger-context-at-point does not parse transaction header

When a point is at transaction header, such as

2016/08/12 * KFC

ledger-context-at-point procedure always gives

(xact nil nil)

whereas expected output should be similar to

(xact date ((date "2016/08/12" 2406203) (status "* " 2406214) (payee "KFC" 2406216)))

end parameter to ledger-next-account is not optional

ledger-next-account lists end as an &optional parameter, but relies on it being set (if called without end, it returns an error).

I believe the solution is to add a setq here:

(unless end (setq end (point-max)))

Entries with dates without years are no longer highlighted

I recently updated my melpa ledger-mode and discovered that entries whose dates don't have years (due to the use of the Y directive) are no longer syntax-highlighted. eg, this file:

Y 2017

08/01 asdf
 A  50
 B

does not syntax-highlight the entry at all. Is this intentional?

ledger-sort-buffer does not respect balance transactions

The sorting operation performed by the functions:

  • ledger-sort-buffer
  • ledger-mode-clean-buffer
  • ledger-sort-region

break the balance assignment statements (sec. 5.10 in the ledger3 manual).

The sorting action is not safe and can affect the integrity of the ledger file without any warning(s) to the user. Afterwards, it may be very difficult to correct.

To avoid the above, you may want to consider:

  1. ledger-sort-buffer, be removed from the ledger-mode, until a work around or enhancement is available.
  2. ledger-mode-clean-buffer, only perform the whitespace cleaning part, not the sorting.
  3. ledger-sort-region can be OK, if the user is careful enough. Perhaps it would be good practice that ledger-sort-region issues a warning to the user before proceeding with the sort operation.

Build system does not ignore site- and user-specific init files

The build system currently does not run Emacs with --no-site-file and --no-init-file, potentially being influenced by local customizations (for better or worse).

For ledger-mode as part of ledger, I came up with a patch against lisp/CMakeLists.txt to call Emacs as EMACSLOADPATH= ${EMACS_EXECUTABLE} […] -batch --no-init-file --no-site-file -f batch-byte-compile. This still applies (cf. https://github.com/scfc/ledger-mode/tree/ignore-init-files-when-byte-compiling), but would need to be adapted to include test/Makefile.

C-c C-a RET does not insert today's date anymore

Related to #37

In melpa-stable, hitting C-c C-a RET inserts the date of today.
The version on melpa/master throws an error instead because of calling (string-to-number nil).

A fix would be to use the default-value argument of read-string in ledger-read-transaction.

Replace programmatic fontification with font-lock?

I will start from the visible symptom.

To reproduce:

$ emacs -Q
emacs-version C-j
⇒ 25.1.1
(add-to-list 'load-path "~/.emacs.d/ledger-mode") C-j
(require 'ledger-mode) C-j
M-x global-whitespace-mode RET
M-x ledger-mode

Desired behavior: whitespace displayed in the face specified by whitespace-mode.

Observed behavior: whitespace is displayed in the face of the surrounding text.

Digging deeper, whitespace-mode relies on fontification based on the font-lock-keywords variable, normally performed by font-lock-fontify-keywords-region, which is called from font-lock-default-fontify-region, which is the default value of the variable font-lock-fontify-region-function, which ledger-mode sets to ledger-fontify-buffer-part, which does not call the original handler directly nor indirectly.

After adding an invocation of (font-lock-default-fontify-region beg end) to the body of ledger-fontify-buffer-part, the *Messages* buffer is spammed with error messages:

Error during redisplay: (jit-lock-function 49001) signaled (void-variable ledger-font-account-directive-face)

This is caused by keyword-based fontification trying to apply the rules specified in the ledger-font-lock-keywords variable:

(defvar ledger-font-lock-keywords
  `(("account" . ledger-font-account-directive-face)
    […]
    ("year" . ledger-font-year-directive-face))
  "Expressions to highlight in Ledger mode.")

which do not work because, as said in the docstring of font-lock-keywords:

FACENAME is an expression whose value is the face name to use.

A plain symbol here seems to be interpreted as a variable name, which breaks because a face is not a variable. Adding an apostrophe ' to each face here stops the error spam; after that, whitespace is fontified correctly.

And now I notice over-eager keyword fontification. Namely, I get parts of account names such as spending, checking, and unaccounted, highlighted as keywords.

One way to fix this would be to add \\_< and \\_> around each keyword, and/or anchor to the beginning of line ^.

Alternatively, since directives are already fontified by a different mechanism (ledger-fontify-directive-at, called from ledger-fontify-buffer-part), maybe ledger-font-lock-keywords could be dropped entirely.

What do you think? Want a pull request?

wish: also use account directive for tab completion

A feature request! When starting a new year file, you can't complete account names for a while. Maybe a solution is to list them all as account directives at the top of the file, if ledger-mode recognised those.

melpa package does not include ledger-test.el

Using ledger-mode version: 20170413.2120

It appears that ledger-test.el is not pulling in when I install the above version from MELPA:

0!! elpa/ledger-mode-20170413.2120 master Δ pwd
/home/chasinglogic/.emacs.d/elpa/ledger-mode-20170413.2120
elpa/ledger-mode-20170413.2120 master Δ ls
dir                     ledger-complete.el   ledger-exec.elc     ledger-init.el            ledger-mode-pkg.el   ledger-post.el        ledger-regex.elc     ledger-sort.el    ledger-texi.elc
ledger-check.el         ledger-complete.elc  ledger-fontify.el   ledger-init.elc           ledger-navigate.el   ledger-post.elc       ledger-report.el     ledger-sort.elc   ledger-xact.el
ledger-check.elc        ledger-context.el    ledger-fontify.elc  ledger-mode-autoloads.el  ledger-navigate.elc  ledger-reconcile.el   ledger-report.elc    ledger-state.el   ledger-xact.elc
ledger-commodities.el   ledger-context.elc   ledger-fonts.el     ledger-mode.el            ledger-occur.el      ledger-reconcile.elc  ledger-schedule.el   ledger-state.elc
ledger-commodities.elc  ledger-exec.el       ledger-fonts.elc    ledger-mode.info          ledger-occur.elc     ledger-regex.el       ledger-schedule.elc  ledger-texi.el
elpa/ledger-mode-20170413.2120 master Δ 

This produces the following error when attempting to load ledger-mode in a dat file:

File mode specification error: (file-error Cannot open load file No such file or directory ledger-test)

I tried the melpa-stable version and recieved the same error

Is there a transpose transactions command?

I've found a transpose transaction command is useful.
just like emacs' C-x C-t to transpose the last two lines, I want a ledger-mode transpose transactions command to transpose the last two records.
I'm new to emacs lisp. I wish I could do this job in the near future if this feature does not exist yet.
Any kind of help is welcome.
Thanks!

wish: detect block comments

Line comments (#, ;, *...) are detected and rendered in a different colour, which greatly improves usability. I would love if the same thing happened with block comments, which begin with a comment line and end with a end comment line.

Alignment of balance assignments does not work

Sometimes I need to use balance assignment and the transaction looks like this:

2016/12/17 Adjustments
    Assets:Cash  = 9999 USD
    Equity:Adjustments

The only thing is that such transactions are not aligned while everything else does. Is it done this way intentionally or is some kind of bug?

Syntax highlighting in org-mode block doesnot work.

Syntax highlighting in a buffer with the ledger mode works perfectly. However in org-mode block
#+begin_src ledger
2017/01/01 * Opening
Assets:Bank $1.00
Equity:Opening Balances
#+end_src
it doesnot work.

I am not sure where is the issue. Is it the ledger mode or org-mode issue?

ledger-clear-whole-transactions conditionally on accounts

It would be nice if I could clear whole transactions depending on whether I get a statement from that account so for a file like:

2018-02-02 HEB
    expenses:food                                                $ 20.00
    liabilities:credit-card

2018-02-02 credit-card-company
    assets:checking                                              $ -20.00
    liabilities:credit-card

it would clear the whole HEB transaction because I don't get a statement from expenses:food, but for the paying my card transaction it would only clear a line because I get a statement from both my checking account and my credit card.

Tab Completion does not register Virtual Accounts

The tab completion function does not recognized virtual accounts that appear in the journal exclusively inside brackets.

Works:
Funds:Spending

Does not work:
(Funds:Spending)

Once a non-bracketed occurrence is registered, the tab completion works for future uses of that account--i.e. (Funds:Spen.... works correctly

Ignore stderr?

Is it possible to have ledger-mode ignore any non stdout output from ledger? Due to a bug in (my compiled version of) boost, every execution of ledger binaries returns the following line via stderr, breaking ledger mode:

sys:1: RuntimeWarning: to-Python converter for boost::shared_ptr<ledger::commodity_pool_t> already registered; second conversion method ignored.
sys:1: RuntimeWarning: to-Python converter for boost::shared_ptr<ledger::(anonymous namespace)::collector_wrapper> already registered; second conversion method ignored.

Wrong type argument: listp, "16/08/17"

In the last 3-4 months there was some change in the date code. After upgrading to the last git commit I'm getting this error (the date is the 16th August 2017). Any ideas?

Request: Auto-indent second line of transactions

Thanks for this useful package.

After I enter the date and transaction name, I like to indent the remaining lines of a transaction (all but the first line). Currently, I have to do this manually, but I think every Ledger user does it. Could you add a setting to automatically indent each line of a transaction except the first? Thank you.

Sudden high CPU use/freeze

I'm not completely sure of the steps to reproduce yet, nor have I tried ledger-mode on this file without my emacs config loaded, but here is what I have so far:

  1. Emacs 22.1.1 (OSX)
  2. Ledger file around 1000 lines
  3. Create new entry (manually), with date, asterisk (resolved), description
  4. Move to destination line and type account, followed by two spaces and currency amount
  5. Interface locks up with emacs CPU use at 100%.

Current workaround:

  • Input entries in text-mode until satisfied, then invoke ledger-mode at the end
Enabled minor modes: Auto-Composition Auto-Compression Auto-Encryption
Column-Number Diff-Auto-Refine Display-Battery Easy-Repeat Electric-Indent
Electric-Pair Fci File-Name-Shadow Flycheck Font-Lock Global-Easy-Repeat
Global-Eldoc Global-Electric-Pair Global-Fci Global-Flycheck Global-Font-Lock
Global-Rainbow-Delimiters Ivy Line-Number Mouse-Wheel Override-Global
Rainbow-Delimiters Shell-Dirtrack Tooltip Transient-Mark

(Information about these minor modes follows the major mode info.)

Ledger mode defined in ‘ledger-mode.el’:
A mode for editing ledger data files.

Syntax highlighting doesn't register automatic transactions

When I type an automatic transaction, it often seems to register as a comment and highlight accordingly. (Notably, though, indentation and tab-completion still work in such transactions.) This behavior is intermittent and unpredictable.

When an automatic transaction does highlight as a transaction, it registers the transaction condition as an uncleared payee, and so highlights it in red. This is probably not the correct behavior, since automatic transactions do not have a cleared/uncleared state.

ledger-check-buffer returns error message

Running ledger-check-buffer produces the following error message, even after I reinstalled Ledger:

`No errors or warnings reported.While parsing file "/usr/bin/ledger", line 1:
Error: Directive '�ELF����' requires an argument
While parsing file "/usr/bin/ledger", line 2:
Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false
While parsing file "/usr/bin/ledger", line 3:
Error: Directive '�' requires an argument
While parsing file "/usr/bin/ledger", line 4:
Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false
While parsing file "/usr/bin/ledger", line 5:
Error: Directive '��' requires an argument
While parsing file "/usr/bin/ledger", line 6:
Error: Directive '�' requires an argument
While parsing file "/usr/bin/ledger", line 8:
Error: Directive '@�����' requires an argument
While parsing file "/usr/bin/ledger", line 9:
While parsing transaction:

7
Error: Invalid date: 7
While parsing file "/usr/bin/ledger", line 10:
Error: Directive '' requires an argument
While parsing file "/usr/bin/ledger", line 11:
Error: Directive 't' requires an argument
While parsing file "/usr/bin/ledger", line 12:
Error: Directive '$@,�@' requires an argument
While parsing file "/usr/bin/ledger", line 13:
While parsing transaction:
4�A�0�
Error: Invalid date: 4�A�0�
While parsing file "/usr/bin/ledger", line 15:
Error: Directive '���' requires an argument
While parsing file "/usr/bin/ledger", line 16:
Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false
While parsing file "/usr/bin/ledger", line 17:
Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false
While parsing file "/usr/bin/ledger", line 18:
Error: Directive '' requires an argument While parsing file "/usr/bin/ledger", line 19: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 22: Error: Directive '' requires an argument
While parsing file "/usr/bin/ledger", line 23:
Error: Directive ' ��(!' requires an argument
While parsing file "/usr/bin/ledger", line 24:
Error: Directive '' requires an argument
While parsing file "/usr/bin/ledger", line 26:
Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false
While parsing file "/usr/bin/ledger", line 27:
Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false
While parsing file "/usr/bin/ledger", line 28:
Error: Directive 'P&' requires an argument
While parsing file "/usr/bin/ledger", line 29:
Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false
While parsing file "/usr/bin/ledger", line 30:
Error: Directive '�"I�x@�E' requires an argument
While parsing file "/usr/bin/ledger", line 31:
Error: Directive 'gh0' requires an argument
While parsing file "/usr/bin/ledger", line 32:
Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false
While parsing file "/usr/bin/ledger", line 33:
Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false
While parsing file "/usr/bin/ledger", line 35:
Error: Unexpected whitespace at beginning of line
While parsing file "/usr/bin/ledger", line 36:
Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false
While parsing file "/usr/bin/ledger", line 37:
Error: Directive '�' requires an argument
While parsing file "/usr/bin/ledger", line 38:
Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false
While parsing file "/usr/bin/ledger", line 39:
Error: Directive '�' requires an argument
While parsing file "/usr/bin/ledger", line 40:
Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false
While parsing file "/usr/bin/ledger", line 41:
Error: Directive '�' requires an argument
While parsing file "/usr/bin/ledger", line 42:
Error: Directive '' requires an argument
While parsing file "/usr/bin/ledger", line 43:
Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false
While parsing file "/usr/bin/ledger", line 44:
Error: Directive '�' requires an argument
While parsing file "/usr/bin/ledger", line 45:
Error: Directive '�' requires an argument
While parsing file "/usr/bin/ledger", line 46:
Error: Directive '��' requires an argument
While parsing file "/usr/bin/ledger", line 47:
Error: Directive 'H�(' requires an argument
While parsing file "/usr/bin/ledger", line 49:
Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false
While parsing file "/usr/bin/ledger", line 51:
Error: Directive 'P' requires an argument
While parsing file "/usr/bin/ledger", line 52:
Error: Directive '' requires an argument
While parsing file "/usr/bin/ledger", line 53:
Error: Directive '�' requires an argument
While parsing file "/usr/bin/ledger", line 54:
Error: Directive '� B��' requires an argument
While parsing file "/usr/bin/ledger", line 55:
Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false
While parsing file "/usr/bin/ledger", line 57:
Error: Directive '�' requires an argument
While parsing file "/usr/bin/ledger", line 58:
Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false
While parsing file "/usr/bin/ledger", line 59:
Error: Directive '&D(��$' requires an argument
While $796.83
parsing file "/usr/bin/ledger", line 60:
Error: Directive '' requires an argument
While parsing file "/usr/bin/ledger", line 61:
Error: Directive '���3�' requires an argument While parsing file "/usr/bin/ledger", line 62: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 64: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 67: Error: Directive '' requires an argument While parsing file "/usr/bin/ledger", line 68: Error: Directive '�"��' requires an argument While parsing file "/usr/bin/ledger", line 69: Error: Directive 'B�' requires an argument While parsing file "/usr/bin/ledger", line 70: Error: Directive '�' requires an argument While parsing file "/usr/bin/ledger", line 71: Error: Directive '�' requires an argument While parsing file "/usr/bin/ledger", line 73: Error: Directive '�@' requires an argument While parsing file "/usr/bin/ledger", line 74: Error: Directive '�' requires an argument While parsing file "/usr/bin/ledger", line 75: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 76: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 77: Error: Directive '�' requires an argument While parsing file "/usr/bin/ledger", line 78: Error: Directive '�' requires an argument While parsing file "/usr/bin/ledger", line 80: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 81: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 82: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 83: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 84: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 86: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 87: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 88: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 89: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 90: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 91: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 92: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 93: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 94: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 95: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 96: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 97: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 98: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 99: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 100: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 101: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 102: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 103: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 104: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 105: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 106: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 107: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 108: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 109: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 110: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 111: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 112: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 113: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 114: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 115: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 116: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 117: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 118: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 119: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 120: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 121: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 122: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 123: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 124: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 125: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 126: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 127: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 128: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 129: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 130: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 131: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 132: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 133: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 134: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 135: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 136: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 137: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 138: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 139: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 140: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 141: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 142: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 143: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 144: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 145: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 146: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 147: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 148: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 149: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 150: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 151: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 152: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 153: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 154: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 155: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 156: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 157: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 158: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 159: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 160: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 161: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 162: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 163: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 164: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 165: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 166: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 167: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 168: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 169: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 170: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 171: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 172: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 173: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 174: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 175: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 176: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 177: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 178: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 179: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 180: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 181: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 182: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 183: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 184: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 185: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 186: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 187: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 188: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 189: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 190: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 191: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 192: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 193: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 194: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 195: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 196: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 197: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 198: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 199: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 200: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 201: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 202: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 203: Error: Assertion failed in "/builddir/build/BUILD/ledger-3.1.1/src/textual.cc", line 346:void ledger::{anonymous}::instance_t::read_next_directive(bool&): false While parsing file "/usr/bin/ledger", line 204: Error: Directive '�' requires an argument While parsing file "/usr/bin/ledger", line 205: Error: Directive ' ' requires an argument While parsing file "/usr/bin/ledger", line 206: Error: Directive '�' requires an argument While parsing file "/usr/bin/ledger", line 207: Error: Directive '�' requires an argument While parsing file "/usr/bin/ledger", line 208: Error: Directive '�' requires an argument While parsing file "/usr/bin/ledger", line 209: Error: Directive '�' requires an argument While parsing file "/usr/bin/ledger", line 210: Error: Directive '�' requires an argument While parsing file "/usr/bin/ledger", line 211: Error: Directive '�' requires an argument While parsing file "/usr/bin/ledger", line 212: Error: Directive '�' requires an argument While parsing file "/usr/bin/ledger", line 213: Error: Directive 'QlljFF�MG�Nr.' requires an argument While parsing file "/usr/bin/ledger", line 217: While parsing transaction: 6 ;sر|OQ [B*] Error: Invalid date: 6 ;sر|OQ [B*] While parsing file "/usr/bin/ledger", line 219: Error: Directive '"Nb�h1z]F~ez}�K!!"� �}�k*�+la# F*0�134(' requires an argument While parsing file "/usr/bin/ledger", line 221: Error: Directive 'a~ie�JdA�' requires an argument While parsing file "/usr/bin/ledger", line 222: Error: Directive '�Bzb�O��VS� >' requires an argument While parsing file "/usr/bin/ledger", line 224: Error: Directive '�� h>Yf�k' requires an argument While parsing file "/usr/bin/ledger", line 225: Error: Directive '11c�F�m�Mo}��y�ѷ]hN_w�[FuGQ�=bX�r/' requires an argument While parsing file "/usr/bin/ledger", line 227: Error: Directive '�j�8�n/p5aqX�kt^�' requires an argument While parsing file "/usr/bin/ledger", line 229: While parsing transaction: 7!"N{�#ęA?�uib/_{ml�,<f6O/8o]<�pv8WjSqR[P:xvxBM_/py�KD��_���c^mSDtW~I�nR^U}l�4B� %��-e_��^!E�>}6r/xmM;ܰaO□->MM� Oc{2uf#:r���@PRFIIj.�� �i
�$=L�
�ۊ C+IM�,GRSb�'��#:{�����9�-u8DKi=L[
Error: Invalid date: 7!"N{�#ęA?�uib/{ml�,<f6O/8o]<�pv8WjSqR[P:xvxBM/py�KD��_���c^mSDtWI�nR^U}l�4B� %��-e_��^!E�>}6r/xmM\;ܰaO□->MM~� Oc{2uf\#:r���@PRFIIj.�� While parsing file "/usr/bin/ledger", line 230: Error: Directive '$�' requires an argument While parsing file "/usr/bin/ledger", line 231: Error: Directive '.:De\d�GJ{�~' requires an argument While parsing file "/usr/bin/ledger", line 233: Error: Directive '' requires an argument While parsing file "/usr/bin/ledger", line 235: Error: Directive 'Uv\me�Pd}�&ЗU^.9�*�a\gaj5Zi_S;�IV��#NM�e�枕skOm��W;,Yic�&$HmsD�c�' requires an argument While parsing file "/usr/bin/ledger", line 237: While parsing transaction: 0QV+B#1+܂�֤nk % �rQRjWgwIT|�� :3�V�X0�m/;h̓�%DwzP�ع~+S)�t/�� Error: Invalid date: 0QV+B#1+܂�֤nk % While parsing file "/usr/bin/ledger", line 238: Error: Directive 'џ�F~�MP�bK�s�ub�@o*ka4N�FYak��Y�=H�dNї��acGy( ' requires an argument While parsing file "/usr/bin/ledger", line 239: Error: Directive 'Uu^;I55|iLBxS��Q�ڥն<9hځ)I' requires an argument
While parsing file "/usr/bin/ledger", line 243:
Error: Directive '��)��[�Gg&gm|�i@OtFmR7�DL.�{wرO[sX' requires an argument While parsing file "/usr/bin/ledger", line 245: Error: Directive '�W�X+�vpvP>�>n�}-�T| �f4��U>��' requires an argument While parsing file "/usr/bin/ledger", line 247: Error: Directive '@-�c�@' requires an argument While parsing file "/usr/bin/ledger", line 248: Error: Directive '' requires an argument While parsing file "/usr/bin/ledger", line 249: Error: Directive 'X<Πc��$zNhI%' requires an argument While parsing file "/usr/bin/ledger", line 251: Error: Directive '' requires an argument While parsing file "/usr/bin/ledger", line 252: Error: Directive '�%���@ �_+�:�eXԃCcyhQOX,zu�~��'Nh%�XUT�M6;J��$Ī)�Z>OѧjHb}X~�?+CE&I[Bm[Wu{'ayZ+��Cxf�' requires an argument
While parsing file "/usr/bin/ledger", line 253:
Error: Directive 'I$l0��}u�O
�[ND\�_1b�܅L-'JY,$�$E�;�cv呢@!m"n' requires an argument
While parsing file "/usr/bin/ledger", line 254:
Error: Directive 'fw�Fzk' requires an argument
While parsing file "/usr/bin/ledger", line 257:
Error: Directive '
<s�' requires an argument
While parsing file "/usr/bin/ledger", line 261:
Error: Directive '�8H?�|tWb{' requires an argument
While parsing file "/usr/bin/ledger", line 263:
Error: Directive 'kJ^:\Mz9[!W��' requires an argument
While parsing file "/usr/bin/ledger", line 264:
Error: Directive 'z,�l�k9©<�vA[ ]�>"P�v|�)$c�B#�H�R' requires an argument While parsing file "/usr/bin/ledger", line 265: Error: Directive '�'w_' requires an argument While parsing file "/usr/bin/ledger", line 266: While parsing transaction: 4xemg_�����1?e���][D�JSN&{-H/�uH�BRs�@�\kEx)�;'[k&eqCG%V1U,LR$V�}.�;Zk
Error: Invalid date: 4xemg_�����1?e���][D�JSN&{-H/�uH�BRs�@�\kEx)�;'[k&eqCG%V1U,LR$V�}.�;Zk While parsing file "/usr/bin/ledger", line 267: Error: Directive 'e�cf_SO�!JgMefBb$A�ӿx�C!JifXG8w�$Gm|��0b¡�e��+t�UV~�\УC' requires an argument While parsing file "/usr/bin/ledger", line 268: Error: Directive '�aFq.ky'X�e�Y&" �>^D"YM4QVMd-83H4kvX��E��Y' requires an argument While parsing file "/usr/bin/ledger", line 269: Error: Directive '\+Lu7,W_PY@D�X' requires an argument While parsing file "/usr/bin/ledger", line 270: Error: Directive '��&�]aeOM_7��"U�qDj&|q3}i�OJ�<ྺ5We)9X,@i�6�:yK�I(�6Sw:t ]s+S��]Q;7��zY9˜z'p' requires an argument While parsing file "/usr/bin/ledger", line 271: Error: Directive 'khL> _[}p9ϸb�W´5{B33A' requires an argument
While parsing file "/usr/bin/ledger", line 272:
Error: Directive 'jЖf8(WAG�t$^6&S��ObAP_�rƝM-t�
52]C8f$Ð"i=}F' requires an argument
While parsing file "/usr/bin/ledger", line 275:
Error: Directive 'n�CL9�k'\fbR:9Qk�ĥc' requires an argument
While parsing file "/usr/bin/ledger", line 277:
Error: Directive 'x%4(9fl�0�//q�@!' requires an argument While parsing file "/usr/bin/ledger", line 278: While parsing transaction: 6H<�� Error: Invalid date: 6H<�� While parsing file "/usr/bin/ledger", line 279: Error: Directive 'K=B*��Qz°)0nL #r8FuJh/fd\= GIk�/J#s*jhl�]rWy6�?r1'g^: �=' requires an argument While parsing file "/usr/bin/ledger", line 280: Error: Directive 'pQbQ&guge�u5^9�p.J4/:/'$jw5^�-' requires an argument While parsing file "/usr/bin/ledger", line 281: Error: Directive '�B��*N]P�6'H?A;�L�&' requires an argument While parsing file "/usr/bin/ledger", line 282: Error: Directive '��7' requires an argument While parsing file "/usr/bin/ledger", line 285: Error: Directive '(&Ď&�> a5A�{7<9�'�=' requires an argument While parsing file "/usr/bin/ledger", line 286: Error: Directive '�e?-TSeh[(h7gwFMnmvg(f/Ni�)�R뀛nsO610�xIqw' requires an argument While parsing file "/usr/bin/ledger", line 287: Error: Directive '�m%�cQ' requires an argument While parsing file "/usr/bin/ledger", line 288: Error: Directive 'QzĤ�oM�Ga/x^��mRQ㗺' requires an argument While parsing file "/usr/bin/ledger", line 289: Error: Directive 'M' requires an argument While parsing file "/usr/bin/ledger", line 290: Error: Directive '[�zн�ac|\' requires an argument While parsing file "/usr/bin/ledger", line 291: While parsing transaction: 7[ r�\z��b"[xᚷT$}t��iou
a+wWSo.{u>F��2EpcS/ jZ�ra2W�LRϑy
|)F�2/hH�Q;'�2 p,V"�O"˪$،1v�@p Error: Invalid date: 7[ r�\z��b"[xᚷT$}t��iou*a+wWSo.{u>F��2EpcS/ jZ�ra2W�LRϑy
|)F�2/hH�Q;'�2 While parsing file "/usr/bin/ledger", line 293: Error: Directive '|7 E9�H�Sn1dւ:k�B([���M&' requires an argument While parsing file "/usr/bin/ledger", line 294: Error: Directive ')VO�MiEGgj_SeV�_(�o3pFbغ�!^hVe&KX�c.W[RP.�$xJ��' requires an argument While parsing file "/usr/bin/ledger", line 295: Error: Directive '$Z}28|�[DxQ{#' requires an argument While parsing file "/usr/bin/ledger", line 298: Error: Directive '6R�ڹ"�4ܶE�7' requires an argument While parsing file "/usr/bin/ledger", line 301: Error: Directive '��$R=em�t�O,�$�zM'a' requires an argument While parsing file "/usr/bin/ledger", line 303: Error: Directive ''t^�|#�λt;O;qlH 1��~PvSM�H鷛&I.^' requires an argument While parsing file "/usr/bin/ledger", line 306: Error: Invalid date/time: Xg�2�%w While parsing file "/usr/bin/ledger", line 310: Error: Directive '�#p*M$g��.SIKT' requires an argument While parsing file "/usr/bin/ledger", line 312: Error: Directive 'E��78A�%>CY�aQLl�p#Y!��Y 5$9hYLōd2U;�x�A}Z?�-MJ8���
&}�w' requires an argument While parsing file "/usr/bin/ledger", line 313: Error: Directive '�G ù5�f�b�/;�K=� ix}JfY�N' requires an argument While parsing file "/usr/bin/ledger", line 316: Error: Directive 'ԸO� G�v2\PJS��dX�Lq��G<m(E"��2=h5Z
��j#^��icjt'&c�F"LRp�b�$zcH�&JK�!ZKa�<z,El]tm x/��0fA@I>'��h��HeqipQ{W��z�w0c�]67^r'1� E^�,�@* ҝ]J<Re6s�t.qODoGo' requires an argument While parsing file "/usr/bin/ledger", line 317: Error: Directive '�N�,�h(Ivh"t|P2U��,�Z�W' requires an argument While parsing file "/usr/bin/ledger", line 318: Error: Directive '5xQ' requires an argument While parsing file "/usr/bin/ledger", line 320: Error: Directive 'Uup&#' requires an argument

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.