aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/getchar.c
diff options
context:
space:
mode:
authorJustin M. Keyes <justinkz@gmail.com>2017-02-17 02:08:21 +0100
committerJustin M. Keyes <justinkz@gmail.com>2017-02-17 02:08:21 +0100
commit706b01ba7999b65da68055a7ac75c2be410ffd2c (patch)
tree10d60b3bb28151dde32730f34e7dfdd0074e2cbd /src/nvim/getchar.c
parent4a107a11a1c708c2fb8e40b6464f080aca111767 (diff)
parent095e6cc2e098db110981e5f9ea4bbc0ce316cecb (diff)
downloadrneovim-706b01ba7999b65da68055a7ac75c2be410ffd2c.tar.gz
rneovim-706b01ba7999b65da68055a7ac75c2be410ffd2c.tar.bz2
rneovim-706b01ba7999b65da68055a7ac75c2be410ffd2c.zip
Merge #6114 'Partial string handling refactoring'.
Diffstat (limited to 'src/nvim/getchar.c')
-rw-r--r--src/nvim/getchar.c46
1 files changed, 23 insertions, 23 deletions
diff --git a/src/nvim/getchar.c b/src/nvim/getchar.c
index fccbd69dbf..0717978ead 100644
--- a/src/nvim/getchar.c
+++ b/src/nvim/getchar.c
@@ -3163,11 +3163,11 @@ map_clear_int (
}
}
-/*
- * Return characters to represent the map mode in an allocated string.
- * Returns NULL when out of memory.
- */
-char_u *map_mode_to_chars(int mode)
+/// Return characters to represent the map mode in an allocated string
+///
+/// @return [allocated] NUL-terminated string with characters.
+char *map_mode_to_chars(int mode)
+ FUNC_ATTR_MALLOC FUNC_ATTR_NONNULL_RET
{
garray_T mapmode;
@@ -3200,7 +3200,7 @@ char_u *map_mode_to_chars(int mode)
}
ga_append(&mapmode, NUL);
- return (char_u *)mapmode.ga_data;
+ return (char *)mapmode.ga_data;
}
static void
@@ -3209,8 +3209,7 @@ showmap (
int local /* TRUE for buffer-local map */
)
{
- int len = 1;
- char_u *mapchars;
+ size_t len = 1;
if (msg_didout || msg_silent != 0) {
msg_putchar('\n');
@@ -3218,29 +3217,30 @@ showmap (
return;
}
- mapchars = map_mode_to_chars(mp->m_mode);
- if (mapchars != NULL) {
+ {
+ char *const mapchars = map_mode_to_chars(mp->m_mode);
msg_puts(mapchars);
- len = (int)STRLEN(mapchars);
+ len = strlen(mapchars);
xfree(mapchars);
}
while (++len <= 3)
msg_putchar(' ');
- /* Display the LHS. Get length of what we write. */
- len = msg_outtrans_special(mp->m_keys, TRUE);
+ // Display the LHS. Get length of what we write.
+ len = (size_t)msg_outtrans_special(mp->m_keys, true);
do {
msg_putchar(' '); /* padd with blanks */
++len;
} while (len < 12);
- if (mp->m_noremap == REMAP_NONE)
- msg_puts_attr((char_u *)"*", hl_attr(HLF_8));
- else if (mp->m_noremap == REMAP_SCRIPT)
- msg_puts_attr((char_u *)"&", hl_attr(HLF_8));
- else
+ if (mp->m_noremap == REMAP_NONE) {
+ msg_puts_attr("*", hl_attr(HLF_8));
+ } else if (mp->m_noremap == REMAP_SCRIPT) {
+ msg_puts_attr("&", hl_attr(HLF_8));
+ } else {
msg_putchar(' ');
+ }
if (local)
msg_putchar('@');
@@ -3249,11 +3249,11 @@ showmap (
/* Use FALSE below if we only want things like <Up> to show up as such on
* the rhs, and not M-x etc, TRUE gets both -- webb */
- if (*mp->m_str == NUL)
- msg_puts_attr((char_u *)"<Nop>", hl_attr(HLF_8));
- else {
- /* Remove escaping of CSI, because "m_str" is in a format to be used
- * as typeahead. */
+ if (*mp->m_str == NUL) {
+ msg_puts_attr("<Nop>", hl_attr(HLF_8));
+ } else {
+ // Remove escaping of CSI, because "m_str" is in a format to be used
+ // as typeahead.
char_u *s = vim_strsave(mp->m_str);
vim_unescape_csi(s);
msg_outtrans_special(s, FALSE);