aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/mapping.c
diff options
context:
space:
mode:
authorLewis Russell <lewis6991@gmail.com>2023-04-26 15:32:48 +0100
committerzeertzjq <zeertzjq@outlook.com>2023-04-28 23:04:12 +0800
commit5cda9c267ab951c9d3ba05cddd0e8f63b3a7680a (patch)
treeda4aea9bd3d1c13409bb4abf4e75692ba6ae91a2 /src/nvim/mapping.c
parentbb7371ad82a1b65217565d578158f269dc735139 (diff)
downloadrneovim-5cda9c267ab951c9d3ba05cddd0e8f63b3a7680a.tar.gz
rneovim-5cda9c267ab951c9d3ba05cddd0e8f63b3a7680a.tar.bz2
rneovim-5cda9c267ab951c9d3ba05cddd0e8f63b3a7680a.zip
vim-patch:9.0.1359: too many "else if" statements in handling options
Problem: Too many "else if" statements in handling options. Solution: Add more functions for handling option changes. (Yegappan Lakshmanan, closes vim/vim#12060) https://github.com/vim/vim/commit/5da901bb68717b2baff6e971c1517219b6ee3a67
Diffstat (limited to 'src/nvim/mapping.c')
-rw-r--r--src/nvim/mapping.c19
1 files changed, 9 insertions, 10 deletions
diff --git a/src/nvim/mapping.c b/src/nvim/mapping.c
index a2f2ed4d86..c1d02e89b8 100644
--- a/src/nvim/mapping.c
+++ b/src/nvim/mapping.c
@@ -2386,7 +2386,7 @@ void langmap_init(void)
/// Called when langmap option is set; the language map can be
/// changed at any time!
-const char *did_set_langmap(optset_T *args FUNC_ATTR_UNUSED)
+const char *did_set_langmap(optset_T *args)
{
char *p;
char *p2;
@@ -2434,11 +2434,10 @@ const char *did_set_langmap(optset_T *args FUNC_ATTR_UNUSED)
}
}
if (to == NUL) {
- // TODO(vim): Need to use errbuf argument for this error message
- // and return it.
- semsg(_("E357: 'langmap': Matching character missing for %s"),
- transchar(from));
- return NULL;
+ snprintf(args->os_errbuf, args->os_errbuflen,
+ _("E357: 'langmap': Matching character missing for %s"),
+ transchar(from));
+ return args->os_errbuf;
}
if (from >= 256) {
@@ -2456,10 +2455,10 @@ const char *did_set_langmap(optset_T *args FUNC_ATTR_UNUSED)
p = p2;
if (p[0] != NUL) {
if (p[0] != ',') {
- // TODO(vim): Need to use errbuf argument for this error
- // message and return it.
- semsg(_("E358: 'langmap': Extra characters after semicolon: %s"), p);
- return NULL;
+ snprintf(args->os_errbuf, args->os_errbuflen,
+ _("E358: 'langmap': Extra characters after semicolon: %s"),
+ p);
+ return args->os_errbuf;
}
p++;
}