summaryrefslogtreecommitdiff
path: root/src/report.h
Commit message (Collapse)AuthorAgeFilesLines
* Rewrote the balance report again, to fix --depthJohn Wiegley2009-03-081-1/+1
|
* Implemented --unround using value expressionsJohn Wiegley2009-03-061-1/+4
|
* Removed the --totals optionJohn Wiegley2009-03-051-2/+0
|
* Reduced the #include dependency tree to a minimumJohn Wiegley2009-03-041-9/+10
|
* Normalized how account totals are calculatedJohn Wiegley2009-03-031-17/+2
|
* Allow special %{} formatting sequenceJohn Wiegley2009-03-031-13/+13
| | | | | | | | | | | | | | | Although %(amount) inserts an item's amount, it only does exactly that. There is no special consideration like stripping of lot details, or reduction to the base commodity, etc. For those things, and to make sure it was display in red if negative, the canonical form would be: %(ansify_if(justify(scrub(amount), 12, -1, true), red if amount < 0)) You can now use the special %{} form as an alternate to this: %12{amount, red if amount < 0} The two expand to the same underlying expression.
* Moved fn_false to be a non-member functionJohn Wiegley2009-03-031-3/+0
|
* Changed how comments are output to be more logicalJohn Wiegley2009-03-011-6/+5
|
* Separator in "balance" now part of format stringJohn Wiegley2009-02-271-1/+4
|
* Added --lots-actual, to not print calc'd detailsJohn Wiegley2009-02-271-3/+6
|
* Changed "priced" to "cost_calculated" for clarityJohn Wiegley2009-02-271-5/+10
|
* Added generate command, --seed, and GenerateTestsJohn Wiegley2009-02-271-0/+2
|
* The print command now prints xact's effective dateJohn Wiegley2009-02-271-0/+2
|
* Fixed bugs relating to sign and rounding of costsJohn Wiegley2009-02-271-2/+3
|
* Added an --unround option, to show full precisionJohn Wiegley2009-02-271-0/+2
|
* Changed the "truncate" valexpr func to "truncated"John Wiegley2009-02-271-4/+4
|
* The -B, -G, -V reports now show rounding amountsJohn Wiegley2009-02-261-6/+8
| | | | | | | | | This way, if the running total is off by a penny or two due to rounding of one or more commodities in the account, the user will see it. This commit also reorganizes the testing code a bit, which I did after adding the ninth test series (ConfirmTests), to validate the new rounding code.
* Changed --exchange's short option from -x to -XJohn Wiegley2009-02-251-1/+1
|
* Marked all strings needing internationalizationJohn Wiegley2009-02-251-4/+4
| | | | | | | | | | | | | | | | These strings are now collected automagically in the file po/ledger.pot. If you'd like to produce a translation, just run this command after building Ledger: msginit -l LOCALE -o LANG.po -i po/ledger.pot Where LOCALE is a string like de or en_GB, and LANG is a short descriptive word for your language. Then send me this .po file so I can commit it to the Ledger sources (alternatively, you could maintain the file in a fork on GitHub), and setup the build script to format and install your new message catalog during a "make install".
* Fixed the --gain option for balance reportsJohn Wiegley2009-02-251-0/+1
|
* Added a new --depth optionJohn Wiegley2009-02-251-0/+5
|
* Added a new level of Python integrationJohn Wiegley2009-02-241-0/+2
|
* Output "@ AMOUNT" cost in the print reportJohn Wiegley2009-02-241-0/+2
|
* Removed the largely useless --performance optionJohn Wiegley2009-02-241-1/+0
|
* The Great Renaming, Part IIJohn Wiegley2009-02-231-22/+22
| | | | | The last commit did not contain the majority of changes because of a slight mishap. This contains the real changeset.
* Restore the --gain option, for showing gain/lossJohn Wiegley2009-02-231-1/+19
|
* Added --revalued-total option, used by --gainJohn Wiegley2009-02-231-0/+13
| | | | | This option sets the total by which revalued transactions are determined. Only needed if the display total is not appropriate.
* Added get_at and is_seq valexpr functionsJohn Wiegley2009-02-231-0/+2
| | | | These are for dealing with sequences.
* Removed unused member keep_details_t::keep_baseJohn Wiegley2009-02-231-2/+1
|
* Many fixes to both --market and --exchangeJohn Wiegley2009-02-231-1/+1
|
* Many fixes to --market and --exchangeJohn Wiegley2009-02-221-2/+2
| | | | Also, --exchange now accepted multiple, comma-separated commodities.
* --exchange option now accepts multiple commoditiesJohn Wiegley2009-02-221-2/+2
| | | | They must be separated by a comma, and all whitespace is ignored.
* Added --exchange (-x) optionJohn Wiegley2009-02-221-5/+15
| | | | | | | This is like -V, except it lets you specify the goal commodity to report in terms of, for example: reg -x CAD
* Fixed the way values are justified for printingJohn Wiegley2009-02-221-17/+19
|
* Changed --colors to --color, to match GitJohn Wiegley2009-02-221-11/+11
|
* Restored the --invert optionJohn Wiegley2009-02-221-1/+4
|
* Removed unused --totals optionJohn Wiegley2009-02-221-2/+0
| | | | This option was for outputting <total> elements in 2.x's XML output.
* Added a new --colors option, for terminal funJohn Wiegley2009-02-211-17/+24
| | | | | | | | | The following colors are applied in the balance and register reports: GREEN To a date, if it occurs in the future BOLD If a payee name relates to an uncleared entry BLUE For account names RED For negative values
* Removed an unused class: format_entriesJohn Wiegley2009-02-211-0/+2
|
* Use more general scrub valexpr function in formatsJohn Wiegley2009-02-211-41/+38
|
* Create a new interactive_t helper classJohn Wiegley2009-02-211-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The purpose of this class is much like Emacs' (interactive) form: it allows a value expression function to declare exactly how many arguments, and of what type, it intends to receive. It then offers type-safe access to theese arguments in a consistent manner. An example value expression function definition in C++: value_t fn_foo(call_scope_t& scope) { // We expect a string, an integer, and an optional date interactive_t args(scope, "sl&d"); std::cout << "String = " << args.get<string>(0) << "Integer = " << args.get<long>(1) << std::endl; if (args.has(2)) // was a date provided? std::cout << "Date = " << args.get<date_t>(2) << std::endl; return NULL_VALUE; } There is also an in_context_t<T> template, which finds the context type T in the current scope hierarchy. The in_context_t then also acts as a smart pointer to reference this context object, in addition to serving the same duty as interactive_t. This combination of intent is solely for the sake of brevity. value_t fn_bar(call_scope_t& scope) { in_context_t<account_t> env(scope, "sl&d"); std::cout << "Account name = " << env->fullname() << "String arg = " << env.get<string>(0) << std::endl; return NULL_VALUE; } As you can see here, 'env' acts as a smart pointer to the required context, and an object to extract the typed arguments.
* Added --start-of-week option, used with --weeklyJohn Wiegley2009-02-211-0/+1
| | | | | For example, --start-of-week=monday can be used to report weeks that begin on Mondays.
* Added a new --exact optionJohn Wiegley2009-02-211-0/+1
| | | | | | | | | The purpose of this option is that usually when you do a --monthly periodic report, you see dates ranges from the first day of each month, to the last day. With --exact, the first day of each range will be the date of the first transaction found in that range, and likewise with the end of the range. Essentially it "contracts" the reported period dates to reflect the exact begin and end dates.
* Restored the --deviation optionJohn Wiegley2009-02-211-1/+3
|
* Restored --forecast, now also --forecast-whileJohn Wiegley2009-02-211-1/+1
|
* Enabled --current optionJohn Wiegley2009-02-201-1/+3
|
* Strip amounts displayed in the csv reportJohn Wiegley2009-02-201-1/+1
|
* Removed unused --cache optionJohn Wiegley2009-02-201-1/+0
|
* Restored the --basis optionJohn Wiegley2009-02-201-1/+16
|
* Added --no-total optionJohn Wiegley2009-02-201-0/+2
| | | | This simply omits the final total in the balance report, nothing more.