diff options
author | Justin M. Keyes <justinkz@gmail.com> | 2023-10-04 06:31:25 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-10-04 06:31:25 -0700 |
commit | 29fe883aa9166bdbcae3f935523c75a8aa56fe45 (patch) | |
tree | 40c1179d6d854acec5d044a94cc6111dc54883c7 /src/nvim/eval/userfunc.c | |
parent | 1e7e9ee91f73c62b8c5ba9dbdabba3a3b6dc0130 (diff) | |
download | rneovim-29fe883aa9166bdbcae3f935523c75a8aa56fe45.tar.gz rneovim-29fe883aa9166bdbcae3f935523c75a8aa56fe45.tar.bz2 rneovim-29fe883aa9166bdbcae3f935523c75a8aa56fe45.zip |
feat: ignore swapfile for running Nvim processes #25336
Problem:
The swapfile "E325: ATTENTION" dialog is displayed when editing a file
already open in another (running) Nvim. Usually this behavior is
annoying and irrelevant:
- "Recover" and the other options ("Open readonly", "Quit", "Abort") are
almost never wanted.
- swapfiles are less relevant for "multi-Nvim" since 'autoread' is
enabled by default.
- Even less relevant if user enables 'autowrite'.
Solution:
Define a default SwapExists handler which does the following:
1. If the swapfile is owned by a running Nvim process, automatically
chooses "(E)dit anyway" (caveat: this creates a new, extra swapfile,
which is mostly harmless and ignored except by `:recover` or `nvim -r`.
2. Shows a 1-line "ignoring swapfile..." message.
3. Users can disable the default SwapExists handler via `autocmd! nvim_swapfile`.
Diffstat (limited to 'src/nvim/eval/userfunc.c')
-rw-r--r-- | src/nvim/eval/userfunc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/nvim/eval/userfunc.c b/src/nvim/eval/userfunc.c index e4adf9f340..ca98aad6bc 100644 --- a/src/nvim/eval/userfunc.c +++ b/src/nvim/eval/userfunc.c @@ -2491,7 +2491,7 @@ void ex_function(exarg_T *eap) } else if (line_arg != NULL && *skipwhite(line_arg) != NUL) { nextcmd = line_arg; } else if (*p != NUL && *p != '"' && p_verbose > 0) { - give_warning2(_("W22: Text found after :endfunction: %s"), p, true); + swmsg(true, _("W22: Text found after :endfunction: %s"), p); } if (nextcmd != NULL) { // Another command follows. If the line came from "eap" we |