| Commit message (Collapse) | Author | Age |
| ... | |
| |
|
|
|
|
|
|
| |
This makes :<c-r>* work as expected and
avoids clobbering zero register ("0) when pasting unnamed clipboard
Helped-By: Scott Prager <splinterofchaos@gmail.com>
Helped-By: Michael Reed <m.reed@mykolab.com>
|
| |
|
|
|
|
| |
This makes the interpretion consistent with the way newlines are used in
the VIMENC format, while keeping the same fallback behaviour when
regtype is unspecified. Also check both cases explicitly in the tests.
|
| | |
|
| |
|
|
|
| |
Helped-by: Robin Allen <r@foon.uk>
Helped-by: Scott Prager <splinterofchaos@gmail.com>
|
| |
|
|
|
|
|
| |
channel_write() uses a ref-counted buffer for writing. This buffer
should be released if it was used in "refcount" channel_write() calls.
But calling channel_write() on a closed channel would return early and
not decrease the refcount of the used buffer.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Notifications for a channel will be sent directly if there are no
pending requests (for this channel). Otherwise notifications are queued
for later sending.
But in two cases a notification could be sent with pending requests:
* Broadcasting a notification
* A channel that has just finished its last pending request
would call send_delayed_notifications() for all channels.
To prevent this, every channel can now only send its own delayed
notifications and broadcasting checks for pending requests.
|
| |\
| |
| | |
CMakeLists: fix build when there're multiple arguments in C_FLAGS
|
| | |
| |
| |
| |
| |
| | |
Because the COMMAND arguments of custom_command takes a list, and
CMAKE_C_FLAGS is a string, it will be treated as a single long
argument, which will cause the build to fail.
|
| | |
| |
| |
| |
| | |
A call to `event_poll` is required to ensure the exit callback from the last job
is invoked.
|
| | |
| |
| |
| |
| |
| |
| |
| | |
Due to the way vimscript garbage collection handles cyclic references, its not
possible to rely on incrementing `dv_refcount` to prevent dicts still used
internally from being collected: If a object with dv_refcount > 0 isn't
reachable by vimscript code, it will be freed when `garbage_collect()` is
called. Add the `internal_refcount` field to prevent this.
|
| | |
| |
| |
| |
| |
| |
| | |
Problem: Setting 'history' to a big value causes out-of-memory errors.
Solution: Limit the value to 10000. (Hirohito Higashi)
https://github.com/vim/vim/tree/v7-4-336
|
| | |
| |
| |
| |
| |
| |
| |
| | |
Problem: In a help buffer the global 'foldmethod' is used. (Paul Marshall)
Solution: Reset 'foldmethod' when starting to edit a help file. Move the
code to a separate function.
https://github.com/vim/vim/releases/tag/v7-4-515
|
| | |
| |
| |
| |
| | |
If users want folds to be automatically collapsed, then they should just
set foldmethod=marker in their vimrc.
|
| | |
| |
| |
| |
| |
| | |
This also removes the `#elseif defined(MSWIN)` clause. Due to the
enclosing `if` block, we will never get to this point when src starts with
a '%', making the whole #elseif block dead code.
|
| |\ \
| |/
|/| |
[RDY] vim-patch:7.4.324
|
| | |
| |
| |
| |
| |
| |
| | |
Problem: In Ex mode, cyrillic characters are not handled. (Stas Malavin)
Solution: Support multi-byte characters in Ex mode. (Yukihiro Nakadaira)
https://github.com/vim/vim/releases/tag/v7-4-324
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Use os_scandir().
fname_case() only gets used when `defined(USE_FNAME_CASE)` (on operating
systems with case-insensitive file systems), but may be useful in other
contexts, so move it to path.c. (See the TODO.)
Remove the unused parameter, len.
|
| | |
| |
| |
| |
| | |
Merge unix_expandpath with dos_expandpath from upstream vim and use
os_scandir() over POSIX readdir().
|
| | |
| |
| |
| |
| | |
Merge mch_has_wildcard() and mch_has_exp_wildcar() with their upstream
equivalents for Windows and replace the "mch_" suffix with "path_".
|
| | | |
|
| |/ |
|
| |
|
|
|
| |
Use the `is_user_job` to ensure that the job was started by `jobstart` or
`termopen`.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
- Remove JobActivity autocmd and v:job_data variable
- Simplify `jobstart` to receive:
- An argument vector
- An optional dictionary which may contain any of the current `jobstart`
options plus `on_stdout`, `on_stderr` and `on_exit` callbacks.
- Refactor and add more job tests
- Update documentation
|
| |
|
|
|
|
| |
- Make it possible to call or unref ufunc_T pointers directly.
- Keep refcount of named functions, and stop them from being deleted if the
refcount is greater than 1.
|
| |
|
|
|
|
|
|
| |
Problem: Language mapping also applies to mapped characters.
Solution: Add the 'langnoremap' option, when on 'langmap' does not apply to
mapped characters. (Christian Brabandt)
https://github.com/vim/vim/releases/tag/v7-4-502
|
| |
|
|
|
|
|
| |
Problem: No test for what 7.4.517 fixes.
Solution: Adjust the tests for breakindent. (Christian Brabandt)
https://github.com/vim/vim/releases/tag/v7-4-529
|
| |
|
|
| |
Completes #1332.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of selecting stderr on startup if stdin is not a tty, first try reading
from it and only switch to stderr when reading fails. With this behavior we
support commands like:
```
echo q | nvim -es
```
and
```
ls *.md | xargs nvim
```
Fixed small bugs in rstream.c to make this happen.
|
| |
|
|
|
|
| |
Since all reads are queued by the event loop, we must also queue the exit event,
or else the process_close function can close the job streams before received
data is processed.
|
| |
|
|
| |
- Free memory allocated for job data when the job table is full.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit integrates libvterm with Neovim and implements a terminal emulator
with nvim buffers as the display mechanism. Terminal buffers can be created
using any of the following methods:
- Opening a file with name following the "term://[${cwd}//[${pid}:]]${cmd}"
URI pattern where:
- cwd is the working directory of the process
- pid is the process id. This is just for use in session files where a pid
would have been assigned to the saved buffer title.
- cmd is the command to run
- Invoking the `:terminal` ex command
- Invoking the `termopen` function which returns a job id for automating the
terminal window.
Some extra changes were also implemented to adapt with terminal buffers. Here's
an overview:
- The `main` function now sets a BufReadCmd autocmd to intercept the term:// URI
and spawn the terminal buffer instead of reading the file.
- terminal buffers behave as if the following local buffer options were set:
- `nomodifiable`
- `swapfile`
- `undolevels=-1`
- `bufhidden=hide`
- All commands that delete buffers(`:bun`, `:bd` and `:bw`) behave the same for
terminal buffers, but only work when bang is passed(eg: `:bwipeout!`)
- A new "terminal" mode was added. A consequence is that a new set of mapping
commands were implemented with the "t" prefix(tmap, tunmap, tnoremap...)
- The `edit` function(which enters insert mode) will actually enter terminal
mode if the current buffer is a terminal
- The `put` operator was adapted to send data to the terminal instead of
modifying the buffer directly.
- A window being resized will also trigger a terminal resize if the window
displays the terminal.
|
| | |
|
| | |
|
| |
|
|
|
|
| |
Most internal functions to modify buffers operate on the current buffer and
require temporary switchs. This macro is a temporary workaround until a cleaner
refactoring of the internal API is performed.
|
| |
|
|
| |
This ifndef causes problems when including fileio headers.
|
| | |
|
| |
|
|
|
| |
This is required to avoid event loop recursion due to indirect calls to
os_breakcheck by screenalloc
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
Also remove some MS-DOS references on lines already being touched.
Based on this commit:
https://github.com/justinmk/neovim/commit/e4db01ca8707c34dc808d7f6378aa3aba9002a2d
|
| |
|
|
|
|
|
|
|
|
| |
Add missing parentheses and whatnot, move dangling comment, etc. Some
specific items worth mentioning:
Fixed some references to non-existent tags, found via `make html`
msgpack_rpc/channel.c:
ELOG already prefixes each line with "error @ ..."
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
This commit pulls the some environment-variable handling functions out of
misc1.c and in to os/env.c. Previously submited as #1231, this is the start of
a patch series that does that work based on a more up-to-date master branch.
Major tasks accomplished:
- move functions and fix includes
- fix clint/clang analysis warnings
- correct documentation comments
|
| |
|
|
|
| |
Fix pointer passed to the handles in the uv_close() calls when process_spawn()
fails.
|
| |
|
|
|
| |
Add a SIGCHLD handler for cleaning up pty processes passing the WNOHANG flag. It
may also be used to cleanup processes spawned with uv_spawn.
|