* Add implicit tags code/desc/payee for --pivot Additionally allow using of transaction inherited tags. * Use original posting in query by account name To be able to query on individual postings and by account name it is useful to have access to original account name (before pivot). Especially this is useful when all postings within transaction gets the same pivot name due. As a side effect we'll match by alias. Note: to query on amt it usually expected to see matches with inferred amounts.
		
			
				
	
	
		
			137 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			137 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| # alias-related tests
 | |
| 
 | |
| # simple aliases
 | |
| 
 | |
| # simple alias directive
 | |
| hledger -f- accounts
 | |
| <<<
 | |
| alias checking = assets:bank:checking
 | |
| 1/1
 | |
|     (checking:a)  1
 | |
| >>>
 | |
| assets:bank:checking:a
 | |
| >>>=0
 | |
| 
 | |
| # simple alias matches whole account name components only
 | |
| hledger -f- accounts
 | |
| <<<
 | |
| alias a:b = A:B
 | |
| 1/1
 | |
|     (a:b:c)   1  ; should match this
 | |
| 1/1
 | |
|     (a:bb:d)  1  ; should not match this
 | |
| >>>
 | |
| A:B:c
 | |
| a:bb:d
 | |
| >>>=0
 | |
| 
 | |
| # a simple alias matching the whole account name works
 | |
| hledger -f- accounts
 | |
| <<<
 | |
| alias a:b = A:B
 | |
| 1/1
 | |
|     (a:b)   1
 | |
| >>>
 | |
| A:B
 | |
| >>>=0
 | |
| 
 | |
| # regular expression aliases
 | |
| 
 | |
| # regex alias directive
 | |
| hledger -f- accounts
 | |
| <<<
 | |
| alias /^(.+):bank:([^:]+):?(.*)/ = \1:\2 \3
 | |
| 1/1
 | |
|     (assets:bank:B:checking:a)  1
 | |
| >>>
 | |
| assets:B checking:a
 | |
| >>>=0
 | |
| 
 | |
| # regex alias pattern is a case-insensitive regular expression
 | |
| # matching anywhere in the account name. All matching aliases are
 | |
| # applied to an account name in turn, most recently seen first. The
 | |
| # replacement can replace multiple matches within the account name.
 | |
| # The replacement pattern supports numeric backreferences.
 | |
| #
 | |
| hledger -f- print
 | |
| <<<
 | |
| alias /a/ = b
 | |
| 
 | |
| 2011/01/01
 | |
|     A a  1
 | |
|     a a  2
 | |
|     c
 | |
| 
 | |
| alias /A (.)/=\1
 | |
| 
 | |
| 2011/01/01
 | |
|     A a  1
 | |
|     a a  2
 | |
|     c
 | |
| 
 | |
| >>>
 | |
| 2011/01/01
 | |
|     b b             1
 | |
|     b b             2
 | |
|     c
 | |
| 
 | |
| 2011/01/01
 | |
|     b             1
 | |
|     b             2
 | |
|     c
 | |
| 
 | |
| >>>=0
 | |
| 
 | |
| # CLI
 | |
| 
 | |
| # --alias command-line options are applied in the order written.
 | |
| # Spaces are allowed if quoted.
 | |
| # 
 | |
| hledger -f- print --alias '/A (.)/=a' --alias /a/=b
 | |
| <<<
 | |
| 2011/01/01
 | |
|     a a  1
 | |
|     A a  2
 | |
|     c
 | |
| 
 | |
| >>>
 | |
| 2011/01/01
 | |
|     b             1
 | |
|     b             2
 | |
|     c
 | |
| 
 | |
| >>>=0
 | |
| 
 | |
| # alias options are applied after alias directives.
 | |
| #
 | |
| hledger -f- print --alias /a/=A --alias /B/=C --alias /B/=D --alias /C/=D
 | |
| <<<
 | |
| alias /^a/=B
 | |
| alias /^a/=E
 | |
| alias E=F
 | |
| 
 | |
| 2011/01/01
 | |
|     [a:x]    1
 | |
|     [x:a:x]
 | |
| 
 | |
| >>>
 | |
| 2011/01/01
 | |
|     [E:x]             1
 | |
|     [x:A:x]
 | |
| 
 | |
| >>>2
 | |
| >>>=0
 | |
| 
 | |
| # query will search both origin and substitution in alias
 | |
| hledger -f- reg '^a$' '^b$'
 | |
| <<<
 | |
| alias a = b
 | |
| 1/1
 | |
|     a  1
 | |
|     b  -1
 | |
| >>>
 | |
| 2017/01/01                      b                                1             1
 | |
|                                 b                               -1             0
 | |
| >>>2
 | |
| >>>=0
 |