diff options
author | Josh Rahm <joshuarahm@gmail.com> | 2022-08-18 23:29:47 -0600 |
---|---|---|
committer | Josh Rahm <joshuarahm@gmail.com> | 2022-08-18 23:29:47 -0600 |
commit | b7362a2daf0eb434fffd2aaec7cfe8c12b0ed6d1 (patch) | |
tree | fc7cd5c62a6a6e11dacd8d5c67fe86e3d12985a7 /src/nvim/ops.c | |
parent | b9a0252822e3969574d4e07e7e85b8292ef5bae0 (diff) | |
download | rneovim-b7362a2daf0eb434fffd2aaec7cfe8c12b0ed6d1.tar.gz rneovim-b7362a2daf0eb434fffd2aaec7cfe8c12b0ed6d1.tar.bz2 rneovim-b7362a2daf0eb434fffd2aaec7cfe8c12b0ed6d1.zip |
Fix messaging aronud yanking to support multibyte chars.
Diffstat (limited to 'src/nvim/ops.c')
-rw-r--r-- | src/nvim/ops.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/nvim/ops.c b/src/nvim/ops.c index af7b9e007a..6f682fc7a1 100644 --- a/src/nvim/ops.c +++ b/src/nvim/ops.c @@ -3105,7 +3105,11 @@ static void op_yank_reg(oparg_T *oap, bool message, yankreg_T *reg, bool append) if (oap->regname == NUL) { *namebuf = NUL; } else { - vim_snprintf(namebuf, sizeof(namebuf), _(" into \"%c"), oap->regname); + char buf[5]; + int len = (*utf_char2len) (oap->regname); + utf_char2bytes(oap->regname, buf); + buf[len] = 0; + vim_snprintf(namebuf, sizeof(namebuf), _(" into \"%s"), buf); } // redisplay now, so message is not deleted |