| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Fix some small doc issues
* doc: fixup
* doc: fixup
* Fix lint and rebase
* Remove bad advice
* Ugh, stupid mpack files...
* Don't let people include these for now until they specifically want to
* Prevent duplicate tag
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* add lua function to highlight yanked region
* extract namespace, better naming, default values
* add default for event argument
* free timer
* factor out mark to position calculation
* d'oh
* make sure timer stops before callback (cf. luv example)
* factor out timer, more documentation
* fixup
* validate function argument for schedule
* fix block selection past eol
* correct handling of multibyte characters
* move arguments around, some cleanup
* move utility functions to vim.lua
* use anonymous namespaces, avoid local api
* rename function
* add test for schedule_fn
* fix indent
* turn hl-yank into proper (hightlight) module
* factor out position-to-region function
mark extraction now part of highlight.on_yank
* rename schedule_fn to defer_fn
* add test for vim.region
* todo: handle double-width characters
* remove debug printout
* do not shadow arguments
* defer also callable table
* whitespace change
* move highlight to vim/highlight.lua
* add documentation
* add @return documentation
* test: add check before vim.defer fires
* doc: fixup
|
|
|
|
|
| |
* Add buffer, window and tab accessors
* Fix deletion and add tests
|
|
|
|
|
|
| |
* paste: support replace mode
* Clean up
Co-authored-by: Jesse Bakker <git@jessebakker.com>
|
| |
|
|
|
| |
* Add more tests for vim.wo
|
| |
|
| |
|
|
|
|
|
| |
Also missing option should be an error. Options are functionality,
not arbitrary variable names (as for vim.g)
|
|
|
|
|
|
|
|
| |
- Add vim variable meta accessors: vim.env, vim.{g,v,w,bo,wo}
- Redo gen_char_blob to generate multiple blobs instead of just one
so that multiple Lua modules can be inlined.
- Reorder vim.lua inclusion so that it can use previously defined C
functions and utility functions like vim.shared and vim.inspect things.
- Inline shared.lua into nvim, but also keep it available in runtime.
|
|
|
|
| |
- Rework :help lua-commands
- Rename if_lua.txt => lua.txt
|
|
|
|
|
|
| |
Mainly configuration and RPC infrastructure can be considered "done". Specific requests and their callbacks will be improved later (and also served by plugins). There are also some TODO:s for the client itself, like incremental updates.
Co-authored by at-tjdevries and at-h-michael, with many review/suggestion contributions.
|
|
|
|
|
|
| |
Problem: scripts/gen_vimdoc.py gets confused and tries to generate docs
for `fn_index` and `func`.
Solution: Rename them to be private.
|
|
|
| |
fix #11344
|
| |
|
|
|
|
|
|
|
|
| |
compared to vim.api.|nvim_call_function|, this fixes some typing issues
due to the indirect conversion via the API. float values are preserved
as such (fixes #9389) as well as empty dicts/arrays.
Ref https://github.com/norcalli/nvim.lua for the call syntax
|
| |
|
|
|
|
| |
build tree-sitter c parser on ci for testing purposes
|
|
|
| |
Fixes https://github.com/neovim/neovim/issues/11088.
|
|\ |
|
|/ |
|
|
|
|
|
| |
fix #10127
fix #5972
|
| |
|
|
|
|
|
|
|
|
| |
Forcing insert-mode after the first paste-chunk seems to work, as an
alternative to a9e2bae0eb69 (insert-before-cursor).
NB: Dot-repeat needs to match the original action. Since a9e2bae0eb69
changed paste to insert-before-cursor, dot-repeat must also. But that
makes dot-repeat unpleasant/unusual.
|
|
|
|
|
|
|
|
|
| |
Inserting "after" the cursor in Normal-mode, for big paste-streams, is
not reliable: sometimes the text "after" the cursor ends up in the
middle of the pasted text. Maybe the cursor position is not updated?
To avoid weird behavior, always paste "before". Maybe nvim_put() or
vim.paste() can be fixed more properly later.
|
| |
|
|
|
|
|
|
| |
Problem: If multiple paste "chunks" are streamed, chunks after the
first line are pasted into the buffer.
Solution: Check for cmdline-mode for all chunks in a paste-stream.
|
|
|
|
|
|
| |
- Workaround #10966: 'paste' option is not always reset.
- In any case there's not much reason to wait until phase=3, because
pasting in cmdline-mode skips lines after the first line (thus the
`:set paste .. :set nopaste` dance happens only ~once).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Attempt to fix test failure since 976c6667e140 removed per-chunk redraw:
ERROR test/functional/terminal/tui_spec.lua: TUI paste: cmdline-mode inserts 1 line
test/functional/terminal/tui_spec.lua:367: in function <test/functional/terminal/tui_spec.lua:360
Expected:
|*foo |
|* |
|{4:~ }|
|{4:~ }|
|{5:[No Name] [+] }|
|:"line 1{1:"} |
|{3:-- TERMINAL --} |
Actual:
|* |
|*{4:~ }|
|{4:~ }|
|{4:~ }|
|{5:[No Name] [+] }|
|:"line 1{1:"} |
|{3:-- TERMINAL --} |
|
|
|
|
|
|
| |
- All "chunks" in a paste-stream should form a single undo-block. Side
effect of 7a8579288424 was to create an undo-block for each chunk.
- Also: remove old :redraw force logic, irrelevant after 7a8579288424.
|
| |
|
|
|
|
|
|
| |
- Normal-mode redo idiom(?): prepend "i" and append ESC.
- Insert-mode only needs AppendToRedobuffLit().
- Cmdline-mode: only paste the first line.
|
| |
|
| |
|
|
|
|
|
|
| |
- Send `phase` parameter to the paste handler.
- Redraw at intervals and when paste terminates.
- Show "..." throbber during paste to indicate activity.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Flush input before entering, not only when leaving, paste mode. Else
there could be pending input which will erroneously be sent to the paste
handler.
|
|
|
|
|
|
|
| |
- Define in Lua so that it is compiled-in (available with `-u NONE`).
TODO: Eventually we will want a 'pastefunc' option or some other way to
override the default paste handler.
|
| |
|
|
|
|
|
| |
Disable the use of deferred API functions in a fast lua callback
Correctly display error messages from a fast lua callback
|
| |
|
|\
| |
| |
| | |
ref #8288
|
| |
| |
| |
| |
| | |
Leave trim() in vim.lua, because gen_vimdoc.py needs at least one
function in there, else it gets confused...
|
| |
| |
| |
| | |
deepcopy() was duplicated in test/helpers.lua
|
| | |
|
| | |
|