diff options
| author | dundargoc <33953936+dundargoc@users.noreply.github.com> | 2023-12-10 16:26:08 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-12-10 16:26:08 +0100 |
| commit | 529498685bbcd4783bc0e816d6247118c9ffb9a7 (patch) | |
| tree | 4a907cfe9e6d7cd49d0dd3d60a70550b6598b391 /src/nvim/eval | |
| parent | c675e51c2f3f8bf46457a3f6653af06a2a946f69 (diff) | |
| parent | a34cc1a44de75eff4c6b43f983dc983eb283119d (diff) | |
| download | rneovim-529498685bbcd4783bc0e816d6247118c9ffb9a7.tar.gz rneovim-529498685bbcd4783bc0e816d6247118c9ffb9a7.tar.bz2 rneovim-529498685bbcd4783bc0e816d6247118c9ffb9a7.zip | |
Merge pull request #26458 from famiu/refactor/options/optionindex
Diffstat (limited to 'src/nvim/eval')
| -rw-r--r-- | src/nvim/eval/funcs.c | 2 | ||||
| -rw-r--r-- | src/nvim/eval/vars.c | 17 |
2 files changed, 11 insertions, 8 deletions
diff --git a/src/nvim/eval/funcs.c b/src/nvim/eval/funcs.c index b4f0be85e5..c35e0b2ada 100644 --- a/src/nvim/eval/funcs.c +++ b/src/nvim/eval/funcs.c @@ -7239,7 +7239,7 @@ int do_searchpair(const char *spat, const char *mpat, const char *epat, int dir, // If it's still empty it was changed and restored, need to restore in // the complicated way. if (*p_cpo == NUL) { - set_option_value_give_err("cpo", CSTR_AS_OPTVAL(save_cpo), 0); + set_option_value_give_err(kOptCpoptions, CSTR_AS_OPTVAL(save_cpo), 0); } free_string_option(save_cpo); } diff --git a/src/nvim/eval/vars.c b/src/nvim/eval/vars.c index 8864edbf69..73c8ae1191 100644 --- a/src/nvim/eval/vars.c +++ b/src/nvim/eval/vars.c @@ -774,7 +774,7 @@ static char *ex_let_option(char *arg, typval_T *const tv, const bool is_const, *p = NUL; bool is_tty_opt = is_tty_option(arg); - int opt_idx = is_tty_opt ? -1 : findoption(arg); + OptIndex opt_idx = is_tty_opt ? kOptInvalid : findoption(arg); uint32_t opt_p_flags = get_option_flags(opt_idx); bool hidden = is_option_hidden(opt_idx); OptVal curval = is_tty_opt ? get_tty_option(arg) : get_option_value(opt_idx, scope); @@ -834,7 +834,7 @@ static char *ex_let_option(char *arg, typval_T *const tv, const bool is_const, } } - const char *err = set_option_value(arg, newval, scope); + const char *err = set_option_value_handle_tty(arg, opt_idx, newval, scope); arg_end = p; if (err != NULL) { emsg(_(err)); @@ -1940,20 +1940,23 @@ typval_T optval_as_tv(OptVal value) /// Set option "varname" to the value of "varp" for the current buffer/window. static void set_option_from_tv(const char *varname, typval_T *varp) { - int opt_idx = findoption(varname); - if (opt_idx < 0) { + OptIndex opt_idx = findoption(varname); + if (opt_idx == kOptInvalid) { semsg(_(e_unknown_option2), varname); return; } - uint32_t opt_p_flags = get_option(opt_idx)->flags; bool error = false; + uint32_t opt_p_flags = get_option_flags(opt_idx); OptVal value = tv_to_optval(varp, varname, opt_p_flags, &error); if (!error) { - set_option_value_give_err(varname, value, OPT_LOCAL); - } + const char *errmsg = set_option_value_handle_tty(varname, opt_idx, value, OPT_LOCAL); + if (errmsg) { + emsg(errmsg); + } + } optval_free(value); } |