aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/ex_docmd.c
Commit message (Collapse)AuthorAge
...
* Ex mode: use getexline() instead of getexmodeline()Justin M. Keyes2018-06-17
| | | | | | | | | | | | | | | | | | | | | This changes Ex mode (Q, -e) to work like Vim's "improved Ex mode" (gQ, -E). That brings some small behavior differences, but should not impact most Ex scripts (unless, for example, they depend on mappings being disabled--but that can be solved for -e by skipping user config). Before this change: * the screen test hangs. After this change: * Q acts like gQ. * -e/-es differs from -E/-Es only in its treatment of stdin. This moves towards potentially removing getexmodeline(). (HINT: That does NOT mean "removing Ex mode", it means removing the Vi-compatible Ex mode, which differs from Vim's "improved Ex mode" only in some minor details (e.g. mappings are disabled).) ref #1089 :-)~
* vim-patch:8.0.0451: some macros are in lower caseJan Edmund Lazo2018-06-12
| | | | | | | Problem: Some macros are in lower case. Solution: Make a few more macros upper case. Avoid lower case macros use an argument twice. https://github.com/vim/vim/commit/91acfffc1e6c0d8c2abfb186a0e79a5bf19c3f3f
* vim-patch:8.0.0466: still macros that should be all-caps (#8510)Jan Edmund Lazo2018-06-10
| | | | | Problem: There are still a few macros that should be all-caps. Solution: Make a few more macros all-caps. https://github.com/vim/vim/commit/8820b48654b62472821d9b155fe03ab7ac13a05c
* vim-patch:8.0.0515: ml_get errors in silent Ex mode (#8452)KunMing Xie2018-05-30
| | | | | | Problem: ml_get errors in silent Ex mode. (Dominique Pelle) Solution: Clear valid flags when setting the cursor. Set the topline when not in full screen mode. https://github.com/vim/vim/commit/d5d37537d1fa46fd468bd378af2006dd09840f38
* API: nvim_get_commands(): return DictionaryJustin M. Keyes2018-05-12
|
* API: nvim_get_commands(): more attributesJustin M. Keyes2018-05-11
| | | | | | | Support more :command attributes: -bang -bar -register
* API: nvim_get_commands(): always return keysJustin M. Keyes2018-05-11
| | | | | | - Always return all keys, with at least NIL value. - Require `opts` param to be {"builtin":false} - Validate `opts` param
* API: nvim_get_commands()Nimit Bhardwaj2018-05-11
|
* Merge #8218 'Fix errors reported by PVS'Justin M. Keyes2018-04-27
|\ | | | | closes #4983
| * ex_docmd: Fix PVS/V547: condition was already checked in surr. if()ZyX2018-04-15
| |
| * ex_docmd: Fix PVS/V547: due to short-circuiting name_len is never > 4ZyX2018-04-15
| |
* | Merge #8304 "default to 'nofsync'"Justin M. Keyes2018-04-24
|\ \
| * | IO: let 'fsync' option control more casesJustin M. Keyes2018-04-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Vim has the 'swapsync' option which we removed in 62d137ce0969. Instead let 'fsync' control swapfile-fsync. These cases ALWAYS force fsync (ignoring 'fsync' option): - Idle (CursorHold). - Exit caused by deadly signal. - SIGPWR signal. - Explicit :preserve command.
* | | inccommand: do not execute trailing commands #8256Nimit Bhardwaj2018-04-21
|/ / | | | | | | fix #7494
* | events: VimSuspend, VimResume #8280geekodour2018-04-15
| | | | | | | | | | closes #3648 ref #5959
* | cleanup: remove main_start_gui()Justin M. Keyes2018-04-11
|/
* *: Replace did_throw checks with current_exception checksZyX2018-03-25
| | | Removes obsolete did_throw after that.
* *: Make sure that !did_throw implies !current_exceptionZyX2018-03-25
| | | | Fixes #7876
* Merge #4419 'implement <Cmd> key'Justin M. Keyes2018-03-24
|\
| * getchar: implement <Cmd> key to invoke command in any modeBjörn Linse2018-03-23
| |
* | refactor/rename: path_try_shorten_fname()Justin M. Keyes2018-03-24
| |
* | refactor/rename: path_is_absolute()Justin M. Keyes2018-03-24
| |
* | refactor: eliminate `autocmd_fname_full` globalJustin M. Keyes2018-03-24
| | | | | | | | | | | | | | | | It's a micro-optimization; check path_is_absolute_path(autocmd_fname) instead. The main optimization (which is still in place) afforded by Vim 7.2.021 was to avoid resolving <afile> when it is not needed.
* | provider/RPC: apply_autocmds_group(): fix double-freeJustin M. Keyes2018-03-24
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | During provider dispatch, eval_call_provider() saves global state--including pointers, such as `autocmd_fname`--into `provider_caller_scope` which is later restored by f_rpcrequest(). But `autocmd_fname` is special-cased in eval_vars(), for performance (see Vim patch 7.2.021; this is also the singular purpose of the `autocmd_fname_full` global. Yay!) If eval_vars() frees `autocmd_fname` then its provider-RPC-scoped alias becomes a problem. Solution: Don't free autocmd_fname in eval_vars(), just copy into it. closes #5245 closes #5617 Reference ------------------------------------------------------------------------ Vim patch 7.2.021 https://github.com/vim/vim/commit/f6dad43c98f47da1ff9d8c99b320fc3674f83c63 Problem: When executing autocommands getting the full file name may be slow. (David Kotchan) Solution: Postpone calling FullName_save() until autocmd_fname is used. vim_dev discussion (2008): "Problem with CursorMoved AutoCommand when Editing Files on a Remote WIndows Share" https://groups.google.com/d/msg/vim_dev/kj95weZa_eE/GTgj4aq5sIgJ
* lintJustin M. Keyes2018-02-12
|
* vim-patch:8.0.1205: it is possible to unload a changed bufferJustin M. Keyes2018-02-11
| | | | | | | Problem: Using "1q" it is possible to unload a changed buffer. (Rick Howe) Solution: Check the right window for changes. https://github.com/vim/vim/commit/ff930cad8a9100eeb04256aab1a14de993c1d7e9
* vim-patch:8.0.0858: can exit while a terminal is still running a jobJustin M. Keyes2018-02-11
| | | | | | | Problem: Can exit while a terminal is still running a job. Solution: Consider a buffer with a running job like a changed file. https://github.com/vim/vim/commit/eb44a68b42eda207a5bc4def9ea8fc4d38acb650
* vim-patch:8.0.0613: the conf filetype is used before ftdetect from packagesJustin M. Keyes2018-02-11
| | | | | | | | | Problem: The conf filetype detection is done before ftdetect scripts from packages that are added later. Solution: Add the FALLBACK argument to :setfiletype. (closes vim/vim#1679, closes vim/vim#1693) https://github.com/vim/vim/commit/3e54569b17683318e0cb6693ab0024c2ad1e3e8f
* vim-patch:8.0.1204: a QuitPre autocommand may get the wrong file nameJustin M. Keyes2018-02-11
| | | | | | | Problem: A QuitPre autocommand may get the wrong file name. Solution: Pass the buffer being closed to apply_autocmds(). (Rich Howe) https://github.com/vim/vim/commit/87ffb5c1a3aa506a1be07af4e794b3753f839dc3
* vim-patch:8.0.0700: segfault with QuitPre autocommand closes the windowJustin M. Keyes2018-02-11
| | | | | | | | Problem: Segfault with QuitPre autocommand closes the window. (Marek) Solution: Check that the window pointer is still valid. (Christian Brabandt, closes vim/vim#1817) https://github.com/vim/vim/commit/0ea5070d79c8a13fb2403280a72f968495b0fab7
* Add completion for :checkhealthMarco Hinz2018-01-18
|
* defaults: do :filetype stuff unless explicitly "off"Justin M. Keyes2018-01-04
| | | | | | | | | | | Until now, the default `:filetype ...` setup was skipped if the user config touched `:filetype` in any way (including implicitly via `:syntax on`). No one needs that, and it's very confusing. Instead, proceed with `:filetype ... on` unless the user explicitly called `:filetype ... off`. closes #7765
* Move applying of TabClosed to win_close_othertabDaniel Hahler2017-12-29
|
* Merge branch 'master' into expression-parserZyX2017-12-03
|\ | | | | | | Hoping that could fix the LSAN issue: no idea what it is talking about.
| * fix lint errorckelsel2017-12-02
| |
| * vim-patch:8.0.0298ckelsel2017-12-02
| | | | | | | | | | | | | | | | Problem: Ex command range with repeated search does not work. (Bruce DeVisser) Solution: Skip over \/, \? and \&. https://github.com/vim/vim/commit/cbf20fbcd3e9bb006f694bcc35da859930fb12a2
* | Merge branch 'master' into expression-parserZyX2017-11-19
|\|
| * 'viewoptions': add "curdir" flag #7447Eric Roberts2017-11-18
| | | | | | | | | | | | | | | | | | | | The flag enables the current local directory set by ":lcd" to be saved to views which is the current default behaviour. The option can be removed to disable this behaviour. closes #7435 vim-patch:8.0.1289
| * vim-patch:8.0.0218 (#7529)KunMing Xie2017-11-10
| | | | | | | | | | | | Problem: No command line completion for :cexpr, :cgetexpr, :caddexpr, etc. Solution: Make completion work. (Yegappan Lakshmanan) Add a test. https://github.com/vim/vim/commit/2b2207ba69c6b009e466a36eef0644ca723e16d3
* | Merge branch 'master' into expression-parserZyX2017-10-30
|\|
| * inccommand: Ignore leading modifiers in the commandJames McCoy2017-10-24
| |
| * :cquit : take an error code argument #7336Josh Leeb-du Toit2017-10-22
| | | | | | | | | | | | | | | | | | | | closes #2699 ex_cmds.lua: use flags consistent with similar commands such as `cnext`. upstream discussion: "[patch] :qcuit can take exit code" https://groups.google.com/d/msg/vim_dev/_PjyNbUKyRc/oPgr5_ZXc6AJ
* | syntax,viml/expressions/parser: Create defaults for expr highlightingZyX2017-10-29
|/
* lintJames McCoy2017-09-26
|
* vim-patch:8.0.1024James McCoy2017-09-26
| | | | | | | | Problem: Manual folds are lost when a session file has the same buffer in two windows. (Jeansen) Solution: Use ":edit" only once. (Christian Brabandt, closes vim/vim#1958) https://github.com/vim/vim/commit/4bebc9a0565670b853d227f81a9a31eafdb47eed
* vim-patch:8.0.0253James McCoy2017-09-26
| | | | | | | | | Problem: When creating a session when winminheight is 2 or larger and loading that session gives an error. Solution: Also set winminheight before setting winheight to 1. (Rafael Bodill, neovim vim/vim#5717) https://github.com/vim/vim/commit/36ae89c550a4f0a380606c3fb4a054957ad698f0
* vim-patch:8.0.0294 (#7305)Michael Schupikov2017-09-23
| | | | | | | | | | Problem: Argument list is not stored correctly in a session file. (lgpasquale) Solution: Use "$argadd" instead of "argadd". (closes vim/vim#1434) https://github.com/vim/vim/commit/79da563cf9220b9abb83455a68d995684133ea56 Signed-off-by: Michael Schupikov <michael@schupikov.de>
* vim-patch:8.0.0327 (#7281)KunMing Xie2017-09-17
| | | | | | | Problem: The E11 error message in the command line window is not translated. Solution: use _(). (Hirohito Higashi) https://github.com/vim/vim/commit/75c19464ed7fb6024af64747379e61abc4e4a483
* vim-patch:8.0.0324 (#7279)KunMing Xie2017-09-17
| | | | | | | Problem: Illegal memory access with "1;y". Solution: Call check_cursor() instead of check_cursor_lnum(). (Dominique Pelle, closes vim/vim#1455) https://github.com/vim/vim/commit/f1f6f3f7df2938b3583e341482d96c1d53124c51
* Use Normal mode as default when opening a new terminalDrew Neil2017-08-21
|