parent
							
								
									fb817ffa55
								
							
						
					
					
						commit
						7ba9a4d06b
					
				| @ -2053,13 +2053,13 @@ Scientific E notation is allowed: | |||||||
| 
 | 
 | ||||||
| ### Decimal marks, digit group marks | ### Decimal marks, digit group marks | ||||||
| 
 | 
 | ||||||
| A decimal mark can be written as a period or a comma: | A *decimal mark* can be written as a period or a comma: | ||||||
| 
 | 
 | ||||||
|     1.23 |     1.23 | ||||||
|     1,23456780000009 |     1,23456780000009 | ||||||
| 
 | 
 | ||||||
| In the integer part of the quantity (left of the decimal mark), groups | In the integer part of the quantity (left of the decimal mark), groups | ||||||
| of digits can optionally be separated by a "digit group mark" - a | of digits can optionally be separated by a *digit group mark* - a | ||||||
| space, comma, or period (different from the decimal mark): | space, comma, or period (different from the decimal mark): | ||||||
| 
 | 
 | ||||||
|          $1,000,000.00 |          $1,000,000.00 | ||||||
| @ -2075,11 +2075,14 @@ Are these digit group marks or decimal marks ? | |||||||
| 
 | 
 | ||||||
| If you don't tell it otherwise, hledger will assume both of the above are decimal marks, | If you don't tell it otherwise, hledger will assume both of the above are decimal marks, | ||||||
| parsing both numbers as 1. | parsing both numbers as 1. | ||||||
| To prevent confusion and undetected typos,  | 
 | ||||||
| <!-- especially if your data contains digit group marks, --> | To prevent confusing parsing mistakes and undetected typos,  | ||||||
| we recommend adding `commodity` directives at the top of your journal | especially if your data contains digit group marks (eg, thousands separators), | ||||||
| file to explicitly declare the decimal mark (and optionally a digit | we recommend explicitly declaring the decimal mark character in each journal file, | ||||||
| group mark) for each commodity. Read on for more about this. | using a directive at the top of the file. | ||||||
|  | The [`decimal-mark`](#declaring-the-decimal-mark) directive is best, | ||||||
|  | otherwise [`commodity`](#declaring-commodities) directives will also work. | ||||||
|  | These are described detail below. | ||||||
| 
 | 
 | ||||||
| ### Commodity | ### Commodity | ||||||
| 
 | 
 | ||||||
| @ -2104,16 +2107,18 @@ output; you can't write them directly in the journal file. | |||||||
| (If you are writing scripts or working with hledger's internals, these | (If you are writing scripts or working with hledger's internals, these | ||||||
| are the `Amount` and `MixedAmount` types.) | are the `Amount` and `MixedAmount` types.) | ||||||
| 
 | 
 | ||||||
| ### Commodity directives | ### Directives influencing number parsing and display | ||||||
| 
 | 
 | ||||||
| You can add `commodity` directives to the journal, preferably at the | You can add `decimal-mark` and `commodity` directives to the journal, | ||||||
| top, to declare your commodities and help with number parsing (see | to declare and control these things more explicitly and precisely. | ||||||
| above) and display (see below). These are optional, but recommended. | These are described below, in JOURNAL FORMAT -> [Declaring | ||||||
| They are described in more detail in JOURNAL FORMAT -> [Declaring |  | ||||||
| commodities](#declaring-commodities). Here's a quick example: | commodities](#declaring-commodities). Here's a quick example: | ||||||
| 
 | 
 | ||||||
| ```journal | ```journal | ||||||
| # number format and display style for $, EUR, INR and the no-symbol commodity: | # the decimal mark character used by all amounts in this file (all commodities) | ||||||
|  | decimal-mark . | ||||||
|  | 
 | ||||||
|  | # display styles for the $, EUR, INR and no-symbol commodities: | ||||||
| commodity $1,000.00 | commodity $1,000.00 | ||||||
| commodity EUR 1.000,00 | commodity EUR 1.000,00 | ||||||
| commodity INR 9,99,99,999.00 | commodity INR 9,99,99,999.00 | ||||||
| @ -2480,6 +2485,7 @@ so here is a table summarising the directives and their effects, with links to m | |||||||
| | [`apply account`] | `end apply account` |                 | prepend a common parent to account names                           | following entries until end of current file or end directive | | [`apply account`] | `end apply account` |                 | prepend a common parent to account names                           | following entries until end of current file or end directive | ||||||
| | [`comment`]       | `end comment`       |                 | ignore part of journal                                             | following entries until end of current file or end directive | | [`comment`]       | `end comment`       |                 | ignore part of journal                                             | following entries until end of current file or end directive | ||||||
| | [`commodity`]     |                     | `format`        | declare a commodity and its number notation & display style        | number notation: following entries until end of current file; <br>display style: amounts of that commodity in reports | | [`commodity`]     |                     | `format`        | declare a commodity and its number notation & display style        | number notation: following entries until end of current file; <br>display style: amounts of that commodity in reports | ||||||
|  | | [`decimal-mark`]  |                     |                 | declare the decimal mark character for parsing this file           | following entries until next decimal-mark or end of current file; included files can override | ||||||
| | [`D`]             |                     |                 | declare a commodity to be used for commodityless amounts, and its number notation & display style  | default commodity: following commodityless entries until end of current file; <br>number notation: following entries in that commodity until end of current file; <br>display style: amounts of that commodity in reports | | [`D`]             |                     |                 | declare a commodity to be used for commodityless amounts, and its number notation & display style  | default commodity: following commodityless entries until end of current file; <br>number notation: following entries in that commodity until end of current file; <br>display style: amounts of that commodity in reports | ||||||
| | [`include`]       |                     |                 | include entries/directives from another file                       | what the included directives affect | | [`include`]       |                     |                 | include entries/directives from another file                       | what the included directives affect | ||||||
| | [`payee`]         |                     |                 | declare a payee name                                               | following entries until end of current file | | [`payee`]         |                     |                 | declare a payee name                                               | following entries until end of current file | ||||||
| @ -2606,6 +2612,23 @@ Eg: | |||||||
| payee Whole Foods | payee Whole Foods | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
|  | ## Declaring the decimal mark | ||||||
|  | 
 | ||||||
|  | You can use a `decimal-mark` directive - usually one per file, at the | ||||||
|  | top of the file - to declare which character represents a decimal mark | ||||||
|  | when parsing amounts in this file. It can look like | ||||||
|  | ```journal | ||||||
|  | decimal-mark . | ||||||
|  | ``` | ||||||
|  | or | ||||||
|  | ```journal | ||||||
|  | decimal-mark , | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | This prevents any [ambiguity](#decimal-marks-digit-group-marks) when | ||||||
|  | parsing numbers in the file, so we recommend it, especially if the | ||||||
|  | file contains digit group marks (eg thousands separators). | ||||||
|  | 
 | ||||||
| ## Declaring commodities | ## Declaring commodities | ||||||
| 
 | 
 | ||||||
| You can use `commodity` directives to declare your commodities. | You can use `commodity` directives to declare your commodities. | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user