diff options
| author | ZyX <kp-pav@yandex.ru> | 2017-11-30 02:01:49 +0300 | 
|---|---|---|
| committer | ZyX <kp-pav@yandex.ru> | 2017-11-30 02:01:49 +0300 | 
| commit | de45ec0146486c49719ff6f6dcceb4914b471c7a (patch) | |
| tree | efeca45f58023f8259511276815243539bffa1a1 /src/nvim/ascii.h | |
| parent | 36a4f3a259ffa282129b18358cce4130397077c5 (diff) | |
| download | rneovim-de45ec0146486c49719ff6f6dcceb4914b471c7a.tar.gz rneovim-de45ec0146486c49719ff6f6dcceb4914b471c7a.tar.bz2 rneovim-de45ec0146486c49719ff6f6dcceb4914b471c7a.zip | |
keymap: Do not use vim_isIDc in keymap.c
Note: there are three changes to ascii_isident. Reverting first two (in 
find_special_key and first in get_special_key_code) normally fails the new test 
with empty &isident, but reverting the third does not. Hence adding `>` to 
&isident.
Ref vim/vim#2389.
Diffstat (limited to 'src/nvim/ascii.h')
| -rw-r--r-- | src/nvim/ascii.h | 13 | 
1 files changed, 13 insertions, 0 deletions
| diff --git a/src/nvim/ascii.h b/src/nvim/ascii.h index adde91f9ec..9ccb70764d 100644 --- a/src/nvim/ascii.h +++ b/src/nvim/ascii.h @@ -3,6 +3,7 @@  #include <stdbool.h> +#include "nvim/macros.h"  #include "nvim/func_attr.h"  #include "nvim/os/os_defs.h" @@ -98,6 +99,10 @@ static inline bool ascii_isxdigit(int)    REAL_FATTR_CONST    REAL_FATTR_ALWAYS_INLINE; +static inline bool ascii_isident(int) +  REAL_FATTR_CONST +  REAL_FATTR_ALWAYS_INLINE; +  static inline bool ascii_isbdigit(int)    REAL_FATTR_CONST    REAL_FATTR_ALWAYS_INLINE; @@ -138,6 +143,14 @@ static inline bool ascii_isxdigit(int c)           || (c >= 'A' && c <= 'F');  } +/// Checks if `c` is an “identifier” character +/// +/// That is, whether it is alphanumeric character or underscore. +static inline bool ascii_isident(const int c) +{ +  return ASCII_ISALNUM(c) || c == '_'; +} +  /// Checks if `c` is a binary digit, that is, 0-1.  ///  /// @see {ascii_isdigit} | 
