mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
move ins_char
This commit is contained in:
parent
dfe8cab0c1
commit
aa6aa732e9
@ -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)
|
||||
|
@ -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)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user