summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* The "xact" variable now returns null for accountsJohn Wiegley2009-02-153-1/+11
|
* Improved handling of --empty optionJohn Wiegley2009-02-153-31/+36
| | | | | | For example, in period reports null transactions are only generated for empty periods if --empty is used. Otherwise, the presence of such transactions can get confusing.
* item_predicate now operates on scope_tJohn Wiegley2009-02-158-38/+35
| | | | This means item_predicate is no longer a template.
* chain_xact_handlers now always operators the sameJohn Wiegley2009-02-153-88/+81
| | | | | | Previously, account-wise reports used a subset of the total number of transaction filters, but this could cause confusing results, and made some reports immpossible (such as account-wise monthly averages).
* acprep doesn't call out to git if it's not thereJohn Wiegley2009-02-151-7/+9
|
* Updated myacprep to allow a --output argumentJohn Wiegley2009-02-151-0/+2
|
* The format code %C is now equal to %(fmt_C)John Wiegley2009-02-152-7/+9
|
* Removed an unused functionJohn Wiegley2009-02-151-6/+0
|
* Fixed a call to value_t::cast to use in_place_castJohn Wiegley2009-02-151-3/+3
|
* Whitespace fixesJohn Wiegley2009-02-151-3/+3
|
* Split up session_t::reread_journal_files()John Wiegley2009-02-153-5/+4
| | | | | You now call session_t::close_journal_files() followed by session_t::read_journal_files().
* If a boolean value is to an amount, use 1 or 0John Wiegley2009-02-151-0/+3
|
* Added 'count' and 'subcount' props for accountsJohn Wiegley2009-02-151-1/+21
|
* Only invoke new completion behavior if C-u is usedJohn Wiegley2009-02-151-14/+16
|
* Strip annotations from the "parse" resultJohn Wiegley2009-02-151-1/+1
| | | | This way the value shown follows the current reporting options.
* Change a few calls to on() to use set_expr()John Wiegley2009-02-151-6/+5
|
* Removed the %! formatting code, as it does nothingJohn Wiegley2009-02-153-13/+8
|
* Parse '/' in an operator context as "div"John Wiegley2009-02-156-24/+22
|
* Removed "total_cost" valexpr, and value_t::costJohn Wiegley2009-02-155-40/+4
| | | | | Since cost reports are now calculated by setting the amount_ expression, there is no need to track a separate "total cost" entity.
* Restored the --average (-A) report optionJohn Wiegley2009-02-151-1/+5
|
* Added a helper method for setting expr optionsJohn Wiegley2009-02-151-14/+26
| | | | | | | | | | | Now one does: parent->HANDLER(display_total_).set_expr("total"); Rather than what was required previously: parent->HANDLER(display_total_).on("total"); parent->HANDLER(display_total_).expr = "total";
* Corrected double problem in period reportsJohn Wiegley2009-02-151-6/+2
| | | | | xact_t::add_to_value, in cases where the xact had a "compound" total, was adding transaction values to the running total twice.
* Changed debug category op.calc to expr.calcJohn Wiegley2009-02-151-2/+2
|
* Added xact_t::count memberJohn Wiegley2009-02-153-2/+17
| | | | | | This allows reports to access the "whicheth" index of the reported transaction. It's used mainly by the --average report, which divides the running total by this count to get the arithmetic mean.
* Have interval_xacts construct temps on a listJohn Wiegley2009-02-143-13/+13
|
* Generate null transactions for empty periodsJohn Wiegley2009-02-141-0/+16
| | | | | | | | | | | | | For example, if one uses -M to generate a monthly report for an entire year, and there are no transaction in the month of February, ordinarily Ledger would report nothing for that month, even if -E were used. Now "null transactions" are generated for periods without any activity, in order to make certain reports -- such as running monthly averages -- more accurate. For example, instead of -MA being just a monthly running average of months with activity, it is now a true average among all months during the reported period.
* xact metadata searches get passed up to the entryJohn Wiegley2009-02-145-42/+108
| | | | | | That is, if a metadata tag cannot be found in a transaction, look in the parent entry to see if it was set there. Transactions "inherit" notational details from their entries.
* Surround command-line queries with implicit parensJohn Wiegley2009-02-141-1/+1
|
* Removed an #if 0'd function from iterators.ccJohn Wiegley2009-02-141-45/+0
|
* Added #if 0'd stub code from 2.x's option.ccJohn Wiegley2009-02-141-3/+26
|
* Restored the --actual and --real optionsJohn Wiegley2009-02-142-2/+33
|
* If an option was given no value, throw an errorJohn Wiegley2009-02-141-1/+2
| | | | The previous behavior was to trigger a confusing assertion.
* Re-enabled periodic reporting options (-M, etc)John Wiegley2009-02-143-13/+37
|
* Fixed the way interval_t objects are initializedJohn Wiegley2009-02-142-13/+11
|
* Removed interval_t::advanced, which was unusedJohn Wiegley2009-02-142-9/+3
|
* Enabled --cleared, --uncleared and --pendingJohn Wiegley2009-02-131-3/+14
| | | | | Note that the --uncleared flag includes --pending, since it specifically means "not yet cleared".
* Changed the semantics of the "prices" reportJohn Wiegley2009-02-132-10/+23
| | | | | | | | | | | | | | | The prices report now uses the following scheme: PAYEE -> name of commodity of price ACCOUNT -> name of commodity of item AMOUNT -> price DATE -> date of pricing However, the report does not show the payee. The only reason the payee is set is to enable clever querying. For example: ledger prices gold # show all known prices for GOLD ledger prices @gold # show all known prices *in* GOLD
* The formatting code no longer justifies valuesJohn Wiegley2009-02-133-5/+7
| | | | | This is done in the value code, which knows -- based on the value's type -- how best to apply the justification.
* Greatly improved output from the "format" commandJohn Wiegley2009-02-132-24/+46
| | | | | It now shows the formatted result against a sample entry, similar to what "parse" now does.
* Don't print an xact's amount if it was calculatedJohn Wiegley2009-02-132-4/+10
| | | | | That is, if the user didn't enter an amount for that transaction in their ledger journal, don't print one out either.
* Removed auto-reconciling behavior from ledger.elJohn Wiegley2009-02-131-43/+3
|
* Re-activated the budgeting flagsJohn Wiegley2009-02-131-3/+12
| | | | However, the budget reports themselves still need to be tested.
* Added tools/sample.sh, which uses tools/sample.pyJohn Wiegley2009-02-131-0/+7
|
* Set coding-system-for-read, as well as writeJohn Wiegley2009-02-131-1/+2
|
* Added tools/excludes and tools/pre-commitJohn Wiegley2009-02-132-0/+82
| | | | | | | These files are used to creat ea Git pre-commit hook which verifies each proposed change by running "make check". Otherwise, I only know if my working tree is sane, and not if each commit is sane before it goes into the repository.
* Added a "reload" command, for use at the REPLJohn Wiegley2009-02-137-55/+76
| | | | | | | Created a new function, session_t::reread_journal_files, which throws away all previous state data and reads in the same files again. This is needed to allow Emacs to communicate with Ledger via the REPL, so that it tell Ledger when it has made changes to the user's data file.
* Set coding-system-for-write when talking to ledgerJohn Wiegley2009-02-131-5/+6
| | | | | | Otherwise, calling out to Ledger uses whatever the user's default happens to be, such as iso-latin-1. This caused problems for one user who had euro symbols encoding in utf-8 in his data file.
* Changed print report to use format_dateJohn Wiegley2009-02-131-1/+2
| | | | Otherwise, Ledger was unable to parse what it had printed.
* Added a new valexpr function: format_dateJohn Wiegley2009-02-132-0/+11
| | | | | | | | | This can be used to format dates with a specific pattern, such as: format_date(entry.date, "%Y/%m/%d") This is used by the print command to ensure that Ledger is able to parse back what it prints.
* If a LEDGER_ envvar has no value, ignore itJohn Wiegley2009-02-131-1/+3
|