| Commit message (Collapse) | Author | Age |
... | |
|
|
|
|
| |
Fix #18112
Make an exception for strings starting with "%!".
|
|
|
|
|
| |
(#18177)
Closes: https://github.com/neovim/neovim/issues/16919
|
|
|
|
|
|
|
|
| |
Problem: The mode #defines are not clearly named.
Solution: Prepend MODE_. Renumber them to put the mapped modes first.
https://github.com/vim/vim/commit/249591057b4840785c50e41dd850efb8a8faf435
A hunk from the patch depends on patch 8.2.4861, which hasn't been
ported yet, but that should be easy to notice.
|
|
|
|
| |
Work on https://github.com/neovim/neovim/issues/459
|
|
|
|
| |
Work on https://github.com/neovim/neovim/issues/459
|
|
|
|
| |
Work on https://github.com/neovim/neovim/issues/459
|
|
|
|
| |
Work on https://github.com/neovim/neovim/issues/459
|
|
|
|
|
| |
Adds range, count and reg to the return values of nvim_parse_cmd. Also makes
line1 and line2 be -1 if the command does not take a range. Also moves
nvim_parse_cmd to vimscript.c because it fits better there.
|
| |
|
| |
|
|
|
|
| |
Adds an API function to parse a command line string and get command information from it.
|
|
|
| |
Work on https://github.com/neovim/neovim/issues/459
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Cannot map <C-H> when modifyOtherKeys is enabled.
Solution: Add the <C-H> mapping twice, both with modifier and as 0x08. Use
only the first one when modifyOtherKeys has been detected.
https://github.com/vim/vim/commit/459fd785e4a8d044147a3f83a5fca8748528aa84
Add REPTERM_NO_SPECIAL instead of REPTERM_SPECIAL because the meaning of
"special" is different between Vim and Nvim.
Omit seenModifyOtherKeys as Nvim supports attaching multiple UIs.
Omit tests as they send terminal codes.
Keep the behavior of API functions.
|
|
|
|
|
|
|
|
|
|
|
| |
Problem:
winpty is only needed for Windows 8.1. Removing it reduces our build and code
complexity.
Solution:
- Remove winpty.
- Require Windows 10.
closes #18252
|
|
|
| |
Closes: https://github.com/neovim/neovim/issues/12691
|
| |
|
|
|
|
|
|
|
|
|
| |
Problem: The ModeChanged autocmd event is inefficient.
Solution: Avoid allocating memory. (closes vim/vim#10134) Rename
trigger_modechanged() to may_trigger_modechanged().
https://github.com/vim/vim/commit/2bf52dd065495cbf28e28792f2c2d50d44546d9f
Make v:event readonly for ModeChanged.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Syntax coloring and highlighting is in one big file.
Solution: Move the highlighting to a separate file. (Yegappan Lakshmanan,
closes vim/vim#4674)
https://github.com/vim/vim/commit/f9cc9f209ede9f15959e4c2351e970477c139614
Name the new file highlight_group.c instead.
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
|
|\
| |
| | |
feat(statusline): add global statusline
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Ref: #9342
Adds the option to have a single global statusline for the current window at the bottom of the screen instead of a statusline at the bottom of every window. Enabled by setting `laststatus = 3`.
Due to the fact that statuslines at the bottom of windows are removed when global statusline is enabled, horizontal separators are used instead to separate horizontal splits. The horizontal separator character is configurable through the`horiz` item in `'fillchars'`. Separator connector characters are also used to connect the horizontal and vertical separators together, which are also configurable through the `horizup`, `horizdown`, `vertleft`, `vertright` and `verthoriz` items in `fillchars`.
The window separators are highlighted using the `WinSeparator` highlight group, which supersedes `VertSplit` and is linked to `VertSplit` by default in order to maintain backwards compatibility.
|
| |
| |
| | |
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
|
| | |
|
| | |
|
|\ \
| | |
| | | |
fix(channel): fix channel consistency
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
- Fix the problem that chanclose() does not work for channel created by
nvim_open_term().
- Fix the problem that the loopback channel is not released.
- Fix the error message when sending raw data to the loopback channel.
|
|/ / |
|
| |
| |
| |
| | |
This also fixes a fair number of issues found in running the tests
|
| |
| |
| |
| |
| | |
This is starting from @geekodour's work at
https://github.com/neovim/neovim/pull/8326
|
|\ \
| | |
| | | |
refactor: apply uncrustify
|
| | | |
|
|/ /
| |
| |
| | |
Move decoration provider code to a separate file.
|
| |
| |
| |
| | |
Treat fillchar as single-width even if it isn't.
|
| |
| |
| |
| |
| |
| |
| |
| | |
os_proc_children returns 2 if there's a failure in the underlying
syscall. Only shell out to pgrep in that case.
It returns 1 if the pid isn't found. In that case, we can roll forward
with returning an empty list.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
`:verbose` didn't work properly with lua configs (For example:
options or keymaps are set from lua, just say that they were set
from lua, doesn't say where they were set at.
This fixes that issue. Now `:verbose` will provide filename and line no
when option/keymap is set from lua.
Changes:
- compiles lua/vim/keymap.lua as vim/keymap.lua
- When souring a lua file current_sctx.sc_sid is set to SID_LUA
- Moved finding scripts SID out of `do_source()` to `get_current_script_id()`.
So it can be reused for lua files.
- Added new function `nlua_get_sctx` that extracts current lua scripts
name and line no with debug library. And creates a sctx for it.
NOTE: This function ignores C functions and blacklist which
currently contains only vim/_meta.lua so vim.o/opt wrappers aren't
targeted.
- Added function `nlua_set_sctx` that changes provided sctx to current
lua scripts sctx if a lua file is being executed.
- Added tests in tests/functional/lua/verbose_spec.lua
- add primary support for additional types (:autocmd, :function, :syntax) to lua verbose
Note: These can't yet be directly set from lua but once that's possible
:verbose should work for them hopefully :D
- add :verbose support for nvim_exec & nvim_command within lua
Currently auto commands/commands/functions ... can only be defined
by nvim_exec/nvim_command this adds support for them. Means if those
Are defined within lua with vim.cmd/nvim_exec :verbose will show their
location . Though note it'll show the line no on which nvim_exec call was made.
|
| |
| |
| |
| |
| | |
Works similar to ex <f-args>. It only splits the arguments if the
command has more than one posible argument. In cases were the command
can only have 1 argument opts.fargs = { opts.args }
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
... for when `ns=0`.
Also update the documentation of nvim_set_hl to clarify the set
behaviour.
Fixes #17478
|
|\ \
| | |
| | | |
fix(api): re-route nvim_get_runtime_file errors
|
| |/
| |
| |
| | |
This allows nvim_get_runtime_file to be properly used via pcall
|
|/ |
|
| |
|
|
|
|
| |
Co-Authored-By: smolck <46855713+smolck@users.noreply.github.com>
|
| |
|
|\
| |
| | |
feat(highlight): ns=0 to set :highlight namespace
|
| |
| |
| |
| | |
Passing ns=0 to nvim_set_hl will alter the `:highlight` namespace.
|
|\ \
| |/
|/| |
feat(statusline): support multibyte fillchar
|
| |
| |
| |
| |
| |
| |
| |
| | |
This includes a partial port of Vim patch 8.2.2569 and some changes to
nvim_eval_statusline() to allow a multibyte fillchar. Literally every
line of C code touched by that patch has been refactored in Nvim, and
that patch contains some irrelevant foldcolumn tests I'm not sure how to
port (as Nvim's foldcolumn behavior has diverged from Vim's).
|
|\ \
| | |
| | | |
Various Coverity fixes
|
| |/ |
|