aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorxentac2017-10-27 21:12:47 -0700
committerGitHub2017-10-27 21:12:47 -0700
commit8b8073706f800f10acc5e107fe2d77f68bcc3458 (patch)
treeb47b82f0f78a4b530839e0d3bb90b45ca451b489
parentd4da66c61e8643c80245dcd63e7b33832aecaba7 (diff)
parent7db0d219e1bb2b1063a982b5cf6917502127c121 (diff)
downloadvim-beancount-8b8073706f800f10acc5e107fe2d77f68bcc3458.tar.gz
Merge pull request #42 from wzyboy/bugfix/support-plus-sign-before-numbers
Fix a regression bug in AlignCommodity
-rw-r--r--autoload/beancount.vim2
-rw-r--r--test/align.vader6
2 files changed, 7 insertions, 1 deletions
diff --git a/autoload/beancount.vim b/autoload/beancount.vim
index 81067a3..c5d8f97 100644
--- a/autoload/beancount.vim
+++ b/autoload/beancount.vim
@@ -39,7 +39,7 @@ function! beancount#align_commodity(line1, line2) abort
" Look for a minus sign and a number (possibly containing commas) and
" align on the next column.
- let l:separator = matchend(l:line, '^\v(-)?[,[:digit:]]+', l:begin_number) + 1
+ let l:separator = matchend(l:line, '^\v([-+])?[,[:digit:]]+', l:begin_number) + 1
if l:separator < 0 | continue | endif
let l:has_spaces = l:begin_number - l:end_account
let l:need_spaces = g:beancount_separator_col - l:separator + l:has_spaces
diff --git a/test/align.vader b/test/align.vader
index 76496fc..db6563e 100644
--- a/test/align.vader
+++ b/test/align.vader
@@ -1,6 +1,8 @@
Given beancount:
2012-12-12 balance Assets:LongLongLongAccount 50.00
2012-12-12 balance Assets:Cash 50.00
+ 2012-12-12 balance Assets:Cash -50.00
+ 2012-12-12 balance Assets:Cash +50.00
2012-12-12 price EUR 50.00 USD
metadata: 50
Assets:Cash 50
@@ -15,6 +17,8 @@ Execute (align):
Expect beancount:
2012-12-12 balance Assets:LongLongLongAccount 50.00
2012-12-12 balance Assets:Cash 50.00
+ 2012-12-12 balance Assets:Cash -50.00
+ 2012-12-12 balance Assets:Cash +50.00
2012-12-12 price EUR 50.00 USD
metadata: 50
Assets:Cash 50
@@ -30,6 +34,8 @@ Execute (change alignment column and align again):
Expect beancount:
2012-12-12 balance Assets:LongLongLongAccount 50.00
2012-12-12 balance Assets:Cash 50.00
+ 2012-12-12 balance Assets:Cash -50.00
+ 2012-12-12 balance Assets:Cash +50.00
2012-12-12 price EUR 50.00 USD
metadata: 50
Assets:Cash 50