diff options
author | zeertzjq <zeertzjq@outlook.com> | 2022-07-24 11:20:23 +0800 |
---|---|---|
committer | zeertzjq <zeertzjq@outlook.com> | 2022-09-04 21:18:08 +0800 |
commit | 00b49dd8dd638c5fe1b664273aea5c843d69f36d (patch) | |
tree | 7557491de797fea6ed4534a47469021cfe9b25b5 | |
parent | 900a7741821ff8dfb0634290a343e501955e9a1a (diff) | |
download | rneovim-00b49dd8dd638c5fe1b664273aea5c843d69f36d.tar.gz rneovim-00b49dd8dd638c5fe1b664273aea5c843d69f36d.tar.bz2 rneovim-00b49dd8dd638c5fe1b664273aea5c843d69f36d.zip |
vim-patch:8.2.4674: cannot force getting MouseMove events
Problem: Cannot force getting MouseMove events.
Solution: Add the 'mousemoveevent' option with implementaiton for the GUI.
(Ernie Rael, closes vim/vim#10044)
https://github.com/vim/vim/commit/c4cb544cd5beaa864b3893e4b8d0085393c7dbce
This only ports the docs and the option variable.
The following commits will actually implement it as a UI option.
-rw-r--r-- | runtime/doc/options.txt | 12 | ||||
-rw-r--r-- | src/nvim/option_defs.h | 1 | ||||
-rw-r--r-- | src/nvim/options.lua | 7 |
3 files changed, 20 insertions, 0 deletions
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt index 9e396dd3e8..208633f93f 100644 --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -4231,6 +4231,18 @@ A jump table for the options with a short description can be found at |Q_op|. The 'mousemodel' option is set by the |:behave| command. + *'mousemoveevent'* *'mousemev'* +'mousemoveevent' 'mousemev' boolean (default off) + global + {only works in the GUI} + When on, mouse move events are delivered to the input queue and are + available for mapping. The default, off, avoids the mouse movement + overhead except when needed. + Warning: Setting this option can make pending mappings to be aborted + when the mouse is moved. + Currently only works in the GUI, may be made to work in a terminal + later. + *'mousescroll'* 'mousescroll' string (default "ver:3,hor:6") global diff --git a/src/nvim/option_defs.h b/src/nvim/option_defs.h index bfac0cff87..64b3f69df4 100644 --- a/src/nvim/option_defs.h +++ b/src/nvim/option_defs.h @@ -616,6 +616,7 @@ EXTERN int p_ma; ///< 'modifiable' EXTERN int p_mod; ///< 'modified' EXTERN char *p_mouse; // 'mouse' EXTERN char *p_mousem; // 'mousemodel' +EXTERN int p_mousemev; ///< 'mousemoveevent' EXTERN int p_mousef; // 'mousefocus' EXTERN char *p_mousescroll; // 'mousescroll' EXTERN long p_mousescroll_vert INIT(= MOUSESCROLL_VERT_DFLT); diff --git a/src/nvim/options.lua b/src/nvim/options.lua index 2f941f5d0c..9f540e6005 100644 --- a/src/nvim/options.lua +++ b/src/nvim/options.lua @@ -1622,6 +1622,13 @@ return { defaults={if_true="popup_setpos"} }, { + full_name='mousemoveevent', abbreviation='mousemev', + short_desc=N_("deliver mouse move events to input queue"), + type='bool', scope={'global'}, + varname='p_mousemev', + defaults={if_true=false} + }, + { full_name='mousescroll', short_desc=N_("amount to scroll by when scrolling with a mouse"), type='string', list='comma', scope={'global'}, |