aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
| * refactor(fileio.c): do not use macros for error handlingLewis Russell2023-01-31
| |
| * refactor(fileio.c): reduce scope of localsLewis Russell2023-01-31
| |
| * refactor(fileio.c): more boolsLewis Russell2023-01-31
| |
| * refactor(fileio.c): factor out autocmd handling from buf_write()Lewis Russell2023-01-31
| |
| * refactor(fileio.c): remove HAS_BW_FLAGSLewis Russell2023-01-31
| |
| * refactor(fileio.c): refactor buf_write_bytes (2)Lewis Russell2023-01-31
| |
| * refactor(fileio.c): refactor buf_write_bytesLewis Russell2023-01-31
| |
| * refactor(fileio.c): refactor vim_rename()Lewis Russell2023-01-31
| |
| * refactor(fileio.c): refactor match_file_path()Lewis Russell2023-01-31
| |
* | fix(tui): set taskbar, icon in Windows #22270Enan Ajmain2023-02-15
| | | | | | | | | | | | | | | | Problem: After TUI refactor commit, code for setting Windows taskbar icon wasn't being executed because of a backdated conditional. Solution: Update the conditional to take TUI refactor into account. Ref: https://github.com/neovim/neovim/pull/20634#discussion_r1088993820
* | fix(treesitter): make params optionalLewis Russell2023-02-15
| |
* | feat(treesitter)!: remove g:ts_highlight_lua (#22257)Christian Clason2023-02-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This variable was only meant for easy testing during the development cycle for treesitter highlighting while Lua was the only parser useable for daily driving. Now that we have a good vimdoc parser, this approach simply doesn't scale and should be removed sooner rather than later. Instead of setting this variable, people for now should add the autocommand directly to their config: ```lua vim.api.nvim_create_autocmd('FileType', { pattern = 'lua', -- or { 'lua', 'help' } callback = function() vim.treesitter.start() end, }) ``` (or put `vim.treesitter.start()` in an `ftplugin`).
* | fix(win_update): don't use unintialized memory in edge case (#22266)zeertzjq2023-02-15
| | | | | | | | | | | | | | This fixes two clang warnings. Using an unintialized "cursorline_fi" without assigning to it is not something that should normally happen, and in case it happens it will likely cause another redraw, but still don't use unintialized memory.
* | revert: "build: remove ENABLE_COMPILER_SUGGESTIONS option" (#22265)dundargoc2023-02-15
| | | | | | | | | | This reverts commit 1d6bb0892b58e5a4183e74c0fbd2dc20204e33a4. See: https://github.com/neovim/neovim/pull/22249#issuecomment-1430548550
* | Merge #22214 move init_default_autocmds to luaJustin M. Keyes2023-02-14
|\ \
| * | refactor: move init_default_autocmds to luaglacambre2023-02-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | The original motivation for this change came from developping https://github.com/neovim/neovim/pull/22159, which will require adding more autocommand creation to Neovim's startup sequence. This change requires lightly editing a test that expected no autocommand to have been created from lua.
| * | fix(helpers): restore channel id after a call to WITH_SCRIPT_CONTEXTglacambre2023-02-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In https://github.com/neovim/neovim/pull/22214, init_default_autocmds has been turned into a lua function call to nvim_create_augroup and nvim_create_autocmd. This introduced a strange regression: a test in vim_spec.lua started failing with its last_set_chan value switching from 0 to -9223372036854775808. It turns out that -9223372036854775808 is the value of LUA_INTERNAL_CALL and would be inherited as last_set_chan by options set from the command line due to the WITH_SCRIPT_CONTEXT macro not restoring the channel id (WITH_SCRIPT_CONTEXT is used by nvim_create_augroup).
* | | test: make expect_unchanged() less confusing (#22255)zeertzjq2023-02-15
| | | | | | | | | | | | | | | | | | | | | | | | Problem: The sleep before collecting the initial screen state is confusing and may lead to unexpected success if it comes after a blocking RPC call. Solution: Remove that sleep and add an "intermediate" argument.
* | | refactor(api): consistent VALIDATE messages #22262Justin M. Keyes2023-02-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Validation messages are not consistently formatted. - Parameter names sometimes are NOT quoted. - Descriptive names (non-parameters) sometimes ARE quoted. Solution: Always quote the `name` value passed to a VALIDATE macro _unless_ the value has whitespace.
* | | fix: uv_tty_set_mode failed in Windows #22264Enan Ajmain2023-02-14
| | | | | | | | | | | | | | | | | | | | | | | | Problem: uv_tty_set_mode on stdout in Windows exits with error. Cause: Windows cannot set the properties of the output of a tty. Solution: Remove call to uv_tty_set_mode. Ref: #21445 Ref: https://github.com/libuv/libuv/commit/88634c1405097c19582e870d278dd0e29dc55455#r100598822
* | | ci: print DLL copy messages only in CI environment (#22260)Enan Ajmain2023-02-14
| | | | | | | | | In Windows, library DLL's are copied in the building process, and a message for each copy is printed. This is useful to have in the log of CI, but annoying to see when you're building and rebuilding nvim constantly. Work around this issue by only enabling the messages on CI.
* | | Merge pull request #11756 from bfredl/crashfixbfredl2023-02-14
|\ \ \ | | | | | | | | custom statusline crash containing unprintable unicode
| * | | fix(status): handle unprintable chars in the statuslineBjörn Linse2023-02-14
| | | |
* | | | Merge pull request #22113 from luukvbaal/nrwidthLewis Russell2023-02-14
|\ \ \ \ | | | | | | | | | | fix(column): no longer reset nrwidth_line_count for 'statuscolumn'
| * | | | refactor(column): remove unused build_statuscol_str() argumentsLuuk van Baal2023-02-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: `build_statuscol_str()` still has arguments that were necessary for building a status column string in `number_width()`, which was abandoned in #22094. Solution: Remove unused arguments.
| * | | | fix(column): no longer reset nrwidth_line_count for 'statuscolumn'Luuk van Baal2023-02-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: We still explicitly reset `nrwidth_line_count` when changing `'number'` or `'relativenumber'` but this is no longer needed since the introduction of a `statuscol_line_count`. Solution: Remove reset of `nrwidth_line_count`. Resolve https://github.com/neovim/neovim/pull/22094#issuecomment-1416168926.
* | | | | Merge pull request #22108 from luukvbaal/statuscolumnLewis Russell2023-02-14
|\ \ \ \ \ | | | | | | | | | | | | perf(column): only build fold/sign column when present in 'statuscolumn'
| * | | | | refactor(statusline): move statusline defs to statusline_defs.hLuuk van Baal2023-02-04
| | | | | |
| * | | | | perf(column): only build fold/sign column when present in 'statuscolumn'Luuk van Baal2023-02-04
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: The fold and sign column is built and stored regardless of whether the corresponding item is present in 'statuscolumn'. Solution: Since the 'statuscolumn' parses itself, we can defer building the columns until the corresponding item is actually encountered.
* | | | | refactor(api): VALIDATE macros #22256Justin M. Keyes2023-02-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - VALIDATE() takes a format string - deduplicate check_string_array - VALIDATE_RANGE - validate UI args
* | | | | test: remove unused field ext_float (#22243)zeertzjq2023-02-14
| | | | |
* | | | | refactor(api): VALIDATE macros #22187Justin M. Keyes2023-02-14
| |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: - API validation involves too much boilerplate. - API validation errors are not consistently worded. Solution: Introduce some macros. Currently these are clumsy, but they at least help with consistency and avoid some nesting.
* | | | fix(folds): cursorline highlight is not always applied on closed folds (#22242)luukvbaal2023-02-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: The cursorline highlight logic checks for `w_cursor.lnum` which may be different from the line number passed to `win_line()` even when the cursor is actually on that line. Solution: Update cursor line highlight logic to check for the line number of the start of a closed fold if necessary.
* | | | vim-patch:9.0.1307: setting 'formatoptions' with :let doesn't check for ↵zeertzjq2023-02-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | errors (#22252) Problem: Setting 'formatoptions' with :let doesn't check for errors. Solution: Pass "errbuf" to set_string_option(). (Yegappan Lakshmanan, closes vim/vim#11974, closes vim/vim#11972) https://github.com/vim/vim/commit/32ff96ef018eb1a5bea0953648b4892a6ee71658 Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* | | | Merge pull request #22244 from zeertzjq/tui-eofzeertzjq2023-02-14
|\ \ \ \ | | | | | | | | | | fix(tui): exit on input eof
| * | | | fix(tui): exit on input eofzeertzjq2023-02-14
| | | | |
| * | | | test(tui_spec): remove unnecessary arguments for remote UIzeertzjq2023-02-14
|/ / / /
* | | | feat(filetype): fall back to file extension when matching from hashbang (#22140)Jonas Strittmatter2023-02-13
| | | | | | | | | | | | | | | | | | | | | | | | If nothing matched in match_from_hashbang, also check the file extension table. For a hashbang like '#!/bin/env foo', this will set the filetype to 'fooscript' assuming the filetype for the 'foo' extension is 'fooscript' in the extension table.
* | | | build: remove ENABLE_COMPILER_SUGGESTIONS option (#22249)dundargoc2023-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | We need higher level and more meaningful cmake options. Having a cmake option for only controlling compiler flags is probably not worth it as the same can be achieved with: cmake -B build -D CMAKE_C_FLAGS=<compiler option>
* | | | ci: automatically maximize MIN_LOG_LEVEL if CI detected (#22248)dundargoc2023-02-13
| | | | | | | | | | | | | | | | | | | | Detect if on CI by checking that the CI environment variable is set to "true". This is a common pattern among CI providers, including github actions and cirrus.
* | | | ci(lintcommit): allow UPPER_CASE first word (#22245)Justin M. Keyes2023-02-13
| | | |
* | | | ci: replace cmake script with bash script (#22246)dundargoc2023-02-13
| | | | | | | | | | | | | | | | Bash has better error handling than cmake, and seem overall slightly more suited to scripting than cmake.
* | | | Merge pull request #22191 from lewis6991/feat/playground_impLewis Russell2023-02-13
|\ \ \ \ | | | | | | | | | | feat(treesitter): playground improvements
| * | | | fix(treesitter): don't trample parsers when filetype!=langLewis Russell2023-02-10
| | | | | | | | | | | | | | | | | | | | | | | | | This allows vim.treesitter.show_tree() to work on buffers where the filetype does not match the parser language name e.g, bash/sh.
| * | | | feat(treesitter): playground improvementsLewis Russell2023-02-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Render node ranges as virtual text - Set filettype=query. The virtual text is to avoid parsing errors. - Make sure highlights text is always in view.
* | | | | Merge pull request #22233 from zeertzjq/resize-screenclearzeertzjq2023-02-13
|\ \ \ \ \ | | | | | | | | | | | | fix(ui): make sure screen is valid after resizing
| * | | | | fix(ui-ext): force cursor update after resize in char-based UIzeertzjq2023-02-13
| | | | | | | | | | | | | | | | | | | | | | | | Neither ui/screen.lua nor Neovim Qt keep cursor position after resizing.
| * | | | | fix(ui): make sure screen is valid after resizingzeertzjq2023-02-13
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: When not inside an Ex command, screen_resize() calls update_screen(), which calls screenclear() and set the screen as valid. However, when inside an Ex command, redrawing is postponed so update_screen() screen doesn't do anything, and the screen is still invalid after the resize, causing ui_comp_raw_line() to be no-op until update_screen() is called on the main loop. Solution: Restore the call to screenclear() inside screen_resize() so that the screen is invalid after screen_resize(). Since screenclear() changes redraw type from UPD_CLEAR to UPD_NOT_VALID, it is called at most once for each resize, so this shouldn't change how much code is run in the common (not inside an Ex command) case.
* | | | | ci: install dependencies with a single script (#22241)dundargoc2023-02-12
| | | | | | | | | | | | | | | It's easier if the os-specific installations are done by the script itself
* | | | | refactor: reduce scope of locals as per the style guide 3 (#22221)dundargoc2023-02-12
| | | | | | | | | | | | | | | refactor: reduce scope of locals as per the style guide