aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/keymap.c
Commit message (Collapse)AuthorAge
* refactor: reformat with uncrustify #15736dundargoc2021-09-20
| | | | * fix function parameter comments * remove space after star in function names
* vim-patch:8.1.1355: obvious mistakes are accepted as valid expressionsSean Dewar2021-09-11
| | | | | | | | | Problem: Obvious mistakes are accepted as valid expressions. Solution: Be more strict about parsing numbers. (Yasuhiro Matsumoto, closes vim/vim#3981) https://github.com/vim/vim/commit/16e9b85113e0b354ece1cb4f5fcc7866850f3685 Update vim_str2nr_spec.lua to add more tests that use strict = true.
* refactor: replace TRUE/FALSE macros with C99 true/falseDundar Göc2021-07-25
|
* lintJan Edmund Lazo2021-05-06
|
* vim-patch:8.0.1309: cannot use 'balloonexpr' in a terminalJan Edmund Lazo2021-05-06
| | | | | | | 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. https://github.com/vim/vim/commit/51b0f3701ecb440aa72ab6017c1df6940c0e0f6f
* keymap: Preserve S- modifier when C- is presentJames McCoy2020-11-16
| | | | Closes #12037
* Understand Escape as another name for EscJames McCoy2020-11-16
| | | | | | | | This allows us to remove special-case handling of Esc in forward_modified_utf8(), which was always sending "<Esc>" to nvim even when there were modifiers present. Closes #12584
* lua: add vim.register_keystroke_callback (#12536)TJ DeVries2020-08-14
| | | | | | | | | | | | | | | * feat: Add vim.register_keystroke_callback * fixup: Forgot to remove mention of old option * fixup: Answer jamessan comments * fixup: Answer norcalli comments * fixup: portability * Update runtime/doc/lua.txt Co-authored-by: Ashkan Kiani <ashkan.k.kiani@gmail.com>
* [squash] fix comment [skip ci]erw72020-05-26
|
* vim-patch:8.1.1300: in a terminal 'ballooneval' does not work right awayJan Edmund Lazo2019-12-30
| | | | | | | Problem: In a terminal 'ballooneval' does not work right away. Solution: Flush output after drawing the balloon. Add the <Ignore> key code. Add a test. https://github.com/vim/vim/commit/2f10658b06bbdd8f25c4ff152266c808234cee0a
* vim-patch:8.1.0362: cannot get the script line number when executing a functionerw72019-09-04
| | | | | | | Problem: Cannot get the script line number when executing a function. Solution: Store the line number besides the script ID. (Ozaki Kiichi, closes vim/vim#3362) Also display the line number with ":verbose set". https://github.com/vim/vim/commit/f29c1c6aa3f365c025890fab5fb9efbe88eb1761
* log: log_key()Justin M. Keyes2019-08-27
|
* paste: WIP #4448Justin M. Keyes2019-08-27
|
* keymap: allow modifiers to multibyte chars, like <m-ä>Björn Linse2019-08-16
|
* keymap, terminal: more keycodes #9810Olivier G-R2019-03-31
| | | | | | | | | - input: recognize <kEqual>, <kComma> - terminal.c: If we need to support function key, a change must be made in libvtermkey. Currently, it emulates strictly VT220 terminal, and returning numeric value in 'normal' mode is the expected behaviour. closes #9810
* keymap: add more (keypad) keycodes #9793Olivier G-R2019-03-29
| | | | | | | | | | | | | | | | | - K_KORIGIN instead of K_KCENTER: This name is similar to what is used by xev. Alternative could be K_KBEGIN as hinted here: https://invisible-island.net/xterm/ctlseqs/ctlseqs.html#h2-PC-Style-Function-Keys But I find Begin and Home too similar, and it might induced some confusion. The naming looked related to some old keyboard configuration. - keymap.c: alias KPPeriod to kDel instead of kPoint. This might seems weird, but this is actually the behaviour that should be expected. libtermkey produces "KPPeriod" when num lock is off. To fix this would need to change this name in termkey. closes #9780 closes #9793
* lint: clean-up after parent commitsZviRackover2018-09-09
|
* Remove has_mbytes local to lines changed in parent commitZviRackover2018-09-09
|
* Refactor: Remove occurences of mb_char2bytesZviRackover2018-09-09
|
* lint: clean-up after parent commitsZviRackover2018-08-31
|
* Refactor: remove mb_ptr2len_len, mb_ptr2cells and mb_ptr2cells_lenZviRackover2018-08-31
| | | | Remove occurences of these macros.
* getchar: implement <Cmd> key to invoke command in any modeBjörn Linse2018-03-23
|
* vim-patch:8.0.0212: buffer for key name may be too small (#8009)KunMing Xie2018-02-18
| | | | | | | | | 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. https://github.com/vim/vim/commit/423977d3cebac2be1158b1d11da60fe96db4b750
* os/input.c: parse keycodes in non-string context #7411lePerdu2018-01-18
| | | | | | | | | | | cb02137dfac7 had two mistakes, of the same nature: trans_special() must be invoked with in_string=false unless the parsing context is a VimL string. replace_termcodes() and input_enqueue() are low-level mechanisms where VimL strings do not exist. keymap.c: adjust double-quote case to satisfy keymap_spec.lua closes #7410
* keymap: Do not use vim_isIDc in keymap.cZyX2017-11-30
| | | | | | | | 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.
* *: Fix some typos found by oni-linkZyX2017-11-06
|
* *: Fix linter errorsZyX2017-10-30
| | | | Big function in expressions.c may be refactored, if I ever catch the idea how to split it right.
* keymap: Remove incorrect castZyX2017-10-16
|
* klee: Update key_name_entry tableZyX2017-10-16
|
* keymap: Readd figure braces disappeared when resolving conflictsZyX2017-10-15
|
* Merge branch 'master' into expression-parserZyX2017-10-15
|\
| * lintJustin M. Keyes2017-09-05
| |
| * eventloop: FocusGained: schedule event instead of pseudokeyJustin M. Keyes2017-09-05
| | | | | | | | | | closes #4840 closes #6164
* | keymap: Lint some functions to be copied for symbolic testsZyX2017-10-15
|/
* lintJustin M. Keyes2017-07-08
|
* 'cpoptions': remove "<" flag; ignore <special>Justin M. Keyes2017-07-08
| | | | Closes #6937 "nvim_get_keymap output is unreliable"
* vim-patch:7.4.1976James McCoy2017-06-04
| | | | | | | Problem: Number variables are not 64 bits while they could be. Solution: Add the num64 feature. (Ken Takata) https://github.com/vim/vim/commit/22fcfad29276bd5f317faf516637dcd491b96a12
* Merge #6550 from ZyX-I/pvs-check-commentJustin M. Keyes2017-04-20
|\
| * *: Add comment to all C filesZyX2017-04-19
| |
* | vim-patch:7.4.2209James McCoy2017-04-19
|/ | | | | | | | Problem: Cannot map <M-">. (Stephen Riehm) Solution: Solve the memory access problem in another way. (Dominique Pelle) Allow for using <M-\"> in a string. https://github.com/vim/vim/commit/35a4cfa200917dd171b1fff3cd5b6cee9add673d
* *: Partial string handling refactoringZyX2017-02-15
| | | | | | | | Main points: - Replace `char_u` with `char` in some cases. - Remove `str[len] = NUL` hack in some cases when `str` may be considered `const`.
* vim-patch:7.4.1968 (#5949)Shougo2017-01-15
| | | | | | Problem: Invalid memory access with "\<C-">. Solution: Do not recognize this as a special character. (Dominique Pelle) https://github.com/vim/vim/commit/1d90a5a5af84250e226f8a9121e771f7b72aa894
* keymap: Make replace_termcodes and friends accept length and cpo_flagsZyX2016-04-18
| | | | | | | Reasons: - One does not have to do `s[len] = NUL` to work with these functions if they do not need to replace the whole string: thus `s` may be const. - One does not have to save/restore p_cpo to work with them.
* keymap: Support <D-...> (super/command key).Justin M. Keyes2016-02-22
| | | | | | | | | | | | | | | | | | | | Adds support for: - api:vim_input("<D-a>") - ":nnoremap <C-D-S-...>" and permutations thereof UIs must capture the modifier and send it as "<D-...>" to vim_input(). Note: Before this commit, any arbitrary ":nnoremap <{foo}-{bar}>" mapping could already be invoked with feedkeys("\<{foo}-{bar}>"). This commit supports "D-" as a modifier that can be combined with "C-", "A-", "S-" in any order. For non-GUI (terminal) support, user must: :set <D-a>={CSI sequence} then send the {CSI sequence} from their terminal. But this does not work yet (regression #2204). Closes #2190
* vim-patch:7.4.1027watiko2016-02-01
| | | | | | | Problem: No support for binary numbers. Solution: Add "bin" to nrformats. (Jason Schulz) https://github.com/vim/vim/commit/887c1fea4a114e7170091942d0446c8882701b5b
* vim-patch:7.4.782watiko2016-02-01
| | | | | | | Problem: Still a few problems with CTRL-A and CTRL-X in Visual mode. Solution: Fix the reported problems. (Christian Brabandt) https://github.com/vim/vim/commit/5d1bc78a2b9fbe3e3112afcde7c80eb19d5989f4
* Fix lint issuesJason Schulz2016-01-15
|
* Add support for binary numbersJason Schulz2016-01-15
|
* input: Do not set high-bit; preserve ALT modifier.Justin M. Keyes2016-01-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Background: Vim internally prefers to represent ALT/META chords as single-byte keys, by setting the high bit of the key byte. extract_modifiers() _discards_ the meta/alt modifier, but we need it for libvterm and libtermkey. Closes #2440 Closes #3727 Closes #2017 References #2277 References #2254 https://github.com/neovim/neovim/issues/2017#issuecomment-140423557 > We [not libtermkey] are setting the high bit for some reason https://github.com/neovim/neovim/issues/176#issuecomment-77834715 > libvtermkey requires the leading esc to parse alt/meta https://github.com/neovim/neovim/pull/3246#issuecomment-136328450 > A program could do better than the current logic on some terminals, by > asking for pure 8bit mode (S8C1T) and then immediately querying the > mode again. If the result comes back as an 8bit single-byte CSI, then > it can presume the mode setting was successful, and now the ESC prefix > byte won't be seen in multibyte sequences; only as an Alt- prefix or > a real Escape key. On such a terminal, it could therefore avoid > needing to use that waiting timeout.
* src/*: Remove `VIM - Vi improved ...` headerMichael Reed2015-11-27
| | | | | | | | | | | | | | | | | | | Regarding the individual items in the header: `Vim - Vi improved by Bram Moolenar` Bram Moolenar is already mentioned throughout the documentation, as well as the intro screen. `:help uganda` It's already shown to all users who don't use `shortmess+=I` upon starting nvim, and is already placed prominently in help.txt, i.e., `:help` run with no arguments. `:help credits` Already mentioned near the top of help.txt. `README.md` Already mentioned in develop.txt.