aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* | | | | | | Merge branch 'userreg' into mix_20240309Josh Rahm2024-03-09
|\ \ \ \ \ \ \
| * \ \ \ \ \ \ Merge remote-tracking branch 'upstream/master' into userregJosh Rahm2024-03-09
| |\ \ \ \ \ \ \ | | | |_|_|/ / / | | |/| | | | |
| * | | | | | | Merge remote-tracking branch 'upstream/master' into userreguserregJosh Rahm2023-11-29
| |\ \ \ \ \ \ \ | | | |_|_|/ / / | | |/| | | | |
| * | | | | | | Merge remote-tracking branch 'upstream/master' into userregJosh Rahm2023-01-25
| |\ \ \ \ \ \ \ | | | |_|_|/ / / | | |/| | | | |
| * | | | | | | Merge remote-tracking branch 'upstream/master' into userregJosh Rahm2022-10-11
| |\ \ \ \ \ \ \
| * | | | | | | | feat(userreg): normalize userregfunc option formatJosh Rahm2022-08-21
| | | | | | | | |
| * | | | | | | | feat(userreg) fix 'recording' message to handle multibyte charsJosh Rahm2022-08-21
| | | | | | | | |
| * | | | | | | | feat(userreg): add runtime files for userregJosh Rahm2022-08-21
| | | | | | | | |
| * | | | | | | | feat(userreg): fix typos userregfun -> userregfuncJosh Rahm2022-08-21
| | | | | | | | |
| * | | | | | | | feat(userreg): Add user-defined registers to Neovim.Josh Rahm2022-08-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change unlocks additional registers for Neovim by allowing a user to define their own behavior for non-builtin registers. This is accopmlished through a new option 'userregfunc' The 'userregfunc' defines the function to call when handling a register for which there is no builtin functionality. The 'userregfunc' function should take 3 arguments: action - Either "yank" or "put" register - The character corresponding to the register content - In the case of action == "yank", the dictionary describing the yanked content, with the following keys: {type} - Either "char", "line" or "block" {lines} - The lines being yanked as a list {width} - The width in case of "block" mode. {additional_data} - Additional data (can be returned in "put" mode) In case of "put" this function should return the content to put. This content can be either: * A dictionary in the same template as content above. * A list of strings. This will be assumed to be "line" mode. * A string. This will be assumed to be "char" mode. An example of a "null" 'userregfunc' that provides an implementation identical to traditional vim registers would be: let s:contents = {} function! MyUserregFunction(action, register, content) abort if a:action == "put" return get(s:contents, a:register, "") else let s:contents[a:register] = a:content endif endfunction set userregfun=MyUserregFunction It is important to note that any valid unicode character can now be a register, including something like @☺. This change also addresses the multibyte parsing issues surrounding let @a = 'xyz' let @🔨 = 'hammer'
* | | | | | | | | Merge remote-tracking branch 'upstream/master' into aucmd_textputpostJosh Rahm2024-03-09
|\ \ \ \ \ \ \ \ \ | | |_|_|_|/ / / / | |/| | | | | | |
| * | | | | | | | docs: support inline markdownLewis Russell2024-03-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Tags are now created with `[tag]()` - References are now created with `[tag]` - Code spans are no longer wrapped
| * | | | | | | | vim-patch:8.2.3915: illegal memory access when completing with invalid bytes ↵Raphael2024-03-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (#27491) Problem: illegal memory access when completing with invalid bytes. Solution: Avoid going over the end of the completion text. vim/vim@4b28ba3 Co-authored-by: Bram Moolenaar <Bram@vim.org>
| * | | | | | | | Merge pull request #27764 from glepnir/grid_nullbfredl2024-03-09
| |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | fix: set full_screen when in ex_mode
| | * | | | | | | | fix(startup): set full_screen when in ex_modeglepnir2024-03-09
| |/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem Description: In ex_mode, the default_grid.chars are not allocated, and subsequently, the w_grid.target in curwin is not allocated to default_grid in update_screen. This leads to a null pointer crash when the completion function is executed in ex_mode. Solution: Set full_screen when in ex_mode to ensure that default_grid is allocated.
| * | | | | | / / feat!: remove deprecated functionsdundargoc2024-03-09
| | |_|_|_|_|/ / | |/| | | | | |
| * | | | | | | fix(fileio): fix off-by-one in rename_with_tmp (#27780)Colin Watson2024-03-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `_FORTIFY_SOURCE` on Ubuntu caught this, resulting in: [OLDTEST] Running test_rename Failed: test_rename :: Nvim exited with non-zero code Job exited with code 134 Screen (23 lines) ================================================================================ "test_rename.vim" "test_rename.vim" 120L, 3623B Executing Test_rename_copy() Executing Test_rename_dir_to_dir() Executing Test_rename_fails() Error detected while processing command line..script /<<BUILDDIR>>/neovim-0.9.5/test/old/testdir/runtest.vim[437]..function RunTheTest[44]..Test_rename_fails: line 17: E730: using List as a String line 18: E976: using Blob as a String Executing Test_rename_file_ignore_case()*** buffer overflow detected ***: terminated `snprintf`'s second parameter should be no greater than the number of remaining bytes in the allocated object. We can see that this was off by one, because in the simple case where `tail == tempname` (for a file in the current directory), `rename_with_tmp` was passing `MAXPATHL + 2` for an object allocated with a size of only `MAXPATHL + 1`. Introduced in 5f1a153831d480180b2203120cff776d771ec1a4.
| * | | | | | | ci: allow skipping news workflow with a labeldundargoc2024-03-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Setting the label `ci:skip-news` will skip the job. This is useful for maintainers to indicate to contributors that a feature isn't big enough to warrant a news entry, or for contributors who dislike red CI even if there's nothing wrong. Also change label `ci-s390x` to `ci:s390x`; this way it'll be easier to see that `ci:` are a subcategory of labels that affect CI in some way.
| * | | | | | | Merge pull request #27775 from bfredl/nouidatabfredl2024-03-08
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | refactor(ui): remove outdated UI vs UIData distinction
| | * | | | | | | refactor(ui): remove outdated UI vs UIData distinctionbfredl2024-03-08
| |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Just some basic spring cleaning. In the distant past, not all UI:s where remote UI:s. They still aren't, but both of the "UI" and "UIData" structs are now only for remote UI:s. Thus join them as "RemoteUI".
| * | | | | | | Merge pull request #27655 from bfredl/mpack_objbfredl2024-03-08
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | refactor(msgpack): allow flushing buffer while packing msgpack
| | * | | | | | | refactor(msgpack): allow flushing buffer while packing msgpackbfredl2024-03-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |