aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/lua
Commit message (Collapse)AuthorAge
...
* tree-sitter: styleBjörn Linse2019-09-28
|
* tree-sitter: use standard luaL_newmetatable and luaL_checkudata patternBjörn Linse2019-09-28
|
* tree-sitter: rename tree_sitter => treesitter for consistencyBjörn Linse2019-09-28
|
* tree-sitter: add basic testing on ciBjörn Linse2019-09-28
| | | | build tree-sitter c parser on ci for testing purposes
* tree-sitter: support pre-registration of languagesBjörn Linse2019-09-28
|
* tree-sitter: objectify APIBjörn Linse2019-09-28
|
* tree-sitter: load parsers as .so filesBjörn Linse2019-09-28
|
* tree-sitter: initial tree-sitter supportBjörn Linse2019-09-28
|
* paste: fix handling of "<" in cmdline (#11094)Daniel Hahler2019-09-25
| | | Fixes https://github.com/neovim/neovim/issues/11088.
* Merge #10995 'paste: fix paste in terminal mode'Justin M. Keyes2019-09-11
|\
| * paste: fix paste in terminal modeBjörn Linse2019-09-11
|/
* docJustin M. Keyes2019-09-11
| | | | | fix #10127 fix #5972
* doc: |api-fast| [ci skip]Justin M. Keyes2019-09-09
|
* paste: fix normal-mode paste by different approach #10976Justin M. Keyes2019-09-09
| | | | | | | | 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.
* paste: insert before cursor alwaysJustin M. Keyes2019-09-08
| | | | | | | | | 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.
* paste: do not clobber msg area for small pastesJustin M. Keyes2019-09-08
|
* paste/cmdline: discard all chunks after first lineJustin M. Keyes2019-09-08
| | | | | | 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.
* paste: reset 'paste' option immediately #10974Justin M. Keyes2019-09-08
| | | | | | - 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).
* paste: redraw at endJustin M. Keyes2019-09-02
| | | | | | | | | | | | | | | | | | | | | | | 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 --} |
* paste: one undo-block per streamJustin M. Keyes2019-09-02
| | | | | | - 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.
* tui/input: defer nvim_paste properly.Björn Linse2019-08-31
| | | | | | | | | Otherwise cursor and redraw code for normal and insert mode will not run. The "tickle" workaround was used for this instead, and can now be removed. The builtin vim.lua got the name [string "-- Nvim-Lua stdlib: thevimmodule (:help l..."] in error messages. Fix it to something reasonable.
* paste: make vim.paste() "public"Justin M. Keyes2019-08-27
|
* paste: implement redo (AKA dot-repeat)Justin M. Keyes2019-08-27
| | | | | | - Normal-mode redo idiom(?): prepend "i" and append ESC. - Insert-mode only needs AppendToRedobuffLit(). - Cmdline-mode: only paste the first line.
* paste: insert text "before" cursor in Insert-modeJustin M. Keyes2019-08-27
|
* API: nvim_pasteJustin M. Keyes2019-08-27
|
* paste: phases, dotsJustin M. Keyes2019-08-27
| | | | | | - Send `phase` parameter to the paste handler. - Redraw at intervals and when paste terminates. - Show "..." throbber during paste to indicate activity.
* API: nvim_put: "follow" parameterJustin M. Keyes2019-08-27
|
* paste: use nvim_put()Justin M. Keyes2019-08-27
|
* paste: use chansend() in Terminal-modeJustin M. Keyes2019-08-27
|
* paste: fixup testsJustin M. Keyes2019-08-27
|
* paste: abort paste if handler does not return trueJustin M. Keyes2019-08-27
|
* TUI/paste: always flush on paste mode-changeJustin M. Keyes2019-08-27
| | | | | | 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.
* TUI/paste: define paste function as Lua builtinJustin M. Keyes2019-08-27
| | | | | | | - 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.
* lua/stdlib: cleanupJustin M. Keyes2019-08-27
|
* Merge pull request #10171 from blueyed/vim-8.1.1318Daniel Hahler2019-08-09
|\ | | | | vim-patch:8.1.1318: code for text changes is in a "misc" file
| * includesDaniel Hahler2019-08-07
| |
* | lua: minimal UTF-16 support needed for LSPBjörn Linse2019-08-08
|/
* lua: add vim.in_fast_event() to check if we are in a luv callbackBjörn Linse2019-08-05
|
* lua: do not crash on syntax error in debug.debug()Björn Linse2019-08-05
|
* lua: immediate-callback safe print()Björn Linse2019-08-05
|
* api/lua: make nvim_execute_lua use native lua floats, not special tablesBjörn Linse2019-07-01
| | | | | | | | | | Rationale: the purpose of nvim_execute_lua is to simply call lua code with lua values. If a lua function expects a floating point value, it should be enough to specify a float as argument to nvim_execute_lua. However, make sure to preserve the existing roundtripping behavior of API values when using `vim.api` functions. This is covered by existing lua/api_spec.lua tests.
* make vim.loop == require'luv'Björn Linse2019-06-30
| | | | | This avoids initializing libluv a second time if a plugin invokes require'luv'. It is probably not an issue, but better to be safe.
* libluv: use luv_set_callback to control callback executionBjörn Linse2019-06-30
| | | | | Disable the use of deferred API functions in a fast lua callback Correctly display error messages from a fast lua callback
* api/lua: add on_detach to nvim_buf_attachBjörn Linse2019-06-15
|
* lua: introduce vim.loop (expose libuv event-loop) #10123George Zhao2019-06-10
| | | | | | Co-authored-by: Andrey Popp <8mayday@gmail.com> closes #9546 closes #10084
* lua: docs and tests for vim.scheduleBjörn Linse2019-06-05
|
* lua: add vim.schedule(cb)Andrey Popp2019-06-05
| | | | | This executes Lua callback on main loop's event queue so that nvim API is safe to call.
* api: allow nvim_buf_attach from lua using callbacksBjörn Linse2019-06-04
|
* messages: use proper multiline error message for rpcrequest and API wrappersBjörn Linse2019-05-26
|
* lua/shared: share trim() implJustin M. Keyes2019-05-20
|