aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
* | os_setenv: use _wputenv_s; remove vestigial code #7920Justin M. Keyes2019-02-25
|/ | | | | _putenv_s variant was left over from 810d31a43001, should have been removed in cd5b1315757e.
* TUI: do not resize host-terminal on startup (#9645)Justin M. Keyes2019-02-25
| | | | | | ...unless the 'lines' and/or 'columns' options were set. ref 5732340c2035 fixes #5843
* vim-patch:8.1.0980: extend() insufficiently tested (#9646)Jan Edmund Lazo2019-02-25
| | | | | Problem: extend() insufficiently tested. Solution: Add more tests. (Dominique Pelle, closes vim/vim#4040) https://github.com/vim/vim/commit/58d63a0a2364e1f06a80550f9f5038145b339171
* vim-patch:8.1.0225: mode() does not indicate using CTRL-O from Insert mode ↵Justin M. Keyes2019-02-24
| | | | | | | (#9644) Problem: Mode() does not indicate using CTRL-O from Insert mode. Solution: Add "niI", "niR" and "niV" to mode() result. (closes vim/vim#3000) https://github.com/vim/vim/commit/612cc3888b136e80485132d9f997ed457dbc5501
* vim-patch:8.1.0959: sorting large numbers is not tested (#9641)Jan Edmund Lazo2019-02-23
| | | | | | Problem: Sorting large numbers is not tested and does not work properly. Solution: Add test. Fix comparing lines with and without a number. (Dominique Pelle, closes vim/vim#4017) https://github.com/vim/vim/commit/a25e3d06956f1bc11c68fe60149acce2d8547092
* Merge #9509 'TUI: detect background color'Justin M. Keyes2019-02-22
|\
| * TUI: rework background-color detectionJustin M. Keyes2019-02-22
| | | | | | | | | | | | | | | | | | - Like Vim, use set_option_value() followed by reset_option_was_set(). - Do not use set_string_default(), so the default is predictable. This affects `:set bg&`. - Wait until end-of-startup (VimEnter) to handle the response. The response is racey anyways, so timing is irrelevant. This allows OptionSet to be triggered, unlike during startup.
| * Merge #5027 'TUI: detect background color'Justin M. Keyes2019-02-17
| |\
| | * Merge #5027 'TUI: detect background color'Justin M. Keyes2019-01-17
| | |\
| | | * Automatically detect terminal background and set bg=dark or bg=lightJosh Triplett2016-07-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | xterm-compatible terminals support reporting their configured colors back to the application. Use this to obtain the current background color, compute its luminance to classify it as light or dark, and set 'bg' accordingly. Also set the default for 'bg', so that `:set bg&` will revert to that detected default.
* | | | I/O: ignore ENOTSUP for failed fsync()Justin M. Keyes2019-02-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Suggested by ZyX in https://github.com/neovim/neovim/issues/6725#issuecomment-312197691 : > There already is an exception if writing to a “device” (e.g. FIFO). > It makes sense to ignore certain errors like ENOTSUP or EOPNOTSUPP > since it is not something we or user can do anything about. ref #6725
* | | | deps: update to libuv v1.26.0Justin M. Keyes2019-02-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Notable changes since v1.23.2: - v1.26.0 - uv_os_uname() - unix: don't attempt to invalidate invalid fd https://github.com/libuv/libuv/commit/1ce6393a5780538ad8601cae00c5bd079b9415a9 - v1.25.0 - unix: better handling of unsupported F_FULLFSYNC (fixes #6725) https://github.com/libuv/libuv/commit/6fc797c3fe18d8df71b36ecf2184f085c0283251 - tty,win: fix Alt+key under WSL https://github.com/libuv/libuv/commit/d2e59bb6003d707bdebd7a381f5a7e1d0cc3fd3b - fsevents: really watch files with fsevents on macos 10.7+ https://github.com/libuv/libuv/commit/2d2af382ce84b91d6ee7a185af32fca7f0acd84b - win: fix duplicate tty vt100 fn key - v1.24.0 - win,fs: retry if uv_fs_rename fails https://github.com/libuv/libuv/commit/e94c184c7c4a18f3de569c97caeb83f4ff98a4b2 - later [reverted](https://github.com/libuv/libuv/issues/2098) but may be useful reference - win: support more fine-grained windows hiding https://github.com/libuv/libuv/commit/4c2dcca27b80945d6b7063f0ea031b8a75a46a52
* | | | fix "E667: Fsync failed" on macOSJustin M. Keyes2019-02-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | macOS: Try direct fsync() if F_FULLFSYNC fails. closes #6725 ref https://github.com/vim/vim/pull/4016 vim-patch:8.1.0957 > on macOS F_FULLFSYNC fails with ENOTSUP for unsupported storage systems > (e.g. SMB), though this is not documented in the Apple fcntl man page. libuv fixed this in v1.25.0: https://github.com/libuv/libuv/commit/6fc797c3fe18d8df71b36ecf2184f085c0283251
* | | | Merge #9626 from janlazo/vim-8.1.0926Justin M. Keyes2019-02-18
|\ \ \ \
| * | | | vim-patch:8.1.0276: no test for 'incsearch' highlighting with :sJan Edmund Lazo2019-02-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: No test for 'incsearch' highlighting with :s. Solution: Add a screendump test. https://github.com/vim/vim/commit/164251ff805e89a3d9a850a77e3139e28908f44a
| * | | | vim-patch:8.1.0387: no test for 'ambiwidth' detectionJan Edmund Lazo2019-02-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: No test for 'ambiwidth' detection. Solution: Add a test. https://github.com/vim/vim/commit/24839edc54e985ed88d063513226922a6f5b7554
| * | | | vim-patch:8.1.0668: no test for overstrike mode in the command lineJan Edmund Lazo2019-02-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: No test for overstrike mode in the command line. Solution: Add a test. (Dominique Pelle, closes vim/vim#3742) https://github.com/vim/vim/commit/c0676bab92bd6488e17d05a4a70dfff993ef524e
| * | | | vim-patch:8.1.0926: no test for :wnext, :wNext and :wpreviousJan Edmund Lazo2019-02-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: No test for :wnext, :wNext and :wprevious. Solution: Add a test. (Dominique Pelle, closes vim/vim#3963) https://github.com/vim/vim/commit/e93e5a504f481bd0dad9c504d5fcf0e5f0dfc6e6
* | | | | vim-patch:8.1.0937: invalid memory access in search patternJan Edmund Lazo2019-02-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Invalid memory access in search pattern. (Kuang-che Wu) Solution: Check for incomplete collation element. (Dominique Pelle, closes vim/vim#3985) https://github.com/vim/vim/commit/f1b57ab2ab18032d19f64bff7d22f3adb3fe93f7
* | | | | vim-patch:8.1.0934: invalid memory access in search patternJan Edmund Lazo2019-02-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Invalid memory access in search pattern. (Kuang-che Wu) Solution: Check for incomplete equivalence class. (closes vim/vim#3970) https://github.com/vim/vim/commit/985079c514e9ab85598b7bca019c77d3e42526f5
* | | | | lintJan Edmund Lazo2019-02-17
| | | | |
* | | | | vim-patch:8.1.0945: internal error when using pattern with NL in the rangeJan Edmund Lazo2019-02-17
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | Problem: Internal error when using pattern with NL in the range. Solution: Use an actual newline for the range. (closes vim/vim#3989) Also fix error message. (Dominique Pelle) https://github.com/vim/vim/commit/a5483448cba6997517003a22a8029f0de1007d0e
* / / / vim-patch:8.1.0932: remove Farsi support (#9622)Justin M. Keyes2019-02-17
|/ / / | | | | | | | | | | | | Problem: Farsi support is outdated and unused. Solution: Delete the Farsi support. https://github.com/vim/vim/commit/14184a3133b9a6ee5f711d493c04e41ba4fa7c2f
* | | Merge #9593 'API: nvim_create_buf: "scratch" param'Justin M. Keyes2019-02-17
|\ \ \
| * | | API: nvim_create_buf: add `scratch` parameterJustin M. Keyes2019-02-17
| | | | | | | | | | | | | | | | | | | | Creating a scratch buffer is a chore/ritual, and would be more useful/common if formally exposed.
* | | | terminal: Fix potential invalid local 'scrollback' (#9605)Justin M. Keyes2019-02-17
|/ / / | | | | | | | | | | | | | | | TermOpen autocmd may set local 'scrollback' to -1, this needs to be adjusted as in on_scrollback_option_changed(). fixes #9588 (OOM, out of memory)
* | | vim-patch:8.1.0803: session restore: handle single quotes #9620Marco Hinz2019-02-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Session file has problem with single quote in file name. (Jon Crowe) Solution: Use a double quoted string. Add a test. https://github.com/vim/vim/commit/ad36a3588d32985ee27bd11aa97e5195ef623158 Fixes https://github.com/neovim/neovim/issues/9618
* | | clang/"null pointer dereference": win_rotateJustin M. Keyes2019-02-14
| | |
* | | PVS/V1028: cast operands, not the resultJustin M. Keyes2019-02-14
| | |
* | | vim-patch:8.1.0852: findfile() and finddir() are not properly tested (#9609)Jan Edmund Lazo2019-02-13
| | | | | | | | | | | | | | | Problem: findfile() and finddir() are not properly tested. Solution: Extend the test and add more. (Dominique Pelle, closes vim/vim#3880) https://github.com/vim/vim/commit/ed71ed37bcd44bcbfcf59beee1248799de3315ec
* | | UI: change implementation of hl_rgb2cterm_color()Justin M. Keyes2019-02-12
| | | | | | | | | | | | | | | Replace the implementation cargo-culted from Vim's source with something simpler which "seems to look better" with 'pumblend'.
* | | UI: 'pumblend' for cterm (256-color TUI)Justin M. Keyes2019-02-12
| | | | | | | | | | | | | | | | | | hl_rgb2cterm_color, hl_cterm2rgb_color were adapted from Vim 8.1 (color2index, cterm_color2rgb). ref: https://github.com/vim/vim/commit/c5cd88554f1e0b2e9ff08d9a0748238dd8340ce1
* | | Merge #9601 from justinmk/tui-italicJustin M. Keyes2019-02-12
|\ \ \
| * | | TUI: assume italics support in all xterm-likesJustin M. Keyes2019-02-12
| | | | | | | | | | | | | | | | | | | | | | | | https://github.com/neovim/neovim/issues/9598#issuecomment-462421302 > On systems other than macOS, terminfo always has them set. It's part > of the ANSI standard SGR codes
| * | | TUI: sniff nsterm (Terminal.app) from $TERM_PROGRAMJustin M. Keyes2019-02-11
| | | |
| * | | TUI: force italics in tmuxJustin M. Keyes2019-02-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tmux users are encouraged to use "tmux-256color" instead of the old "screen-256color". Put this in your .tmux.conf : if-shell 'infocmp tmux-256color' 'set -g default-terminal "tmux-256color"' 'set -g default-terminal "screen-256color"' If default-terminal is "tmux-256color" AND tmux finds its terminfo, THEN it will enable italics (regardless of whether the terminfo contains sitm/ritm). OTHERWISE tmux "emulates screen", which means it emits italics as "reverse". That's unfortunate, but it's an acceptable compromise that allows Nvim to support italics in tmux by default in compatible (and increasingly-common) configurations. Test case: tmux nvim -u NORC +'hi Comment cterm=italic' CMakeLists.txt ref #9598
| * | | TUI: italics in Terminal.app (nsterm)Justin M. Keyes2019-02-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the conservative approach, requiring TERM=nsterm as recommended at `:help $TERM`. It won't work with Terminal.app's default of TERM=xterm-256color, nor in tmux. Test case: TERM=nsterm nvim -u NORC +'hi Comment cterm=italic' CMakeLists.txt closes #9598
* | | | highlight: handle blending with gui=reverse and guisp attributesBjörn Linse2019-02-11
|/ / /
* | | ui: implement ext_messagesBjörn Linse2019-02-10
| | | | | | | | | | | | Co-Author: Dongdong Zhou <dzhou121@gmail.com>
* | | api: add nvim_create_buf to create a new empty buffer.Björn Linse2019-02-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Loading existing files into a buffer is non-trivial and requires a window. Creating an unnamed emtpy buffer is trivial and safe though, thus worth a special case. Change nvim_buf_set_option to use aucmd_prepbuf. This is necessary to allow some options to be set on a not yet displayed buffer, such as 'buftype' option. vim-patch:7.4.1858: Add BLN_NEW to enforce buflist_new creating new buffer
* | | screen: cleanup allocation, clearing and validationBjörn Linse2019-02-07
| | | | | | | | | | | | | | | | | | grid_xx functions shouldn't randomly be called when the screen is not valid. Nvim deterministically initializes a default screen early in main(), so the default grid can be assumed to be allocated.
* | | screen: simplify scrolling codeBjörn Linse2019-02-07
| | | | | | | | | | | | | | | Since the separation between internal screen and TUI, internal scroll cannot FAIL. Delete the conditions for this.
* | | UI: implement 'pumblend' option for semi-transparent popupmenuBjörn Linse2019-02-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Why? - Because we can. - Because the TUI is just another GUI™ - Because it looks kinda nice, and provides useful context like 1 out of 100 times Complies with "don't pay for what you don't use". Some crashes for resizing were unfolded, add tests for those.
* | | UI: always use contrete colors for default_colors_setBjörn Linse2019-02-05
| | | | | | | | | | | | | | | But add an escape hatch needed for external TUI, so it still can use terminal emulator defaults.
* | | Merge #9560 from justinmk/Wmissing-prototypesJustin M. Keyes2019-02-04
|\ \ \
| * | | build: PRAGMA_DIAG_PUSH_IGNORE_MISSING_PROTOTYPESJustin M. Keyes2019-02-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Travis CI, -Wmissing-prototypes gives strange error: In file included from ../src/nvim/eval.c:5965: /home/travis/build/neovim/neovim/build/src/nvim/auto/funcs.generated.h.gperf:215:1: error: conflicting types for 'find_internal_func_gperf' find_internal_func_gperf (register const char *str, register unsigned int len) ^ ../src/nvim/eval.c:5962:20: note: previous declaration is here const VimLFuncDef *find_internal_func_gperf(register const char *str, ^
| * | | build: -Wmissing-prototypesJustin M. Keyes2019-02-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | ref #343 Though I don't see a strong benefit, it isn't too much of a burden, and maybe avoids confusion in some cases.
* | | | options: set 'scrollback' to -1 by default #9563Marco Hinz2019-02-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Makes the 'scrollback' option more consistent (same default for all buffers) and future-proof. - Default to -1 for all buffers, but treat it as an implementation detail. - Document range of 1 - 100_000. - New terminal buffer by default sets scrollback=10_000 if the global default is -1. - Existing terminal buffer: On entering terminal-mode or on refresh, if the user explicitly did `:set[local] scbk=-1`, the local value goes to 100_000 (max). (This is undocumented on purpose. Users should work with explicit values in the range of 1-100_000.)
* | | | events: add "Signal" event #9564Marco Hinz2019-02-04
|/ / / | | | | | | | | | | | | ..which gets triggered when SIGUSR1 is sent to the nvim process. Closes #9562
* | | Merge pull request #9579 from bfredl/pum_fixBjörn Linse2019-02-03
|\ \ \ | | | | | | | | popupmenu: fix alignment of kind and extra after #9530