aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Hahler <git@thequod.de>2019-06-10 16:17:47 +0200
committerDaniel Hahler <git@thequod.de>2019-08-07 14:21:23 +0200
commitaa6aa732e9dd14c2a8804d4c20658112a23491b2 (patch)
treec8df5a34610de9ab5efbcaa4f4e0456ef25cf9a9
parentdfe8cab0c11503e7243a1b7ed1c7f382ac10edcf (diff)
downloadrneovim-aa6aa732e9dd14c2a8804d4c20658112a23491b2.tar.gz
rneovim-aa6aa732e9dd14c2a8804d4c20658112a23491b2.tar.bz2
rneovim-aa6aa732e9dd14c2a8804d4c20658112a23491b2.zip
move ins_char
-rw-r--r--src/nvim/change.c16
-rw-r--r--src/nvim/misc1.c18
2 files changed, 8 insertions, 26 deletions
diff --git a/src/nvim/change.c b/src/nvim/change.c
index 0aece4f8ae..3a216fec02 100644
--- a/src/nvim/change.c
+++ b/src/nvim/change.c
@@ -502,16 +502,16 @@ void ins_bytes_len(char_u *p, size_t len)
/// convert bytes to a character.
void ins_char(int c)
{
- char_u buf[MB_MAXBYTES + 1];
- int n = (*mb_char2bytes)(c, buf);
+ char_u buf[MB_MAXBYTES + 1];
+ size_t n = (size_t)utf_char2bytes(c, buf);
- // When "c" is 0x100, 0x200, etc. we don't want to insert a NUL byte.
- // Happens for CTRL-Vu9900.
- if (buf[0] == 0) {
- buf[0] = '\n';
- }
+ // When "c" is 0x100, 0x200, etc. we don't want to insert a NUL byte.
+ // Happens for CTRL-Vu9900.
+ if (buf[0] == 0) {
+ buf[0] = '\n';
+ }
- ins_char_bytes(buf, n);
+ ins_char_bytes(buf, n);
}
void ins_char_bytes(char_u *buf, size_t charlen)
diff --git a/src/nvim/misc1.c b/src/nvim/misc1.c
index 19b8165843..44e2c7df5f 100644
--- a/src/nvim/misc1.c
+++ b/src/nvim/misc1.c
@@ -507,24 +507,6 @@ int plines_m_win(win_T *wp, linenr_T first, linenr_T last)
return count;
}
-/// Insert or replace a single character at the cursor position.
-/// When in REPLACE or VREPLACE mode, replace any existing character.
-/// Caller must have prepared for undo.
-/// For multi-byte characters we get the whole character, the caller must
-/// convert bytes to a character.
-void ins_char(int c)
-{
- char_u buf[MB_MAXBYTES + 1];
- size_t n = (size_t)utf_char2bytes(c, buf);
-
- // When "c" is 0x100, 0x200, etc. we don't want to insert a NUL byte.
- // Happens for CTRL-Vu9900.
- if (buf[0] == 0) {
- buf[0] = '\n';
- }
- ins_char_bytes(buf, n);
-}
-
int gchar_pos(pos_T *pos)
FUNC_ATTR_NONNULL_ARG(1)
{