aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* *: Fix clint errorsZyX2017-07-18
|
* ex_getln: Check prev_prompt_errors before running redrawcmdlineZyX2017-07-18
| | | | Otherwise there will be infinite recursion and shortly a crash. Running redrawcmdline recursively occurs under color_cmdline_error label.
* api helpers: Also save and restore did_emsgZyX2017-07-18
|
* ex_getln: Replace global with entry in save_cclineZyX2017-07-17
|
* ex_getln: Do not do useless try_enter/try_leave callsZyX2017-07-17
| | | | These are actually needed for two modes only. And even for these modes they should eventually go away.
* ex_getln: Do not goto color_cmdline_end without first cleaning upZyX2017-07-17
| | | | | | | The issue with debug mode was actually not cleaning up after `try_enter`: location `&tstate` was pointing to got invalidated and received some “garbage” (actually, values that got stored on the stack afterwards). But pointer to that garbage was still stored in `msg_list`, so next attempt to check it resulted in a crash.
* api helpers: Save/restore more values in try_enter/try_leaveZyX2017-07-16
| | | | This fixes memory leak reported by ASAN. This also somehow fixes test40, though I have no idea why except that that test yields memory leak report.
* oldtests: Use $(TOOL) in place of $(VALGRIND)ZyX2017-07-16
|
* Merge branch 'master' into colored-cmdlineZyX2017-07-15
|\
| * tui: Do not override 'termguicolors' choice (#7004)DarkDefender2017-07-15
| | | | | | | | | | | | | | * Do not guard true color support with white list * Remove ext_bool (it is unused) Closes #7003
| * version.c: Mark NA patchesJames McCoy2017-07-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Netbeans: 0005, 0024, 0213 - Vim-specific documentation: 0007 - Vim CI/buildsystem: 0009, 0077, 0080, 0082, 0093, 0115, 0117, 0129, 0130, 0144, 0145, 0203, 0239, 0240, 0249, 0257, 0272, 0279 - +cryptv: 0010, 0014 - Channel support: 0011, 0013, 0015, 0016, 0022, 0027, 0036, 0076, 0097, 0103, 0105, 0107, 0108, 0120, 0122, 0152, 0267, 0284 - Timer implementation: 0028, 0098 - Removing legacy support: 0029, 0070, 0109, 0241, 0246 - TUI tweaks: 0030 - viminfo: 0039 - Jobs: 0045, 0048, 0050, 0051, 0054, 0071, 0087 - Style: 0055, 0114 - VMS/Sun support: 0059, 0067, 0123, 0173 - FEAT_* ifdefs: 0061, 0065, 0138, 0139, 0161, 0192, 0193, 0199, 0211, 0217, 0221, 0260, 0276, 0281 - GUI support: 0072, 0089, 0095, 0113, 0162, 0273, 0277, 0278 - win32 fixes: 0094 - Test infrastructure: 0285, 0288, 0400 - Language bindings: 0163, 0187, 0191, 0268-0271 - Unsupported options: 0232 vim-patch:20eeb612 vim-patch:17777875 vim-patch:99c5eb4f vim-patch:294740d2 vim-patch:a4ce25bd vim-patch:7034a837 vim-patch:14a612fa vim-patch:aaeabfbc
| * Bump Vim version to 8.0 and applied patchesJames McCoy2017-07-14
| |
| * Merge pull request #6977 from ckelsel/_vim-7.4.2189.patchJames McCoy2017-07-14
| |\ | | | | | | vim-patch:7.4.2189
| | * lintckelsel2017-07-13
| | |
| | * vim-patch:7.4.2229ckelsel2017-07-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://github.com/vim/vim/commit/f04507d132fbcb63999167ec006fc6e700b5af4f Author: Bram Moolenaar <Bram@vim.org> Date: Sat Aug 20 15:05:39 2016 +0200 patch 7.4.2229 Problem: Startup test fails on Solaris. Solution: Recognize a character device. (Danek Duvall)
| | * vim-patch:7.4.2189ckelsel2017-07-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://github.com/vim/vim/commit/f71d7b9ee5ceba75f70c30845332ddd728fd16c6 Author: Bram Moolenaar <Bram@vim.org> Date: Tue Aug 9 22:14:05 2016 +0200 patch 7.4.2189 Problem: Cannot detect encoding in a fifo. Solution: Extend the stdin way of detecting encoding to fifo. Add a test for detecting encoding on stdin and fifo. (Ken Takata)
| * | lintckelsel2017-07-13
| | |
| * | vim-patch:7.4.2250ckelsel2017-07-13
| |/ | | | | | | | | | | | | Problem: Some error message cannot be translated. Solution: Enclose them in _() and N_(). (Dominique Pelle) https://github.com/vim/vim/commit/5b30291785e6b9be1a607504c14bd03c601b59a6
| * vim-patch:7.4.2354Shougo Matsushita2017-07-12
| | | | | | | | | | | | | | | | Problem: The example that explains nested backreferences does not work properly with the new regexp engine. (Harm te Hennepe) Solution: Also save the end position when adding a state. (closes vim/vim#990) https://github.com/vim/vim/commit/d563883a1fb5ec6cf4a2758c5e36ac1ff4e9bb3d
| * tui: Remove superflous iTerm2 test added in error.Jonathan de Boyne Pollard2017-07-09
| |
| * tui: Improve the setrgbf/setrgbb fallback logic.Jonathan de Boyne Pollard2017-07-09
| | | | | | | | | | | | | | The libvte test was too agressive, and is reduced to only triggering when it is libvte 0.36 AND a gnome or xterm terminal type is used. Contrastingly, tmux was not on the list at all and now is.
| * mbyte: Fix crash when using multibyte chars in maparg() return (#6986)Nikolai Aleksandrovich Pavlov2017-07-09
| | | | | | | | | | | | | | | | This is a refactoring typo from #6947. Fixes #6985 Combined with #6947 where typo was made it also fixes vim/vim#1827 which was present in Neovim.
| * inccommand: improve performance #6949KillTheMule2017-07-08
| | | | | | | | | | | | | | | | During a preview, we can stop looking for matches after we got enough lines for the preview buffer. Because of this perf improvement, the 'redrawtime' test needs to be slowed down in a different way: _long_ lines instead of just many lines.
| * lintJustin M. Keyes2017-07-08
| |
| * doc: api.txt; deprecate <special>Justin M. Keyes2017-07-08
| |
| * 'cpoptions': remove "<" flag; ignore <special>Justin M. Keyes2017-07-08
| | | | | | | | Closes #6937 "nvim_get_keymap output is unreliable"
| * 'cpoptions': remove "k" flagJustin M. Keyes2017-07-08
| | | | | | | | | | This was already removed in 3baba1e7bc66, except the documentation and CPO_VI entry. find_term_bykeys() is irrelevant to Nvim.
| * i_CTRL-O: fix :startinsert at end of line (#6963)d10n2017-07-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The gchar_cursor() == NUL check is already done in ins_ctrl_o. ins_esc changes gchar_cursor() so this if block is probably never entered. Issue: Pressing CTRL-O in insert mode at the end of the line and typing :startinsert moves the cursor 1 column back, when I expect the cursor to remain at the end of the line This is a regression from Vim behavior. Since at least Vim version 7.0, Vim returns you to insert mode at the end of the line. 091e7d033cbf0f4da068292ce4ac934f1c3dd91e is the first bad neovim commit Steps to reproduce using `nvim -u NORC`: `aaaa<C-o>:startinsert<CR>` Fixes #6962
| * jobstop/process_stop: send SIGTERM directlyDaniel Hahler2017-07-07
| | | | | | | | | | This reverts the revert of #6644 (7c1a5d1d4), and handles it properly now (with tests).
| * Merge #6816 'TUI improvements'Justin M. Keyes2017-07-07
| |\ | | | | | | | | | | | | | | | | | | Removed these commits (test-suite changes): e2fba01910e0 7c809c4bc708 18e7cd9e9727
| | * lintJustin M. Keyes2017-07-07
| | |
| | * tui: Coding style changes onlyJonathan de Boyne Pollard2017-07-06
| | | | | | | | | | | | Per warnings about house style from automated tools.
| | * tui: Switch terminal keyboard mode properly.Jonathan de Boyne Pollard2017-07-06
| | | | | | | | | | | | | | | | | | | | | | | | The terminfo doco explicitly states that it covers the case where the terminal is in application cursor/keypad (i.e. "keypad transmit") mode, and not where it is in normal cursor/keypad (i.e. "keypad local") mode. Full screen applications like nvim must switch to and from keypad transmit mode when expecting the control sequences given by terminfo.
| | * tui: Coding style changes onlyJonathan de Boyne Pollard2017-07-06
| | | | | | | | | | | | Per warnings about house style from automated tools.
| | * tui: Track cursor visibility.Jonathan de Boyne Pollard2017-06-10
| | | | | | | | | | | | | | | | | | This fixes a test failure caused by dfaecb25f6a9a94f29a38d9f2d24a579b3dff5f not tracking what the current visibility is and whether it matches the current business state.
| | * tui: Eliminate more extraneous control sequences.Jonathan de Boyne Pollard2017-06-09
| | | | | | | | | | | | | | | | | | When higher layers flush the TUI layer output buffer, but there is nothing in the buffer to flush, no longer does the TUI layer write out unnecessary cnorm/civis sequences surrounding that nothing.
| | * tui: Another linux terminfo capability fixJonathan de Boyne Pollard2017-06-09
| | | | | | | | | | | | | | | For the linux terminal type apply the same fixup to the terminfo civis string that is applied to the cnorm string.
| | * tui: Recognize "Tc" terminfo capability.Jonathan de Boyne Pollard2017-06-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a new convention pioneered by tmux. It does not do much for nvim; since nvim always looks to see whether it should be making up "setrgbf" and "setrgbb" capabilities. But it is a way for terminfo to force this, irrespective of the hardwired list in the code, for more terminal types. On the gripping hand, updating terminfo descriptions to actually have "setrgbf" and "setrgbb" capabilities so that nvim never has to try to invent them in the first place, is as good if not better an approach for overriding what is baked into the code.
| | * tui: Combine multiple attribute changes.Jonathan de Boyne Pollard2017-06-05
| | | | | | | | | | | | | | | Use the terminfo set_attribute capability to set multiple attributes in one control sequence, if it is available.
| | * tui: Remove the iTerm2 corner case.Jonathan de Boyne Pollard2017-06-04
| | |
| | * tui: Do not optimize left motion at the right margin.Jonathan de Boyne Pollard2017-06-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | From observation, there are several different possible behaviours: 1. Deferred wrap like a real DEC VT. The cursor stays visible in the last column, and CUB is calculated relative to that column. Examples: xterm, Unicode rxvt, PuTTY, nosh console-terminal-emulator, FreeBSD kernel's built-in emulator, Linux's built-in emulator 2. Deferred wrap like a real DEC VT. CUB is calculated relative to the last column. But the cursor is invisible. Examples: emulators using newer libvte 3. Non-deferred wrap. The cursor has already wrapped to the next line and CUB does not wrap back. Examples: cygwin, Interix 4. Non-deferred wrap that acts like deferred wrap. The cursor has already visibly wrapped to the next line, but CUB can wrap back around the left margin. Examples: Konsole 5. Deferred wrap with visibly out of bounds cursor. The cursor visibly moves outwith the screen boundaries. CUB is calculated relative to a cursor column that has overflowed the end of the screen grid array. Examples: iTerm2 6. Deferred wrap with invisibly out of bounds cursor. CUB is calculated relative to a cursor column that has overflowed the end of the screen grid array. And the cursor is invisible. Examples: emulators using older libvte In many cases, nvim does not have enough information to know which behaviour the terminal will exhibit, and thus the correct amount of CUB to issue.
| | * tui: Treat cygwin as an immediate-wrap terminal.Jonathan de Boyne Pollard2017-06-03
| | | | | | | | | | | | Alongside interix.
| | * tui: Add tmux to the always 256-colour capable list.Jonathan de Boyne Pollard2017-06-03
| | |
| | * tui: Add terminfo patches for linux on MacOS.Jonathan de Boyne Pollard2017-06-03
| | | | | | | | | | | | | | | Also enable italics on Konsole when it is falsely claiming to be xterm. Also note the reasons for some of the patcher terminfo patches.
| | * tui: Coding style changes only.Jonathan de Boyne Pollard2017-06-03
| | |
| | * tui: Do some deferred wrap on iTerm2.Jonathan de Boyne Pollard2017-06-03
| | | | | | | | | | | | | | | | | | Partly undo 8ab08a65ba3bc9a44741a2ec9aa81fbcc77467fb. Further testing by Enrico Ghirardi suggests limiting the non-deferred automatic wrap to only the bottom line, whose rightmost column is not printed for iTerm.
| | * screen: Correct commentary.Jonathan de Boyne Pollard2017-06-03
| | | | | | | | | | | | This "trick" is not conditional upon the type of UI.
| | * tui: Several minor tweaks per commentary and 256-colourize PuTTY.Jonathan de Boyne Pollard2017-06-03
| | | | | | | | | | | | | | | * Don't use &data->grid when we already have grid . * Consolidate into a single assignment to the default_attr flag.
| | * tui: Coding style changes onlyJonathan de Boyne Pollard2017-06-03
| | |
| | * tui: Separate out built-in terminfo records.Jonathan de Boyne Pollard2017-06-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | They are now in their own nvim/tui/terminfo.c file. Also turn the TERMINAL_FAMILY macro into a function. Use the terminfo_ prefix for its name as other parts of the program are unlikely to want that namespace, and the prefix is already used for some other TUI functions.