aboutsummaryrefslogtreecommitdiff
path: root/src/nvim
Commit message (Collapse)AuthorAge
* shell.c: A full RBuffer with no NL can freeze shell output. #3156oni-link2015-08-11
| | | | | | | | | | | | | | | out_data_cb() can return without emptying the full RBuffer (no NL was seen). Because the shell output stream is stopped until space in the Rbuffer is freed up, no more shell output is written. To prevent this, output the full RBuffer when write_output() did not write anything. write_output() can also process the same RBuffer content more than once, if no NL was seen. To prevent NUL bytes from producing new lines (if lines are not written to a buffer), translate NUL to SOH(1). Fixes #2983
* tui: avoid double-resize on SIGWINCH. #3145Felipe Morales2015-08-10
|
* vim-patch:7.4.781 #3065Marco Hinz2015-08-09
| | | | | | | | Problem: line2byte() returns one less when 'bin' and 'noeol' are set. Solution: Only adjust the size for the last line. (Rob Wu) Original patch: https://code.google.com/p/vim/source/detail?r=30c9301f33ed76d0b76b9e22362f5e78e26786da
* vim-patch:7.4.773 #3066Marco Hinz2015-08-09
| | | | | | | | Problem: 'langmap' is used in command-line mode when checking for mappings. Solution: Do not use 'langmap' in command-line mode. (Larry Velazquez) Original patch: https://code.google.com/p/vim/source/detail?r=5b1eefbf9a532f32a66fa13abbd671488aaafd5c
* vim-patch:7.4.776 #3062Marco Hinz2015-08-09
| | | | | | | | Problem: Equivalence class for 'd' does not work correctly. Solution: Fix 0x1e0f and 0x1d0b. (Dominique Pelle) Original patch: https://code.google.com/p/vim/source/detail?r=94b17958585153641ad1e813fa144cad57c7170f
* clipboard: support clipboard=unnamedplus,unnamedBjörn Linse2015-08-07
|
* clipboard: fixup inconsequential yet embarrassing mixupBjörn Linse2015-08-06
|
* eval: Use proper refcount of msgpack type listsZyX2015-08-05
|
* channel.c: Only free a channel after close callbacks are executed #3132oni-link2015-08-05
| | | | | | | | | | | | parse_msgpack() closes a channel's stream on EOF error and the stream's close callback close_cb() is queued for the next libuv loop iteration. When parse_msgpack() returns, it has freed the channel and the queued stream callback will access this freed memory. To prevent this, increase the channel's reference count and let the stream's close callback call decref(). Fixes #3128
* os_get_user_name() for non UNIX system #2729Rui Abreu Ferreira2015-08-04
| | | | | | | | os_get_user_name() requires getuid(), which is only available in UNIX. Return FAIL for non UNIX systems. On FAIL os_get_user_name() fills the buffer with the uid. In Windows libuv uses 0 for uid in stat structs, so 0 is used here too.
* tui: Fix terminal detection for cursor shape #3129Keerthan Jaic2015-08-04
| | | | | Default to DECSCUSR, except for known cases where other codes are used or changing cursor shape is unsupported
* Merge pull request #3034 from ZyX-I/msgpack-evalJustin M. Keyes2015-08-03
|\ | | | | msgpack viml functions for dump/restore
| * eval: Call list_append_allocated_string from list_append_stringZyX2015-08-02
| |
| * vim_to_msgpack: Silence -Werror=unitialized compiler errorZyX2015-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Compiler warning was found in [QuickBuild logs][1] from [this page][2]. GCC and clang on travis appear to be fine. Relevant log parts: Step Log (master>buildall>build-node?testNode=linux-64>build-and-run-tests>build-and-run-tests-parameterized?buildType=Release>configure-neovim-and-build-nvim) <…> 16:26:31,364 WARN - /home/quickbuild/buildagent/workspace/root/neovim/pull-requests-automated/src/nvim/eval.c: In function ‘f_msgpackdump’: 16:26:31,364 WARN - /home/quickbuild/buildagent/workspace/root/neovim/pull-requests-automated/src/nvim/eval.c:12371:26: error: ‘cur_tv’ may be used uninitialized in this function [-Werror=uninitialized] 16:26:31,364 WARN - /home/quickbuild/buildagent/workspace/root/neovim/pull-requests-automated/src/nvim/eval.c:12328:21: note: ‘cur_tv’ was declared here 16:26:31,938 WARN - cc1: all warnings being treated as errors [1]: http://neovim-qb.szakmeister.net/wicket/page?4-1.ILinkListener-content-buildTab-panel-errorContainer-steps-5-logLink [2]: http://neovim-qb.szakmeister.net/build/2099/overview
| * ex_cmds*: Silence -Wstrict-prototypes warningsZyX2015-08-02
| | | | | | | | | | Due to a number of places where headers generated from these files are included gcc with -DEXITFREE produces *loads* of warnings for these functions.
| * eval: Remove most of msgpack* functions limitationsZyX2015-08-02
| |
| * eval: Add msgpackparse and msgpackdump functionsZyX2015-08-02
| |
* | test: call scandir_next_with_dots() more than onceJustin M. Keyes2015-08-01
| | | | | | | | Also cosmetic reduction.
* | Add the . and .. entries to glob()Felipe Morales2015-08-01
| | | | | | | | | | | | | | os_scandir() and os_scandir_next() skip over those, because of the unverlying libuv funcitons behaviour. Fixes #2954
* | Remove spurious warning when reading directoriesFelipe Morales2015-08-01
| |
* | vim-patch:7.4.600 #3081cztchoice2015-07-31
| | | | | | | | | | | | | | Problem: Memory wasted in struct because of aligning. Solution: Split pos in lnum and col. (Dominique Pelle) https://github.com/vim/vim/commit/v7-4-600
* | tui: Use underline cursor in Replace modeOmar Sandoval2015-07-26
| | | | | | | | | | | | | | This is a port of my original contribution to Vim, added in 7.4.687 (https://github.com/vim/vim/commit/v7-4-687). The TUI code has been heavily refactored (see esp. 25ceadab37edba13f5afa78d8b4723da03ef35f0), so this required some translation, but the logic is the same.
* | api: Simplify UI API on mode changeOmar Sandoval2015-07-26
| | | | | | | | | | | | | | Currently, there are two functions in the UI API that are called when the mode changes: insert_mode() and normal_mode(). These can be folded into a single mode_change() entrypoint which can do whatever it wants based on the mode it is passed, limited to INSERT and NORMAL for now.
* | Merge pull request #2288 from ZyX-I/autovimsynJustin M. Keyes2015-07-26
|\ \ | | | | | | Move part of syntax/vim.vim to syntax/vim/generated.vim
| * | syntax: List NeoVim-specific autocmd eventsZyX2015-07-26
| | | | | | | | | | | | Note: list was copied from master (7a6bf3f418c5ad94ac2ac71f21275a87d08e87b9). I did not add more events there.
| * | options: Move option definitions to options.luaZyX2015-07-26
| | |
| * | fileio: Move event definitions to the generator scriptZyX2015-07-26
| | |
* | | os/fs: Move mkdir_recurse from eval.c to os/fs.cZyX2015-07-26
| | |
* | | ex_docmd: Make E739 message contain strerror() outputZyX2015-07-26
| | |
* | | os/fs: Define os_strerror as an alias to uv_strerrorZyX2015-07-26
|/ / | | | | | | It is not needed to know that os/* uses libuv.
* | Use NVIM instead of VIM in default title.Felipe Morales2015-07-23
| |
* | Delete test86 and 87 #3074Björn Linse2015-07-22
| | | | | | | | | | | | | | | | | | | | | | | | The python-client has it's own test suite, and this isn't even run: see the has('nvim') call. Taken from https://github.com/bfredl/neovim/commit/1acf4ace5224cf12472d2b086f55a74714491d6f with minor modifications. "Now that you've done the necessary cleanup, why not go ahead and merge this." @bfredl
* | menu: Fix :emenu mode detection #2992Robin Allen2015-07-22
| | | | | | | | | | | | | | | | | | | | | | | | | | A menu item can have separate bindings for each Vim mode. :emenu checks to see which binding it should execute. But, it assumes it can only be called from Normal mode, so its mode detection is based on some guesswork. For instance, it detects if you've just used C-O and, if so, uses the Insert mode binding. Now that :emenu can be called from any mode (via vim_command), this commit has it check the actual mode we're in, and simply use the binding for that mode if we aren't in Normal mode.
* | options,tui: don't hardcode default terminal sizeFelipe Morales2015-07-21
| | | | | | | | also, include some checks.
* | tui: respect the 'co' and 'lines' options on startupFelipe Morales2015-07-21
| | | | | | | | | | `nvim --cmd "set co=... lines="` didn't work as expected, and forced to set those options on VimEnter or afterwards.
* | tui: send resize sequences to the terminalFelipe Morales2015-07-21
| | | | | | | | | | | | | | | | Neither setting the 'columns' and 'lines' options nor using the `:winsize` command resized the terminal window, which caused display glitches. Re: #2863
* | tests: Migrate legacy test 80. #2989Lucas Hoffmann2015-07-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The test is also split in several blocks and heavily modernized. This was done to prevent the following quoting and escaping problems during migration: - the vim command `put =...` treats double quotes as the start of a comment so they have to be escaped with a backslash - when inserting control characters on the command line they have to be escaped with <C-V> The parts one and two of the test are functional identical so they are wrapped in a local function. The only difference was which letters where used to test the same feature. Part six did test a flag in 'cpoptions' that has been removed in neovim. It has therefore been removed as well. Reviewed-by: Michael Reed <Pyrohh@users.noreply.github.com>
* | tui: Unconditionally enable bracketed paste mode #3060crondog2015-07-21
| | | | | | | | | | | | | | | | | | There are more terminals which have bracketed paste support and it doesnt seem to do any harm with terminals that dont support it eg screen Reviewed-by: Marco Hinz <mh.codebro@gmail.com> Reviewed-by: Michael Reed <Pyrohh@users.noreply.github.com> "+1 Let's see what happens" Justin M. Keyes <justinkz@gmail.com>
* | eval.c: Only inline float_op_wrapper on non-i386 #3072Wander Nauta2015-07-21
| | | | | | | | | | | | | | | | | | glibc on i386 seems to have an optimization that makes it harder to call some math functions indirectly from inside an inlined function, causing compile-time errors with some versions of gcc. This removes inlining on that platform. Closes #3071
* | Uncomment merged patches in version.cMarco Hinz2015-07-21
| | | | | | | | | | | | 7.4.774 -> https://github.com/neovim/neovim/pull/2563 7.4.775 -> https://github.com/neovim/neovim/pull/2564 7.4.784 -> https://github.com/neovim/neovim/pull/2792
* | rstream: Fix read_cb invocationThiago de Arruda2015-07-21
| | | | | | | | | | | | - Add missing call when the stream is a file - NULL check because it is possible to call rstream_start with the callback set to NULL.
* | Remove ':Print' command #3049Michael Reed2015-07-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | There's no way this isn't some long-running joke: "Just as ':print'. Was apparently added to Vi for people that keep the shift key pressed too long..." Note: A user command can overrule this command. Regarding ':X': the command has been removed for a while, but the documentation must have been missed, so remove it here. Reviewed-by: Justin M. Keyes <justinkz@gmail.com> Helped-by: @jusga
* | clipboard: handle middle-click paste correctly.Björn Linse2015-07-20
| | | | | | | | | | Also handle clipboard errors more like vim: paste from unnamed register if clipboard provider fails.
* | Source provider at start if &cb is set #3025Marco Hinz2015-07-20
| | | | | | | | | | | | | | | | | | | | | | | | | | The main problem is that <c-c> is a default mapping but also sets got_int. Because of the former, normal_cmd() is kicked off which eventually leads to sourcing the clipboard provider. But due to the latter, do_source() throws an error, because got_int is set. This is a temporary workaround and sources the clipboard provider before main_loop(), if &clipboard is set. References #3023.
* | defaults: set 'history' to 10000 by default. #2868Felipe Morales2015-07-20
| | | | | | | | | | | | Note: the new history value is the max allowed. Re: https://github.com/neovim/neovim/issues/2676
* | Remove POSIX 'cpoptions': cleanupMichael Reed2015-07-19
| | | | | | | | | | | | - CPO_ALL and CPO_VI are identical, so merge them - No longer check for the environment variable 'VIM_POSIX' - In vim_diff.txt, mention the removal of 'cpoptions' flags
* | Remove POSIX 'cpoptions': '\'Michael Reed2015-07-19
| |
* | Remove POSIX 'cpoptions': '.'Michael Reed2015-07-19
| |
* | Remove POSIX 'cpoptions': '/'Michael Reed2015-07-19
| |
* | Remove POSIX 'cpoptions': '&'Michael Reed2015-07-19
| |