Move keyboard shortcuts to @kbd{}

Move sample to @samp{}
Move menu entries to @samp{}
Move Ledger-mode variables to @options{}
Move single characters to @samp{}
Also use @emph{}
This commit is contained in:
thdox 2013-04-30 22:11:20 +02:00
parent bb2a52cfa2
commit f4bca599d7

View file

@ -144,67 +144,67 @@ Ledger from a convenient command line.
@node Quick Add, Reconciliation, Quick Demo, Quick Demo @node Quick Add, Reconciliation, Quick Demo, Quick Demo
@subsection Quick Add @subsection Quick Add
As simple as the ledger transaction format is, it can still be daunting As simple as the Ledger transaction format is, it can still be daunting
to add many transactions manually. Ledger provides two way to add to add many transactions manually. Ledger provides two way to add
transactions with minimal typing. Both are based on the idea that most transactions with minimal typing. Both are based on the idea that most
transactions are repetitions of earlier transactions. transactions are repetitions of earlier transactions.
In the @file{demo.ledger} buffer enter a date using the correct In the @file{demo.ledger} buffer enter a date using the correct
format. Then type the first few characters of another payee in the format. Then type the first few characters of another payee in the
@file{demo.ledger} buffer. Type @code{C-c TAB}. Ledger-mode will @file{demo.ledger} buffer. Type @kbd{C-c TAB}. Ledger-mode will
search for a Payee that has the same beginning and copy the rest of the search for a Payee that has the same beginning and copy the rest of the
transaction to you new entry. transaction to you new entry.
Additionally you can use the ledger xact command, by typing @code{C-c Additionally you can use the ledger xact command, by typing @kbd{C-c
C-a} then typing a close match to the payee. Ledger-mode will call C-a} then typing a close match to the payee. Ledger-mode will call
@code{ledger xact} with the data you enter and place the transaction in @command{ledger xact} with the data you enter and place the transaction
the proper chronological place in the ledger. in the proper chronological place in the ledger.
@node Reconciliation, Reports, Quick Add, Quick Demo @node Reconciliation, Reports, Quick Add, Quick Demo
@subsection Reconciliation @subsection Reconciliation
The biggest task of maintaining a ledger is ensuring the it matches the The biggest task of maintaining a ledger is ensuring that it matches the
outside world. This process is called reconciliation (@pxref{Basics of outside world. This process is called reconciliation (@pxref{Basics of
Reconciliation}) and can be quite onerous. Ledger-mode attempts to make Reconciliation}) and can be quite onerous. Ledger-mode attempts to make
it as painless as possible. it as painless as possible.
In the @file{demo.ledger} buffer type @code{C-c C-r}. Emacs will prompt In the @file{demo.ledger} buffer type @kbd{C-c C-r}. Emacs will prompt
for an account to reconcile in the mini-buffer. Enter @code{Checking}. for an account to reconcile in the mini-buffer. Enter @samp{Checking}.
Emacs will then prompt for a target value. The target value is the Emacs will then prompt for a target value. The target value is the
amount you want the cleared transactions in the buffer to total. amount you want the cleared transactions in the buffer to total.
Normally this would be the ending value from your bank statement, or the Normally this would be the ending value from your bank statement, or the
latest value in your on-line transaction summary. Enter @code{1710}. latest value in your on-line transaction summary. Enter @samp{1710}.
Note that Ledger-mode assumes your are using $ (USD) as your default Note that Ledger-mode assumes your are using @samp{$} (USD) as your
commodity, this can be easily changed in the customization default 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 @file{demo.ledger} buffer. Touching the @kbd{SPC} bar will mark
a 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 @samp{$0}. End the reconciliation by typing @kbd{C-c C-c}. This
the demo.ledger buffer and marks the transactions and finally cleared. saves the @file{demo.ledger} buffer and marks the transactions and finally
Type @code{q} to close out the reconciliation buffer. cleared. Type @kbd{q} to close out the reconciliation buffer.
@node Reports, Narrowing, Reconciliation, Quick Demo @node Reports, Narrowing, Reconciliation, Quick Demo
@subsection Reports @subsection Reports
The real power of Ledger is in it reporting capabilities. Reports can The real power of Ledger is in it reporting capabilities. Reports can
be run and displayed in a separate Emacs buffer. In the be run and displayed in a separate Emacs buffer. In the
@file{demo.ledger} buffer, type @code{C-c C-o C-r}. In the mini-buffer @file{demo.ledger} buffer, type @kbd{C-c C-o C-r}. In the mini-buffer
Emacs will prompt for a report name. There are a few built-in reports, Emacs will prompt for a report name. There are a few built-in reports,
and you can add any report you need @xref{Adding and Editing Reports}. and you can add any report you need @xref{Adding and Editing Reports}.
In the mini-buffer type @code{account}. When prompted for an account In the mini-buffer type @samp{account}. When prompted for an account
type @code{checking}. In another buffer you will see a Ledger register type @samp{checking}. In another buffer you will see a Ledger register
report. You can move around the buffer, with the point on a transaction, report. You can move around the buffer, with the point on a transaction,
type @code{C-c C-c}. Ledger-mode will take you directly to that type @kbd{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 @file{demo.ledger} buffer, type @kbd{C-c C-o C-r}. When prompted for
a report to run, type @code{bal}, and a balance report of all accounts a report to run, type @samp{bal}, and a balance report of all accounts
will be shown. will be shown.
@node Narrowing, , Reports, Quick Demo @node Narrowing, , Reports, Quick Demo
@ -212,8 +212,8 @@ will be shown.
A ledger file can get very large. It can be helpful to collapse the A ledger file can get very large. It can be helpful to collapse the
buffer to display only the transactions you are interested in. buffer to display only the transactions you are interested in.
Ledger-mode copies the @code{occur} mode functionality. Typing Ledger-mode copies the @command{occur} mode functionality. Typing
@code{C-c C-f} and entering any regex in the mini-buffer will show only @kbd{C-c C-f} and entering any regex in the mini-buffer will show only
transactions that match the regex. The regex can be on any field, or transactions that match the regex. The regex can be on any field, or
amount. amount.
@ -233,17 +233,17 @@ amount.
@section Adding Transactions @section Adding Transactions
Beyond the two ways of quickly adding transactions (@pxref{Quick Add}) Beyond the two ways of quickly adding transactions (@pxref{Quick Add})
Ledger-mode assists you by providing robust @code{TAB} completion for Ledger-mode assists you by providing robust @kbd{TAB} completion for
payees and accounts. Ledger-mode will scan the existing buffer for payees and accounts. Ledger-mode will scan the existing buffer for
payees and accounts. Included files are not currently included in the payees and accounts. Included files are not currently included in the
completion scan. Repeatedly hitting @code{TAB} will cycle through the completion scan. Repeatedly hitting @kbd{TAB} will cycle through the
possible completions. possible completions.
Ledger-mode can also help you keep your amounts in alignment. Setting Ledger-mode can also help you keep your amounts in alignment. Setting
@code{ledger-post-auto-adjust-amounts} to true tells Ledger-mode to @option{ledger-post-auto-adjust-amounts} to true tells Ledger-mode to
automatically place any amounts such that their last digit is aligned to automatically place any amounts such that their last digit is aligned to
the column specified by @code{ledger-post-amount-alignment-column}, the column specified by @option{ledger-post-amount-alignment-column},
which defaults to 52. @xref{Ledger Post Customization Group}. which defaults to @samp{52}. @xref{Ledger Post Customization Group}.
@menu @menu
* Quick Balance Display:: * Quick Balance Display::
@ -254,8 +254,8 @@ which defaults to 52. @xref{Ledger Post Customization Group}.
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 @kbd{C-C C-P}. The minibuffer will ask you to verify the name
of the account you want, if it is already correct hit return, then the of the account you want, if it is already correct hit @kbd{RET}, then the
balance of the account will be displayed in the minibuffer. 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
@ -264,10 +264,10 @@ balance of the account will be displayed in the minibuffer.
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 bring anywhere in the same line as a posting, typing @kbd{C-c C-b} will bring
up the Calc buffer, and push the current amount for the posting onto the up the Calc buffer, and push the current amount for the posting onto the
top of the Calc stack. Perform any calculations you need to arrive at top of the Calc stack. Perform any calculations you need to arrive at
the final value, then type @code{y} to yank the value at the top of the final value, then type @kbd{y} to yank the value at the top of
stack back into the ledger buffer. Note: GNU Calc does not directly stack back into the ledger buffer. Note: GNU Calc does not directly
support commas as decimal separators. Ledger-mode will translate values support commas as decimal separators. Ledger-mode will translate values
from decimal-comma format to decimal-period format for use in Calc, but from decimal-comma format to decimal-period format for use in Calc, but
@ -288,7 +288,7 @@ some additional meaning to the states:
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
been obligated, but not been cashed by the recipient. It could also been obligated, but not been cashed by the recipient. It could also
apply to credit/debit card transactions that have not been cleared into apply to credit/debit card transactions that have not been cleared into
your account balance. You bank may call these transactions 'pending', 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
@ -301,16 +301,16 @@ The transaction has been completely recognized by all parties to the
transaction. 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 @kbd{C-c C-e} with
point in a transaction. This places an asterisk (@code{*}) after the point in a transaction. This places an asterisk @samp{*} after the
date. Clearing individual postings is done by typing @code{C-c C-c} date. Clearing individual postings is done by typing @kbd{C-c C-c}
while in a posting. This places an asterisk prior to the posting. 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: @kbd{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
transaction operation is in the undo buffer. transaction operation is in the undo buffer.
@ -320,12 +320,12 @@ transaction operation is in the undo buffer.
As you operating on the Ledger files, they may become disorganized. For As you operating on the Ledger files, they may become disorganized. For
the most part, Ledger doesn't care, but our human brains prefer a bit of the most part, Ledger doesn't care, but our human brains prefer a bit of
order. Sorting the transactions in a buffer into chronological order order. Sorting the transactions in a buffer into chronological order
can help bring order to chaos. Ledger sort (@code{C-c C-s}) will sort can help bring order to chaos. Ledger sort @kbd{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 you should use the preferred ISO 8601 standard date format
@code{YYYY/MM/DD} which easily sorts. @samp{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
@ -361,12 +361,12 @@ narrowing what is displayed in the buffer in a way that is simpler than
the Ledger register command. the Ledger register command.
Based on the Emacs Occur mode by Alexey Veretennikov, Ledger-occur hides Based on the Emacs Occur mode by Alexey Veretennikov, Ledger-occur hides
all transactions that do NOT meet a specific regular expression. The all transactions that do @emph{not} meet a specific regular expression.
regular expression can match on any part of the transaction. If you The 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 @samp{.37}, you can
( I don't know why, but hey, whatever ever floats you aerostat). do that (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 Using @kbd{C-c C-f} or the @samp{Hide Xacts} menu entry, enter
a 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
@ -375,19 +375,21 @@ using the @file{demo.ledger} are given here:
@table @samp @table @samp
@item Groceries @item Groceries
Show only transactions that have a posting to the `Groceries' account. Show only transactions that have a posting to the @samp{Groceries}
account.
@item ^2011/01 @item ^2011/01
Show only transactions occurring in January of 2011. Show only transactions occurring in January of 2011.
@item ^2011/.*/25 @item ^2011/.*/25
Show only transactions occurring on the 25th of the month in 2011 Show only transactions occurring on the 25th of the month in 2011
@item auto @item auto
Show only transactions with payees or accounts or comments containing `auto' Show only transactions with payees or accounts or comments containing
@samp{auto}
@item harley$ @item harley$
Show only transcations with any line ending with `harley' Show only transactions with any line ending with @samp{harley}
@end table @end table
To show back all transactions simply invoke @code{Hide Xacts} or To show back all transactions simply invoke @samp{Hide Xacts} or
@code{C-c C-f} again. @kbd{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
@ -409,12 +411,12 @@ To show back all transactions simply invoke @code{Hide Xacts} or
Even in this relatively modern era, financial transactions do not happen Even in this relatively modern era, financial transactions do not happen
instantaneously, unless you are paying cash. When you swipe your debit instantaneously, unless you are paying cash. When you swipe your debit
card the money may take several days to actually come out of your card the money may take several days to actually come out of your
account, or a check may take several days to ``clear''. That is the account, or a check may take several days to @emph{clear}. That is the
root of the difference between ``obligating'' funds and ``expending'' root of the difference between @dfn{obligating} funds and
funds. Obligation says you have agreed to pay it, the expenditure @dfn{expending} funds. Obligation says you have agreed to pay it, the
doesn't happen until the money actually leaves your account. Or in the expenditure doesn't happen until the money actually leaves your
case of receiving payment, you have an account receivable until the account. Or in the case of receiving payment, you have an account
money has actually made it to you. receivable until the money has actually made it to you.
After an account has been reconciled you have verified that all the After an account has been reconciled you have verified that all the
transactions in that account have been correctly recorded and all transactions in that account have been correctly recorded and all
@ -429,17 +431,17 @@ about. You can get this from a monthly statement, or from checking your
online transaction history. It also helps immensely to know the final online transaction history. It also helps immensely to know the final
cleared balance you are aiming for. cleared balance you are aiming for.
Use menu @code{Reconcile Account} or @code{C-c C-r} and enter the Use menu @samp{Reconcile Account} or @kbd{C-c C-r} and enter the account
account you wish to reconcile in the mini-buffer. Ledger-mode is not you wish to reconcile in the mini-buffer. Ledger-mode is not particular
particular about what you enter for the account. You can leave it blank about what you enter for the account. You can leave it blank and
and Reconcile Mode will show you ALL uncleared transactions. After you Reconcile Mode will show you @emph{all} uncleared transactions. After
enter the account enter the target amount. Ledger expects you to enter you enter the account enter the target amount. Ledger expects you to
an amount with a commodity. It assumes initially that you are using enter an amount with a commodity. It assumes initially that you are
$ (USD) as your default commodity. If you are working in a different using @samp{$} (USD) as your default commodity. If you are working in
currency you can change the default in variable a different currency you can change the default in variable
@code{ledger-reconcile-default-commodity} to whatever you need. If you @option{ledger-reconcile-default-commodity} to whatever you need. If
work in multiple commodities simply enter the commoditized amount (for you work in multiple commodities simply enter the commoditized amount
example @code{340 VSDX}, for 340 shares of VSDX). (for example @samp{340 VSDX}, for 340 shares of VSDX).
Ledger-mode reconcile cannot currently reconcile accounts that have Ledger-mode reconcile cannot currently reconcile accounts that have
multiple commodities, such as brokerage accounts. You may use multiple commodities, such as brokerage accounts. You may use
@ -453,7 +455,7 @@ 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 transactions are shown in red. When you have verified that
a 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 @kbd{SPC} 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.
@ -461,7 +463,7 @@ from your target is zero.
@section Edit Transactions during Reconciliation @section Edit Transactions during Reconciliation
If you find errors during reconciliation. You can visit the transaction If you find errors during reconciliation. You can visit the transaction
under point in the @file{*Reconcile*} buffer by hitting the @code{enter} under point in the @file{*Reconcile*} buffer by hitting the @kbd{RET}
key. This will take you to the transaction in the Ledger buffer. When key. This will take you to the transaction in the Ledger buffer. When
you have finished editing the transaction saving the buffer will you have finished editing the transaction saving the buffer will
automatically return you to the @file{*Reconcile*} buffer and you can automatically return you to the @file{*Reconcile*} buffer and you can
@ -471,24 +473,24 @@ mark the transaction if appropriate.
@section Finalize Reconciliation @section Finalize Reconciliation
Once you have marked all transactions as pending and the cleared balance Once you have marked all transactions as pending and the cleared balance
is correct. Finish the reconciliation by typing @code{C-c C-c}. This is correct. Finish the reconciliation by typing @kbd{C-c C-c}. This
marks all pending transaction as cleared and saves the ledger buffer. marks all pending transaction as cleared and saves the ledger buffer.
@node Adding and Deleting Transactions during Reconciliation, Changing Reconciliation Account, Finalize Reconciliation, The Reconcile Buffer @node Adding and Deleting Transactions during Reconciliation, Changing Reconciliation Account, Finalize Reconciliation, The Reconcile Buffer
@section Adding and Deleting Transactions during Reconciliation @section Adding and Deleting Transactions during Reconciliation
While reconciling, you may find new transactions that need to be entered While reconciling, you may find new transactions that need to be entered
into your ledger. Simply type @code{a} to bring up the quick add for into your ledger. Simply type @kbd{a} to bring up the quick add for
the ledger buffer. the ledger buffer.
Typing @code{d} will delete the transaction under point in the Typing @kbd{d} will delete the transaction under point in the
@file{*Reconcile*} buffer from the ledger buffer. @file{*Reconcile*} buffer from the ledger buffer.
@node Changing Reconciliation Account, Changing Reconciliation Target, Adding and Deleting Transactions during Reconciliation, The Reconcile Buffer @node Changing Reconciliation Account, Changing Reconciliation Target, Adding and Deleting Transactions during Reconciliation, The Reconcile Buffer
@section Changing Reconciliation Account @section Changing Reconciliation Account
You can conveniently switch the account being reconciled by typing You can conveniently switch the account being reconciled by typing
@code{g}, and entering a new account to reconcile. This simply restarts @kbd{g}, and entering a new account to reconcile. This simply restarts
the reconcile process. Any transactions that were marked `pending' in the reconcile process. Any transactions that were marked `pending' in
the ledger buffer are left in that state when the account is switched. the ledger buffer are left in that state when the account is switched.
@ -496,7 +498,7 @@ the ledger buffer are left in that state when the account is switched.
@section Changing Reconciliation Target @section Changing Reconciliation Target
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 @kbd{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
@ -514,7 +516,7 @@ 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 @kbd{C-c C-o C-r} or using menu @samp{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
@ -523,11 +525,11 @@ Produce a balance reports of all accounts.
@item reg @item reg
Produce a register report of all transactions. Produce a register report of all transactions.
@item payee @item payee
Prompt for a payee, the produce a register report of all transaction Prompt for a payee, then produce a register report of all transactions
involving that payee. involving that payee.
@item account @item account
Prompt for an account, the produce a register report of all transaction Prompt for an account, then produce a register report of all
involving that account. transactions 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
@ -545,29 +547,29 @@ time.
There are two ways to edit the command line for a report. The first is There are two ways to edit the command line for a report. The first is
to provide a prefix argument to the run-report command. For example, to provide a prefix argument to the run-report command. For example,
type @code{M-1 C-c C-o C-r}. This will prompt you for the report name, type @kbd{M-1 C-c C-o C-r}. This will prompt you for the report name,
then present the report command line to be edited. When you hit enter, then present the report command line to be edited. When you hit @kbd{RET},
the report will be run, but it will not be permanently saved. If you 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 @kbd{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 Deleting reports is accomplished by typing @kbd{C-c C-o C-e} Edit
Reports in the ledger buffer, or typing @code{e} in the @file{*Ledger Reports in the ledger buffer, or typing @kbd{e} in the @file{*Ledger
Report*} buffer. This takes you to the Emacs customization window for Report*} buffer. This takes you to the Emacs customization window for
the @code{ledger-reports} variable. Use the widgets to delete the the @option{ledger-reports} variable. Use the widgets to delete the
report 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
It is sometime convenient to leave room to customize a report without It is sometimes convenient to leave room to customize a report without
saving the command line every time. For example running a register saving the command line every time. For example running a register
report for a specific account, enter at runtime by the user. The report for a specific account, enter at runtime by the user. The
built-in report @file{account} does exactly that, using a variable built-in report @samp{account} does exactly that, using a variable
expansion to prompt the user for the account to use. There are four expansion to prompt the user for the account to use. There are four
variable that can be expanded to run a report: variable that can be expanded to run a report:
@table @samp @table @option
@item ledger-file @item ledger-file
Returns the file to be operated on. Returns the file to be operated on.
@item payee @item payee
@ -587,7 +589,7 @@ tag value, you specify the following command line:
ledger -f %(ledger-file) reg %(account) --limit \"tag('my-tag') =~/%(value)/\" ledger -f %(ledger-file) reg %(account) --limit \"tag('my-tag') =~/%(value)/\"
@end example @end example
@noindent Note how the double-quotes are escaped with back-slashes. Note how the double-quotes are escaped with back-slashes.
@node Make Report Transactions Active, , Expansion Formats, Adding and Editing Reports @node Make Report Transactions Active, , Expansion Formats, Adding and Editing Reports
@subsection Make Report Transactions Active @subsection Make Report Transactions Active
@ -595,8 +597,8 @@ 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 information in every register file that doesn't contain
a @code{--subtotal} option. It does this by adding a @option{--subtotal} option. It does this by adding
a @code{--prepend-format='%(filename):%(beg_line):'} to the register @option{--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.
@ -609,9 +611,9 @@ recent transaction at the top. Ledger itself cannot do a sensible
ledger report in reverse chronological order, if you sort on reverse ledger report in reverse chronological order, if you sort on reverse
date the calculation will also run in the opposite direction. If you date the calculation will also run in the opposite direction. If you
want to compare a ledger register report to a bank report with the most want to compare a ledger register report to a bank report with the most
recent transactions at the top, type R in the @file{*Ledger Report*} recent transactions at the top, type @kbd{R} in the @file{*Ledger
buffer and it will reverse the order of the transactions and maintain Report*} buffer and it will reverse the order of the transactions and
the proper mathematical sense. maintain 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
@ -630,7 +632,7 @@ specified in your Emacs initialization file. The complete list of
options is shown below. To change the option using the Emacs options is shown below. To change the option using the Emacs
customization menu, simply chose customize in the Options menu and look customization menu, simply chose customize in the Options menu and look
for Ledger under the data options. Alternately you can choose for Ledger under the data options. Alternately you can choose
``Customize Specific Group'' and enter ``Ledger'' as the group. @samp{Customize Specific Group} and enter @samp{Ledger} as the group.
@node Customization Variables, , Ledger-mode Customization, Customizing Ledger-mode @node Customization Variables, , Ledger-mode Customization, Customizing Ledger-mode
@section Customization Variables @section Customization Variables
@ -649,24 +651,24 @@ 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 @option
@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 If non-nil, use a custom face for xacts shown in @option{ledger-occur}
using @code{ledger-occur-xact-face}. mode using @option{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 If non-nil, highlight xact under point using
@code{ledger-font-highlight-face}. @option{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
@subsection Ledger Reconcile Customization Group @subsection Ledger Reconcile Customization Group
@table @code @table @option
@item ledger-reconcile-default-commodity @item ledger-reconcile-default-commodity
The default commodity for use in target calculations in ledger The default commodity for use in target calculations in ledger
reconcile. Defaults to $ (USD) reconcile. Defaults to @samp{$} (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
@ -679,14 +681,14 @@ window.
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 If non-nil, then toggle between uncleared and pending @samp{!}. If
false toggle between uncleared and cleared (@code{*}) false toggle between uncleared and cleared @samp{*}.
@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
@subsection Ledger Report Customization Group @subsection Ledger Report Customization Group
@table @code @table @option
@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
@ -697,17 +699,17 @@ functions.
@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 @option
@item ledger-font-uncleared-face @item ledger-font-uncleared-face
Default face for Ledger Default face for Ledger
@item ledger-font-cleared-face @item ledger-font-cleared-face
Default face for cleared (*) transactions Default face for cleared @samp{*} transactions
@item ledger-font-highlight-face @item ledger-font-highlight-face
Default face for transaction under point Default face for transaction under point
@item ledger-font-pending-face @item ledger-font-pending-face
Default face for pending (!) transactions Default face for pending @samp{!} transactions
@item ledger-font-other-face @item ledger-font-other-face
Default face for other transactions Default face for other transactions
@item ledger-font-posting-account-face @item ledger-font-posting-account-face
@ -727,47 +729,47 @@ Face for Ledger comments
@item ledger-font-reconciler-uncleared-face @item ledger-font-reconciler-uncleared-face
Default face for uncleared transactions in the reconcile window Default face for uncleared transactions in the reconcile window
@item ledger-font-reconciler-cleared-face @item ledger-font-reconciler-cleared-face
Default face for cleared (*) transactions in the reconcile window Default face for cleared @samp{*} transactions in the reconcile window
@item ledger-font-reconciler-pending-face @item ledger-font-reconciler-pending-face
Default face for pending (!) transactions in the reconcile window Default face for pending @samp{!} transactions in the reconcile window
@item ledger-font-report-clickable-face @item ledger-font-report-clickable-face
Default face for pending (!) transactions in the reconcile window FIXME
@end table @end table
@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 : Ledger Post:
@table @code @table @option
@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} @option{ledger-post-amount-alignment-column}
@item ledger-post-amount-alignment-column @item ledger-post-amount-alignment-column
The column Ledger-mode uses to align amounts The column Ledger-mode uses to align amounts
@item ledger-default-acct-transaction-indent @item ledger-default-acct-transaction-indent
Default indentation for account transactions in an entry. Default indentation for account transactions in an entry.
@item ledger-post-use-completion-engine @item ledger-post-use-completion-engine
Which completion engine to use, iswitchb, ido, or built-in Which completion engine to use: @var{iswitchb}, @var{ido}, or built-in.
@item ledger-post-use-ido @item ledger-post-use-ido
@end table @end table
@node Ledger Exec Customization Group, Ledger Test Customization Group, Ledger Post Customization Group, Customization Variables @node Ledger Exec Customization Group, Ledger Test Customization Group, Ledger Post Customization Group, Customization Variables
@subsection Ledger Exec Customization Group @subsection Ledger Exec Customization Group
Ledger Exec : Interface to the Ledger command-line accounting program. Ledger Exec: Interface to the Ledger command-line accounting program.
@table @code @table @option
@item ledger-binary-path @item ledger-binary-path
Path to the ledger executable. Path to the ledger executable.
@item ledger-init-file-name @item ledger-init-file-name
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 @option
@item ledger-source-directory @item ledger-source-directory
Directory where the Ledger sources are located. Directory where the Ledger sources are located.
@item ledger-test-binary @item ledger-test-binary
@ -777,13 +779,13 @@ Directory where the debug binary.
@node Ledger Texi Customization Group, , Ledger Test Customization Group, Customization Variables @node Ledger Texi Customization Group, , Ledger Test Customization Group, Customization Variables
@subsection Ledger Texi Customization Group @subsection Ledger Texi Customization Group
@table @code @table @option
@item ledger-texi-sample-doc-path @item ledger-texi-sample-doc-path
Location for sample data to be used in texi tests, defaults to Location for sample data to be used in texi tests, defaults to
@file{~/ledger/doc/sample.dat} @file{~/ledger/doc/sample.dat}.
@item ledger-texi-normalization-args @item ledger-texi-normalization-args
texi normalization for producing ledger output, defaults to texi normalization for producing ledger output, defaults to
``@code{--args-only --columns 80}'' @samp{--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