$archiver
NSKeyedArchiver
$objects
$null
$class
CF$UID
37
NS.objects
CF$UID
2
$class
CF$UID
33
NS.keys
CF$UID
3
CF$UID
4
CF$UID
5
NS.objects
CF$UID
6
CF$UID
7
CF$UID
35
Title
Text
Date
Untitled Snapshot
$class
CF$UID
34
NSAttributes
CF$UID
10
NSDelegate
CF$UID
0
NSString
CF$UID
8
$class
CF$UID
9
NS.string
While the @command{balance} command can be very handy for checking account totals, by far the most powerful of Ledger's reporting tools is the @command{register} command. In fact, internally both commands use the same logic, but report the results differently: @command{balance} shows the summary totals, while @command{register} reports each posting and how it contributes to that total.

Paradoxically, the most basic form of @command{register} is almost never used, since it displays every posting:

@example ledger reg @end example

@command{reg} is a short-hand for @command{register}. This command reports:

@smallexample 2004/05/01 Checking balance Assets:Bank:Checking $1,000.00 $1,000.00 Equity:Opening Balan.. $-1,000.00 0 2004/05/01 Investment balance Assets:Brokerage 50 AAPL 50 AAPL Equity:Opening Balan.. $-1,500.00 $-1,500.00 50 AAPL 2004/05/14 Pay day Assets:Bank:Checking $500.00 $-1,000.00 50 AAPL Income:Salary $-500.00 $-1,500.00 50 AAPL 2004/05/27 Book Store Expenses:Books $20.00 $-1,480.00 50 AAPL Liabilities:MasterCard $-20.00 $-1,500.00 50 AAPL (Liabilities:Taxes) $-2.00 $-1,502.00 50 AAPL 2004/05/27 Credit card company Liabilities:MasterCard $20.00 $-1,482.00 50 AAPL Assets:Bank:Checking $-20.00 $-1,502.00 50 AAPL @end smallexample

This rather verbose output shows every account posting in @file{sample.dat}, and how it affects the running total. The final total is identical to what we saw with the plain @command{balance} command. To see how things really balance, we can use @samp{--real -B}, just as we did with @command{balance}:

@example ledger --real -B reg @end example

Reports:

@smallexample 2004/05/01 Checking balance Assets:Bank:Checking $1,000.00 $1,000.00 Equity:Opening Balan.. $-1,000.00 0 2004/05/01 Investment balance Assets:Brokerage $1,500.00 $1,500.00 Equity:Opening Balan.. $-1,500.00 0 2004/05/14 Pay day Assets:Bank:Checking $500.00 $500.00 Income:Salary $-500.00 0 2004/05/27 Book Store Expenses:Books $20.00 $20.00 Liabilities:MasterCard $-20.00 0 2004/05/27 Credit card company Liabilities:MasterCard $20.00 $20.00 Assets:Bank:Checking $-20.00 0 @end smallexample

Here we see that everything balances to zero in the end, as it must.
$classes
NSMutableString
NSString
NSObject
$classname
NSMutableString
$class
CF$UID
33
NS.keys
CF$UID
11
CF$UID
12
NS.objects
CF$UID
13
CF$UID
30
NSParagraphStyle
NSFont
$class
CF$UID
29
NSAlignment
4
NSLineHeightMultiple
1.1000000238418579
NSTabStops
CF$UID
14
$class
CF$UID
28
NS.objects
CF$UID
15
CF$UID
17
CF$UID
18
CF$UID
19
CF$UID
20
CF$UID
21
CF$UID
22
CF$UID
23
CF$UID
24
CF$UID
25
CF$UID
26
CF$UID
27
$class
CF$UID
16
NSLocation
28
$classes
NSTextTab
NSObject
$classname
NSTextTab
$class
CF$UID
16
NSLocation
56
$class
CF$UID
16
NSLocation
84
$class
CF$UID
16
NSLocation
112
$class
CF$UID
16
NSLocation
140
$class
CF$UID
16
NSLocation
168
$class
CF$UID
16
NSLocation
196
$class
CF$UID
16
NSLocation
224
$class
CF$UID
16
NSLocation
252
$class
CF$UID
16
NSLocation
280
$class
CF$UID
16
NSLocation
308
$class
CF$UID
16
NSLocation
336
$classes
NSArray
NSObject
$classname
NSArray
$classes
NSParagraphStyle
NSObject
$classname
NSParagraphStyle
$class
CF$UID
32
NSName
CF$UID
31
NSSize
14
NSfFlags
16
Courier
$classes
NSFont
NSObject
$classname
NSFont
$classes
NSDictionary
NSObject
$classname
NSDictionary
$classes
KBWordCountingTextStorage
NSTextStorage
NSMutableAttributedString
NSAttributedString
NSObject
$classname
KBWordCountingTextStorage
$class
CF$UID
36
NS.time
267380388.99077201
$classes
NSDate
NSObject
$classname
NSDate
$classes
NSMutableArray
NSArray
NSObject
$classname
NSMutableArray
$top
Snapshots
CF$UID
1
$version
100000