aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
| * | | refactor: remove char_u (#22829)dundargoc2023-04-02
| | | | | | | | | | | | Closes https://github.com/neovim/neovim/issues/459
| * | | vim-patch:9.0.1434: crash when adding package already in 'runtimepath' (#22849)zeertzjq2023-04-01
| | | | | | | | | | | | | | | | | | | | | | | | Problem: Crash when adding package already in 'runtimepath'. Solution: Change order for using 'runtimepath' entries. (closes vim/vim#12215) https://github.com/vim/vim/commit/39c9ec16ea7ef13c5d783481542ee9aa6c05282c
| * | | refactor: use bool type for global variables (#22842)ii142023-04-01
| | | |
| * | | refactor: add const and remove unnecessary casts (#22841)ii142023-04-01
| | |/ | |/|
| * | fix(api): return both link and attributes with nvim_get_hl (#22824)Sindre T. Strøm2023-03-31
| | | | | | | | | | | | | | | Problem: No way to get the actual highlight attributes for a linked group through |nvim_get_hl()| (not the attributes from the link target). Solution: Return the actual attributes as well as the link target name.
| * | fix(filetype): make recursive work...again (#22826)Lewis Russell2023-03-30
| | |
| * | feat(diagnostic): add support for tagsLewis Russell2023-03-30
| | | | | | | | | | | | | | | | | | The LSP spec supports two tags that can be added to diagnostics: unnecessary and deprecated. Extend vim.diagnostic to be able to handle these.
| * | Merge pull request #22791 from lewis6991/refactor/loadermiscLewis Russell2023-03-30
| |\ \ | | | | | | | | refactor(loader): changes
| | * | refactor(loader): use vim.fsLewis Russell2023-03-26
| | |/
| * | fix(autocmd): handle recursion for force set (#22820)Lewis Russell2023-03-30
| | |
| * | fix(filetype): avoid recursive FileType autocmds (#22813)Lewis Russell2023-03-29
| | |
| * | fix(api): Use local LastSet structure in nvim_get_option_info (#22741)Michal Liszcz2023-03-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fix(api): use local LastSet structure in nvim_get_option_info * nvim_get_option_info is deprecated. It is always using the global LastSet information as reported in #15232. * nvim_get_option_info2 is added. The new function additionally accepts an 'opts' table {scope, buf, win} allowing to specify the option scope and query local options from another buffer or window.
| * | build: drop curl.exe on Windowsdundargoc2023-03-28
| | | | | | | | | | | | | | | Curl is already shipped by default on Windows 10 starting from versions 1803. As we already require version 1809 we can safely remove it.
| * | vim-patch:9.0.1429: invalid memory access when ending insert mode (#22792)zeertzjq2023-03-27
| |/ | | | | | | | | | | | | | | Problem: Invalid memory access when ending insert mode. Solution: Check if the insert_skip value is valid. https://github.com/vim/vim/commit/1a08a3e2a584889f19b84a27672134649b73da58 Co-authored-by: Bram Moolenaar <Bram@vim.org>
| * feat(lua): add `vim.loader`Folke Lemaitre2023-03-26
| | | | | | feat: new faster lua loader using byte-compilation
| * vim-patch:9.0.1428: cursor in wrong position when leaving insert mode (#22786)zeertzjq2023-03-26
| | | | | | | | | | | | | | | | | | Problem: Cursor in wrong position when leaving insert mode. Solution: Update the w_valid flags. Position the cursor also when not redrawing. (closes vim/vim#12137) https://github.com/vim/vim/commit/c174c2e58c9e24a75b189e01143e6d057b84e96e Co-authored-by: Bram Moolenaar <Bram@vim.org>
| * fix: snprintf buffer overflow detected by -D_FORTIFY_SOURCE=3 (#22780)Andreas Schneider2023-03-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Wrong buffer size argument passed to snprintf() in set_cmdarg(): Thread no. 1 (24 frames) #8 snprintf at /usr/include/bits/stdio2.h:54 #9 set_cmdarg at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/eval.c:7044 #10 apply_autocmds_group at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/autocmd.c:1843 #11 apply_autocmds_exarg at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/autocmd.c:1549 #12 readfile at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/fileio.c:617 #13 buf_reload at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/fileio.c:5038 #14 buf_check_timestamp at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/fileio.c:4952 #15 check_timestamps at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/fileio.c:4678 #16 ex_checktime at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_cmds2.c:765 #17 execute_cmd0 at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:1620 #18 do_one_cmd at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:2275 #19 do_cmdline at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:584 #20 ex_execute at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/eval.c:7727 #21 execute_cmd0 at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:1620 #22 do_one_cmd at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:2275 #23 do_cmdline at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:584 #24 do_ucmd at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/usercmd.c:1661 #25 execute_cmd0 at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:1612 #26 do_one_cmd at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:2275 #27 do_cmdline at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:584 #28 nv_colon at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/normal.c:4058 #29 normal_execute at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/normal.c:1172 #30 state_enter at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/state.c:88 #31 normal_enter at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/normal.c:471 Solution: Subtract the offset from the buffer size. Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
| * Merge pull request #22762 from bfredl/hl2ctermbfredl2023-03-25
| |\ | | | | | | fix(api): make nvim_get_hl return 'cterm' attrs properly
| | * fix(api): make nvim_get_hl return 'cterm' attrs properlybfredl2023-03-23
| | |
| * | feat(api): nvim_exec2(), deprecate nvim_exec() #19032Evgeni Chasnovski2023-03-25
| | | | | | | | | | | | | | | | | | | | | Problem: The signature of nvim_exec() is not extensible per ":help api-contract". Solution: Introduce nvim_exec2() and deprecate nvim_exec().
| * | docs: how to debug TUI using gdb/lldb #22771Ryan Jenkins2023-03-25
| | | | | | | | | docs: Add info to the `Debug: TUI` docs about gdb/lldb usage
| * | refactor(PVS/V1048): remove duplicated assignments (#21873)Lucas Merritt2023-03-25
| | |
| * | vim-patch:9.0.1426: indent wrong after "export namespace" in C++ (#22777)zeertzjq2023-03-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Indent wrong after "export namespace" in C++. Solution: Skip over "inline" and "export" in any order. (Virginia Senioria, closes vim/vim#12134, closes vim/vim#12133) https://github.com/vim/vim/commit/99e4ab2a1e577ddb29030c09c308b67e16fd51c4 Co-authored-by: Virginia Senioria <91khr@users.noreply.github.com>
| * | build(win): export extern symbols for use in FFI #22756luukvbaal2023-03-23
| |/ | | | | | | | | Makes `extern` variables accessible through ffi on Windows. Follow-up to https://github.com/neovim/neovim/pull/15999
| * feat(api): add nvim_get_hl (#22693)Null Chilly2023-03-23
| | | | | | | | | | Problem: no way of getting all highlight group definitions in a namespace. Solution: add `nvim_get_hl()`, deprecate `nvim_get_hl_by_name()` and `nvim_get_hl_by_id()`.
| * fix(api): vim.filetype.get_option() (#22753)Lewis Russell2023-03-22
| | | | | | | | - Fix a bug in the cache - Set some buffer options on the dummy buffer
| * refactor: do more in TRY_WRAPLewis Russell2023-03-22
| |
| * feat(lua): allow `:=expr` as a shorter version of `:lua =expr`bfredl2023-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | existing behavior of := and :[range]= are unchanged. `|` is still allowed with this usage. However, :=p and similar are changed in a way which could be construed as a breaking change. Allowing |ex-flags| for := in the first place was a mistake as any form of := DOES NOT MOVE THE CURSOR. So it would print one line number and then print a completely different line contents after that.
| * feat(lua): use vim.empty_dict() for empty return value in new api functions ↵bfredl2023-03-20
| | | | | | | | (#22737)
| * feat: add `vim.filetype.get_option()`Lewis Russell2023-03-20
| |
| * feat(api): add filetype option nvim_get_option_valueLewis Russell2023-03-20
| | | | | | | | | | - Also adjust the expr-mapping behaviour so normal commands and text changes are allowed in internal dummy buffers.
| * fix: invalid buffer size argument to snprintf #22729koeleck2023-03-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Crash in findtags_add_match with FORTIFY_SOURCE=3. Note: Fedora 38 packages are now built with -D_FORTIFY_SOURCE=3 by default. 1. Compile with overflow protection. 2. nvim --clean 3. :h <Space> <Tab> 4. `*** overflow detected ***: terminated` The additional checks for the stated buffer size and the actual bounds of the buffer do not match. See `___snprintf_chk` in the glibc sources: https://sourceware.org/git/?p=glibc.git;a=blob;f=debug/snprintf_chk.c;h=59577de076c570b81307dd31c8c73e265808cf4c;hb=HEAD#l28 Solution: Fix arithmetic error: The length of the previously written data is now subtracted from the total size of the buffer, instead of added on top. close #22718
| * fix(shell): on Windows :make does not echo #22728Enan Ajmain2023-03-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: On Windows, :make does not display the output of the program it runs. The cause is the default 'shellpipe'. On Linux, nvim uses `tee` to redirect the output to both stdout and the error file. In Windows, for both cmd.exe and powershell, the output is only redirected to the error file. Solution: - On Windows, change the 'shellpipe' default to "2>&1| tee". - Nvim includes `tee` in its Windows package. - Document recommended defaults for powershell. Fixes #12910
| * Merge #22691 build!: sanitizers for gccJustin M. Keyes2023-03-19
| |\
| | * build!: rename sanitizer options from CLANG_* to ENABLE_*ii142023-03-17
| | |
| | * build: sanitizers for gccii142023-03-16
| | | | | | | | | | | | | | | | | | GCC also supports sanitizers. GCC doesn't support -fsanitize-blacklist option though, so replace .asan-blacklist file with no_sanitize_address function attributes instead.
| * | fix: pasting in terminal buffer on windows #22566Enan Ajmain2023-03-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: On Windows, pasting multiple lines on a terminal buffer cause all the lines to appear on the same line, i.e., the line breaks are lost. Cause: Windows shells expect "\r\n" as line break but "terminal_paste" function uses "\n". Solution: Use "\r\n" as line break for pasting in terminal buffer on Windows. Note: Although this issue was reported with powershell set as 'shell', it occurs in cmd too. Fixes #14621
| * | fix(float): remove -1 in height clampPatrick McFarland2023-03-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Clamp for height in floating windows enforced no more than editor height - 1, disallowing full editor height floating windows when using cmdheight=0 Solution: Clamp to full height, removing the -1. Tested to give the intended results with cmdheight=0, 1, or more than 1. This also inadvertently fixes a rendering error with cmdheight >1 where the bottom border would be overlapped by the cmdline.
| * | fix(column): invalidate statuscolumn width when UPD_NOT_VALID (#22723)luukvbaal2023-03-19
| | |
| * | fix(column): rebuild status column when sign column is invalidated (#22690)luukvbaal2023-03-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * fix(column): rebuild status column when sign column is invalidated Problem: When implementing a custom sign column through `'statuscolumn'`, the status column is not properly rebuilt when the sign column width changes. Solution: Force a rebuild of the status column when the sign column width is invalidated. * test(column): 'statuscolumn' has correct width when (un)placing signs
| * | fix(spell): properly source spell/LANG.{vim,lua} (#22716)zeertzjq2023-03-18
| | | | | | | | | Using regexp doesn't work here because there are no wildcards.
| * | vim-patch:9.0.0194: cursor displayed in wrong position after removing text ↵zeertzjq2023-03-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | prop (#22706) Problem: Cursor displayed in wrong position after removing text prop. (Ben Jackson) Solution: Invalidate the cursor position. (closes vim/vim#10898) https://github.com/vim/vim/commit/326c5d36e7cb8526330565109c17b4a13ff790ae Co-authored-by: Bram Moolenaar <Bram@vim.org>
| * | refactor(completion): don't add and remove '^' for Lua (#22702)zeertzjq2023-03-17
| |/
| * refactor(extmarks): some minor internal API changesbfredl2023-03-16
| | | | | | | | | | | | | | | | | | extranges and a bunch of other improvements are coming for 0.10 This gets in some minor surrounding API changes to avoid rebase conflicts until then. - decorations will be able to be specific to windows - adjust deletion API to fit with extranges
| * docs(api): link to nvim_set_hl_ns from nvim_set_hl (#22678)ii142023-03-16
| |
| * Merge pull request #22666 from bfredl/unscreenbfredl2023-03-14
| |\ | | | | | | refactor(screen): screen.c delenda est
| | * refactor(screen): screen.c delenda estbfredl2023-03-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | drawscreen.c vs screen.c makes absolutely no sense. The screen exists only to draw upon it, therefore helper functions are distributed randomly between screen.c and the file that does the redrawing. In addition screen.c does a lot of drawing on the screen. It made more sense for vim/vim as our grid.c is their screen.c Not sure if we want to dump all the code for option chars into optionstr.c, so keep these in a optionchar.c for now.
| * | Merge pull request #22658 from clason/help-marksChristian Clason2023-03-14
| |\ \ | | |/ | |/| | | | fix(help): force tree reparse after local addition insertion docs(help): consistent headers for local additions
| | * fix(help): force tree reparse after local addition insertionChristian Clason2023-03-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: *local-additions* in `help.txt` are inserted via `ml_append`, which messes up treesitter highlighting of this file as the buffer becomes desynced from the tree. Solution: Add hack on top of hack by explicitly calling `mark_adjust` and `changed_lines_buf` after each insertion.
| * | Merge pull request #22659 from bfredl/floatrulerbfredl2023-03-14
| |\ \ | | | | | | | | fix(screen): redraw the ruler for a current floating window