bfredl
b2295ac4ec
refactor(api): do not allocate temporaries for internal events
2023-01-03 17:31:54 +01:00
Lewis Russell
d127c684fa
fix(treesitter): properly restore 'syntax' ( #21358 )
2022-12-14 15:00:48 +00:00
Lewis Russell
fa7e1e2601
fix(api): nvim_buf_get_text regression ( #21071 )
2022-11-15 21:27:42 +00:00
dundargoc
66360675cf
build: allow IWYU to fix includes for all .c files
...
Allow Include What You Use to remove unnecessary includes and only
include what is necessary. This helps with reducing compilation times
and makes it easier to visualise which dependencies are actually
required.
Work on https://github.com/neovim/neovim/issues/549 , but doesn't close
it since this only works fully for .c files and not headers.
2022-11-15 10:30:03 +01:00
Lewis Russell
f8c6718277
feat(lua-api): avoid unnecessary allocations ( #19877 )
...
Lua makes (or reuses) an internal copy of strings, so we can safely push
buf pointers onto the stack.
2022-11-14 18:04:36 +00:00
bfredl
f31db30975
feat(lua): vim.ui_attach to get ui events from lua
...
Co-authored-by: Famiu Haque <famiuhaque@protonmail.com >
2022-08-31 20:40:17 +02:00
bfredl
c65e73f2d6
refactor(object): get rid of redundant FIXED_TEMP_ARRAY
...
use the MAXSIZE_TEMP_ARRAY + ADD_C pattern instead, as exemplified
by the changes in this commit.
2022-07-20 10:04:06 +02:00
Famiu Haque
46536f53e8
feat: add preview functionality to user commands
...
Adds a Lua-only `preview` flag to user commands which allows the command to be incrementally previewed like `:substitute` when 'inccommand' is set.
2022-05-31 20:55:05 +06:00
dundargoc
9fec6dc9a2
refactor(uncrustify): set maximum number of consecutive newlines to 2 ( #18695 )
2022-05-25 12:31:14 -06:00
zeertzjq
9aa5647e68
vim-patch:8.2.4911: the mode #defines are not clearly named ( #18499 )
...
Problem: The mode #defines are not clearly named.
Solution: Prepend MODE_. Renumber them to put the mapped modes first.
249591057b
A hunk from the patch depends on patch 8.2.4861, which hasn't been
ported yet, but that should be easy to notice.
2022-05-10 07:58:58 +08:00
zeertzjq
f5ed1b3908
fix(extmarks): revert to int for extmark row
2022-05-07 09:55:13 +08:00
Dundar Goc
21a31ea929
refactor: enable -Wconversion warning for edit.c
...
Work on https://github.com/neovim/neovim/issues/567
2022-05-06 11:00:29 +02:00
Dundar Göc
0fb571e3b5
refactor: add pure attribute to pure functions
...
This will allow compilers that support the pure attribute to make
further optimizations to functions.
2022-04-13 22:12:12 +02:00
dundargoc
853346a94d
refactor: format with uncrustify #15722
2021-09-19 13:07:42 -07:00
Gregory Anders
3fd4f2f611
fix: fix incorrect call sites of xcalloc
...
The number of elements comes first and the size of each element second.
2021-07-24 15:52:14 -06:00
dundargoc
4547137aaf
chore: use codespell to spell check #15016
2021-07-07 15:28:44 -07:00
Björn Linse
a0b7bb4153
luaref: free all references in buffer_updates
2021-04-03 16:27:58 +02:00
Björn Linse
94622ca66b
buffer updates: add on_reload callback and handle it in treesitter parser
2021-02-10 18:58:46 +01:00
Thomas Vigouroux
25e20da550
feat(buffer_updates): allow ignoring when previewing
...
Also adds a test that we actually subscribe to buffer events when in
CMDPREVIEW.
2020-12-15 22:29:27 +01:00
Björn Linse
997147e4bb
Merge pull request #12889 from vigoux/bytetrack-open-line
...
Fix invalid events with `o` `<CR>` and `autoindent`
2020-09-11 19:30:46 +02:00
Thomas Vigouroux
a8f71676a1
fix(bufupdates): avoid sending empty updates
2020-09-11 14:48:10 +02:00
Björn Linse
5f3ddb195e
lua: cleanup naming conventions of executor functions
2020-09-10 10:02:41 +02:00
Thomas Vigouroux
82fb6a8818
fix lints
2020-09-09 21:22:21 +02:00
Björn Linse
bc86f76c0a
api/buffer: add "on_bytes" callback to nvim_buf_attach
...
This implements byte-resolution updates of buffer changes.
Note: there is no promise that the buffer state is valid inside
the callback!
2020-09-09 21:22:21 +02:00
Björn Linse
7d7adf7acc
treesitter: cleanup some luahl stuff
2020-02-10 13:10:15 +01:00
Björn Linse
ca1a00edd6
extmarks/bufhl: reimplement using new marktree data structure
...
Add new "splice" interface for tracking buffer changes at the byte
level. This will later be reused for byte-resolution buffer updates.
(Implementation has been started, but using undocumented "_on_bytes"
option now as interface hasn't been finalized).
Use this interface to improve many edge cases of extmark adjustment.
Changed tests indicate previously incorrect behavior. Adding tests for
more edge cases will be follow-up work (overlaps on_bytes tests)
Don't consider creation/deletion of marks an undoable event by itself.
This behavior was never documented, and imposes complexity for little gain.
Add nvim__buf_add_decoration temporary API for direct access to the new
implementation. This should be refactored into a proper API for
decorations, probably involving a huge dict.
fixes #11598
2020-01-16 12:36:10 +01:00
Björn Linse
440695c296
tree-sitter: implement query functionality and highlighting prototype [skip.lint]
2019-12-22 12:51:46 +01:00
Björn Linse
c0993ed343
lua: support getting UTF-32 and UTF-16 sizes of replaced text
2019-08-06 20:24:36 +02:00
Björn Linse
b0e26199ec
lua: add {old_byte_size} to on_lines buffer change event
2019-08-06 17:01:47 +02:00
Björn Linse
64cdf9f78a
api/lua: add on_detach to nvim_buf_attach
2019-06-15 13:19:12 +02:00
Björn Linse
f5c56f03bb
api: allow nvim_buf_attach from lua using callbacks
2019-06-04 13:45:20 +02:00
MichaHoffmann
affef0aab8
add func_attr_printf in :
...
log.c
message.c
strings.c
fixed some printf warnings in:
src/nvim/undo.c
src/nvim/eval.c
src/nvim/eval/encode.c
src/nvim/eval/typval.c
src/nvim/ex_getln.c
src/nvim/fileio.c
src/nvim/lua/executor.c
src/nvim/main.c
src/nvim/regexp_nfa.c
src/nvim/shada.c
src/nvim/spellfile.c
src/nvim/tui/terminfo.c
src/nvim/garray.h
2018-09-24 21:28:04 +02:00
ZyX
eaf2a25f12
*: Replace b_changedtick with new always-inline functions
...
Ref #8474
2018-06-22 00:44:31 +03:00
Justin M. Keyes
b94b59e4e8
refactor: buf_collect_lines ( #8509 )
...
Move redundant common logic into a function.
2018-06-09 09:32:49 +02:00
Justin M. Keyes
f85cbea725
Merge #7917 'API: buffer updates'
2018-06-08 10:13:04 +02:00
KillTheMule
65e7f6f0b9
Rename some more, fixe borked renaming
2018-05-23 22:07:27 +02:00
KillTheMule
0bee3925ab
Send changedtick as first event if buffer contents weren't requested
2018-05-23 22:07:27 +02:00
KillTheMule
ad151847f1
Unify updates_start and updates to lines_event
...
Also rename changedtick -> changedtick_event
2018-05-23 22:07:27 +02:00
KillTheMule
491efc89d2
Lint
2018-05-23 22:07:27 +02:00
KillTheMule
e7451f8a91
Some renamings and doc changes
2018-05-23 22:07:27 +02:00
KillTheMule
2106bada5b
Enable -Wconversion
2018-05-23 22:07:27 +02:00
KillTheMule
6bdcbef2f5
The grand renaming
2018-05-23 22:07:27 +02:00