aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
* | | api: When calling get/set_lines from vimL, don't convert between "\n" and "\0".Björn Linse2016-08-31
| | |
* | | api: unify buffer numbers and window ids with handlesBjörn Linse2016-08-31
| | | | | | | | | | | | also allow handle==0 meaning curbuf/curwin/curtab
* | | api: auto generate api function wrappers for vimlBjörn Linse2016-08-31
| | |
* | | api: rename "msgpack_rpc/defs.h" to "api/private/dispatch.h" and use the ↵Björn Linse2016-08-31
| | | | | | | | | | | | header generator.
* | | eval: Use generated hash to look up function listZyX2016-08-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | Problems: - Disables cross-compiling (alternative: keeps two hash implementations which need to be synchronized with each other). - Puts code-specific name literals into CMakeLists.txt. - Workaround for lua’s absence of bidirectional pipe communication is rather ugly.
* | | eval: add new function entriesBjörn Linse2016-08-31
| | |
* | | eval: Move VimL functions list to a lua fileZyX2016-08-31
| | | | | | | | | | | | | | | | | | Removes all kinds of problems with sorting, provides a ready-to-use function list representation for genvimvim.lua, does not require specifying function name twice (VimL function name (string) + f_ function name).
* | | vim-patch:7.4.1896 (#5258)Jurica Bradarić2016-08-29
| | | | | | | | | | | | | | | | | | | | | Problem: Invoking mark_adjust() when adding a new line below the last line is pointless. Solution: Skip calling mark_adjust() when appending below the last line. https://github.com/vim/vim/commit/82faa259cc42379f2a17d598a2a39d14048685b0
* | | signal_init: Always unblock SIGCHLD. (#5243)Justin M. Keyes2016-08-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Inherited signal mask may block SIGCHLD, which causes libuv to hang at epoll_wait. Closes #5230 Helped-by: Nicolas Hillegeer <nicolas@hillegeer.com> Helped-by: John Szakmeister <john@szakmeister.net> Note: the #pragma gymnastics are a workaround for broken system headers on macOS. signal.h: int sigaddset(sigset_t *, int); #define sigaddset(set, signo) (*(set) |= __sigbits(signo), 0) sys/_types/_sigset.h: typedef __darwin_sigset_t sigset_t; sys/_types.h: typedef __uint32_t __darwin_sigset_t; /* [???] signal set */ sigset_t is defined as unsigned int, but the sigaddset() ORs it with an int, mixing the types. So GCC generates a sign-conversion warning: sig.c:9:13: warning: implicit conversion changes signedness: 'int' to 'unsigned int' [-Wsign-conversion] (*(&s) |= __sigbits((sigset_t) 20), 0); ~~ ^~~~~~~~~~~~~~~~~~~~~~~~ 1 warning generated. System headers are normally ignored when the compiler generates warnings: https://gcc.gnu.org/onlinedocs/cpp/System-Headers.html > GCC gives code found in system headers special treatment. All warnings, > other than those generated by ‘#warning’ (see Diagnostics), are suppressed > while GCC is processing a system header. Macros defined in a system header > are immune to a few warnings wherever they are expanded. This immunity is > granted on an ad-hoc basis, when we find that a warning generates lots of > false positives because of code in macros defined in system headers. Instead of the #pragma workaround, we could cast the sigset_t pointer: # if defined(__APPLE__) sigaddset((int *)&mask, SIGCHLD); # else sigaddset(&mask, SIGCHLD); # endif but that could break if the headers are later fixed.
* | | api/ui: use ui options instead of one method per featureBjörn Linse2016-08-29
| | | | | | | | | | | | Use new nvim_ui_ prefix to avoid breaking change.
* | | api/ui: allow popupmenu to be drawn by external uiBjörn Linse2016-08-29
| | |
* | | iconv: Always include errno.h when USE_ICONV is defined (#5251)James McCoy2016-08-25
| | | | | | | | | | | | | | | When USE_ICONV is defined, iconv.h references various errno constants, but errno.h is only being included when HAVE_ICONV_H is not defined. This causes build failures on at least GNU/Hurd.
* | | Merge #5210 'vim-patch:7.4.1898 + :Man modifiers support'.Justin M. Keyes2016-08-25
|\ \ \
| * | | use bool type for flag mod_entry_T membersAnmol Sethi2016-08-24
| | | |
| * | | vim-patch:7.4.1898Anmol Sethi2016-08-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: User commands don't support modifiers. Solution: Add the <mods> item. (Yegappan Lakshmanan, closes vim/vim#829) https://github.com/vim/vim/commit/63a60ded3fd584847a05dccf058026e682abad90
* | | | Merge #5253 'perf: Disable clipboard in do_cmdline()'Justin M. Keyes2016-08-25
|\ \ \ \ | |_|/ / |/| | |
| * | | lintJustin M. Keyes2016-08-25
| | | |
| * | | perf: Disable clipboard in do_cmdline().Justin M. Keyes2016-08-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For any script--not just `:global` commands--there is no reason to update the system clipboard until the script is finished, so disable it during do_cmdline(). Before this change, 'clipboard=unnamedplus' causes scripted editing to be extremely slow (e.g. `:normal` in a while-loop). Closes #3534
| * | | ops.c: Rename start_global_changes().Justin M. Keyes2016-08-25
| |/ /
* / / eval: remove (char_u *) in constant get_dict_(string|number) parametersBjörn Linse2016-08-24
|/ / | | | | | | | | Remove redundant item availibility checks when constructing complete items from a dict.
* | Merge commit 'refs/pull/upstream/5156'Justin M. Keyes2016-08-22
|\ \
| * | LintingTommy Allen2016-08-17
| | |
| * | highlight: Added QuickFixLine highlight groupTommy Allen2016-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Links to Search by default screen.c: Combine CursorLine with QuickFixLine - HLF_QFL takes priority over HLF_CUL docs: Updated to mention QuickFixLine runtime: Added QuickFixLine to nvimHLGroup tests: QuickFixLine highlight
* | | ex_cmds: Factor pieces of functionality out of do_subJames McCoy2016-08-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | * sub_joining_lines: Optimization for :%s/\n// * sub_grow_buf: Allocation of buffer to contain replacement text * sub_parse_flags: Parse {flags} from :s command into subflags_T Although this doesn't reduce do_sub's size enough to satisfy lint, it covers the more straightforward pieces.
* | | lintJames McCoy2016-08-20
| | |
* | | vim-patch:7.4.2219James McCoy2016-08-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Recursive call to substitute gets stuck in sandbox. (Nikolai Pavlov) Solution: Handle the recursive call. (Christian Brabandt, closes vim/vim#950) Add a test. https://github.com/vim/vim/commit/f5a39447a8ebe162ee62caa2ee502cd0e65eecaa Closes #5118
* | | vim-patch:7.4.1700James McCoy2016-08-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Equivalence classes are not properly tested. Solution: Add tests for multi-byte and latin1. Fix an error. (Owen Leibman) https://github.com/vim/vim/commit/22e421549d54147d003f6444de007cb1d73f1d27 src/regexp.c changes weren't applied because they're specific to EBCDIC handling, which has been dropped from nvim. The latin1-specific tests were also removed since neovim intends to remove the ability to have 'encoding' set to anything other than utf8.
* | | job control: reuse common job code for rpc jobsBjörn Linse2016-08-20
| | | | | | | | | | | | This makes stderr and exit callbacks work for rpc jobs
* | | stream: set data together with callbackBjörn Linse2016-08-20
| | |
* | | build: initialize variable (#5194)Matt Fowles Kulukundis2016-08-19
| | |
* | | Merge #5198 from equalsraf/windows-path-is-absoluteJustin M. Keyes2016-08-18
|\ \ \ | |/ / |/| | Windows: path_is_absolute()
| * | path.c: Avoid code duplication for path separator checksRui Abreu Ferreira2016-08-18
| | |
| * | Windows: Check drive letter in absolute pathsRui Abreu Ferreira2016-08-18
| | | | | | | | | | | | | | | Check if drive letter is alphabetic character in path_is_absolute_path().
| * | Add Windows support to path_is_absolute()Rui Abreu Ferreira2016-08-18
| | | | | | | | | | | | vim-patch:0
* | | vim-patch:7.4.2112 (#5175)Shougo2016-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: getcompletion(.., 'dir') returns a match with trailing "*" when there are no matches. (Chdiza) Solution: Return an empty list when there are no matches. Add a trailing slash to directories. (Yegappan Lakshmanan) Add tests for no matches. (closes vim/vim#947) https://github.com/vim/vim/commit/b56195ed00a9a79aa6217cddbeedbc8cc7a5b6d8
* | | api: handle null string in buffer_add_highlightBjörn Linse2016-08-17
|/ /
* | Windows: get_past_head() (#5199)Rui Abreu Ferreira2016-08-13
| | | | | | | | | | | | | | | | | | | | Reported in #4955, get_past_head() is supposed to return a pointer after the head of the path (/ in UNIX, c:\ in Windows) but the windows case was removed. Removed the Mac reference in the comment, since there no special handling for Mac. vim-patch:0
* | Prevent endless loop in printdigraph(). (#5215)oni-link2016-08-11
| | | | | | | | | | | | | | | | Calling printdiagraph() with msg_silent != 0 can result in an endless loop because the loop condition never changes, if msg_col is never changed. To fix this, calculate the number of iterations before the loop, which is always smaller than list_width.
* | lintJames McCoy2016-08-11
| |
* | Restore ":browse oldfiles" behavior from VimJames McCoy2016-08-11
| | | | | | | | | | | | | | | | | | | | | | | | In 3b12bb225adda2aac40a55f7009cae05311b2a43, ":oldfiles" was taught to behave like Vim's ":browse oldfiles" if ":oldfiles!" was used. However, this conflates the use of ! for abandoning a modified buffer with choosing one file out of a list of oldfiles. Now that ":browse" is supported again, ":browse oldfiles" will allow the user to select an old file, while still complaining if that would cause a modified buffer to be abandoned. ":browse oldfiles!" will just abandon the buffer, as expected.
* | Re-add support for the :browse command modifierJames McCoy2016-08-11
| |
* | timers: do not crash after processing events in the handlerBjörn Linse2016-08-10
| |
* | Windows: Don't use literal path separatorsRui Abreu Ferreira2016-08-09
| | | | | | | | | | | | | | | | Per #2471, some path handling functions hardcode the UNIX path separator '/' causing them to fail in Windows. When BLACKSLASH_IN_FILENAME is set we may have to check against psepc and psepcN instead of PATHSEP or use vim_ispathsep_nocolon().
* | Set the default value for 'packpath'James McCoy2016-08-08
| | | | | | | | | | | | | | | | As noted in “:help 'packpath'”, the default value is supposed to be the same as that for 'runtimepath'. This was missed in the original port of the packages functionality from Vim. Closes #5193
* | Merge #5025 'input.c: Restore double click'Justin M. Keyes2016-08-07
|\ \
| * | lintsach1t2016-08-07
| | |
| * | input.c: restore double clicksach1t2016-08-07
| | |
* | | win32: readfile(): Directories should not show "[Permission Denied]".Justin M. Keyes2016-08-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 77135447e09903b45d1482da45869946212f7904 introduced: if (!newfile) { return FAIL; } which changed the semantics of the un-braced `else` in the `#ifndef UNIX` block immediately above it. This commit restores the semantics of Vim. Until now it mostly worked by accident, but on Windows it would mean that opening a directory would show "[Permission Denied]".
* | | readfile(): Ensure `perm` for non-Unix.Justin M. Keyes2016-08-07
| | | | | | | | | | | | | | | | | | In the (!read_buffer && !read_stdin) case, always set `perm` for all platforms. This also means we no longer need to set `perm` in the case of (fd < 0) for non-Unix.
* | | Merge #5130 from equalsraf/tb-appveyorJustin M. Keyes2016-08-07
|\ \ \ | |/ / |/| | Enable MSYS/MinGW builds in Appveyor