Commit Graph

38 Commits

Author SHA1 Message Date
b486ed8266 patch 9.1.1576: cannot easily trigger wildcard expansion
Problem:  cannot easily trigger wildcard expansion
Solution: Introduce wildtrigger() function
          (Girish Palya)

This PR introduces a new `wildtrigger()` function.

See `:h wildtrigger()`

`wildtrigger()` behaves like pressing the `wildchar,` but provides a
more refined and controlled completion experience:

- Suppresses beeps when no matches are found.
- Avoids displaying irrelevant completions (like full command lists)
  when the prefix is insufficient or doesn't match.
- Skips completion if the typeahead buffer has pending input or if a
  wildmenu is already active.
- Does not print "..." before completion.

This is an improvement on the `feedkeys()` based autocompletion script
given in #16759.

closes: #17806

Signed-off-by: Girish Palya <girishji@gmail.com>
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-07-21 21:26:32 +02:00
92e90a1e10 patch 9.1.0058: Cannot map Super Keys in GTK UI
Problem:  Cannot map Super Keys in GTK UI
          (Casey Tucker)
Solution: Enable Super Key mappings in GTK using <D-Key>
          (Casey Tucker)

As a developer who works in both Mac and Linux using the same keyboard,
it can be frustrating having to remember different key combinations or
having to rely on system utilities to remap keys.

This change allows `<D-z>` `<D-x>` `<D-c>` `<D-v>` etc. to be recognized
by the `map` commands, along with the `<D-S-...>` shifted variants.

```vimrc
if has('gui_gtk')
	nnoremap  <D-z>    u
	nnoremap  <D-S-Z>  <C-r>
	vnoremap  <D-x>    "+d
	vnoremap  <D-c>    "+y
	cnoremap  <D-v>    <C-R>+
	inoremap  <D-v>    <C-o>"+gP
	nnoremap  <D-v>    "+P
	vnoremap  <D-v>    "-d"+P
	nnoremap  <D-s>    :w<CR>
	inoremap  <D-s>    <C-o>:w<CR>
	nnoremap  <D-w>    :q<CR>
	nnoremap  <D-q>    :qa<CR>
	nnoremap  <D-t>    :tabe<CR>
	nnoremap  <D-S-T>  :vs#<CR><C-w>T
	nnoremap  <D-a>    ggVG
	vnoremap  <D-a>    <ESC>ggVG
	inoremap  <D-a>    <ESC>ggVG
	nnoremap  <D-f>    /
	nnoremap  <D-g>    n
	nnoremap  <D-S-G>  N
	vnoremap  <D-x>    "+x
endif
```

closes: #12698

Signed-off-by: Casey Tucker <dctucker@hotmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-01-25 22:44:00 +01:00
dffa6ea85c patch 9.0.0974: even when Esc is encoded a timeout is used
Problem:    Even when Esc is encoded a timeout is used.
Solution:   Use K_ESC when an encoded Esc is found.
2022-11-29 20:33:20 +00:00
ddf7dba96e patch 9.0.0387: repeat <ScriptCmd> mapping doesn't use right script context
Problem:    repeating a <ScriptCmd> mapping does not use the right script
            context.
Solution:   When using a mapping put <SID>{sid}; in the redo buffer.
            (closes #11049)
2022-09-05 16:53:21 +01:00
6ed545e797 patch 8.2.4928: various white space and cosmetic mistakes
Problem:    Various white space and cosmetic mistakes.
Solution:   Change spaces to tabs, improve comments.
2022-05-09 20:09:23 +01:00
dfbdadce44 patch 8.2.4876: MS-Windows: Shift-BS results in strange char in powershell
Problem:    MS-Windows: Shift-BS results in strange character in powershell.
Solution:   Add K_S_BS. (Christian Brabandt, closes #10283, closes #10279)
2022-05-05 20:46:47 +01:00
4c93aff20f patch 8.2.4267: unused entry in keymap enum
Problem:    Unused entry in keymap enum.
Solution:   Remove the entry.
2022-01-31 11:29:51 +00:00
e32c3c462c patch 8.2.4099: Vim9: cannot use Vim9 syntax in mapping
Problem:    Vim9: cannot use Vim9 syntax in mapping.
Solution:   Add <ScriptCmd> to use the script context for a command.
2022-01-15 18:26:04 +00:00
445f11d5bc patch 8.2.2963: GUI: mouse move may start Visual mode with a popup visible
Problem:    GUI: mouse move may start Visual mode with a popup visible.
Solution:   Add special code for mouse move. (closes #8318)
2021-06-08 20:13:31 +02:00
957cf67d50 patch 8.2.1978: making a mapping work in all modes is complicated
Problem:    Making a mapping work in all modes is complicated.
Solution:   Add the <Cmd> special key. (Yegappan Lakshmanan, closes #7282,
            closes 4784, based on patch by Bjorn Linse)
2020-11-12 14:21:06 +01:00
9bf703d46a patch 8.1.2366: using old C style comments
Problem:    Using old C style comments.
Solution:   Use // comments where appropriate.
2019-11-30 19:44:38 +01:00
bedf091a95 patch 8.1.1265: when GPM mouse support is enabled double clicks do not work
Problem:    When GPM mouse support is enabled double clicks in xterm do not
            work.
Solution:   Use KS_GPM_MOUSE for GPM mouse events.
2019-05-04 16:58:45 +02:00
b2ac14c0b5 patch 8.0.1786: no test for 'termwinkey'
Problem:    No test for 'termwinkey'.
Solution:   Add a test.  Make feedkeys() handle terminal_loop() returning
            before characters are consumed.
2018-05-01 18:47:59 +02:00
51b0f3701e patch 8.0.1309: cannot use 'balloonexpr' in a terminal
Problem:    Cannot use 'balloonexpr' in a terminal.
Solution:   Add 'balloonevalterm' and add code to handle mouse movements in a
            terminal. Initial implementation for Unix with GUI.
2017-11-18 18:52:04 +01:00
d057301b1f patch 8.0.1236: Mac features are confusing
Problem:    Mac features are confusing.
Solution:   Make feature names more consistent, add "osxdarwin". Rename
            feature flags, cleanup Mac code. (Kazunobu Kuriyama, closes #2178)
2017-10-28 21:11:06 +02:00
8858498516 patch 8.0.0697: recorded key sequences may become invalid
Problem:    Recorded key sequences may become invalid.
Solution:   Add back KE_SNIFF removed in 7.4.1433. Use fixed numbers for the
            key_extra enum.
2017-07-07 13:32:14 +02:00
a529ce068b patch 8.0.0661: recognizing urxvt mouse codes does not work well
Problem:    Recognizing urxvt mouse codes does not work well.
Solution:   Recognize "Esc[*M" and "Esc[*m". (Maurice Bos, closes #1486)
2017-06-22 22:37:57 +02:00
423977d3ce patch 8.0.0212: buffer for key name may be too small
Problem:    The buffer used to store a key name theoreticaly could be too
            small. (Coverity)
Solution:   Count all possible modifier characters.  Add a check for the
            length just in case.
2017-01-22 15:05:12 +01:00
ec2da36ca4 patch 8.0.0210: no support for bracketed paste
Problem:    Vim does not support bracketed paste, as implemented by xterm and
            other terminals.
Solution:   Add t_BE, t_BD, t_PS and t_PE.
2017-01-21 20:04:22 +01:00
edf3f97ae2 patch 7.4.2293
Problem:    Modelines in source code are inconsistant.
Solution:   Use the same line in most files.  Add 'noet'.  (Naruhiko Nishino)
2016-08-29 22:49:24 +02:00
85b11769ab patch 7.4.1433
Problem:    The Sniff interface is no longer useful, the tool has not been
            available for may years.
Solution:   Delete the Sniff interface and related code.
2016-02-27 18:13:23 +01:00
2b9578f0f8 updated for version 7.3.632
Problem:    Cannot select beyond 222 columns with the mouse in xterm.
Solution:   Add support for SGR mouse tracking. (Hayaki Saito)
2012-08-15 16:21:32 +02:00
5af7d71276 updated for version 7.3.405
Problem:    When xterm gets back the function keys it may delete the urxvt
            mouse termcap code.
Solution:   Check for the whole code, not just the start. (Egmont Koblinger)
2012-01-20 17:15:51 +01:00
c842748302 updated for version 7.3.343
Problem:    No mouse support for urxvt.
Solution:   Implement urxvt mouse support, also for > 252 columns.  (Yiding
            Jia)
2011-10-20 21:09:35 +02:00
8d9b40e71a Add support for horizontal scroll wheel. (Bjorn Winckler) 2010-07-25 15:49:07 +02:00
9c8791fde0 updated for version 7.1-095 2007-09-05 19:47:23 +00:00
9964e468c0 updated for version 7.1a 2007-05-05 17:54:07 +00:00
c542aef58d updated for version 7.0207 2006-02-25 21:47:41 +00:00
32466aa2e9 updated for version 7.0206 2006-02-24 23:53:04 +00:00
ebefac63f3 updated for version 7.0177 2005-12-28 22:39:57 +00:00
b0bf8580c3 updated for version 7.0169 2005-12-13 20:02:15 +00:00
e6b165e0f4 updated for version 7.0098 2005-06-30 21:56:01 +00:00
68b76a69aa updated for version 7.0064 2005-03-25 21:53:48 +00:00
3918c950c9 updated for version 7.0060 2005-03-15 22:34:55 +00:00
bc7aa85d8a updated for version 7.0056 2005-03-06 23:38:09 +00:00
19a09a1893 updated for version 7.0055 2005-03-04 23:39:37 +00:00
293ee4d421 updated for version 7.0021 2004-12-09 21:34:53 +00:00
071d4279d6 updated for version 7.0001 2004-06-13 20:20:40 +00:00