diff options
author | Jakob Schnitzer <mail@jakobschnitzer.de> | 2017-03-27 19:37:39 +0200 |
---|---|---|
committer | Jakob Schnitzer <mail@jakobschnitzer.de> | 2017-03-30 23:04:54 +0200 |
commit | 2290a7a1b1f8ea3c04365667b751fdfff62b43f5 (patch) | |
tree | af43f4a61d6f8349db2bc4f5fae9e1a08f718d6a /src | |
parent | 2b0abdbd9adcdaee5fb4f8d056c6385749c45579 (diff) | |
download | rneovim-2290a7a1b1f8ea3c04365667b751fdfff62b43f5.tar.gz rneovim-2290a7a1b1f8ea3c04365667b751fdfff62b43f5.tar.bz2 rneovim-2290a7a1b1f8ea3c04365667b751fdfff62b43f5.zip |
options: group num_option validation by type
Diffstat (limited to 'src')
-rw-r--r-- | src/nvim/option.c | 96 |
1 files changed, 47 insertions, 49 deletions
diff --git a/src/nvim/option.c b/src/nvim/option.c index 24c9b9b72e..976aadbc9c 100644 --- a/src/nvim/option.c +++ b/src/nvim/option.c @@ -4032,30 +4032,12 @@ static char *set_num_option(int opt_idx, char_u *varp, long value, if (p_wmw > p_wiw) { errmsg = e_winwidth; } - } else if (pp == &curwin->w_p_fdl) { - if (curwin->w_p_fdl < 0) { - errmsg = e_positive; - } - } else if (pp == &curwin->w_p_fdc) { - if (curwin->w_p_fdc < 0) { - errmsg = e_positive; - } else if (curwin->w_p_fdc > 12) { - errmsg = e_invarg; - } } else if (pp == &p_mco) { if (p_mco > MAX_MCO) { errmsg = e_invarg; } else if (p_mco < 0) { errmsg = e_positive; } - } else if (pp == &curbuf->b_p_iminsert) { - if (curbuf->b_p_iminsert < 0 || curbuf->b_p_iminsert > B_IMODE_LAST) { - errmsg = e_invarg; - } - } else if (pp == &curbuf->b_p_imsearch) { - if (curbuf->b_p_imsearch < -1 || curbuf->b_p_imsearch > B_IMODE_LAST) { - errmsg = e_invarg; - } } else if (pp == &p_titlelen) { if (p_titlelen < 0) { errmsg = e_positive; @@ -4064,41 +4046,10 @@ static char *set_num_option(int opt_idx, char_u *varp, long value, if (p_uc < 0) { errmsg = e_positive; } - } else if (pp == &curwin->w_p_cole) { - if (curwin->w_p_cole < 0) { - errmsg = e_positive; - } else if (curwin->w_p_cole > 3) { - errmsg = e_invarg; - } - } else if (pp == &curwin->w_p_nuw) { - if (curwin->w_p_nuw < 1) { - errmsg = e_positive; - } - if (curwin->w_p_nuw > 10) { - errmsg = e_invarg; - } - curwin->w_nrwidth_line_count = 0; - } else if (pp == &curbuf->b_p_tw) { - if (curbuf->b_p_tw < 0) { - errmsg = e_positive; - } - } else if (pp == &curbuf->b_p_scbk || pp == &p_scbk) { - if (*pp < -1 || *pp > SB_MAX - || (opt_flags == OPT_LOCAL && !curbuf->terminal)) { - errmsg = e_invarg; - } - } else if (pp == &curbuf->b_p_sw) { - if (curbuf->b_p_sw < 0) { - errmsg = e_positive; - } } else if (pp == &p_ch) { if (p_ch < 1) { errmsg = e_positive; } - } else if (pp == &curbuf->b_p_ts) { - if (curbuf->b_p_ts <= 0) { - errmsg = e_positive; - } } else if (pp == &p_tm) { if (p_tm < 0) { errmsg = e_positive; @@ -4137,6 +4088,53 @@ static char *set_num_option(int opt_idx, char_u *varp, long value, if (p_ss < 0) { errmsg = e_positive; } + } else if (pp == &curwin->w_p_fdl) { + if (curwin->w_p_fdl < 0) { + errmsg = e_positive; + } + } else if (pp == &curwin->w_p_fdc) { + if (curwin->w_p_fdc < 0) { + errmsg = e_positive; + } else if (curwin->w_p_fdc > 12) { + errmsg = e_invarg; + } + } else if (pp == &curwin->w_p_cole) { + if (curwin->w_p_cole < 0) { + errmsg = e_positive; + } else if (curwin->w_p_cole > 3) { + errmsg = e_invarg; + } + } else if (pp == &curwin->w_p_nuw) { + if (curwin->w_p_nuw < 1) { + errmsg = e_positive; + } else if (curwin->w_p_nuw > 10) { + errmsg = e_invarg; + } + } else if (pp == &curbuf->b_p_iminsert) { + if (curbuf->b_p_iminsert < 0 || curbuf->b_p_iminsert > B_IMODE_LAST) { + errmsg = e_invarg; + } + } else if (pp == &curbuf->b_p_imsearch) { + if (curbuf->b_p_imsearch < -1 || curbuf->b_p_imsearch > B_IMODE_LAST) { + errmsg = e_invarg; + } + } else if (pp == &curbuf->b_p_tw) { + if (curbuf->b_p_tw < 0) { + errmsg = e_positive; + } + } else if (pp == &curbuf->b_p_scbk || pp == &p_scbk) { + if (*pp < -1 || *pp > SB_MAX + || (opt_flags == OPT_LOCAL && !curbuf->terminal)) { + errmsg = e_invarg; + } + } else if (pp == &curbuf->b_p_sw) { + if (curbuf->b_p_sw < 0) { + errmsg = e_positive; + } + } else if (pp == &curbuf->b_p_ts) { + if (curbuf->b_p_ts <= 0) { + errmsg = e_positive; + } } // If validation failed, reset to old value and return. |