Around section's commands, add a blank line as recommanded in section

Tips of Texinfo manual.
This commit is contained in:
thdox 2013-04-27 13:34:09 +02:00
parent e9349f7705
commit 14a8bb9b99

View file

@ -97,6 +97,7 @@ twinkling in their father's CRT.
@node Copying, Introduction to Ledger, Top, Top @node Copying, Introduction to Ledger, Top, Top
@chapter Copying @chapter Copying
@insertcopying @insertcopying
This license can also be obtained from the command-line by executing This license can also be obtained from the command-line by executing
@ -104,6 +105,7 @@ This license can also be obtained from the command-line by executing
@node Introduction to Ledger, Ledger Tutorial, Copying, Top @node Introduction to Ledger, Ledger Tutorial, Copying, Top
@chapter Introduction to Ledger @chapter Introduction to Ledger
@menu @menu
* Fat-free Accounting:: * Fat-free Accounting::
* Building the Program:: * Building the Program::
@ -112,6 +114,7 @@ This license can also be obtained from the command-line by executing
@node Fat-free Accounting, Building the Program, Introduction to Ledger, Introduction to Ledger @node Fat-free Accounting, Building the Program, Introduction to Ledger, Introduction to Ledger
@section Fat-free Accounting @section Fat-free Accounting
Ledger is an accounting tool with the moxie to exist. It provides no Ledger is an accounting tool with the moxie to exist. It provides no
bells or whistles, and returns the user to the days before user bells or whistles, and returns the user to the days before user
interfaces were even a twinkling in their father's CRT. interfaces were even a twinkling in their father's CRT.
@ -267,6 +270,7 @@ enter these commands:
@findex help @findex help
@node Getting Help, , Building the Program, Introduction to Ledger @node Getting Help, , Building the Program, Introduction to Ledger
@section Getting help @section Getting help
Ledger has a complete online help system based on GNU Info. This manual Ledger has a complete online help system based on GNU Info. This manual
can be searched directly from the command line using the following can be searched directly from the command line using the following
options: options:
@ -290,6 +294,7 @@ You can also find help at the @code{#ledger} channel on the IRC server
@node Start a Journal, Run Some Reports, Ledger Tutorial, Ledger Tutorial @node Start a Journal, Run Some Reports, Ledger Tutorial, Ledger Tutorial
@section Start a Journal File @section Start a Journal File
@cindex journals @cindex journals
A journal is a record of your financial transactions and will be central A journal is a record of your financial transactions and will be central
to using Ledger. For now we just want to get a taste of what Ledger can to using Ledger. For now we just want to get a taste of what Ledger can
do. An example journal is included with the source code distribution, do. An example journal is included with the source code distribution,
@ -323,6 +328,7 @@ shells to give concrete examples for each.
@subsection Balance Report @subsection Balance Report
@cindex balance report @cindex balance report
@findex balance (bal) @findex balance (bal)
To find the balances of all of your accounts, run this command: To find the balances of all of your accounts, run this command:
@smallexample @smallexample
@ -378,6 +384,7 @@ $ ledger -f drewr3.dat balance Assets Liabilities
@subsection Register Report @subsection Register Report
@cindex register report @cindex register report
@findex register (reg) @findex register (reg)
To show all transactions and a running total: To show all transactions and a running total:
@smallexample @smallexample
ledger -f drewr3.dat register ledger -f drewr3.dat register
@ -457,6 +464,7 @@ $ ledger -f drewr3.dat register payee "Organic"
@subsection Cleared Report @subsection Cleared Report
@cindex cleared report @cindex cleared report
@findex cleared @findex cleared
A very useful report is to show what your obligations are versus what A very useful report is to show what your obligations are versus what
expenditures have actually been recorded. It can take several days for expenditures have actually been recorded. It can take several days for
a check to clear, but you should treat it as money spent. The a check to clear, but you should treat it as money spent. The
@ -492,6 +500,7 @@ $ ledger -f drewr3.dat cleared
@subsection Using the Windows Command Line @subsection Using the Windows Command Line
@cindex windows cmd.exe @cindex windows cmd.exe
@cindex currency symbol display on windows @cindex currency symbol display on windows
Using ledger under the windows command shell has one significant Using ledger under the windows command shell has one significant
limitation. CMD.exe is limited to standard ASCII characters and as such limitation. CMD.exe is limited to standard ASCII characters and as such
cannot display any currency symbols other than dollar signs ($). cannot display any currency symbols other than dollar signs ($).
@ -524,8 +533,8 @@ businesses. Double-entry accounting scales.
@node Stating where money goes, Assets and Liabilities, Accounting with Ledger, Principles of Accounting @node Stating where money goes, Assets and Liabilities, Accounting with Ledger, Principles of Accounting
@section Stating where money goes @section Stating where money goes
@cindex credits and debits @cindex credits and debits
Accountants will talk of ``credits'' and ``debits'', but the meaning Accountants will talk of ``credits'' and ``debits'', but the meaning
is often different from the layman's understanding. To avoid is often different from the layman's understanding. To avoid
confusion, Ledger uses only subtractions and additions, although the confusion, Ledger uses only subtractions and additions, although the
@ -580,6 +589,7 @@ money now than when you started your ledger. Make sense?
@section Assets and Liabilities @section Assets and Liabilities
@cindex assets and liabilities @cindex assets and liabilities
@cindex debts are liabilities @cindex debts are liabilities
Assets are money that you have, and Liabilities are money that you Assets are money that you have, and Liabilities are money that you
owe. ``Liabilities'' is just a more inclusive name for Debts. owe. ``Liabilities'' is just a more inclusive name for Debts.
@ -646,9 +656,10 @@ This assumes, of course, that you use account names like
@menu @menu
* Tracking reimbursable expenses:: * Tracking reimbursable expenses::
@end menu @end menu
@cindex reimbursable expense tracking
@node Tracking reimbursable expenses, , Assets and Liabilities, Assets and Liabilities @node Tracking reimbursable expenses, , Assets and Liabilities, Assets and Liabilities
@subsection Tracking reimbursable expenses @subsection Tracking reimbursable expenses
@cindex reimbursable expense tracking
Sometimes you will want to spend money on behalf of someone else, Sometimes you will want to spend money on behalf of someone else,
which will eventually get repaid. Since the money is still ``yours'', which will eventually get repaid. Since the money is still ``yours'',
@ -1306,7 +1317,6 @@ give an error and stop calculating.}
@node Starting up, Structuring Your Accounts, Most Basic Entry, Keeping a Journal @node Starting up, Structuring Your Accounts, Most Basic Entry, Keeping a Journal
@section Starting up @section Starting up
@cindex initial equity @cindex initial equity
@cindex beginning ledger @cindex beginning ledger
@ -1341,9 +1351,9 @@ work.
@node Structuring Your Accounts, Commenting on your journal, Starting up, Keeping a Journal @node Structuring Your Accounts, Commenting on your journal, Starting up, Keeping a Journal
@section Structuring your Accounts @section Structuring your Accounts
@cindex accounts, naming @cindex accounts, naming
@cindex naming accounts @cindex naming accounts
There really are no requirements for how you do this, but to preserve There really are no requirements for how you do this, but to preserve
your sanity we suggest some very basic structure to your accounting your sanity we suggest some very basic structure to your accounting
system. system.
@ -1376,6 +1386,7 @@ Expenses:Food:Hamburgers and Fries
@node Commenting on your journal, Currency and Commodities, Structuring Your Accounts, Keeping a Journal @node Commenting on your journal, Currency and Commodities, Structuring Your Accounts, Keeping a Journal
@section Commenting on your Journal @section Commenting on your Journal
@cindex comments, characters @cindex comments, characters
Comments are generally started using a ';'. However, in order to Comments are generally started using a ';'. However, in order to
increase compatibility with other text manipulation programs and methods increase compatibility with other text manipulation programs and methods
four additional comment characters are valid if used at the beginning four additional comment characters are valid if used at the beginning
@ -1419,9 +1430,9 @@ preserved as part of the transaction. The `:'s indicate meta-data and tags
@node Currency and Commodities, Keeping it Consistent, Commenting on your journal, Keeping a Journal @node Currency and Commodities, Keeping it Consistent, Commenting on your journal, Keeping a Journal
@section Currency and Commodities @section Currency and Commodities
@cindex currency @cindex currency
@cindex commodity @cindex commodity
Ledger is agnostic when it comes to how you value your accounts. Ledger is agnostic when it comes to how you value your accounts.
Dollars, Euros, Pounds, Francs, Shares etc. are just ``commodities''. Dollars, Euros, Pounds, Francs, Shares etc. are just ``commodities''.
Holdings in stocks, bonds, mutual funds and other financial instruments Holdings in stocks, bonds, mutual funds and other financial instruments
@ -1488,6 +1499,7 @@ since we haven't told ledger to convert commodities.
@node Naming Commodities, Buying and Selling Stock, Currency and Commodities, Currency and Commodities @node Naming Commodities, Buying and Selling Stock, Currency and Commodities, Currency and Commodities
@subsection Naming Commodities @subsection Naming Commodities
Commodity names can have any character, including white-space. However, Commodity names can have any character, including white-space. However,
if you include white-space or numeric characters the commodity name must if you include white-space or numeric characters the commodity name must
be enclosed in double quotes: be enclosed in double quotes:
@ -1539,6 +1551,7 @@ price/date and your taxation model is based on longest-held-first.
@subsection Fixing Lot Prices @subsection Fixing Lot Prices
@cindex fixing lot prices @cindex fixing lot prices
@cindex consumable commodity pricing @cindex consumable commodity pricing
Commodities that you keep in order to sell them at a later time have a Commodities that you keep in order to sell them at a later time have a
variable value that fluctuates with the market prices. Commodities that variable value that fluctuates with the market prices. Commodities that
you consume should not fluctuate in value, but stay at the lot price you consume should not fluctuate in value, but stay at the lot price
@ -1776,6 +1789,7 @@ them. They are summarized below.
@node Transaction and Comments, Command Directives, Journal Format, Journal Format @node Transaction and Comments, Command Directives, Journal Format, Journal Format
@subsection Transactions and Comments @subsection Transactions and Comments
The initial character of each line determines what the line means, and The initial character of each line determines what the line means, and
how it should be interpreted. Allowable initial characters are: how it should be interpreted. Allowable initial characters are:
@ -2252,6 +2266,7 @@ syntax of its timelog files.
@node Converting from other formats, Archiving Previous Years, Journal Format, Keeping a Journal @node Converting from other formats, Archiving Previous Years, Journal Format, Keeping a Journal
@section Converting from other formats @section Converting from other formats
There are numerous tools to help convert various formats to a Ledger There are numerous tools to help convert various formats to a Ledger
file. Most banks will generate a commas separated value file that can file. Most banks will generate a commas separated value file that can
easily be parsed into Ledger format using one of those tools. Some of the more popular tools are: easily be parsed into Ledger format using one of those tools. Some of the more popular tools are:
@ -2325,6 +2340,7 @@ doing it.
@node Transactions, Building Reports, Keeping a Journal, Top @node Transactions, Building Reports, Keeping a Journal, Top
@chapter Transactions @chapter Transactions
@menu @menu
* Basic format:: * Basic format::
* Eliding amounts:: * Eliding amounts::
@ -2353,7 +2369,6 @@ doing it.
@node Basic format, Eliding amounts, Transactions, Transactions @node Basic format, Eliding amounts, Transactions, Transactions
@section Basic format @section Basic format
The most basic form of transaction is: The most basic form of transaction is:
@smallexample @smallexample
@ -2668,6 +2683,7 @@ expression with parentheses:
@node Balance verification, Posting cost, Expression amounts, Transactions @node Balance verification, Posting cost, Expression amounts, Transactions
@section Balance verification @section Balance verification
@menu @menu
* Balance assertions:: * Balance assertions::
* Balance assignments:: * Balance assignments::
@ -3424,7 +3440,6 @@ See @ref{Budgeting and Forecasting} for examples and details.
@node Concrete Example of Automated Transactions, , Periodic Transactions, Automated Transactions @node Concrete Example of Automated Transactions, , Periodic Transactions, Automated Transactions
@subsection Concrete Example of Automated Transactions @subsection Concrete Example of Automated Transactions
As a Bahá'í, I need to compute Huqúqu'lláh whenever I acquire assets. As a Bahá'í, I need to compute Huqúqu'lláh whenever I acquire assets.
It is similar to tithing for Jews and Christians, or to Zakát for It is similar to tithing for Jews and Christians, or to Zakát for
Muslims. The exact details of computing Huqúqu'lláh are somewhat Muslims. The exact details of computing Huqúqu'lláh are somewhat
@ -3513,6 +3528,7 @@ which may be excluded from reports by using @option{--real}.
@node Introduction, Balance Reports, Building Reports, Building Reports @node Introduction, Balance Reports, Building Reports, Building Reports
@section Introduction @section Introduction
The power of Ledger comes from the incredible flexibility in its The power of Ledger comes from the incredible flexibility in its
reporting commands, combined with formatting commands. Some options reporting commands, combined with formatting commands. Some options
control what is included in the calculations, and formatting controls control what is included in the calculations, and formatting controls
@ -3523,6 +3539,7 @@ options.
@node Balance Reports, Typical queries, Introduction, Building Reports @node Balance Reports, Typical queries, Introduction, Building Reports
@section Balance Reports @section Balance Reports
@menu @menu
* Controlling the Accounts and Payees:: * Controlling the Accounts and Payees::
* Controlling formatting:: * Controlling formatting::
@ -3617,9 +3634,11 @@ ledger -s bal Expenses and not \(Expenses:Drinks or Expenses:Candy or Expenses:G
@node Controlling formatting, , Controlling the Accounts and Payees, Balance Reports @node Controlling formatting, , Controlling the Accounts and Payees, Balance Reports
@subsection Controlling Formatting @subsection Controlling Formatting
These examples all use the default formatting for the balance These examples all use the default formatting for the balance
report. Customizing the formatting can easily allowing to see only what report. Customizing the formatting can easily allowing to see only what
you want, or interface Ledger with other programs. you want, or interface Ledger with other programs.
@node Typical queries, Advanced Reports, Balance Reports, Building Reports @node Typical queries, Advanced Reports, Balance Reports, Building Reports
@section Typical queries @section Typical queries
@ -3682,7 +3701,6 @@ subtotaled by the month. The running total in both cases is off,
however, since a display expression is being used. however, since a display expression is being used.
@node Advanced Reports, , Typical queries, Building Reports @node Advanced Reports, , Typical queries, Building Reports
@section Advanced Reports @section Advanced Reports
@ -3693,6 +3711,7 @@ however, since a display expression is being used.
@node Asset Allocation, Visualizing with Gnuplot, Advanced Reports, Advanced Reports @node Asset Allocation, Visualizing with Gnuplot, Advanced Reports, Advanced Reports
@subsection Asset Allocation @subsection Asset Allocation
A very popular method of managing portfolios is to control the A very popular method of managing portfolios is to control the
percent allocation of assets by certain categories. The mix of percent allocation of assets by certain categories. The mix of
categories and the weights applied to them vary by investing categories and the weights applied to them vary by investing
@ -3803,11 +3822,12 @@ ratio as a percentage. The fourth line tells ledger to display the
current market value of the line. The last two characters ``%/'' current market value of the line. The last two characters ``%/''
tell Ledger what to do for the last line, in this case, nothing. tell Ledger what to do for the last line, in this case, nothing.
@cindex plotting
@cindex Gnuplot
@node Visualizing with Gnuplot, , Asset Allocation, Advanced Reports @node Visualizing with Gnuplot, , Asset Allocation, Advanced Reports
@subsection Visualizing with Gnuplot @subsection Visualizing with Gnuplot
@cindex Gnuplot script @cindex Gnuplot script
@cindex plotting
@cindex Gnuplot
If you have @command{Gnuplot} installed, you can graph any of the above If you have @command{Gnuplot} installed, you can graph any of the above
register reports. The script to do this is included in the ledger register reports. The script to do this is included in the ledger
distribution, and is named @file{contrib/report}. Install @file{report} distribution, and is named @file{contrib/report}. Install @file{report}
@ -3859,6 +3879,7 @@ of the balance.
@node Reporting Commands, Command-line Syntax, Building Reports, Top @node Reporting Commands, Command-line Syntax, Building Reports, Top
@chapter Reporting Commands @chapter Reporting Commands
@menu @menu
* Primary Financial Reports:: Reports in other formats:: Reports about * Primary Financial Reports:: Reports in other formats:: Reports about
* Reports in other Formats:: * Reports in other Formats::
@ -3883,6 +3904,7 @@ accounts. It accepts a list of optional regexps, which confine the
balance report to the matching accounts. If an account contains balance report to the matching accounts. If an account contains
multiple types of commodities, each commodity's total is reported multiple types of commodities, each commodity's total is reported
separately. separately.
@node The equity Command, The register Command, The balance Command, Primary Financial Reports @node The equity Command, The register Command, The balance Command, Primary Financial Reports
@subsection The @code{equity} Command @subsection The @code{equity} Command
@ -3926,6 +3948,7 @@ file whose formatting has gotten out of hand.
@node Reports in other Formats, Reports about your Journals, Primary Financial Reports, Reporting Commands @node Reports in other Formats, Reports about your Journals, Primary Financial Reports, Reporting Commands
@section Reports in other Formats @section Reports in other Formats
@menu @menu
* Comma Separated Variable files:: * Comma Separated Variable files::
* The lisp command:: * The lisp command::
@ -3937,6 +3960,7 @@ file whose formatting has gotten out of hand.
@node Comma Separated Variable files, The lisp command, Reports in other Formats, Reports in other Formats @node Comma Separated Variable files, The lisp command, Reports in other Formats, Reports in other Formats
@subsection Comma Separated Variable files @subsection Comma Separated Variable files
@menu @menu
* The csv command:: * The csv command::
* The convert command:: * The convert command::
@ -3944,15 +3968,18 @@ file whose formatting has gotten out of hand.
@node The csv command, The convert command, Comma Separated Variable files, Comma Separated Variable files @node The csv command, The convert command, Comma Separated Variable files, Comma Separated Variable files
@subsubsection The @code{csv} command @subsubsection The @code{csv} command
The @command{csv} command will output print out the desired ledger transactions in The @command{csv} command will output print out the desired ledger transactions in
a csv format suitable for import into other programs. You can specify a csv format suitable for import into other programs. You can specify
the transactions to print using all the normal limiting and searching the transactions to print using all the normal limiting and searching
functions. functions.
@node The convert command, , The csv command, Comma Separated Variable files
@subsubsection The @code{convert} command
@cindex csv conversion @cindex csv conversion
@cindex reading csv @cindex reading csv
@cindex comma separated variable file reading @cindex comma separated variable file reading
@node The convert command, , The csv command, Comma Separated Variable files
@subsubsection The @code{convert} command
The @code{convert} command parses a comma separated value The @code{convert} command parses a comma separated value
(csv) file and outputs Ledger transactions. Many banks offer csv file (csv) file and outputs Ledger transactions. Many banks offer csv file
downloads. Unfortunately, the file formats, aside the from commas, are downloads. Unfortunately, the file formats, aside the from commas, are
@ -4059,6 +4086,7 @@ directly by Emacs Lisp. The format of the @code{sexp} is:
@node Emacs Org mode, The pricemap Command, The lisp command, Reports in other Formats @node Emacs Org mode, The pricemap Command, The lisp command, Reports in other Formats
@subsection Emacs @code{org} Mode @subsection Emacs @code{org} Mode
The @code{org} command produces a journal file suitable for use in the The @code{org} command produces a journal file suitable for use in the
Emacs Org mode. More details on using Org mode can be found at Emacs Org mode. More details on using Org mode can be found at
@url{http://www.orgmode.org}. @url{http://www.orgmode.org}.
@ -4221,6 +4249,7 @@ of transactions together to generate reports.
Using the same transactions used above, we could consider splitting Using the same transactions used above, we could consider splitting
these into expenses and income, as follows: these into expenses and income, as follows:
@subsubheading Income Entries @subsubheading Income Entries
The first set of entries relates to income, either monthly pay or The first set of entries relates to income, either monthly pay or
@ -4248,6 +4277,7 @@ have the :noweb yes babel header argument specified.
income:salary income:salary
#+end_src #+end_src
@end smallexample @end smallexample
@subsubheading Expenses @subsubheading Expenses
The following entries relate to personal expenses, such as rent and The following entries relate to personal expenses, such as rent and
@ -4273,6 +4303,7 @@ blocks, we can now refer to these using the noweb expansion directives,
reports for those transactions. Below are two examples, one to generate reports for those transactions. Below are two examples, one to generate
a balance report and one to generate a register report of all a balance report and one to generate a register report of all
transactions. transactions.
@subsubheading An overall balance summary @subsubheading An overall balance summary
The overall balance of your account and expenditure with a breakdown The overall balance of your account and expenditure with a breakdown
@ -4315,6 +4346,7 @@ tell Ledger to include sub-accounts in the report.
: £-2000.00 salary : £-2000.00 salary
: £-1300.00 starting balances : £-1300.00 starting balances
@end smallexample @end smallexample
@subsubheading Generating a monthly register @subsubheading Generating a monthly register
You can also generate a monthly register (the reg command) by executing You can also generate a monthly register (the reg command) by executing
@ -5007,6 +5039,7 @@ will issue a warning giving you the file and line number of the problem.
@node Report Options, Report Filtering, Session Options, Detailed Options Description @node Report Options, Report Filtering, Session Options, Detailed Options Description
@subsection Report Options @subsection Report Options
Options for Ledger report affect three separate scopes of operation: Options for Ledger report affect three separate scopes of operation:
Global, Session, and Report. In practice there is very little Global, Session, and Report. In practice there is very little
difference between these scopes. Ledger 3.0 contains provisions for difference between these scopes. Ledger 3.0 contains provisions for
@ -6240,6 +6273,7 @@ relative to the date that amount was encountered.
You can also now use @code{-X} (and @code{-H}) in conjunction with You can also now use @code{-X} (and @code{-H}) in conjunction with
@code{-B} and @code{-I}, to see valuation reports of just your basis @code{-B} and @code{-I}, to see valuation reports of just your basis
costs or lot prices. costs or lot prices.
@node Environment Variables, , Commodity Reporting, Detailed Options Description @node Environment Variables, , Commodity Reporting, Detailed Options Description
@subsection Environment variables @subsection Environment variables
@ -6812,6 +6846,7 @@ Useful specifying a date in plain terms. For example, you could say
@node Basics, Format String Structure, Format Strings, Format Strings @node Basics, Format String Structure, Format Strings, Format Strings
@section Format String Basics @section Format String Basics
Format strings may be used to change the output format of reports. They Format strings may be used to change the output format of reports. They
are specified by passing a formatting string to the @code{--format} are specified by passing a formatting string to the @code{--format}
(@code{-F}) option. Within that string, constructs are allowed which (@code{-F}) option. Within that string, constructs are allowed which
@ -6837,6 +6872,7 @@ having to enter a new format for each command.
@node Format String Structure, Format Expressions, Basics, Format Strings @node Format String Structure, Format Expressions, Basics, Format Strings
@section Format String Structure @section Format String Structure
Within a format string, a substitution is specified using a percent Within a format string, a substitution is specified using a percent
character (@code{%}). The basic format of all substitutions is: character (@code{%}). The basic format of all substitutions is:
@ -6996,6 +7032,7 @@ balance format looks like this (the various functions are described later):
@node Field Widths, Colors, Formatting codes, Formatting codes @node Field Widths, Colors, Formatting codes, Formatting codes
@subsection Field Widths @subsection Field Widths
The following codes return the width allocated for the specific fields. The following codes return the width allocated for the specific fields.
The defaults can be changed using the corresponding command line The defaults can be changed using the corresponding command line
options: options:
@ -7053,6 +7090,7 @@ terminal character colors and font highlights in a normal TTY session.
@node Dates, Date and Time Format Codes, Quantities and Calculations, Formatting codes @node Dates, Date and Time Format Codes, Quantities and Calculations, Formatting codes
@subsection Date Functions @subsection Date Functions
The following functions allow you to manipulate and format dates. The following functions allow you to manipulate and format dates.
@table @code @table @code
@ -7079,10 +7117,13 @@ Convert a string to date value
@node Date and Time Format Codes, Text Formatting, Dates, Formatting codes @node Date and Time Format Codes, Text Formatting, Dates, Formatting codes
@subsection Date and Time Format Codes @subsection Date and Time Format Codes
Date and time format are specified as strings of single letter codes Date and time format are specified as strings of single letter codes
preceded by percent signs. Any separator, or no separator can be preceded by percent signs. Any separator, or no separator can be
specified. specified.
@subsubsection Days @subsubsection Days
Dates are formed from a combination of day, month and year codes, in Dates are formed from a combination of day, month and year codes, in
whatever order you prefer: whatever order you prefer:
@ -7160,6 +7201,7 @@ Locales full month, variable length February
@end table @end table
@subsubsection Miscellaneous Date Codes @subsubsection Miscellaneous Date Codes
Additional date format parameters which can be used: Additional date format parameters which can be used:
@table @code @table @code
@ -7187,6 +7229,7 @@ yields @code{%Y-%m-%d 2010-02-10}
@node Text Formatting, Data File Parsing Information, Date and Time Format Codes, Formatting codes @node Text Formatting, Data File Parsing Information, Date and Time Format Codes, Formatting codes
@subsection Text Formatting @subsection Text Formatting
The following format functions allow you limited formatting of text: The following format functions allow you limited formatting of text:
@table @code @table @code
@ -7235,6 +7278,7 @@ line number in @code{filename} where posting's entry for posting ends, abbreviat
@node Extending with Python, Ledger for Developers, Format Strings, Top @node Extending with Python, Ledger for Developers, Format Strings, Top
@chapter Extending with Python @chapter Extending with Python
Python can be used to extend your Ledger Python can be used to extend your Ledger
experience. But first, a word must be said about Ledger's data model, so that experience. But first, a word must be said about Ledger's data model, so that
other things make sense later. other things make sense later.
@ -7403,6 +7447,7 @@ need to create sums of multiple commodities, use a Balance. For example:
@node Internal Design, Journal File Format, Ledger for Developers, Ledger for Developers @node Internal Design, Journal File Format, Ledger for Developers, Ledger for Developers
@section Internal Design @section Internal Design
Ledger is developed as a tiered set of functionality, where lower tiers Ledger is developed as a tiered set of functionality, where lower tiers
know nothing about the higher tiers. In fact, multiple libraries are know nothing about the higher tiers. In fact, multiple libraries are
built during the development the process, and link unit tests to these built during the development the process, and link unit tests to these
@ -7691,6 +7736,7 @@ of a line: @code{#}, @code{|}, and @code{*}.
@node Specifying Amounts, Posting costs, Comments and meta-data, Journal File Format @node Specifying Amounts, Posting costs, Comments and meta-data, Journal File Format
@subsection Specifying Amounts @subsection Specifying Amounts
@cindex amounts @cindex amounts
The heart of a journal is the amounts it records, and this fact is The heart of a journal is the amounts it records, and this fact is
reflected in the diversity of amount expressions allowed. All of them reflected in the diversity of amount expressions allowed. All of them
are covered here, though it must be said that sometimes, there are are covered here, though it must be said that sometimes, there are
@ -7893,6 +7939,7 @@ commodities.
@node Developer Commands, Ledger Development Environment, Journal File Format, Ledger for Developers @node Developer Commands, Ledger Development Environment, Journal File Format, Ledger for Developers
@section Developer Commands @section Developer Commands
@menu @menu
* echo:: * echo::
* reload:: * reload::
@ -7903,17 +7950,20 @@ commodities.
@node echo, reload, Developer Commands, Developer Commands @node echo, reload, Developer Commands, Developer Commands
@subsection @command{echo} @subsection @command{echo}
This command simply echoes its argument back to the output. This command simply echoes its argument back to the output.
@node reload, source, echo, Developer Commands @node reload, source, echo, Developer Commands
@subsection @command{reload} @subsection @command{reload}
Forces ledger to reload any journal files. This function exists to Forces ledger to reload any journal files. This function exists to
support external programs controlling a running ledger process and does support external programs controlling a running ledger process and does
nothing for a command line user. nothing for a command line user.
@node source, Debug Options, reload, Developer Commands @node source, Debug Options, reload, Developer Commands
@subsection @command{source} @subsection @command{source}
The @code{source} command take a journal file as an argument and parses The @code{source} command take a journal file as an argument and parses
it checking for errors, no other reports are generated, and no other it checking for errors, no other reports are generated, and no other
arguments are necessary. Ledger will return success if no errors are arguments are necessary. Ledger will return success if no errors are
@ -7993,6 +8043,7 @@ Print version information and exit.
@node Pre-commands, , Debug Options, Developer Commands @node Pre-commands, , Debug Options, Developer Commands
@subsection Pre-Commands @subsection Pre-Commands
Pre-commands are useful when you aren't sure how a command or option Pre-commands are useful when you aren't sure how a command or option
will work. will work.
@ -8100,6 +8151,7 @@ This is a debugging command.
@node Testing Framework, , acprep build configuration tool, Ledger Development Environment @node Testing Framework, , acprep build configuration tool, Ledger Development Environment
@subsection Testing Framework @subsection Testing Framework
Ledger source ships with a fairly complete set of tests to verify that Ledger source ships with a fairly complete set of tests to verify that
all is well, and no old errors have been resurfaced. Tests are run all is well, and no old errors have been resurfaced. Tests are run
individually with @code{ctest}. All tests can be run using @code{make individually with @code{ctest}. All tests can be run using @code{make
@ -8146,9 +8198,11 @@ issue @code{ctest -V -R "5FB"}.
@node Example Data File, Miscellaneous Notes, Major Changes from version 2.6, Top @node Example Data File, Miscellaneous Notes, Major Changes from version 2.6, Top
@appendix Example Journal File: drewr.dat @appendix Example Journal File: drewr.dat
The following journal file is included with the source distribution of The following journal file is included with the source distribution of
ledger. It is called @file{drewr.dat} and exhibits many ledger ledger. It is called @file{drewr.dat} and exhibits many ledger
features, include automatic and virtual transactions, features, include automatic and virtual transactions,
@smallexample @smallexample
; -*- ledger -*- ; -*- ledger -*-
@ -8238,6 +8292,7 @@ ledger cleared VWCU NFCU Tithe Misentry
ledger register Joint --uncleared ledger register Joint --uncleared
ledger register Checking --sort d -d 'd>[2011/04/01]' until 2011/05/25 ledger register Checking --sort d -d 'd>[2011/04/01]' until 2011/05/25
@end smallexample @end smallexample
@subsection Ledger Files @subsection Ledger Files
@smallexample @smallexample