Adjust of blank lines between keywords and sections
M-x fill-paragraph at column 72 M-x delete-trailing-whitespace And some other minor fixes
This commit is contained in:
parent
b2e63df0e6
commit
f20e16cc4a
1 changed files with 182 additions and 153 deletions
|
|
@ -1,7 +1,12 @@
|
||||||
\input texinfo @c -*-texinfo-*-
|
\input texinfo @c -*-texinfo-*-
|
||||||
|
|
||||||
@setfilename ledger-mode.info
|
@setfilename ledger-mode.info
|
||||||
@settitle Ledger: Command-Line Accounting
|
@settitle Ledger: Command-Line Accounting
|
||||||
|
|
||||||
|
@c Before release, run C-u C-c C-u C-a (texinfo-all-menus-update with
|
||||||
|
@c a prefix arg). This updates the node pointers, which texinfmt.el
|
||||||
|
@c needs.
|
||||||
|
|
||||||
@dircategory Major Modes
|
@dircategory Major Modes
|
||||||
@copying
|
@copying
|
||||||
Copyright (c) 2013, Craig Earls. All rights reserved.
|
Copyright (c) 2013, Craig Earls. All rights reserved.
|
||||||
|
|
@ -10,28 +15,28 @@ Redistribution and use in source and binary forms, with or without
|
||||||
modification, are permitted provided that the following conditions are
|
modification, are permitted provided that the following conditions are
|
||||||
met:
|
met:
|
||||||
|
|
||||||
- Redistributions of source code must retain the above copyright
|
- Redistributions of source code must retain the above copyright notice,
|
||||||
notice, this list of conditions and the following disclaimer.
|
this list of conditions and the following disclaimer.
|
||||||
|
|
||||||
- Redistributions in binary form must reproduce the above copyright
|
- Redistributions in binary form must reproduce the above copyright
|
||||||
notice, this list of conditions and the following disclaimer in the
|
notice, this list of conditions and the following disclaimer in the
|
||||||
documentation and/or other materials provided with the distribution.
|
documentation and/or other materials provided with the distribution.
|
||||||
|
|
||||||
- Neither the name of New Artisans LLC nor the names of its
|
- Neither the name of New Artisans LLC nor the names of its contributors
|
||||||
contributors may be used to endorse or promote products derived from
|
may be used to endorse or promote products derived from this software
|
||||||
this software without specific prior written permission.
|
without specific prior written permission.
|
||||||
|
|
||||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS
|
||||||
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||||
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||||
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||||
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
|
||||||
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||||
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||||
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||||
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
@end copying
|
@end copying
|
||||||
|
|
||||||
@documentencoding UTF-8
|
@documentencoding UTF-8
|
||||||
|
|
@ -40,7 +45,6 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
@finalout
|
@finalout
|
||||||
@end iftex
|
@end iftex
|
||||||
|
|
||||||
|
|
||||||
@titlepage
|
@titlepage
|
||||||
@title Ledger Mode
|
@title Ledger Mode
|
||||||
@subtitle Emacs Support For Version 3.0 of Ledger
|
@subtitle Emacs Support For Version 3.0 of Ledger
|
||||||
|
|
@ -54,16 +58,18 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
@contents
|
@contents
|
||||||
|
|
||||||
@ifnottex
|
@ifnottex
|
||||||
|
|
||||||
@node Top, Copying, (dir), (dir)
|
@node Top, Copying, (dir), (dir)
|
||||||
@top Overview
|
@top Overview
|
||||||
|
|
||||||
Ledger is a command line accounting tool that provides double-entry
|
Ledger is a command line accounting tool that provides double-entry
|
||||||
accounting based on a text journal. It provides no bells or whistles,
|
accounting based on a text journal. It provides no bells or whistles,
|
||||||
and returns the user to the days before user interfaces were even a
|
and returns the user to the days before user interfaces were even
|
||||||
1twinkling in their father's CRT.
|
a 1twinkling in their father's CRT.
|
||||||
|
|
||||||
Ledger Mode assists you in maintaining input files for Ledger, running
|
Ledger Mode assists you in maintaining input files for Ledger, running
|
||||||
reports and much more...
|
reports and much more...
|
||||||
@c @insertcopying
|
|
||||||
@end ifnottex
|
@end ifnottex
|
||||||
|
|
||||||
@menu
|
@menu
|
||||||
|
|
@ -80,10 +86,12 @@ reports and much more...
|
||||||
|
|
||||||
@node Copying, Introduction to Ledger Mode, Top, Top
|
@node Copying, Introduction to Ledger Mode, Top, Top
|
||||||
@chapter Copying
|
@chapter Copying
|
||||||
|
|
||||||
@insertcopying
|
@insertcopying
|
||||||
|
|
||||||
@node Introduction to Ledger Mode, The Ledger Buffer, Copying, Top
|
@node Introduction to Ledger Mode, The Ledger Buffer, Copying, Top
|
||||||
@chapter Introduction to Ledger Mode
|
@chapter Introduction to Ledger Mode
|
||||||
|
|
||||||
@menu
|
@menu
|
||||||
* Quick Installation::
|
* Quick Installation::
|
||||||
* Menus::
|
* Menus::
|
||||||
|
|
@ -95,15 +103,15 @@ reports and much more...
|
||||||
|
|
||||||
The Emacs lisp source for Ledger-mode is included with the source
|
The Emacs lisp source for Ledger-mode is included with the source
|
||||||
distribution of Ledger. It is entirely included in the @file{lisp}
|
distribution of Ledger. It is entirely included in the @file{lisp}
|
||||||
subdirectory. To use ledger mode include the following in your Emacs
|
subdirectory. To use ledger mode, include the following in your Emacs
|
||||||
initialization file (@file{~/.emacs}, @file{~/.emacs.d/init.el},
|
initialization file (@file{~/.emacs}, @file{~/.emacs.d/init.el}, or
|
||||||
@file{~/.Aquamacs/Preferences.el}
|
@file{~/.Aquamacs/Preferences.el}
|
||||||
|
|
||||||
@smallexample
|
@lisp
|
||||||
(add-to-list 'load-path (expand-file-name "/path/to/ledger/source/lisp/"))
|
(add-to-list 'load-path (expand-file-name "/path/to/ledger/source/lisp/"))
|
||||||
(load "ldg-new")
|
(load "ldg-new")
|
||||||
(add-to-list 'auto-mode-alist '("\\.ledger$" . ledger-mode))
|
(add-to-list 'auto-mode-alist '("\\.ledger$" . ledger-mode))
|
||||||
@end smallexample
|
@end lisp
|
||||||
|
|
||||||
This sets up Emacs to automatically recognize files that end with
|
This sets up Emacs to automatically recognize files that end with
|
||||||
@file{.ledger} and start Ledger mode. Nothing else should be required
|
@file{.ledger} and start Ledger mode. Nothing else should be required
|
||||||
|
|
@ -169,8 +177,8 @@ commodity, this can be easily changed in the customization
|
||||||
variables. @xref{Ledger-mode Customization}.
|
variables. @xref{Ledger-mode Customization}.
|
||||||
|
|
||||||
You now see a list of uncleared transactions in a buffer below the
|
You now see a list of uncleared transactions in a buffer below the
|
||||||
@file{demo.ledger} buffer. Touching the space bar will mark a
|
@file{demo.ledger} buffer. Touching the space bar will mark
|
||||||
transaction as pending and display the current cleared (and pending)
|
a transaction as pending and display the current cleared (and pending)
|
||||||
balance, along with the difference remaining to meet your target. Clear
|
balance, along with the difference remaining to meet your target. Clear
|
||||||
the first three transactions, and you will see the difference to target
|
the first three transactions, and you will see the difference to target
|
||||||
reach $0. End the reconciliation by typing @code{C-c C-c}. This saves
|
reach $0. End the reconciliation by typing @code{C-c C-c}. This saves
|
||||||
|
|
@ -193,21 +201,23 @@ type @code{C-c C-c}. Ledger mode will take you directly to that
|
||||||
transaction in the @file{demo.ledger} buffer.
|
transaction in the @file{demo.ledger} buffer.
|
||||||
|
|
||||||
Another built-in report is the balance report. In the
|
Another built-in report is the balance report. In the
|
||||||
@file{demo.ledger} buffer, type @code{C-c C-o C-r}. When prompted for a
|
@file{demo.ledger} buffer, type @code{C-c C-o C-r}. When prompted for
|
||||||
report to run, type @code{bal}, and a balance report of all accounts
|
a report to run, type @code{bal}, and a balance report of all accounts
|
||||||
will be shown.
|
will be shown.
|
||||||
|
|
||||||
@node Narrowing, , Reports, Quick Demo
|
@node Narrowing, , Reports, Quick Demo
|
||||||
@subsection Narrowing
|
@subsection Narrowing
|
||||||
|
|
||||||
A ledger file can get very large. It can be helpful to collapse the buffer
|
A ledger file can get very large. It can be helpful to collapse the
|
||||||
to display only the transactions you are interested in. Ledger-mode
|
buffer to display only the transactions you are interested in.
|
||||||
copies the @code{occur} mode functionality. Typing @code{C-c C-f} and
|
Ledger-mode copies the @code{occur} mode functionality. Typing
|
||||||
entering any regex in the mini-buffer will show only transactions that
|
@code{C-c C-f} and entering any regex in the mini-buffer will show only
|
||||||
match the regex. The regex can be on any field, or amount.
|
transactions that match the regex. The regex can be on any field, or
|
||||||
|
amount.
|
||||||
|
|
||||||
@node The Ledger Buffer, The Reconcile Buffer, Introduction to Ledger Mode, Top
|
@node The Ledger Buffer, The Reconcile Buffer, Introduction to Ledger Mode, Top
|
||||||
@chapter The Ledger Buffer
|
@chapter The Ledger Buffer
|
||||||
|
|
||||||
@menu
|
@menu
|
||||||
* Adding Transactions::
|
* Adding Transactions::
|
||||||
* Editing Amounts::
|
* Editing Amounts::
|
||||||
|
|
@ -239,6 +249,7 @@ which defaults to 52. @xref{Ledger Post Customization Group}.
|
||||||
|
|
||||||
@node Quick Balance Display, , Adding Transactions, Adding Transactions
|
@node Quick Balance Display, , Adding Transactions, Adding Transactions
|
||||||
@subsection Quick Balance Display
|
@subsection Quick Balance Display
|
||||||
|
|
||||||
You will often want to quickly check the balance of an account. The
|
You will often want to quickly check the balance of an account. The
|
||||||
easiest way it to position point on the account you are interested in,
|
easiest way it to position point on the account you are interested in,
|
||||||
and type @code{C-C C-P}. The minibuffer will ask you to verify the name
|
and type @code{C-C C-P}. The minibuffer will ask you to verify the name
|
||||||
|
|
@ -247,27 +258,29 @@ balance of the account will be displayed in the minibuffer.
|
||||||
|
|
||||||
@node Editing Amounts, Marking Transactions, Adding Transactions, The Ledger Buffer
|
@node Editing Amounts, Marking Transactions, Adding Transactions, The Ledger Buffer
|
||||||
@section Editing Amounts
|
@section Editing Amounts
|
||||||
|
|
||||||
GNU Calc is a very powerful Reverse Polish Notation calculator built
|
GNU Calc is a very powerful Reverse Polish Notation calculator built
|
||||||
into all recent version of Emacs. Ledger-mode makes it easy to
|
into all recent version of Emacs. Ledger-mode makes it easy to
|
||||||
calculate values for amount by integrating GNU Calc. With the point
|
calculate values for amount by integrating GNU Calc. With the point
|
||||||
anywhere in the same line as a posting, typing @code{C-c C-b} will
|
anywhere in the same line as a posting, typing @code{C-c C-b} will bring
|
||||||
bring up the Calc buffer, and push the current amount for the posting
|
up the Calc buffer, and push the current amount for the posting onto the
|
||||||
onto the top of the Calc stack. Perform any calculations you need to
|
top of the Calc stack. Perform any calculations you need to arrive at
|
||||||
arrive at the final value, then type @code{y} to yank the value at the
|
the final value, then type @code{y} to yank the value at the top of
|
||||||
top of stack back into the ledger buffer. Note: GNU Calc does not
|
stack back into the ledger buffer. Note: GNU Calc does not directly
|
||||||
directly support commas as decimal separators. Ledger mode will
|
support commas as decimal separators. Ledger mode will translate values
|
||||||
translate values from decimal-comma format to decimal-period format for
|
from decimal-comma format to decimal-period format for use in Calc, but
|
||||||
use in Calc, but it cannot intercept the value being yanked form the
|
it cannot intercept the value being yanked form the Calc stack, so
|
||||||
Calc stack, so decimal-comma users will have to manually replace the
|
decimal-comma users will have to manually replace the period with
|
||||||
period with a comma.
|
a comma.
|
||||||
|
|
||||||
|
|
||||||
@node Marking Transactions, Deleting Transactions, Editing Amounts, The Ledger Buffer
|
@node Marking Transactions, Deleting Transactions, Editing Amounts, The Ledger Buffer
|
||||||
@section Marking Transactions
|
@section Marking Transactions
|
||||||
|
|
||||||
Ledger considers transaction or posting to be in one of three states:
|
Ledger considers transaction or posting to be in one of three states:
|
||||||
uncleared, cleared, and pending. For calculation Ledger ignores these
|
uncleared, cleared, and pending. For calculation Ledger ignores these
|
||||||
states unless specifically instructed to use them. Ledger-mode assigns
|
states unless specifically instructed to use them. Ledger-mode assigns
|
||||||
some additional meaning to the states:
|
some additional meaning to the states:
|
||||||
|
|
||||||
@itemize
|
@itemize
|
||||||
@item Uncleared.
|
@item Uncleared.
|
||||||
No state. This is equivalent to sticking a check in the mail. It has
|
No state. This is equivalent to sticking a check in the mail. It has
|
||||||
|
|
@ -277,12 +290,13 @@ your account balance. You bank may call these transactions 'pending',
|
||||||
but Ledger-mode uses a slightly different meaning.
|
but Ledger-mode uses a slightly different meaning.
|
||||||
@item Pending.
|
@item Pending.
|
||||||
Ledger-mode's reconciliation function see pending transactions as an
|
Ledger-mode's reconciliation function see pending transactions as an
|
||||||
intermediate step in reconciling an account. When doing a
|
intermediate step in reconciling an account. When doing
|
||||||
reconciliation (@pxref{Reconciliation}), marking a transaction as
|
a reconciliation (@pxref{Reconciliation}), marking a transaction as
|
||||||
pending means that you have seen the transaction finally recorded by the
|
pending means that you have seen the transaction finally recorded by the
|
||||||
recipient, but you have not completely reconciled the account.
|
recipient, but you have not completely reconciled the account.
|
||||||
@item Cleared.
|
@item Cleared.
|
||||||
The transaction has been completely recognized by all parties to the transaction.
|
The transaction has been completely recognized by all parties to the
|
||||||
|
transaction.
|
||||||
@end itemize
|
@end itemize
|
||||||
|
|
||||||
Clearing complete transactions is done by typing @code{C-c C-e} with
|
Clearing complete transactions is done by typing @code{C-c C-e} with
|
||||||
|
|
@ -292,6 +306,7 @@ while in a posting. This places an asterisk prior to the posting.
|
||||||
|
|
||||||
@node Deleting Transactions, Sorting Transactions, Marking Transactions, The Ledger Buffer
|
@node Deleting Transactions, Sorting Transactions, Marking Transactions, The Ledger Buffer
|
||||||
@section Deleting Transactions
|
@section Deleting Transactions
|
||||||
|
|
||||||
Along with normal buffer editing methods to delete text, Ledger mode
|
Along with normal buffer editing methods to delete text, Ledger mode
|
||||||
provides an easy way to delete the transaction under point: @code{C-c
|
provides an easy way to delete the transaction under point: @code{C-c
|
||||||
C-d}. The advantage to using this method is that the complete
|
C-d}. The advantage to using this method is that the complete
|
||||||
|
|
@ -307,8 +322,8 @@ can help bring order to chaos. Ledger sort (@code{C-c C-s}) will sort
|
||||||
all of the transactions in a region by date. Ledger-mode isn't
|
all of the transactions in a region by date. Ledger-mode isn't
|
||||||
particularly smart about handling dates and it simply sorts the
|
particularly smart about handling dates and it simply sorts the
|
||||||
transactions using the string at the beginning of the transaction. So,
|
transactions using the string at the beginning of the transaction. So,
|
||||||
you should use the preferred ISO 8601 standard date format @code{YYYY/MM/DD}
|
you should use the preferred ISO 8601 standard date format
|
||||||
which easily sorts.
|
@code{YYYY/MM/DD} which easily sorts.
|
||||||
|
|
||||||
Note, there is a menu entry to sort the entire buffer. Special
|
Note, there is a menu entry to sort the entire buffer. Special
|
||||||
transactions like automated transaction, will be moved in the sorting
|
transactions like automated transaction, will be moved in the sorting
|
||||||
|
|
@ -317,6 +332,7 @@ there is no key sequence.
|
||||||
|
|
||||||
You can limit the allowed sort region by using embedded Ledger-mode
|
You can limit the allowed sort region by using embedded Ledger-mode
|
||||||
markup within your ledger. For exmaple
|
markup within your ledger. For exmaple
|
||||||
|
|
||||||
@smallexample
|
@smallexample
|
||||||
<<< information to not sort >>>
|
<<< information to not sort >>>
|
||||||
|
|
||||||
|
|
@ -328,6 +344,7 @@ markup within your ledger. For exmaple
|
||||||
|
|
||||||
<<< information to not sort >>>
|
<<< information to not sort >>>
|
||||||
@end smallexample
|
@end smallexample
|
||||||
|
|
||||||
You can use menu entries to insert start and end markers. These
|
You can use menu entries to insert start and end markers. These
|
||||||
functions will automatically delete old markers and put new new marker
|
functions will automatically delete old markers and put new new marker
|
||||||
at point.
|
at point.
|
||||||
|
|
@ -335,8 +352,8 @@ at point.
|
||||||
@node Narrowing Transactions, , Sorting Transactions, The Ledger Buffer
|
@node Narrowing Transactions, , Sorting Transactions, The Ledger Buffer
|
||||||
@section Narrowing Transactions
|
@section Narrowing Transactions
|
||||||
|
|
||||||
Often you will want to run Ledger register reports just to look at a
|
Often you will want to run Ledger register reports just to look at
|
||||||
specific set of transactions. If you don't need the running total
|
a specific set of transactions. If you don't need the running total
|
||||||
calculation handled by Ledger, Ledger-mode provides a rapid way of
|
calculation handled by Ledger, Ledger-mode provides a rapid way of
|
||||||
narrowing what is displayed in the buffer in a way that is simpler than
|
narrowing what is displayed in the buffer in a way that is simpler than
|
||||||
the Ledger register command.
|
the Ledger register command.
|
||||||
|
|
@ -347,8 +364,8 @@ regular expression can match on any part of the transaction. If you
|
||||||
want to find all transactions whose amount ends in .37, you can do that
|
want to find all transactions whose amount ends in .37, you can do that
|
||||||
( I don't know why, but hey, whatever ever floats you aerostat).
|
( I don't know why, but hey, whatever ever floats you aerostat).
|
||||||
|
|
||||||
Using @code{C-c C-f} or the @code{Hide Xacts} menu entry, enter a
|
Using @code{C-c C-f} or the @code{Hide Xacts} menu entry, enter
|
||||||
regular expression in the minibuffer. Ledger-mode will hide all other
|
a regular expression in the minibuffer. Ledger-mode will hide all other
|
||||||
transactions. For details of the regular expression syntax, see
|
transactions. For details of the regular expression syntax, see
|
||||||
@ref{(emacs)Regexps, Syntax of Regular Expressions} or
|
@ref{(emacs)Regexps, Syntax of Regular Expressions} or
|
||||||
@ref{(elisp)Regular Expressions, Regular Expressions}. A few examples
|
@ref{(elisp)Regular Expressions, Regular Expressions}. A few examples
|
||||||
|
|
@ -367,11 +384,12 @@ Show only transactions with payees or accounts or comments containing `auto'
|
||||||
Show only transcations with any line ending with `harley'
|
Show only transcations with any line ending with `harley'
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
To show back all transactions simply invoke @code{Hide Xacts} or @code{C-c
|
To show back all transactions simply invoke @code{Hide Xacts} or
|
||||||
C-f} again.
|
@code{C-c C-f} again.
|
||||||
|
|
||||||
@node The Reconcile Buffer, The Report Buffer, The Ledger Buffer, Top
|
@node The Reconcile Buffer, The Report Buffer, The Ledger Buffer, Top
|
||||||
@chapter The Reconcile Buffer
|
@chapter The Reconcile Buffer
|
||||||
|
|
||||||
@menu
|
@menu
|
||||||
* Basics of Reconciliation::
|
* Basics of Reconciliation::
|
||||||
* Starting a Reconciliation::
|
* Starting a Reconciliation::
|
||||||
|
|
@ -414,8 +432,8 @@ account you wish to reconcile in the mini-buffer. Ledger-mode is not
|
||||||
particular about what you enter for the account. You can leave it blank
|
particular about what you enter for the account. You can leave it blank
|
||||||
and Reconcile Mode will show you ALL uncleared transactions. After you
|
and Reconcile Mode will show you ALL uncleared transactions. After you
|
||||||
enter the account enter the target amount. Ledger expects you to enter
|
enter the account enter the target amount. Ledger expects you to enter
|
||||||
an amount with a commodity. It assumes initially that you are using $
|
an amount with a commodity. It assumes initially that you are using
|
||||||
(USD) as your default commodity. If you are working in a different
|
$ (USD) as your default commodity. If you are working in a different
|
||||||
currency you can change the default in variable
|
currency you can change the default in variable
|
||||||
@code{ledger-reconcile-default-commodity} to whatever you need. If you
|
@code{ledger-reconcile-default-commodity} to whatever you need. If you
|
||||||
work in multiple commodities simply enter the commoditized amount (for
|
work in multiple commodities simply enter the commoditized amount (for
|
||||||
|
|
@ -431,8 +449,8 @@ not display the complete list of commodities.
|
||||||
|
|
||||||
The @file{*Reconcile*} buffer will show all the uncleared transactions
|
The @file{*Reconcile*} buffer will show all the uncleared transactions
|
||||||
that meet the criteria set in the regex. By default uncleared
|
that meet the criteria set in the regex. By default uncleared
|
||||||
transactions are shown in red. When you have verified that a
|
transactions are shown in red. When you have verified that
|
||||||
transaction has been correctly and completely recorded by the opposing
|
a transaction has been correctly and completely recorded by the opposing
|
||||||
party, mark the transaction as pending using the space bar. Continue
|
party, mark the transaction as pending using the space bar. Continue
|
||||||
this process until you agree with the opposing party and the difference
|
this process until you agree with the opposing party and the difference
|
||||||
from your target is zero.
|
from your target is zero.
|
||||||
|
|
@ -478,9 +496,9 @@ the ledger buffer are left in that state when the account is switched.
|
||||||
If for some reason during reconciliation your target amount changes,
|
If for some reason during reconciliation your target amount changes,
|
||||||
type @code{t} and enter the new target value.
|
type @code{t} and enter the new target value.
|
||||||
|
|
||||||
|
|
||||||
@node The Report Buffer, Customizing Ledger-mode, The Reconcile Buffer, Top
|
@node The Report Buffer, Customizing Ledger-mode, The Reconcile Buffer, Top
|
||||||
@chapter The Report Buffer
|
@chapter The Report Buffer
|
||||||
|
|
||||||
@menu
|
@menu
|
||||||
* Running Basic Reports::
|
* Running Basic Reports::
|
||||||
* Adding and Editing Reports::
|
* Adding and Editing Reports::
|
||||||
|
|
@ -489,12 +507,14 @@ type @code{t} and enter the new target value.
|
||||||
|
|
||||||
@node Running Basic Reports, Adding and Editing Reports, The Report Buffer, The Report Buffer
|
@node Running Basic Reports, Adding and Editing Reports, The Report Buffer, The Report Buffer
|
||||||
@section Running Reports
|
@section Running Reports
|
||||||
|
|
||||||
The real power behind Ledger is in its amazing reporting capability.
|
The real power behind Ledger is in its amazing reporting capability.
|
||||||
Ledger-mode provides easy facility to run reports directly from Emacs.
|
Ledger-mode provides easy facility to run reports directly from Emacs.
|
||||||
It has four reports built-in and facilities for adding custom reports.
|
It has four reports built-in and facilities for adding custom reports.
|
||||||
|
|
||||||
Typing @code{C-c C-o C-r} or using menu @code{Ledger Run Report} prompt
|
Typing @code{C-c C-o C-r} or using menu @code{Ledger Run Report} prompt
|
||||||
for the name of a saved report. The built-in reports are:
|
for the name of a saved report. The built-in reports are:
|
||||||
|
|
||||||
@table @samp
|
@table @samp
|
||||||
@item bal
|
@item bal
|
||||||
Produce a balance reports of all accounts.
|
Produce a balance reports of all accounts.
|
||||||
|
|
@ -508,9 +528,9 @@ Prompt for an account, the produce a register report of all transaction
|
||||||
involving that account.
|
involving that account.
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
|
|
||||||
@node Adding and Editing Reports, Reversing Report Order, Running Basic Reports, The Report Buffer
|
@node Adding and Editing Reports, Reversing Report Order, Running Basic Reports, The Report Buffer
|
||||||
@section Adding and Editing Reports
|
@section Adding and Editing Reports
|
||||||
|
|
||||||
@menu
|
@menu
|
||||||
* Expansion Formats::
|
* Expansion Formats::
|
||||||
* Make Report Transactions Active::
|
* Make Report Transactions Active::
|
||||||
|
|
@ -529,11 +549,11 @@ the report will be run, but it will not be permanently saved. If you
|
||||||
want to save it, type @code{S} in the @file{*Ledger Report*} buffer you
|
want to save it, type @code{S} in the @file{*Ledger Report*} buffer you
|
||||||
will have the option to give it a new name, or overwrite the old report.
|
will have the option to give it a new name, or overwrite the old report.
|
||||||
|
|
||||||
Deleting reports is accomplished by typing @code{C-c C-o C-e} Edit Reports
|
Deleting reports is accomplished by typing @code{C-c C-o C-e} Edit
|
||||||
in the ledger buffer, or typing @code{e} in the @file{*Ledger Report*}
|
Reports in the ledger buffer, or typing @code{e} in the @file{*Ledger
|
||||||
buffer. This takes you to the Emacs customization window for the
|
Report*} buffer. This takes you to the Emacs customization window for
|
||||||
@code{ledger-reports} variable. Use the widgets to delete the report
|
the @code{ledger-reports} variable. Use the widgets to delete the
|
||||||
you want removed.
|
report you want removed.
|
||||||
|
|
||||||
@node Expansion Formats, Make Report Transactions Active, Adding and Editing Reports, Adding and Editing Reports
|
@node Expansion Formats, Make Report Transactions Active, Adding and Editing Reports, Adding and Editing Reports
|
||||||
@subsection Expansion Formats
|
@subsection Expansion Formats
|
||||||
|
|
@ -560,6 +580,7 @@ You can use these expansion values in your ledger report commands. For
|
||||||
example, if you wanted to specify a register report the displayed
|
example, if you wanted to specify a register report the displayed
|
||||||
transactions from a user-determined account with a particular meta-data
|
transactions from a user-determined account with a particular meta-data
|
||||||
tag value, you specify the following command line:
|
tag value, you specify the following command line:
|
||||||
|
|
||||||
@smallexample
|
@smallexample
|
||||||
ledger -f %(ledger-file) reg %(account) --limit \"tag('my-tag') =~/%(value)/\"
|
ledger -f %(ledger-file) reg %(account) --limit \"tag('my-tag') =~/%(value)/\"
|
||||||
@end smallexample
|
@end smallexample
|
||||||
|
|
@ -571,9 +592,9 @@ ledger -f %(ledger-file) reg %(account) --limit \"tag('my-tag') =~/%(value)/\"
|
||||||
|
|
||||||
In a large register report it is convenient to be able to jump to the
|
In a large register report it is convenient to be able to jump to the
|
||||||
source transaction. Ledger-mode will automatically include source
|
source transaction. Ledger-mode will automatically include source
|
||||||
information in every register file that doesn't contain a
|
information in every register file that doesn't contain
|
||||||
@code{--subtotal} option. It does this by adding a
|
a @code{--subtotal} option. It does this by adding
|
||||||
@code{--prepend-format='%(filename):%(beg_line):'} to the register
|
a @code{--prepend-format='%(filename):%(beg_line):'} to the register
|
||||||
report command-line you specify. You should never have to see this, but
|
report command-line you specify. You should never have to see this, but
|
||||||
if there is an error in your ledger output this additional information
|
if there is an error in your ledger output this additional information
|
||||||
may not get stripped out of the visible report.
|
may not get stripped out of the visible report.
|
||||||
|
|
@ -581,18 +602,18 @@ may not get stripped out of the visible report.
|
||||||
@node Reversing Report Order, , Adding and Editing Reports, The Report Buffer
|
@node Reversing Report Order, , Adding and Editing Reports, The Report Buffer
|
||||||
@section Reversing Report Order
|
@section Reversing Report Order
|
||||||
|
|
||||||
Often, banks show their online transaction histories with the most recent
|
Often, banks show their online transaction histories with the most
|
||||||
transaction at the top. Ledger itself cannot do a sensible ledger
|
recent transaction at the top. Ledger itself cannot do a sensible
|
||||||
report in reverse chronological order, if you sort on reverse date the
|
ledger report in reverse chronological order, if you sort on reverse
|
||||||
calculation will also run in the opposite direction. If you want to
|
date the calculation will also run in the opposite direction. If you
|
||||||
compare a ledger register report to a bank report with the most recent
|
want to compare a ledger register report to a bank report with the most
|
||||||
transactions at the top, type R in the @file{*Ledger Report*} buffer and
|
recent transactions at the top, type R in the @file{*Ledger Report*}
|
||||||
it will reverse the order of the transactions and maintain the proper
|
buffer and it will reverse the order of the transactions and maintain
|
||||||
mathematical sense.
|
the proper mathematical sense.
|
||||||
|
|
||||||
|
|
||||||
@node Customizing Ledger-mode, Generating Ledger Regression Tests, The Report Buffer, Top
|
@node Customizing Ledger-mode, Generating Ledger Regression Tests, The Report Buffer, Top
|
||||||
@chapter Customizing Ledger-mode
|
@chapter Customizing Ledger-mode
|
||||||
|
|
||||||
@menu
|
@menu
|
||||||
* Ledger-mode Customization::
|
* Ledger-mode Customization::
|
||||||
* Customization Variables::
|
* Customization Variables::
|
||||||
|
|
@ -625,13 +646,16 @@ for Ledger under the data options. Alternately you can choose
|
||||||
|
|
||||||
@node Ledger Customization Group, Ledger Reconcile Customization Group, Customization Variables, Customization Variables
|
@node Ledger Customization Group, Ledger Reconcile Customization Group, Customization Variables, Customization Variables
|
||||||
@subsection Ledger Customization Group
|
@subsection Ledger Customization Group
|
||||||
|
|
||||||
@table @code
|
@table @code
|
||||||
@item ledger-occur-use-face-shown
|
@item ledger-occur-use-face-shown
|
||||||
If non-nil, use a custom face for xacts shown in `ledger-occur' mode using @code{ledger-occur-xact-face}.
|
If non-nil, use a custom face for xacts shown in `ledger-occur' mode
|
||||||
|
using @code{ledger-occur-xact-face}.
|
||||||
@item ledger-clear-whole-transactions
|
@item ledger-clear-whole-transactions
|
||||||
If non-nil, clear whole transactions, not individual postings.
|
If non-nil, clear whole transactions, not individual postings.
|
||||||
@item ledger-highlight-xact-under-point
|
@item ledger-highlight-xact-under-point
|
||||||
If non-nil, highlight xact under point using @code{ledger-font-highlight-face}.
|
If non-nil, highlight xact under point using
|
||||||
|
@code{ledger-font-highlight-face}.
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
@node Ledger Reconcile Customization Group, Ledger Report Customization Group, Ledger Customization Group, Customization Variables
|
@node Ledger Reconcile Customization Group, Ledger Report Customization Group, Ledger Customization Group, Customization Variables
|
||||||
|
|
@ -644,8 +668,8 @@ reconcile. Defaults to $ (USD)
|
||||||
@item ledger-recon-buffer-name
|
@item ledger-recon-buffer-name
|
||||||
Name to use for reconciliation window.
|
Name to use for reconciliation window.
|
||||||
@item ledger-narrow-on-reconcile
|
@item ledger-narrow-on-reconcile
|
||||||
If non-nil, limit transactions shown in main buffer to those matching the
|
If non-nil, limit transactions shown in main buffer to those matching
|
||||||
reconcile regex.
|
the reconcile regex.
|
||||||
@item ledger-buffer-tracks-reconcile-buffer
|
@item ledger-buffer-tracks-reconcile-buffer
|
||||||
If non-nil, then when the cursor is moved to a new xact in the recon
|
If non-nil, then when the cursor is moved to a new xact in the recon
|
||||||
window.
|
window.
|
||||||
|
|
@ -653,8 +677,8 @@ reconcile. Defaults to $ (USD)
|
||||||
If non-nil, make the reconcile window appear along the bottom of the
|
If non-nil, make the reconcile window appear along the bottom of the
|
||||||
register window and resize.
|
register window and resize.
|
||||||
@item ledger-reconcile-toggle-to-pending
|
@item ledger-reconcile-toggle-to-pending
|
||||||
If non-nil, then toggle between uncleared and pending (@code{!}). If false
|
If non-nil, then toggle between uncleared and pending (@code{!}). If
|
||||||
toggle between uncleared and cleared (@code{*})
|
false toggle between uncleared and cleared (@code{*})
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
@node Ledger Report Customization Group, Ledger Faces Customization Group, Ledger Reconcile Customization Group, Customization Variables
|
@node Ledger Report Customization Group, Ledger Faces Customization Group, Ledger Reconcile Customization Group, Customization Variables
|
||||||
|
|
@ -664,13 +688,15 @@ reconcile. Defaults to $ (USD)
|
||||||
@item ledger-reports
|
@item ledger-reports
|
||||||
Definition of reports to run.
|
Definition of reports to run.
|
||||||
@item ledger-report-format-specifiers
|
@item ledger-report-format-specifiers
|
||||||
An alist mapping ledger report format specifiers to implementing functions.
|
An alist mapping ledger report format specifiers to implementing
|
||||||
|
functions.
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
|
|
||||||
@node Ledger Faces Customization Group, Ledger Post Customization Group, Ledger Report Customization Group, Customization Variables
|
@node Ledger Faces Customization Group, Ledger Post Customization Group, Ledger Report Customization Group, Customization Variables
|
||||||
@subsection Ledger Faces Customization Group
|
@subsection Ledger Faces Customization Group
|
||||||
|
|
||||||
Ledger Faces : Ledger mode highlighting
|
Ledger Faces : Ledger mode highlighting
|
||||||
|
|
||||||
@table @code
|
@table @code
|
||||||
@item ledger-font-uncleared-face
|
@item ledger-font-uncleared-face
|
||||||
Default face for Ledger
|
Default face for Ledger
|
||||||
|
|
@ -688,7 +714,6 @@ Face for Ledger accounts
|
||||||
Face for cleared Ledger accounts
|
Face for cleared Ledger accounts
|
||||||
@item ledger-font-posting-account-pending-face
|
@item ledger-font-posting-account-pending-face
|
||||||
Face for Ledger pending accounts
|
Face for Ledger pending accounts
|
||||||
|
|
||||||
@item ledger-font-posting-amount-face
|
@item ledger-font-posting-amount-face
|
||||||
Face for Ledger amounts
|
Face for Ledger amounts
|
||||||
@item ledger-occur-narrowed-face
|
@item ledger-occur-narrowed-face
|
||||||
|
|
@ -709,9 +734,10 @@ Default face for pending (!) transactions in the reconcile window
|
||||||
|
|
||||||
@node Ledger Post Customization Group, Ledger Exec Customization Group, Ledger Faces Customization Group, Customization Variables
|
@node Ledger Post Customization Group, Ledger Exec Customization Group, Ledger Faces Customization Group, Customization Variables
|
||||||
@subsection Ledger Post Customization Group
|
@subsection Ledger Post Customization Group
|
||||||
Ledger Post :
|
|
||||||
@table @code
|
|
||||||
|
|
||||||
|
Ledger Post :
|
||||||
|
|
||||||
|
@table @code
|
||||||
@item ledger-post-auto-adjust-amounts
|
@item ledger-post-auto-adjust-amounts
|
||||||
If non-nil, then automatically align amounts to column specified in
|
If non-nil, then automatically align amounts to column specified in
|
||||||
@code{ledger-post-amount-alignment-column}
|
@code{ledger-post-amount-alignment-column}
|
||||||
|
|
@ -736,9 +762,9 @@ Path to the ledger executable.
|
||||||
Location of the ledger initialization file. nil if you don't have one
|
Location of the ledger initialization file. nil if you don't have one
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
|
|
||||||
@node Ledger Test Customization Group, Ledger Texi Customization Group, Ledger Exec Customization Group, Customization Variables
|
@node Ledger Test Customization Group, Ledger Texi Customization Group, Ledger Exec Customization Group, Customization Variables
|
||||||
@subsection Ledger Test Customization Group
|
@subsection Ledger Test Customization Group
|
||||||
|
|
||||||
@table @code
|
@table @code
|
||||||
@item ledger-source-directory
|
@item ledger-source-directory
|
||||||
Directory where the Ledger sources are located.
|
Directory where the Ledger sources are located.
|
||||||
|
|
@ -751,9 +777,11 @@ Location of the ledger initialization file. nil if you don't have one
|
||||||
|
|
||||||
@table @code
|
@table @code
|
||||||
@item ledger-texi-sample-doc-path
|
@item ledger-texi-sample-doc-path
|
||||||
Location for sample data to be used in texi tests, defaults to @file{~/ledger/doc/sample.dat}
|
Location for sample data to be used in texi tests, defaults to
|
||||||
|
@file{~/ledger/doc/sample.dat}
|
||||||
@item ledger-texi-normalization-args
|
@item ledger-texi-normalization-args
|
||||||
texi normalization for producing ledger output, defaults to ``@code{--args-only --columns 80}''
|
texi normalization for producing ledger output, defaults to
|
||||||
|
``@code{--args-only --columns 80}''
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
@node Generating Ledger Regression Tests, Embedding Example results in Ledger Documentation, Customizing Ledger-mode, Top
|
@node Generating Ledger Regression Tests, Embedding Example results in Ledger Documentation, Customizing Ledger-mode, Top
|
||||||
|
|
@ -770,4 +798,5 @@ Work in Progress.
|
||||||
@chapter Hacking Ledger-mode
|
@chapter Hacking Ledger-mode
|
||||||
|
|
||||||
Work in Progress.
|
Work in Progress.
|
||||||
|
|
||||||
@bye
|
@bye
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue