|
| 1 | +<!DOCTYPE html> |
| 2 | +<html lang="en"> |
| 3 | +<head> |
| 4 | + <meta charset="UTF-8"> |
| 5 | + <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| 6 | + <title>Document</title> |
| 7 | +<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" integrity="sha384-JcKb8q3iqJ61gNV9KGb8thSsNjpSL0n8PARn9HuZOnIxN0hoP+VmmDGMN5t9UJ0Z" crossorigin="anonymous"> |
| 8 | +<link rel="stylesheet" href="./prism.css"> |
| 9 | +<script async defer src="./prism.js"></script> |
| 10 | +</head> |
| 11 | +<body>; |
| 12 | +<h3 id="basic-usage">Basic usage</h3> |
| 13 | +<div class="sourceCode" id="cb1"><pre class="sourceCode bash"><code class="sourceCode bash"><a class="sourceLine" id="cb1-1" title="1">$ <span class="ex">ledger</span> bal</a> |
| 14 | +<a class="sourceLine" id="cb1-2" title="2">$ <span class="ex">ledger</span> reg</a></code></pre></div> |
| 15 | +<div class="sourceCode" id="cb2"><pre class="sourceCode bash"><code class="sourceCode bash"><a class="sourceLine" id="cb2-1" title="1">$ <span class="ex">ledger</span> reg grocery <span class="co"># show entries for 'grocery'</span></a> |
| 16 | +<a class="sourceLine" id="cb2-2" title="2">$ <span class="ex">ledger</span> bal assets <span class="co"># check if i'm broke</span></a></code></pre></div> |
| 17 | +<div class="sourceCode" id="cb3"><pre class="sourceCode bash"><code class="sourceCode bash"><a class="sourceLine" id="cb3-1" title="1"> <span class="ex">-b</span> 01/01 <span class="co"># --begin</span></a> |
| 18 | +<a class="sourceLine" id="cb3-2" title="2"> <span class="ex">-e</span> 01/31 <span class="co"># --end</span></a> |
| 19 | +<a class="sourceLine" id="cb3-3" title="3"> <span class="ex">-S</span> date <span class="co"># --sort</span></a> |
| 20 | +<a class="sourceLine" id="cb3-4" title="4"> <span class="ex">-S</span> amount</a></code></pre></div> |
| 21 | +<h3 id="examples">Examples</h3> |
| 22 | +<div class="sourceCode" id="cb4"><pre class="sourceCode bash"><code class="sourceCode bash"><a class="sourceLine" id="cb4-1" title="1"><span class="co"># any/all matches</span></a> |
| 23 | +<a class="sourceLine" id="cb4-2" title="2"> <span class="ex">ledger</span> bal Rent Transportation <span class="co"># any</span></a> |
| 24 | +<a class="sourceLine" id="cb4-3" title="3"> <span class="ex">ledger</span> bal Income and Job <span class="co"># all</span></a> |
| 25 | +<a class="sourceLine" id="cb4-4" title="4"> <span class="ex">ledger</span> bal Expenses and not (Drinks or Food)</a></code></pre></div> |
| 26 | +<div class="sourceCode" id="cb5"><pre class="sourceCode bash"><code class="sourceCode bash"><a class="sourceLine" id="cb5-1" title="1"><span class="co"># what did I spend on most? (--sorted)</span></a> |
| 27 | +<a class="sourceLine" id="cb5-2" title="2"> <span class="ex">ledger</span> reg Expenses -S amount</a></code></pre></div> |
| 28 | +<div class="sourceCode" id="cb6"><pre class="sourceCode bash"><code class="sourceCode bash"><a class="sourceLine" id="cb6-1" title="1"><span class="co"># how much did I have at this date? (--end)</span></a> |
| 29 | +<a class="sourceLine" id="cb6-2" title="2"> <span class="ex">ledger</span> bal -e 01/15 ^Assets ^Liabilities</a></code></pre></div> |
| 30 | +<div class="sourceCode" id="cb7"><pre class="sourceCode bash"><code class="sourceCode bash"><a class="sourceLine" id="cb7-1" title="1"><span class="co"># how much did I spend and earn this month?</span></a> |
| 31 | +<a class="sourceLine" id="cb7-2" title="2"> <span class="ex">ledger</span> bal ^Expenses ^Income --invert</a></code></pre></div> |
| 32 | +<div class="sourceCode" id="cb8"><pre class="sourceCode bash"><code class="sourceCode bash"><a class="sourceLine" id="cb8-1" title="1"><span class="co"># how much was spent over the course of 3 days? (totalled)</span></a> |
| 33 | +<a class="sourceLine" id="cb8-2" title="2"> <span class="ex">ledger</span> reg -b 01/25 -e 01/27 --subtotal</a> |
| 34 | +<a class="sourceLine" id="cb8-3" title="3"> <span class="ex">ledger</span> reg -b 01/25 -e 01/27 --subtotal grocery</a></code></pre></div> |
| 35 | +<h2 id="format">Format</h2> |
| 36 | +<h3 id="basic-format">Basic format</h3> |
| 37 | +<pre><code>2013/01/03 * Rent for January |
| 38 | + Expenses:Rent $600.00 |
| 39 | + Assets:Savings</code></pre> |
| 40 | +<p><code>*</code> = cleared, <code>!</code> = pending</p> |
| 41 | +<h3 id="secondary-dates">Secondary dates</h3> |
| 42 | +<pre><code>2008/01/01=2008/01/14 Client invoice</code></pre> |
| 43 | +<p>It can mean anything you want, eg, for the estimated date you'll be paid.</p> |
| 44 | +<h3 id="balance-assertions">Balance assertions</h3> |
| 45 | +<pre><code>2008/01/01 * KFC |
| 46 | + Expenses:Food $20 |
| 47 | + Assets:Cash $-20 = $500</code></pre> |
| 48 | +<p>{: data-line=“3”}</p> |
| 49 | +<p><code>Cash $X = $500</code> ensures Cash is at $500 after the transaction.</p> |
| 50 | +<h3 id="balance-assignment">Balance assignment</h3> |
| 51 | +<div class="sourceCode" id="cb12"><pre class="sourceCode bash"><code class="sourceCode bash"><a class="sourceLine" id="cb12-1" title="1"><span class="ex">2008/01/01</span> * Cash balance</a> |
| 52 | +<a class="sourceLine" id="cb12-2" title="2"> <span class="ex">Assets</span>:Cash = <span class="va">$5</span>00</a> |
| 53 | +<a class="sourceLine" id="cb12-3" title="3"> <span class="ex">Equity</span>:Adjustments</a> |
| 54 | +<a class="sourceLine" id="cb12-4" title="4"></a> |
| 55 | +<a class="sourceLine" id="cb12-5" title="5"><span class="ex">2008/01/01</span> * KFC</a> |
| 56 | +<a class="sourceLine" id="cb12-6" title="6"> <span class="ex">Expenses</span>:Food <span class="va">$2</span>0</a> |
| 57 | +<a class="sourceLine" id="cb12-7" title="7"> <span class="ex">Assets</span>:Cash = <span class="va">$5</span>00</a></code></pre></div> |
| 58 | +<p>{: data-line=“2,7”}</p> |
| 59 | +<p><code>ACCOUNT = $500</code> figures out what's needed to make it $500.</p> |
| 60 | +<h3 id="payables">Payables</h3> |
| 61 | +<div class="sourceCode" id="cb13"><pre class="sourceCode bash"><code class="sourceCode bash"><a class="sourceLine" id="cb13-1" title="1"><span class="ex">2008/04/25</span> * Rent</a> |
| 62 | +<a class="sourceLine" id="cb13-2" title="2"> <span class="kw">(</span><span class="ex">Assets</span>:Checking<span class="kw">)</span> <span class="ex">-</span><span class="va">$2</span>00</a> |
| 63 | +<a class="sourceLine" id="cb13-3" title="3"> <span class="ex">Expenses</span>:Rent</a></code></pre></div> |
| 64 | +<p>{: data-line=“2”}</p> |
| 65 | +<h3 id="commodities">Commodities</h3> |
| 66 | +<div class="sourceCode" id="cb14"><pre class="sourceCode bash"><code class="sourceCode bash"><a class="sourceLine" id="cb14-1" title="1">; <span class="ex">cost</span> per item</a> |
| 67 | +<a class="sourceLine" id="cb14-2" title="2"><span class="ex">2010/05/31</span> * Market</a> |
| 68 | +<a class="sourceLine" id="cb14-3" title="3"> <span class="ex">Assets</span>:Fridge 35 apples @ <span class="va">$0</span>.42</a> |
| 69 | +<a class="sourceLine" id="cb14-4" title="4"> <span class="ex">Assets</span>:Cash</a></code></pre></div> |
| 70 | +<p>{: data-line=“3”}</p> |
| 71 | +<div class="sourceCode" id="cb15"><pre class="sourceCode bash"><code class="sourceCode bash"><a class="sourceLine" id="cb15-1" title="1">; <span class="ex">total</span> cost</a> |
| 72 | +<a class="sourceLine" id="cb15-2" title="2"><span class="ex">2010/05/31</span> * Market</a> |
| 73 | +<a class="sourceLine" id="cb15-3" title="3"> <span class="ex">Assets</span>:Fridge 35 apples @@ <span class="va">$1</span>4.70</a> |
| 74 | +<a class="sourceLine" id="cb15-4" title="4"> <span class="ex">Assets</span>:Cash</a></code></pre></div> |
| 75 | +<p>{: data-line=“3”}</p> |
| 76 | +<div class="sourceCode" id="cb16"><pre class="sourceCode bash"><code class="sourceCode bash"><a class="sourceLine" id="cb16-1" title="1">; <span class="ex">fixed</span> lot prices</a> |
| 77 | +<a class="sourceLine" id="cb16-2" title="2"><span class="ex">2010/05/31</span> * Gas</a> |
| 78 | +<a class="sourceLine" id="cb16-3" title="3"> <span class="ex">Expenses</span>:Gasoline 11 GAL <span class="dt">{=</span><span class="va">$2</span><span class="dt">.299}</span></a> |
| 79 | +<a class="sourceLine" id="cb16-4" title="4"> <span class="ex">Assets</span>:Cash</a></code></pre></div> |
| 80 | +<p>{: data-line=“3”}</p> |
| 81 | +<h3 id="commodity-definitions">Commodity definitions</h3> |
| 82 | +<pre><code>commodity $ |
| 83 | + note American Dollars |
| 84 | + format $1,000.00 |
| 85 | + nomarket |
| 86 | + default</code></pre> |
| 87 | +<h3 id="budgeting">Budgeting</h3> |
| 88 | +<pre><code>~ Monthly |
| 89 | + Expenses:Rent $500 |
| 90 | + Expenses:Food $100 |
| 91 | + Expenses $40 ; everything else |
| 92 | + Assets |
| 93 | + |
| 94 | +~ Yearly</code></pre> |
| 95 | +<div class="sourceCode" id="cb19"><pre class="sourceCode bash"><code class="sourceCode bash"><a class="sourceLine" id="cb19-1" title="1"><span class="ex">ledger</span> bal --budget Expenses</a> |
| 96 | +<a class="sourceLine" id="cb19-2" title="2"><span class="ex">ledger</span> bal --unbudgeted Expenses</a></code></pre></div> |
| 97 | +<p>{: .-setup}</p> |
| 98 | +<h3 id="comments">Comments</h3> |
| 99 | +<pre><code>; line comment |
| 100 | +# also line comment |
| 101 | +% also line comment |
| 102 | +| also line comment |
| 103 | +* also line comment</code></pre> |
| 104 | +<h2 id="querying">Querying</h2> |
| 105 | +<h3 id="periods">Periods</h3> |
| 106 | +<pre><code>[interval] [begin] [end]</code></pre> |
| 107 | +<pre><code>interval: |
| 108 | + every day|week|month|quarter|year |
| 109 | + every N days|weeks|... |
| 110 | + daily|weekly|...</code></pre> |
| 111 | +<pre><code>begin: |
| 112 | + from <spec> |
| 113 | +end: |
| 114 | + to <spec></code></pre> |
| 115 | +<pre><code>spec: |
| 116 | + 2004 |
| 117 | + 2004/10/1</code></pre> |
| 118 | +<div class="sourceCode" id="cb25"><pre class="sourceCode bash"><code class="sourceCode bash"><a class="sourceLine" id="cb25-1" title="1">$ <span class="ex">ledger</span> bal<span class="kw">|</span><span class="ex">reg</span> --period <span class="st">"until aug"</span></a> |
| 119 | +<a class="sourceLine" id="cb25-2" title="2">$ <span class="ex">ledger</span> bal<span class="kw">|</span><span class="ex">reg</span> --period <span class="st">"last oct"</span></a> |
| 120 | +<a class="sourceLine" id="cb25-3" title="3">$ <span class="ex">ledger</span> bal<span class="kw">|</span><span class="ex">reg</span> --period <span class="st">"every week"</span></a></code></pre></div> |
| 121 | +<p>{: .-setup}</p> |
| 122 | +<h3 id="register">Register</h3> |
| 123 | +<div class="sourceCode" id="cb26"><pre class="sourceCode bash"><code class="sourceCode bash"><a class="sourceLine" id="cb26-1" title="1">$ <span class="ex">ledger</span> reg</a></code></pre></div> |
| 124 | +<p>{: .-setup}</p> |
| 125 | +<div class="sourceCode" id="cb27"><pre class="sourceCode bash"><code class="sourceCode bash"><a class="sourceLine" id="cb27-1" title="1"> <span class="ex">-D</span>, --daily</a> |
| 126 | +<a class="sourceLine" id="cb27-2" title="2"> <span class="ex">-W</span>, --weekly</a> |
| 127 | +<a class="sourceLine" id="cb27-3" title="3"> <span class="ex">-M</span>, --monthly</a> |
| 128 | +<a class="sourceLine" id="cb27-4" title="4"> <span class="ex">--quarterly</span></a> |
| 129 | +<a class="sourceLine" id="cb27-5" title="5"> <span class="ex">-Y</span>, --yearly</a> |
| 130 | +<a class="sourceLine" id="cb27-6" title="6"> <span class="ex">-s</span>, --subtotal</a> |
| 131 | +<a class="sourceLine" id="cb27-7" title="7"> <span class="ex">--start-of-week</span> monday</a></code></pre></div> |
| 132 | +<div class="sourceCode" id="cb28"><pre class="sourceCode bash"><code class="sourceCode bash"><a class="sourceLine" id="cb28-1" title="1"> <span class="ex">-S</span>, --sort date</a> |
| 133 | +<a class="sourceLine" id="cb28-2" title="2"> <span class="ex">-S</span>, --sort amount</a></code></pre></div> |
| 134 | +<h3 id="filters">Filters</h3> |
| 135 | +<div class="sourceCode" id="cb29"><pre class="sourceCode bash"><code class="sourceCode bash"><a class="sourceLine" id="cb29-1" title="1"><span class="ex">-b</span>, --begin DATE</a> |
| 136 | +<a class="sourceLine" id="cb29-2" title="2"><span class="ex">-e</span>, --end DATE</a> |
| 137 | +<a class="sourceLine" id="cb29-3" title="3"></a> |
| 138 | +<a class="sourceLine" id="cb29-4" title="4"><span class="ex">-d</span> payee =~ /pioneer/</a> |
| 139 | +<a class="sourceLine" id="cb29-5" title="5"></a> |
| 140 | +<a class="sourceLine" id="cb29-6" title="6"><span class="ex">-C</span>, --cleared <span class="co"># (with *)</span></a> |
| 141 | +<a class="sourceLine" id="cb29-7" title="7"><span class="ex">-U</span>, --uncleared <span class="co"># (no *)</span></a> |
| 142 | +<a class="sourceLine" id="cb29-8" title="8"> <span class="ex">--pending</span> <span class="co"># (with !)</span></a> |
| 143 | +<a class="sourceLine" id="cb29-9" title="9"></a> |
| 144 | +<a class="sourceLine" id="cb29-10" title="10"><span class="ex">-R</span>, --real <span class="co"># ignore virtual postings (eg: "(Cash) $-400")</span></a> |
| 145 | +<a class="sourceLine" id="cb29-11" title="11"><span class="ex">-L</span>, --actual <span class="co"># no automated postings (eg: "= /^Income/")</span></a> |
| 146 | +<a class="sourceLine" id="cb29-12" title="12"></a> |
| 147 | +<a class="sourceLine" id="cb29-13" title="13"><span class="ex">-r</span>, --related <span class="co"># show the other side</span></a> |
| 148 | +<a class="sourceLine" id="cb29-14" title="14"> <span class="co"># "reg -r savings" shows where it comes from)</span></a></code></pre></div> |
| 149 | +<h3 id="queries">Queries</h3> |
| 150 | +<pre><code>^regex$ |
| 151 | +@payee |
| 152 | +%tag |
| 153 | +%tag=value |
| 154 | +=note |
| 155 | +#code |
| 156 | +term and term |
| 157 | +term or term |
| 158 | +not term |
| 159 | +\( term \)</code></pre> |
| 160 | +<p>Example:</p> |
| 161 | +<pre><code>ledger r ^expenses and @Denny's |
| 162 | +ledger r food and @Starbucks and not dining</code></pre> |
| 163 | +<h3 id="display">Display</h3> |
| 164 | +<div class="sourceCode" id="cb32"><pre class="sourceCode bash"><code class="sourceCode bash"><a class="sourceLine" id="cb32-1" title="1"><span class="ex">-n</span>, --collapse <span class="co"># [register] collapse entries</span></a> |
| 165 | +<a class="sourceLine" id="cb32-2" title="2"> <span class="co"># [balance] no grand total</span></a> |
| 166 | +<a class="sourceLine" id="cb32-3" title="3"><span class="ex">-s</span>, --subtotal <span class="co"># [balance] show sub-accounts</span></a> |
| 167 | +<a class="sourceLine" id="cb32-4" title="4"> <span class="co"># [other] show subtotals</span></a> |
| 168 | +<a class="sourceLine" id="cb32-5" title="5"><span class="ex">--flat</span></a></code></pre></div> |
| 169 | +<h3 id="effective-dates">Effective dates</h3> |
| 170 | +<div class="sourceCode" id="cb33"><pre class="sourceCode bash"><code class="sourceCode bash"><a class="sourceLine" id="cb33-1" title="1"><span class="ex">2008/01</span>/<span class="ex">01</span>=2008/01/14 Client invoice <span class="kw">;</span> <span class="ex">estimated</span> date you<span class="st">'ll be paid</span></a> |
| 171 | +<a class="sourceLine" id="cb33-2" title="2"><span class="st"> Assets:Accounts Receivable $100.00</span></a> |
| 172 | +<a class="sourceLine" id="cb33-3" title="3"><span class="st"> Income: Client name</span></a></code></pre></div> |
| 173 | +<p>{: data-line=“1”}</p> |
| 174 | +<p>Say you're in business. If you bill a customer, you can enter something like above. Then, when you receive the payment, you change it to:</p> |
| 175 | +<div class="sourceCode" id="cb34"><pre class="sourceCode bash"><code class="sourceCode bash"><a class="sourceLine" id="cb34-1" title="1"><span class="ex">2008/01</span>/<span class="ex">01</span>=2008/01/15 Client invoice <span class="kw">;</span> <span class="ex">actual</span> date money received</a> |
| 176 | +<a class="sourceLine" id="cb34-2" title="2"> <span class="ex">Assets</span>:Accounts Receivable <span class="va">$1</span>00.00</a> |
| 177 | +<a class="sourceLine" id="cb34-3" title="3"> <span class="ex">Income</span>: Client name</a></code></pre></div> |
| 178 | +<p>{: data-line=“1”}</p> |
| 179 | +<h2 id="references">References</h2> |
| 180 | +<p>{: .-one-column}</p> |
| 181 | +<ul> |
| 182 | +<li><a href="http://ledger-cli.org/3.0/doc/ledger3.html" class="uri">http://ledger-cli.org/3.0/doc/ledger3.html</a></li> |
| 183 | +<li><a href="https://gist.github.com/agaviria/3317397" class="uri">https://gist.github.com/agaviria/3317397</a> {: .-also-see}</li> |
| 184 | +</ul> |
| 185 | +</body></html> |
0 commit comments