aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
| * refactor(fileio.c): factor out buf_write post autocmdsLewis Russell2023-01-31
| |
| * 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(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).
* | | 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
* | | 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
* | | | | 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>
* | | | fix(tui): exit on input eofzeertzjq2023-02-14
| | | |
* | | | 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.
* | | | 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.
* | | | 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
* | | | build: treat clang-tidy warnings as errors (#22238)dundargoc2023-02-12
| | | |
* | | | refactor: reduce scope of locals as per the style guide (#22211)dundargoc2023-02-11
| | | |
* | | | vim-patch:9.0.1295: the option initialization function is too long (#22222)zeertzjq2023-02-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: The option initialization function is too long. Solution: Move code to separate functions. (Yegappan Lakshmanan, closes vim/vim#11966) https://github.com/vim/vim/commit/6c41bedeed2a1f98fb9c55ff85634138782ad92a Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* | | | vim-patch:9.0.1300: 'statusline' only supports one "%=" item (#22218)zeertzjq2023-02-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: 'statusline' only supports one "%=" item. Solution: Add support for multiple "%=" items. (TJ DeVries, Yegappan Lakshmanan, closes vim/vim#11970, closes vim/vim#11965) https://github.com/vim/vim/commit/3ec78f973fdaec2cea8e036ed38037b2fe40670b Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* | | | vim-patch:9.0.1299: change for triggering incsearch not sufficiently testedzeertzjq2023-02-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Change for triggering incsearch not sufficiently tested. Solution: Add a test case. Simplify the code. (closes vim/vim#11971) https://github.com/vim/vim/commit/412e0e4ed903682f352d8ea58ded480930cc664f
* | | | vim-patch:9.0.1298: inserting register on the cmdline does not trigger incsearchzeertzjq2023-02-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Inserting a register on the command line does not trigger incsearch or update hlsearch. Solution: Have cmdline_insert_reg() return CMDLINE_CHANGED when appropriate and handle it correctly. (Ken Takata, closes vim/vim#11960) https://github.com/vim/vim/commit/c4b7dec38292fe1cfad7aa5f244031fc6f7c7a09 Co-authored-by: K.Takata <kentkt@csc.jp>
* | | | fix(rpc)!: preseve files when stdio channel is closed (#22137)zeertzjq2023-02-11
| | | | | | | | | | | | | | | | BREAKING CHANGE: Unsaved changes are now preserved rather than discarded when stdio channel is closed.
* | | | refactor: replace char_u with char (#21901)dundargoc2023-02-11
| | | | | | | | | | | | | | | | | | | | refactor: replace char_u with char Work on https://github.com/neovim/neovim/issues/459
* | | | build: enable MSVC level 3 warnings (#21934)dundargoc2023-02-11
| | | | | | | | | | | | | | | | | | | | | | | | MSVC has 4 different warning levels: 1 (severe), 2 (significant), 3 (production quality) and 4 (informational). Enabling level 3 warnings mostly revealed conversion problems, similar to GCC/clang -Wconversion flag.
* | | | refactor: reduce scope of locals as per the style guide (#22206)dundargoc2023-02-11
| |/ / |/| |
* | | vim-patch:9.0.1297: wrong value for $LC_CTYPE makes the environ test fail ↵zeertzjq2023-02-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (#22210) Problem: Wrong value for $LC_CTYPE makes the environ test fail. Solution: Unset $LC_CTYPE when running tests. (closes vim/vim#11963) https://github.com/vim/vim/commit/962d91643520ec3748fcf5af3263d89ccfcdda92 Co-authored-by: WuerfelDev <dev@wuerfeldev.de>
* | | build(ci): let ASAN print tracebacks for more errors (SIGABORT, SIGILL)bfredl2023-02-10
| | |
* | | Merge pull request #22077 from bfredl/neolua_clientbfredl2023-02-10
|\ \ \ | | | | | | | | refactor(tests): integrate lua-client into core and use core for functionaltests
| * | | fix(tests): fixes for using vim.mpack and more ASANbfredl2023-02-10
| | | |