aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
| | * | refactor(option.c): add do_set_numLewis Russell2023-01-26
| | | |
| * | | build: find unibilium without relying on libfindmacros (#22015)dundargoc2023-01-27
| | | | | | | | | | | | | | | | This will remove the warning about the find module not providing a version.
| * | | fix(test): unset XDG_CONFIG_HOME when running oldtestLewis Russell2023-01-27
| | | | | | | | | | | | | | | | - also fix test_taglist.vim for users running with a tags file created in runtime/doc
| * | | build: check if libvterm version meets requirement (#22010)dundargoc2023-01-26
| | | | | | | | | | | | | | | | The vterm.h file only specifies major and minor version, but not patch, meaning that requiring a specific patch number isn't currently possible.
| * | | refactor(fileio.c): reduce scope of localsLewis Russell2023-01-26
| | | |
| * | | vim-patch:9.0.1246: code is indented more than necessary (#22006)zeertzjq2023-01-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Code is indented more than necessary. Solution: Use an early return where it makes sense. (Yegappan Lakshmanan, closes vim/vim#11887) https://github.com/vim/vim/commit/142ed77898facf8f423fee2717efee1749c55f9a Omit function_using_block_scopes(): only affects Vim9 script. Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
| * | | vim-patch:9.0.1242: code for :runtime completion is not consistentzeertzjq2023-01-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Code for :runtime completion is not consistent. Solution: Make code for cmdline expansion more consistent. (closes vim/vim#11875) https://github.com/vim/vim/commit/b0d45ec67f4976318f199a7929ad3bcf93686fd0
| * | | vim-patch:9.0.1238: :runtime completion can be further improvedzeertzjq2023-01-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: :runtime completion can be further improved. Solution: Also complete the {where} argument values and adjust the completion for that. (closes vim/vim#11874) https://github.com/vim/vim/commit/5c8771bc5a2be123ab8e6325fa60ed524e8efb09
| * | | vim-patch:9.0.1231: completion of :runtime does not handle {where} argumentzeertzjq2023-01-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Completion of :runtime does not handle {where} argument. Solution: Parse the {where} argument. (closes vim/vim#11863) https://github.com/vim/vim/commit/3770f4c9cde7b5fcd10b6fa2e665cd0b69450fb2
| * | | vim-patch:9.0.1227: no cmdline completion for :runtimezeertzjq2023-01-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: No cmdline completion for :runtime. Solution: Add completion for :runtime. (closes vim/vim#11853, closes vim/vim#11447) Improve the resulting matches. https://github.com/vim/vim/commit/a6759381a590b2d395e05b109ca9ccfc356be5a8
| * | | refactor(intro): avoid Coverity warning (#22000)zeertzjq2023-01-26
| | | | | | | | | | | | | | | | | | | | | | | | refactor(intro): avoid coverity warning Problem: Coverity warns about overwriting "mesg" leaking memory. Solution: Make it clear that "mesg" will not be overwritten.
| * | | refactor(options): don't pass negative number to illegal_char() (#21999)zeertzjq2023-01-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This only changes the error messages for an unexpected Unicode char in an option to show its first byte instead of some special keycode. The second argument of vim_strchr() usually doesn't matter, but it may be better to consistently cast to uint8_t.
| * | | vim-patch:9.0.1245: code is indented more than necessary (#21998)zeertzjq2023-01-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Code is indented more than necessary. Solution: Use an early return where it makes sense. (Yegappan Lakshmanan, closes vim/vim#11879) https://github.com/vim/vim/commit/032713f8299abd92fcfb1e490d1ae5c1ecadde41 Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
| * | | vim-patch:9.0.1243: :setglobal cannot use script-local function for "expr" ↵zeertzjq2023-01-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | option (#21997) Problem: :setglobal cannot use script-local function for "expr" option. Solution: Use the pointer to the option value properly. (closes vim/vim#11883) https://github.com/vim/vim/commit/01d4efe2e87632aa085897d3d64e27585908f977
| * | | vim-patch:9.0.1244: cursor displayed in wrong position when leaving Insert ↵zeertzjq2023-01-26
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mode (#21996) Problem: Cursor briefly displayed in a wrong position when pressing Esc in Insert mode after autoindent was used. Solution: Do not adjust the cursor position for assumed deleted white space if text is following. (closes vim/vim#11877) https://github.com/vim/vim/commit/0f843ef091eceb470caece1d90fdfe08926fe076 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* | | Merge branch 'colorcolchar' into 20230125_mixJosh Rahm2023-02-02
|\ \ \
| * | | feat(colorcolchar): implement 'foreground' flagJosh Rahm2023-02-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This flag, denoted by an 'f', will force the character over the colorcolumn to take on the colorcolumn's highlight, discarding any highlight the character would have had otherwise. This is the inverse of the 'background' flag, where the colorcolumn will take the highlight of the character discarding any highlight it otherwise would have had.
* | | | Merge branch 'colorcolchar' into 20230125_mixJosh Rahm2023-01-31
|\| | |
| * | | feat(colorcolchar): make colorcol qsort() stable by including indexJosh Rahm2023-01-31
| | | |
* | | | add fancycolorcol has flagJosh Rahm2023-01-31
| | | |
* | | | Merge branch 'colorcolchar' into 20230125_mixJosh Rahm2023-01-31
|\| | |
| * | | feat(colorcolchar): make the colorcolumn more flexibleJosh Rahm2023-01-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This PR creates the ability to optionally decorate the colorcolumn(s) in other ways. Specifically it adds the ability to set: * The highlight group to highlight a colorcolumn with * A character to draw in a colorcolumn * whether the colorcolumn should mix its highlighting with the character in the column. The new syntax for colorcolumn is: set colorcolumn=[+|-]<num>[/<char>[/<hl_group>[/<flags>]]] By default the char is ' ', and the hl_group is 'ColorColumn' This PR does not change the existing semantics, just adds to them.
| * | | feat(colorcolchar): remove existing colorcolumnchar in the fillchars. Make ↵Josh Rahm2023-01-31
| | | | | | | | | | | | | | | | way for more flexibility
* | | | Merge branch 'fix_20726' into 20230125_mixJosh Rahm2023-01-31
|\ \ \ \
| * | | | Add hacky fix for issue 20726Josh Rahm2023-01-31
| | |/ / | |/| |
* | | | Add rneovim has() decl.Josh Rahm2023-01-25
| | | |
* | | | Merge branch 'fix_repeatcmdline' into 20230125_mixJosh Rahm2023-01-25
|\ \ \ \
| * | | | Merge remote-tracking branch 'upstream/master' into fix_repeatcmdlineJosh Rahm2023-01-25
| |\| | |
| * | | | eval/userfunc.c: save the repeat_cmdline along with the redo buffJosh Rahm2022-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A user function can clobber the repeat_cmdline, which is used to build the redo buffer, thus, if the redo buffer is saved when calling a userfunc, so should the repeat_cmdline.
* | | | | Merge branch 'colorcolchar' into 20230125_mixJosh Rahm2023-01-25
|\ \ \ \ \ | | |_|/ / | |/| | |
| * | | | Merge remote-tracking branch 'upstream/master' into colorcolcharJosh Rahm2023-01-25
| |\ \ \ \ | | | |/ / | | |/| |
| * | | | Merge remote-tracking branch 'upstream/master' into colorcolcharJosh Rahm2022-10-11
| |\ \ \ \
| * | | | | feat(colorcolchar): revert "feat: rename colorcol in fillchars to colorc"Josh Rahm2022-08-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 234959abbfcf075cb09304b00fc391780580056d and renames the option 'colorc' -> 'colorcol' again.
| * | | | | feat(colorcolchar): rename colorcol in fillchars to colorcJosh Rahm2022-08-27
| | | | | | | | | | | | | | | | | | | | | | | | Rename the colorcol option in fillchars to the more terse colorc.
| * | | | | feat(colorcolchar): add the option "colorcol" to the fillchars settingJosh Rahm2022-08-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This option will let neovim draw a character in the colorcolumn when there is no other character occupying that spot. For example, I'm someone who likes the elegance of seeing a 1px wide line at the 80 character mark, rather than a rectangle the width of a cell at that mark. To accomplish this, I run :set colorcol=80 :set fillchars=colorcol:│ of course ':' and '.' are good ASCII alteratives.
* | | | | | Merge branch 'userreg' into 20230125_mixJosh Rahm2023-01-25
|\ \ \ \ \ \
| * \ \ \ \ \ 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 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 usermarksusermarksJosh Rahm2023-01-25
|\ \ \ \ \ \ \ | | |_|/ / / / | |/| | | | |
| * | | | | | Merge pull request #21885 from lewis6991/refactor/optionsLewis Russell2023-01-25
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problems: - Scope of local variables in options code is too large. - did_set_string_option() is too large (>1000LOC). - Setting options for a particular window or buffer requires a changing context (assigning curwin/curbuf). Solutions: - Reduce the scope of local variables. - Break up did_set_string_option so it doesn't contain specific logic about each individual option (1038 LOC -> 310 LOC). - Begin work on making functions not depend on curbuf or curwin and pass window or buffer handles explicitly.
| | * | | | | | refactor(optionstr.c): move handling of formatlistpatLewis Russell2023-01-25
| | | | | | | |
| | * | | | | | refactor(optionstr.c): break up did_set_exproptLewis Russell2023-01-25
| | | | | | | |
| | * | | | | | refactor(optionstr.c): remove some redundant parensLewis Russell2023-01-25
| | | | | | | |
| | * | | | | | refactor(optionstr.c): break up did_option_listflagsLewis Russell2023-01-25
| | | | | | | |
| | * | | | | | refactor(optionstr.c): add did_set_string_option_forLewis Russell2023-01-25
| | | | | | | |
| | * | | | | | refactor(optionstr.c): break up did_set_string_option 52Lewis Russell2023-01-25
| | | | | | | |
| | * | | | | | refactor(optionstr.c): break up did_set_string_option 51Lewis Russell2023-01-25
| | | | | | | |