diff options
author | zeertzjq <zeertzjq@outlook.com> | 2022-12-04 09:09:00 +0800 |
---|---|---|
committer | zeertzjq <zeertzjq@outlook.com> | 2022-12-04 10:07:05 +0800 |
commit | 46e4be0fd0002233bde613295607ce5eeb498567 (patch) | |
tree | 4e12bbbb51cca63f4f745c6061139768a381380b /src/nvim/regexp_defs.h | |
parent | a91ba088abf7b21f640f671ad7f211c0957b4765 (diff) | |
download | rneovim-46e4be0fd0002233bde613295607ce5eeb498567.tar.gz rneovim-46e4be0fd0002233bde613295607ce5eeb498567.tar.bz2 rneovim-46e4be0fd0002233bde613295607ce5eeb498567.zip |
vim-patch:8.2.2295: incsearch does not detect empty pattern properly
Problem: Incsearch does not detect empty pattern properly.
Solution: Return magic state when skipping over a pattern. (Christian
Brabandt, closes vim/vim#7612, closes vim/vim#6420)
https://github.com/vim/vim/commit/d93a7fc1a98a58f8101ee780d4735079ad99ae35
Diffstat (limited to 'src/nvim/regexp_defs.h')
-rw-r--r-- | src/nvim/regexp_defs.h | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/src/nvim/regexp_defs.h b/src/nvim/regexp_defs.h index 3b94723d4f..16bb2db464 100644 --- a/src/nvim/regexp_defs.h +++ b/src/nvim/regexp_defs.h @@ -15,10 +15,22 @@ #include "nvim/pos.h" #include "nvim/types.h" +/// Used for "magic_overruled". typedef enum { - MAGIC_NOT_SET, ///< p_magic not overruled - MAGIC_ON, ///< magic on inside regexp - MAGIC_OFF, ///< magic off inside regexp + OPTION_MAGIC_NOT_SET, ///< p_magic not overruled + OPTION_MAGIC_ON, ///< magic on inside regexp + OPTION_MAGIC_OFF, ///< magic off inside regexp +} optmagic_T; + +/// Magicness of a pattern, used by regexp code. +/// The order and values matter: +/// magic <= MAGIC_OFF includes MAGIC_NONE +/// magic >= MAGIC_ON includes MAGIC_ALL +typedef enum { + MAGIC_NONE = 1, ///< "\V" very unmagic + MAGIC_OFF = 2, ///< "\M" or 'magic' off + MAGIC_ON = 3, ///< "\m" or 'magic' + MAGIC_ALL = 4, ///< "\v" very magic } magic_T; // The number of sub-matches is limited to 10. |