diff options
author | Bram Moolenaar <Bram@vim.org> | 2012-10-21 00:10:39 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2012-10-21 00:10:39 +0200 |
commit | 9f340fa57b91db9c04307c99cd4475f197d7a5c8 (patch) | |
tree | b7be09f511971a7e931fb52cbbe0a2ec115f719c /src/edit.c | |
parent | 205f9f5e2d4b25a94072644bbcdd2c8b20ad7b80 (diff) | |
download | vim-git-9f340fa57b91db9c04307c99cd4475f197d7a5c8.tar.gz |
updated for version 7.3.693v7.3.693
Problem: Can't make 'softtabstop' follow 'shiftwidth'.
Solution: When 'softtabstop' is negative use the value of 'shiftwidth'.
(so8res)
Diffstat (limited to 'src/edit.c')
-rw-r--r-- | src/edit.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/edit.c b/src/edit.c index 9017fd0f3..0d9409546 100644 --- a/src/edit.c +++ b/src/edit.c @@ -8885,7 +8885,7 @@ ins_bs(c, mode, inserted_space_p) */ if ( mode == BACKSPACE_CHAR && ((p_sta && in_indent) - || (curbuf->b_p_sts != 0 + || (get_sts_value() != 0 && curwin->w_cursor.col > 0 && (*(ml_get_cursor() - 1) == TAB || (*(ml_get_cursor() - 1) == ' ' @@ -8901,7 +8901,7 @@ ins_bs(c, mode, inserted_space_p) if (p_sta && in_indent) ts = (int)get_sw_value(); else - ts = (int)curbuf->b_p_sts; + ts = (int)get_sts_value(); /* Compute the virtual column where we want to be. Since * 'showbreak' may get in the way, need to get the last column of * the previous character. */ @@ -9590,7 +9590,7 @@ ins_tab() */ if (!curbuf->b_p_et && !(p_sta && ind && curbuf->b_p_ts != get_sw_value()) - && curbuf->b_p_sts == 0) + && get_sts_value() == 0) return TRUE; if (stop_arrow() == FAIL) @@ -9606,8 +9606,8 @@ ins_tab() if (p_sta && ind) /* insert tab in indent, use 'shiftwidth' */ temp = (int)get_sw_value(); - else if (curbuf->b_p_sts > 0) /* use 'softtabstop' when set */ - temp = (int)curbuf->b_p_sts; + else if (curbuf->b_p_sts != 0) /* use 'softtabstop' when set */ + temp = (int)get_sts_value(); else /* otherwise use 'tabstop' */ temp = (int)curbuf->b_p_ts; temp -= get_nolist_virtcol() % temp; @@ -9635,7 +9635,7 @@ ins_tab() /* * When 'expandtab' not set: Replace spaces by TABs where possible. */ - if (!curbuf->b_p_et && (curbuf->b_p_sts || (p_sta && ind))) + if (!curbuf->b_p_et && (get_sts_value() || (p_sta && ind))) { char_u *ptr; #ifdef FEAT_VREPLACE |