1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
|
beancount.txt Filetype plugin for beancount files
Author: Nathan Grigg <http://nathangrigg.net>
Repo: https://github.com/nathangrigg/vim-beancount
License: Same terms as Vim itself (see |license|).
INTRODUCTION *beancount*
Filetype plugin and functions for working with beancount files.
Contents:
Commands.............|beancount-commands|
Options...............|beancount-options|
Completion.........|beancount-completion|
Syntax.................|beancount-syntax|
Compiler.............|beancount-compiler|
Filetype Detection...|beancount-ftdetect|
COMMANDS *beancount-commands*
*beancount-:GetContext*
:GetContext Uses bean-doctor context to display the context of the
current line.
You can use the following normal mode remap to open the
context of the line you're currently on: >
nnoremap <buffer> <LocalLeader>c :GetContext<CR>
<
OPTIONS *beancount-options*
*g:beancount_account_completion*
See |beancount-completion|. Can be either 'default' or 'chunks'.
Default value: 'default'
*g:beancount_detailed_first*
If non-zero, accounts higher down the hierarchy will be listed first as
completions.
Default value: 0
*b:beancount_root*
Set the root Beancount file. This is used to gather values for the
completion. If not set, the current file will be used.
Default value: not set
FORMATTING *beancount-formatting*
The plugin sets |'formatprg'| to 'bean-format -c61' to provide a formatter for
beancount files. See also |gq|.
COMPLETION *beancount-completion*
The plugin sets 'omnifunc' to provide omni completion for account names, tags,
links, and payees. Omni completion is accessible with |i_CTRL-X_CTRL-O|.
Completion works for values defined |b:beancount_root| and included files.
Account Completion~
*beancount-complete-accounts*
Completion is always case sensitive and exact. If the base string includes
colons, each colon-separated piece can separately match a piece of the
account.
For example, `Ex:Other` would complete to `Expenses:Donations:Other` or
`Liabilities:AmericanExpress:InterestOther`.
There is another mode of completion where each colon-separated piece
has to match at the beginning of that level of the account hierarchy, e.g.
`Ex:Oth` would match `Expenses:Other` but not `Expenses:Other:Something`
nor one of the two examples given above.
`Ex:Oth:` would, however, list all direct sub-accounts of `Expenses:Other`.
To enable this mode use >
let g:beancount_account_completion = 'chunks'
<
Optionally, the list of candidates can be sorted by the number of levels
in the account hierarchy (e.g. return 'Expenses:Other' before 'Expenses').
This behavior can be enabled using >
let g:beancount_detailed_first = 1
<
SYNTAX *beancount-syntax*
We use the following syntax highlighting groups:
beanKeyword: Keywords such as open, close, option.
beanOptionTitle: The first argument to the option keyword.
beanDate: A date in a beancount directive.
beanString: Strings, such as account descriptions.
beanComment: Comments.
beanAccount: Account names.
beanAmount: Monetary amounts.
beanCurrency: Currency codes.
beanCost: Cost, e.g. {100.00 USD}
beanPrice: Price, e.g. @ 100.00 USD
COMPILER *beancount-compiler*
The plugin defines and sets the compiler to "beancount". Simply use the
command ":make" to run `bean-check` on the current file and load the errors
into the quickfix window.
FILETYPE DETECTION *beancount-ftdetect*
The plugin considers files of the form `*.bean` and `*.beancount` to be
beancount files.
vim:tw=78:et:ft=help:norl:
|