aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
* feat(lua): send "--" literally to Lua "-l" scriptJustin M. Keyes2023-01-05
| | | | | | | | | | | | Problem: When "-l" is followed by "--", we stop sending args to the Lua script and treat "--" in the usual way. This was for flexibility but didn't have a strong use-case, and has these problems: - prevents Lua "-l" scripts from handling "--" in their own way. - complicates the startup logic (must call nlua_init before command_line_scan) Solution: Don't treat "--" specially if it follows "-l".
* feat(lua)!: execute Lua with "nvim -l"Justin M. Keyes2023-01-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Nvim has Lua but the "nvim" CLI can't easily be used to execute Lua scripts, especially scripts that take arguments or produce output. Solution: - support "nvim -l [args...]" for running scripts. closes #15749 - exit without +q - remove lua2dox_filter - remove Doxyfile. This wasn't used anyway, because the doxygen config is inlined in gen_vimdoc.py (`Doxyfile` variable). - use "nvim -l" in docs-gen CI job Examples: $ nvim -l scripts/lua2dox.lua --help Lua2DoX (0.2 20130128) ... $ echo "print(vim.inspect(_G.arg))" | nvim -l - --arg1 --arg2 $ echo 'print(vim.inspect(vim.api.nvim_buf_get_text(1,0,0,-1,-1,{})))' | nvim +"put ='text'" -l - TODO? -e executes Lua code -l loads a module -i enters REPL _after running the other arguments_.
* fix(ui): fix fragile UI_CALL macro invocation (#21656)bfredl2023-01-05
| | | | | | Fixup #21605 Depending on the phase of the moon, UI_CALL expanding UI_LOG expanding the default value of entered_free_all_mem might or might not work.
* refactor(ui): devirtualize the ui layerbfredl2023-01-05
| | | | | | | | | | | | | | | | | - The defined interface for the UI is only the RPC protocol. The original UI interface as an array of function pointers fill no function. - On the server, all the UI:s are all RPC channels. - ui.c is only used on the server. - The compositor is a preprocessing step for single-grid UI:s - on the client, ui_client and tui talk directly to each other - we still do module separation, as ui_client.c could form the basis of a libnvim client module later. Items for later PR:s - vim.ui_attach is still an unhappy child, reconsider based on plugin experience. - the flags in ui_events.in.h are still a mess. Can be simplified now. - UX for remote attachment needs more work. - startup for client can be simplified further (think of the millisecs we can save)
* fix(diff): avoid restoring invalid 'foldcolumn' value (#21650)zeertzjq2023-01-05
| | | | Use "0" for 'foldcolumn' when w_p_fdc_save is empty, like how "manual" is used for 'foldmethod' when w_p_fdm_save is empty.
* fix(tui): make a copy of data->params before unibi_format() (#21643)zeertzjq2023-01-05
| | | | | | | | Problem: When unibi_format() modifies params and data->buf overflows, unibi_format() is called again, causing the params to be modified twice. This can happen for escapes sequences that use the %i terminfo format specifier (e.g. cursor_address), which makes unibi_format() increase the param by 1. Solution: Make a copy of data->params before calling unibi_format().
* docs: fix typos (#21427)dundargoc2023-01-04
| | | | | | Co-authored-by: Gustavo Sampaio <gbritosampaio@gmail.com> Co-authored-by: C.D. MacEachern <craig.daniel.maceachern@gmail.com> Co-authored-by: Sean Dewar <seandewar@users.noreply.github.com> Co-authored-by: Tomas Nemec <nemi@skaut.cz>
* fix(clipboard): show provider warning when not during batch changes #21451zeertzjq2023-01-03
| | | | It is strange that Ex commands that explicitly interact with the clipboard show provider warning, but Normal mode commands do not.
* Merge pull request #21633 from gpanders/editorconfigGregory Anders2023-01-03
|\ | | | | Builtin EditorConfig support
| * feat(editorconfig): add editorconfig syntax fileGregory Anders2023-01-03
| | | | | | | | | | | | | | This is intentionally _not_ copied from Vim because our syntax file makes use of Lua to dynamically generate a list of valid EditorConfig properties. This requires the builtin editorconfig module, which Vim does not have.
* | Merge pull request #21631 from bfredl/request_memorybfredl2023-01-03
|\ \ | | | | | | refactor(api): do not allocate temporaries for internal events
| * | refactor(api): do not allocate temporaries for internal eventsbfredl2023-01-03
| |/
* | Merge #21580 cmdline issues with cmdheight=0Justin M. Keyes2023-01-03
|\ \ | |/ |/|
| * fix: issues with command line if ui elements are externalizedLuuk van Baal2022-12-31
| | | | | | | | | | Resolve https://github.com/neovim/neovim/issues/20888 and handle side effects for setting 'cmdheight' to zero.
| * fix(ui): allow resize commands to set 'cmdheight' to 0Luuk van Baal2022-12-31
| | | | | | | | Resolve https://github.com/neovim/neovim/issues/21558
* | vim-patch:9.0.1137: some conditions are always false (#21628)zeertzjq2023-01-03
| | | | | | | | | | | | Problem: Some conditions are always false. Solution: Remove the useless conditions. (closes vim/vim#11776) https://github.com/vim/vim/commit/ea720aea851e645f4c8ec3b20afb27c7ca38184c
* | feat!: remove hardcopyLewis Russell2023-01-03
| | | | | | Co-authored-by: Justin M. Keyes <justinkz@gmail.com>
* | fix(exit): the TUI should not ui_flush() itself (#21625)zeertzjq2023-01-03
| |
* | vim-patch:9.0.1132: code is indented more than needed (#21626)zeertzjq2023-01-03
| | | | | | | | | | | | | | | | | | | | | | Problem: Code is indented more than needed. Solution: Use an early return to reduce indentation. (Yegappan Lakshmanan, closes vim/vim#11769) https://github.com/vim/vim/commit/dc4daa3a3915fba11ac87d27977240d9a5e0d47d Omit expand_autoload_callback(): only applies to Vim9 script. Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* | refactor: eliminate os_unix.c #21621Justin M. Keyes2023-01-02
| |
* | vim-patch:9.0.1129: sporadic Test_range() failure (#21619)zeertzjq2023-01-02
| | | | | | | | | | | | | | | | Problem: Sporadic Test_range() failure. Solution: Clear typeahead. Move to a separate function. (issue vim/vim#22771) https://github.com/vim/vim/commit/7bdcba08bb5e4c39093cdedee187177d705c7cb9 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* | vim-patch:8.2.0711: temp directory might be cleared (#21614)zeertzjq2023-01-02
| | | | | | | | | | | | | | Problem: With a long running Vim the temp directory might be cleared on some systems. Solution: Lock the temp directory. (closes vim/vim#6044) https://github.com/vim/vim/commit/b2d0e51366dea6843f991f31a457f5456d162678
* | fix(tui): do not set ui_client_termname if it is already set (#21607)zeertzjq2023-01-01
| | | | | | | | It is fine to initialize ui_client_termname to NULL as it is only used after tui_start().
* | docs(api): fix treesitter parsing errorsChristian Clason2023-01-01
| |
* | Merge pull request #21597 from gi1242/tex-ft-detectionzeertzjq2023-01-01
|\ \ | | | | | | fix(filetype): make .tex filetype detection match Vim
| * | vim-patch:9.0.1120: tex filetype detection not sufficiently testedChristian Clason2022-12-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Tex filetype detection not sufficiently tested. Solution: Add more test cases for "tex" detection. (Jonas Strittmatter, closes vim/vim#11765) https://github.com/vim/vim/commit/c55e8f2c6f5cafe11494df3e2d28ff3d03b92c71 Co-authored-by: smjonas <jonas.strittmatter@gmx.de>
* | | Merge pull request #18375 from bfredl/tui_reworkbfredl2022-12-31
|\ \ \ | | | | | | | | feat(ui): refactor TUI from thread to separate process
| * | | feat(tui): graduate the +tui featurebfredl2022-12-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was previously disabled due to build issues on windows. Any reasonable platform can now be expected to have the necessary interfaces to build and run the TUI subsystem. Runtime quality issues of using the TUI (on any new platform) are not relevant here. Just run Nvim in an external UI instead of the TUI as always.
| * | | fix(tui): more work in the TUIbfredl2022-12-31
| | | |
| * | | feat(tui): run TUI as external processhlpr982022-12-31
| |/ /
* | | vim-patch:9.0.1115: code is indented more than needed (#21598)zeertzjq2022-12-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Code is indented more than needed. Solution: Use an early return to reduce indenting. (Yegappan Lakshmanan, closes vim/vim#11758) https://github.com/vim/vim/commit/ed0c1d5d4b30d03b26ff08841f6da2ddf44025a7 Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* | | refactor(sleep): simplify rube goldberg implementation of :sleepbfredl2022-12-30
|/ / | | | | | | | | | | | | | | | | As neovim does have event handling, we are checking for CTRL-C all the time, not once per second. Also, do_sleep() reimplements the same loop as LOOP_PROCESS_EVENTS_UNTIL() already contains internally. Fix the latter to use the right integer type, so we do not need the extra indirection.
* / vim-patch:8.2.{3773,3774}zeertzjq2022-12-30
|/ | | | | | | | | | | | | | | | | | | vim-patch:8.2.3773: wrong window size when a modeline changes 'columns' Problem: Wrong window size when a modeline changes 'columns' and there is more than one tabpage. (Michael Soyka) Solution: Adjust the frames of all tabpages. (closes vim/vim#9315) https://github.com/vim/vim/commit/8a7374f8c4eb4c016270ad908a43af4ddedcbf56 vim-patch:8.2.3774: test for command line height fails Problem: Test for command line height fails. Solution: Use another way to handle window size change. https://github.com/vim/vim/commit/b711814cb64b60ec4918e3e1fb2ca5c50d6e9340 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* feat(highlight): add DiagnosticOk (and associated) highlight groups (#21286)Oliver Marriott2022-12-28
| | | | | | The existing groups, Error, Hint, Info, Warn cover many use cases, but neglect the occasion where a diagnostic message should communicate a non-informative (not a Hint or Info) event. DiagnosticOk covers this with a generic green colorscheme.
* vim-patch:9.0.1106: not all postfix files are recognized (#21568)Christian Clason2022-12-28
| | | | | | | | Problem: Not all postfix files are recognized. Solution: Recognize main.cf.proto files. (closes vim/vim#11732) https://github.com/vim/vim/commit/09ce0b8e1197c85dacf97e75b9b9ac18e0d192df Co-authored-by: KodeToad <3880336+KodeToad@users.noreply.github.com>
* refactor(f_has): remove wrong comment (#21561)zeertzjq2022-12-28
| | | | Only one of "fork" and "system" should be defined. Also change the line above "win32" to match Vim.
* vim-patch:9.0.1100: a hashtab with many removed items is not cleaned upzeertzjq2022-12-27
| | | | | | | | | | | | | | | | | | | Problem: A hashtab with many removed items is not cleaned up. Solution: Re-hash a hashtab even when the size didn't change if too many items were removed. https://github.com/vim/vim/commit/d0883faac6a74f777c9a6be9d035c59ee1c969c5 N/A patches for version.c: vim-patch:9.0.1099: trying to resize a hashtab may cause a problem Problem: Trying to resize a hashtab may cause a problem. Solution: Do not try to resize a hashtab before adding an item. https://github.com/vim/vim/commit/81b7ecc5cb78cad901a9a85e46ecba109cc6ee7d Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:9.0.1097: tests are failingzeertzjq2022-12-27
| | | | | | | | | Problem: Tests are failing. Solution: Do clean up a hashtab when at the initial size. https://github.com/vim/vim/commit/b3d614369fceb891819badc941f80f08f57831f9 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:9.0.1096: reallocating hashtab when the size didn't changezeertzjq2022-12-27
| | | | | | | | | Problem: Reallocating hashtab when the size didn't change. Solution: Bail out when the hashtab is already the desired size. https://github.com/vim/vim/commit/71d53e7c579b8af44083142ea3894b455947ad81 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* fix(statusline): make nvim_eval_statusline() work with %S (#21553)zeertzjq2022-12-27
|
* fix(win_close): remove float grid after closing buffer (#21551)zeertzjq2022-12-27
| | | | It is not safe to remove the float grid when autocommands can still be triggered, as autocommands may use the float grid.
* fix(statusline): don't show showcmd when not enough space (#21550)zeertzjq2022-12-27
|
* vim-patch:9.0.1101: unused global variable (#21549)zeertzjq2022-12-27
| | | | | | | | Problem: Unused global variable. Solution: Remove the variable. (closes vim/vim#11752) https://github.com/vim/vim/commit/b536540ab3c13db629432c411e92c05c4a3808ba Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:9.0.1103: jq files are not recognized (#21545)Christian Clason2022-12-26
| | | | | | | | Problem: jq files are not recognized. Solution: Add detection of Jq files. (David McDonald, closes vim/vim#11743) https://github.com/vim/vim/commit/b9a1edfc5434f2a3ac50b1a178d3c85aa417b798 Co-authored-by: David McDonald <dgmcdona@uno.edu>
* vim-patch:9.0.1098: code uses too much indent (#21540)zeertzjq2022-12-26
| | | | | | | | Problem: Code uses too much indent. Solution: Use an early return. (Yegappan Lakshmanan, closes vim/vim#11747) https://github.com/vim/vim/commit/465de3a57b815f1188c707e7c083950c81652536 Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* fix(showcmd): assert failure with cmdheight=0 (#21536)zeertzjq2022-12-26
|
* vim-patch:9.0.1061: cannot display 'showcmd' somewhere elseLuuk van Baal2022-12-26
| | | | | | | | | Problem: Cannot display 'showcmd' somewhere else. Solution: Add the 'showcmdloc' option. (Luuk van Baal, closes vim/vim#11684) https://github.com/vim/vim/commit/ba936f6f4e85cc1408bc3967f9fd7665d948909b Co-authored-by: Luuk van Baal <luukvbaal@gmail.com>
* fix(mappings): use all buckets in second round of unmap (#21534)zeertzjq2022-12-26
|
* vim-patch:8.2.3737: test fails without the 'autochdir' option (#21529)zeertzjq2022-12-25
| | | | | | | | Problem: Test fails without the 'autochdir' option. Solution: Check that the option is available. (Dominique Pellé, closes vim/vim#9272) https://github.com/vim/vim/commit/8dea145e39a2569153cb63487d3403a46a882189 Co-authored-by: Dominique Pelle <dominique.pelle@gmail.com>
* vim-patch:8.2.4139: using freed memory in expression abbreviation (#21522)zeertzjq2022-12-24
| | | | | | | | | Problem: Using freed memory if an expression abbreviation deletes the abbreviation. Solution: Do not access the pointer after evaluating the expression. https://github.com/vim/vim/commit/94075b2b0e8e3b75334799d2c082497fbf85ffa1 Co-authored-by: Bram Moolenaar <Bram@vim.org>