aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/normal.c
Commit message (Collapse)AuthorAge
...
* ui: implement ext_messagesBjörn Linse2019-02-10
| | | | Co-Author: Dongdong Zhou <dzhou121@gmail.com>
* window/ui: reorganize size variables, fix terminal window size with multigrid.Björn Linse2019-01-27
| | | | | | | wp->w_height_inner now contains the "inner" size, regardless if the window has been drawn yet or not. It should be used instead of wp->w_grid.Rows, for stuff that is not directly related to accessing the allocated grid memory, such like cursor movement and terminal size
* ui: multigrid mouse supportBjörn Linse2019-01-20
|
* PVS/V1028: cast operands, not the resultJustin M. Keyes2019-01-18
|
* clang/"Dead assignment"Justin M. Keyes2019-01-13
|
* display: unify cursorline and concealcursor redraw logicBjörn Linse2019-01-13
| | | | | | | | | | | | | | | | There is various places where 'conceallevel' and 'concealcursor' necessitates additional redraws. This tries to separate the different cases and handle each accordingly: - Share code with 'cursorline' for the common case: vertical move of cursor within the same window (concealcursor not active) - Improve the logic for managing 'concealcursor' and switching modes: test for the case where the new mode behaves differently from the last one. - Clarify the special case for horizontal movement within a line when 'concealcursor' is active, now there is an if-statement only for this and not hidden in larger check mostly for the first point. - Keep the special case for moving between windows as is.
* normal/edit: add missing "need_cursor_line_redraw = false"Björn Linse2019-01-12
| | | | vim-patch:8.1.0726: redrawing specifically for conceal feature
* screen: make update_screen() the only entry point for redrawingBjörn Linse2019-01-11
| | | | | | | | | | | | | | | update_single_line() was only used for 'concealcursor'. But 'cursorline' has very similiar characteristics (redraw both lines on move cursor between lines) and works without its own special entry point to the redraw subsystem. Later on 'concealcursor' and 'cursorline' could share more logic, but for now make the former use standard redrawWinline(). Make sure it is called before update_screen(), so that it is immediately visible. Get rid of update_prepare() and update_finish(), and all issues from them and their callsites not being in sync with changes to update_screen()
* vim-patch:8.1.0648: custom operators can't act upon forced motionPedro L. Ramos2019-01-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Custom operators can't act upon a forced motion. (Christian Wellenbrock) Solution: Add the forced motion to the mode() result. (Christian Brabandt, closes vim/vim#3490) https://github.com/vim/vim/commit/5976f8ff00efcb3e155a89346e44f2ad43d2405a closes #8667 closes #9476 Christian Wellenbrock: > For (most) built in text objects it's possible to force operation on > them to be linewise, for example by using `dVab` (`:h o_V`, > `motion_force`). When using custom text objects (defined as mappings > by plugins for example), this doesn't currently work. > > Example: > > onoremap x viw > > Open a file with a few lines each containing some words. With the > cursor on any word, try: > > 1. `dw` (builtin) deletes some characters > 2. `dVw` (builtin) deletes linewise > 3. `dx` (from mapping) deletes some characters > 4. `dVx` (from mapping) deletes some characters, but should delete > linewise ref: https://github.com/wellle/targets.vim/issues/214 ref: https://gitter.im/neovim/neovim?at=5b379ff7f1664406610e7483
* PVS/V1026: normal.c: signed integer overflowJustin M. Keyes2019-01-05
| | | | | > V1026 The 'curwin->w_curswant' variable is incremented in the loop. > Undefined behavior will occur in case of signed integer overflow.
* Visual: highlight char-at-cursorJustin M. Keyes2019-01-04
| | | | | | | | | | | | | | | Decide whether to highlight the visual-selected character under the cursor, depending on 'guicursor' style: - Highlight if cursor is blinking or non-block (vertical, horiz). - Do NOT highlight if cursor is non-blinking block. Traditionally Vim's visual selection does "reverse mode", which perhaps conflicts with the non-blinking block cursor. But 'guicursor' defaults to a vertical bar for selection=exclusive, and this confuses users who expect to see the text highlighted. closes #8983
* remove check_visual_highlight()Justin M. Keyes2019-01-04
| | | | This check is meaningless, we assume the terminal supports reverse-mode.
* multigrid: Fix lint errorsUtkarsh Maheshwari2018-12-31
|
* multigrid: Allow UIs to set grid size different from window sizeUtkarsh Maheshwari2018-12-31
|
* multigrid: Change screen_* functions to grid_* functionsUtkarsh Maheshwari2018-12-31
|
* vim-patch:8.1.0394: diffs are not always updated correctlyAnatolii Sakhnik2018-12-09
| | | | | | | Problem: Diffs are not always updated correctly. Solution: When using internal diff update for any changes properly. https://github.com/vim/vim/commit/e3521d9cbb786806eaff106707851d37d2c0ecef
* shortmess+=F: Hide :bnext, :bprev fileinfo messagesJustin M. Keyes2018-09-23
|
* replace fallthrough comment with macroJan Edmund Lazo2018-09-21
| | | | Follow-up of vim-patch:8.0.1215
* vim-patch:8.0.1215: newer gcc warns for implicit fallthroughJan Edmund Lazo2018-09-20
| | | | | | Problem: Newer gcc warns for implicit fallthrough. Solution: Consistently use a FALLTHROUGH comment. (Christian Brabandt) https://github.com/vim/vim/commit/2f40d129bf45cd35976e4120336ae6d504f5a5dd
* Merge #8998 from janlazo/vim-8.0.1275Justin M. Keyes2018-09-14
|\
| * globals: KeyTyped is boolJan Edmund Lazo2018-09-14
| |
* | vim-patch:8.0.1201: "yL" is affected by 'scrolloff' (#8997)Jan Edmund Lazo2018-09-14
|/ | | | | Problem: "yL" is affected by 'scrolloff'. (Eli the Bearded) Solution: Don't use 'scrolloff' when an operator is pending. https://github.com/vim/vim/commit/44cc4cf72fdd12cd9a779031d443aac4254d51ae
* lintJan Edmund Lazo2018-09-11
|
* vim-patch:8.0.1809: various typosJan Edmund Lazo2018-09-11
| | | | | | Problem: Various typos. Solution: Correct the mistakes, change "cursur" to "cursor". (closes vim/vim#2887) https://github.com/vim/vim/commit/b9464821901623f983528acaed9e4dc2cea7387b
* vim-patch:8.0.0998: strange error when using K while only spaces are selectedJan Edmund Lazo2018-09-04
| | | | | | | Problem: Strange error when using K while only spaces are selected. (Christian J. Robinson) Solution: Check for blank argument. https://github.com/vim/vim/commit/a4f99f5a8b827162a26ca4e4d59f4f224503398a
* Merge #8863 'refactor: Remove mb_head_off() 'Justin M. Keyes2018-08-28
|\
| * lint: cleanup after parent commitsZviRackover2018-08-16
| |
| * Remove has_mbyte from lines near changes in parent commitZviRackover2018-08-16
| |
| * Remove occurences of mb_head_offZviRackover2018-08-15
| |
* | lintJan Edmund Lazo2018-08-17
| |
* | normal: don't check has_mbyteJan Edmund Lazo2018-08-17
| | | | | | | | has_mbyte is always true for nvim.
* | vim-patch:8.0.1091: test for <cexpr> fails without +balloon_eval featureJan Edmund Lazo2018-08-17
|/ | | | | | Problem: Test for <cexpr> fails without +balloon_eval feature. Solution: Remove #ifdefs. https://github.com/vim/vim/commit/95c83c64be8d4af74bfda1f283a5bcf3f110719e
* lintJan Edmund Lazo2018-08-06
|
* vim-patch:8.0.0948: crash if timer closes window while dragging status lineJan Edmund Lazo2018-08-05
| | | | | | | Problem: Crash if timer closes window while dragging status line. Solution: Check if the window still exists. (Yasuhiro Matsumoto, closes vim/vim#1979) https://github.com/vim/vim/commit/989a70c590c2bd109eb362d3a0e48cb1427ae13d
* globals: virtual_op is TriStateJan Edmund Lazo2018-08-01
|
* *: Replace b_changedtick with new always-inline functionsZyX2018-06-22
| | | Ref #8474
* vim-patch:8.0.0568: 1gd may hangJan Edmund Lazo2018-06-19
| | | | | | Problem: "1gd" may hang. Solution: Don't get stuck in one position. (Christian Brabandt, closes vim/vim#1643) https://github.com/vim/vim/commit/60402d68da09997cacdeec71fd22c9344f8f40d5
* vim-patch:8.0.0609: some people still don't know how to quit (#8571)Jan Edmund Lazo2018-06-17
| | | | | | | | Problem: For some people the hint about quitting is not sufficient. Solution: Put <Enter> separately. Also use ":qa!" to get out even when there are changes. https://github.com/vim/vim/commit/28a8193e3113f676f89fb6312b099d849df881d3
* vim-patch:8.0.0602: when gF fails to edit the file the cursor still movesJan Edmund Lazo2018-06-16
| | | | | | | Problem: When gF fails to edit the file the cursor still moves to the found line number. Solution: Check the return value of do_ecmd(). (Michael Hwang) https://github.com/vim/vim/commit/2a79ed293c077ba791db962f0e121cf97ba4f7a7
* vim-patch:8.0.0466: still macros that should be all-caps (#8510)Jan Edmund Lazo2018-06-10
| | | | | Problem: There are still a few macros that should be all-caps. Solution: Make a few more macros all-caps. https://github.com/vim/vim/commit/8820b48654b62472821d9b155fe03ab7ac13a05c
* API: Implement buffer updatesPeter Hodge2018-05-23
| | | | | Originally written by @phodge in https://github.com/neovim/neovim/pull/5269.
* Merge #8377 'TextChangedP autocommand'Justin M. Keyes2018-05-19
|\
| * vim-patch:8.0.1494: no autocmd triggered in Insert mode with visible popup menuShougo Matsushita2018-05-14
| | | | | | | | | | | | | | | | | | | | Problem: No autocmd triggered in Insert mode with visible popup menu. Solution: Add TextChangedP. (Prabir Shrestha, Christian Brabandt, closes vim/vim#2372, closes vim/vim#1691) Fix that the TextChanged autocommands are not always triggered when sourcing a script. https://github.com/vim/vim/commit/5a093437199001a0d60d8e18e2b9539b99a7757c
* | coverity/13713: do_pending_operator: handle failed u_save_cursor()Nick Neisen2018-05-17
|/
* getchar: implement <Cmd> key to invoke command in any modeBjörn Linse2018-03-23
|
* lintJustin M. Keyes2018-02-12
|
* vim-patch:8.0.0858: can exit while a terminal is still running a jobJustin M. Keyes2018-02-11
| | | | | | | Problem: Can exit while a terminal is still running a job. Solution: Consider a buffer with a running job like a changed file. https://github.com/vim/vim/commit/eb44a68b42eda207a5bc4def9ea8fc4d38acb650
* lintJustin M. Keyes2018-02-11
|
* vim-patch:8.0.1475: invalid memory access in read_redo()Justin M. Keyes2018-02-11
| | | | | | | | Problem: Invalid memory access in read_redo(). (gy741) Solution: Convert the replacement character back from a negative number to CR or NL. (hint by Dominique Pelle, closes vim/vim#2616) https://github.com/vim/vim/commit/f12519dec88251305793f1651f558d16506b4be2
* lint, minor cleanupJustin M. Keyes2018-02-07
|