aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/edit.c
Commit message (Collapse)AuthorAge
...
* Merge pull request #4644 from KillTheMule/vim-7.4.882Justin M. Keyes2016-05-04
|\ | | | | vim-patch:7.4.882
| * vim-patch:7.4.882KillTheMule2016-04-29
| | | | | | | | | | | | | | | | | | | | Problem: When leaving the command line window with CTRL-C while a completion menu is displayed the menu isn't removed. Solution: Force a screen update. (Hirohito Higashi) https://github.com/vim/vim/commit/5f1fea28f5bc573e2430773c49e95ae1f9cc2a25 Applied manually.
* | *: Fix new linter errorsZyX2016-05-01
|/ | | | Originally there were 128 new errors, so I thought this is a good idea to fix all of them. Of course, this commit also fixes many suppressed errors.
* vim-patch:7.4.1296KillTheMule2016-04-27
| | | | | | | | | | | | | | | | | | Problem: Cursor changes column with up motion when the matchparen plugin saves and restores the cursor position. (Martin Kunev) Solution: Make sure curswant is updated before invoking the autocommand. https://github.com/vim/vim/commit/f068dcafcfe0c8018e5a559c50769ca1364bd9a5 Applied manually. Could reproduce the bug with vim/vim@4d8747c but not with vim/vim@2693ca2, so it must have appeared inbetween. For discussion, see https://groups.google.com/forum/#!msg/vim_dev/t2sdeFhkybs/WEtLJpCODQAJ http://vim.1045645.n5.nabble.com/Cursor-behaviour-change-td5726895.html Could not reproduce with current nvim master.
* Merge pull request #4622 from Shougo/vim-7.4.1753Justin M. Keyes2016-04-27
|\ | | | | vim-patch:7.4.1753
| * vim-patch:7.4.1753Shougo Matsushita2016-04-22
| | | | | | | | | | | | | | Problem: "noinsert" in 'completeopt' is sometimes ignored. Solution: Set the variables when the 'completeopt' was set. (Ozaki Kiichi) https://github.com/vim/vim/commit/c020042083b9c0a4e932b562c3bef97c76328e18
* | mouse: Implement horizontal scroll. #3450bambu2016-04-25
|/ | | | | | | | | | - Code from Vim source. - Removed the check for 'guioptions' - mouse_spec.lua: test <ScrollWheelLeft> and <ScrollWheelRight> - Move horizontal scroll logic to mouse.c - Remove 'gui_' from the function names - Renamed variables to be more specific (as opposed to generic p, w). - Marked some functions as `static`
* Merge pull request #3951 from cacplate/misc1_WconversionBjörn Linse2016-04-18
|\ | | | | Enable -Wconversion in misc1.c
| * misc1.c: enable -WconversionCharles Joachim2016-04-17
| |
* | *: Make set_vim_var_\* functions have proper argument typesZyX2016-04-18
|/
* complete: noinsert/noselect should not set 'modified'. #4509Shougo Matsushita2016-04-09
|
* edit.c: K_EVENT should not hide the popupmenuBjörn Linse2016-03-17
| | | | Nor should K_FOCUSGAINED and K_FOCUSLOST.
* complete: disable folding when completingAnmol Sethi2016-03-09
| | | | Fixes vim/vim#643
* edit.c: change return type to boolCharles Joachim2016-03-02
| | | | Co-authored-by: Wayne Rowcliffe (@war1025)
* Merge pull request #4315 from justinmk/compl_flickerJustin M. Keyes2016-02-22
|\ | | | | completion: Avoid flicker
| * ins_complete: Avoid semi-global state.Justin M. Keyes2016-02-22
| |
| * completion: Avoid flicker.Shougo Matsushita2016-02-21
| |
* | 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
* Merge #2674Justin M. Keyes2016-02-13
|\
| * edit.c: fix incorrect redo buffersolawing2016-01-29
| |
| * edit.c: fix flicker in popup menusolawing2016-01-29
| |
* | vim-patch:7.4.688 #4159watiko2016-02-05
|/ | | | | | | | | | | Problem: When "$" is in 'cpo' the popup menu isn't undrawn correctly. (Issue 166) Solution: When using the popup menu remove the "$". https://github.com/vim/vim/commit/478c46e50fd94f270369ec1c5f76aa65af7ee671 NOTE: To reproduce in nvim: nvim -u NONE -c 'exe "norm iaaa iabbbbbb acc" | norm yyp' -c 'set cpo+=$'
* vim-patch:7.4.680Justin Gassner2016-01-22
| | | | | | | | Problem: CTRL-W in Insert mode does not work well for multi-byte characters. Solution: Use mb_get_class(). (Yasuhiro Matsumoto) https://github.com/vim/vim/commit/310f2d59b2b20c642088feb5e6dfe323cc570923
* fileio: Replace some event checking functions with one has_eventCharles Joachim2016-01-11
|
* Fix linting errors.Johan Klokkhammer Helsing2015-12-13
|
* vim-patch:7.4.803Johan Klokkhammer Helsing2015-12-13
| | | | | | | Problem: C indent does not support C11 raw strings. (Mark Lodato) Solution: Do not change indent inside the raw string. https://github.com/vim/vim/commit/f7bb86dc593913d055e4cce16cec43f6271adda3
* Merge pull request #3838 from Shougo/vim-7.4.658Justin M. Keyes2015-12-13
|\ | | | | vim-patch:7.4.658
| * vim-patch:7.4.658Shougo Matsushita2015-12-13
| | | | | | | | | | | | | | | | Problem: 'formatexpr' is evaluated too often. Solution: Only invoke it when beyond the 'textwidth' column, as it is documented. (James McCoy) https://github.com/vim/vim/commit/0f8dd840fc6a614450db60ebe405d6201a2ecc3e
* | vim-patch:7.4.640Shougo Matsushita2015-12-13
|/ | | | | | | | Problem: After deleting characters in Insert mode such that lines are joined undo does not work properly. (issue 324) Solution: Use Insstart instead of Insstart_orig. (Christian Brabandt) https://github.com/vim/vim/commit/c3bbad085c3ec304b111dc95aed97fea4c38a177
* 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.
* Remove unnecessary includes for errno.hRui Abreu Ferreira2015-11-25
|
* src: README.txt -> README.mdMichael Reed2015-11-23
| | | | | The former no longer exists in this repo; see the top of src/nvim/README.md.
* Implement handling of terminal focus eventsJoe Hermaszewski2015-11-17
| | | | | | | | | | | | | | | | | | | | Two new keys have been added to key_name_entry in keymap.c: `FocusGained` and `FocusLost`. Two cases have been added to the key handing switch in edit.c each applying their respective autocmds. In normal.c two functions have been added alongside nv_cursorhold doing a similar job of applying the autocmd for the appropriate key. tui/input.c has a new function `handle_focus_event` which eats either of the control sequences for focus gained or lost. This function is checked before handle_bracketed_paste and handle_forced_escape. tui.c registers neovim as able to receive these control sequences in terminfo_start and undoes that in terminfo_stop. Closes #2302
* edit.c: Fix one clint warningThiago de Arruda2015-10-26
|
* edit: Extract some functions from `insert_execute`Thiago de Arruda2015-10-26
| | | | | | | | | - `insert_handle_key`: Contains the big insert mode switch statement. - `insert_do_complete`: Code that used to be in the `docomplete` label. - `insert_do_cindent`: Code that used to be in the `force_cindent` label. Also move some code after the switch statement into the beginning of `insert_check`.
* edit: Move most code from `edit()` to `insert_{enter,check,execute}`Thiago de Arruda2015-10-26
| | | | | | | | | | | | | Refactor insert mode to use `state_enter` as an event loop: - Move o_lnum(static variable) outside function - Move code before the insert mode loop into `insert_enter` - Move code before `safe_vgetc()` call into `insert_check` - Move code after `safe_vgetc()` call into `insert_execute` - Remove doESCkey label and handle insert mode repeating in the `insert_enter` function - Remove do_intr label(this is not the place for platform-specific interrupt charts)
* edit: Extract local variables from edit() and fix code styleThiago de Arruda2015-10-26
| | | | | | | Begin refactoring edit() into a state that can be managed by the `state_enter()`: - Move local variables into a local InsertState structure - Fix code style in the entire function.
* input: Remove CURSORHOLD keyThiago de Arruda2015-10-26
| | | | | | | | | | | Refactor input.c, normal.c and edit.c to use the K_EVENT special key to trigger the CURSORHOLD event. In normal and edit mode, K_EVENT is treated as K_CURSORHOLD, which enables better handling of arbitrary actions in those states(eg: In normal mode the previous operator counts will be restored). Also fix a test in vim_spec.lua. The test had a wrong assumption: cmdheight is only used to determine when the press enter screen will be shown, not to limit how many lines or control pagination.
* vim-patch:7.4.849Justin M. Keyes2015-10-26
| | | | | | | | | | Problem: Moving the cursor in Insert mode starts new undo sequence. Solution: Add CTRL-G U to keep the undo sequence for the following cursor movement command. (Christian Brabandt) https://github.com/vim/vim/commit/8b5f65a527c353b9942e362e719687c3a7592309 Closes #3492
* vim-patch:7.4.793Johan Klokkhammer Helsing2015-10-18
| | | | | | | Problem: Can't specify when not to ring the bell. Solution: Add the 'belloff' option. (Christian Brabandt) https://github.com/vim/vim/commit/165bc69d1b7f70ca9d5b657f35d0584ecb7b5183
* viminfo: First version of ShaDa file dumpingZyX2015-10-08
| | | | | | | | | | | | | | | | | | | | What works: 1. ShaDa file dumping: header, registers, jump list, history, search patterns, substitute strings, variables. 2. ShaDa file reading: registers, global marks, variables. Most was not tested. TODO: 1. Merging. 2. Reading history, local marks, jump and buffer lists. 3. Documentation update. 4. Converting some data from &encoding. 5. Safer variant of dumping viminfo (dump to temporary file then rename). 6. Removing old viminfo code (currently masked with `#if 0` in a ShaDa file for reference).
* terminal: Don't enter terminal mode from `:normal`Thiago de Arruda2015-09-18
| | | | Ref: https://github.com/junegunn/fzf.vim/issues/8#issuecomment-139209765
* event: Refactor async event processingThiago de Arruda2015-08-13
| | | | | | | | | | - Improve the implementation of deferred/immediate events. - Use the new queue module to change how/when events are queued/processed by giving a private queue to each emitter. - Immediate events(which only exist to break uv_run recursion) are now represented in the `loop->fast_events` queue. - Events pushed to child queues are propagated to the event loop main queue and processed as K_EVENT keys.
* loop: Simplify loop.c and move some code to input.cThiago de Arruda2015-08-13
| | | | | | - Declare poll timer in Loop structure instead of a loop_poll_events local variable. - Move deferred event management to input.c
* event loop: New abstraction layer with refactored time/signal APIThiago de Arruda2015-07-17
| | | | | | | | | | - Add event loop abstraction module under src/nvim/event. The src/nvim/event/loop module replaces src/nvim/os/event - Remove direct dependency on libuv signal/timer API and use the new abstraction instead. - Replace all references to uv_default_loop() by &loop.uv, a new global variable that wraps libuv main event loop but allows the event loop functions to be reused in other contexts.
* Add complete() noinsert/noselect support #2792Shougo Matsushita2015-06-11
|
* Add noinsert and noselect features in completeopt #2564Shougo Matsushita2015-06-04
| | | | | | | | | | | | Backported from vim_dev: https://groups.google.com/forum/#!searchin/vim_dev/completeopt/vim_dev/tVsk0pdOGvs/fCzBbPkA4w0J Use case: https://github.com/Shougo/neocomplcache.vim/issues/426 Reviewed-by: Felipe Morales <hel.sheep@gmail.com> Reviewed-by: Scott Prager <splinterofchaos@gmail.com> Reviewed-by: Michael Reed <m.reed@mykolab.com>
* 'cpoptions': Remove "j" flagDavid Bürgin2015-05-25
|
* completion: Add v:completed_item feature #2563Shougo Matsushita2015-05-24
| | | | | | | Reviewed-by: Michael Reed <m.reed@mykolab.com> Reviewed-by: Luke Andrew <luke.github@la.id.au> Reviewed-by: Justin M. Keyes <justinkz@gmail.com> Reviewed-by: Florian Walch <florian@fwalch.com>
* 'cpoptions': Remove "-" flag #2655David Bürgin2015-05-21
|