From 946a839aa9621e11f53e7044e594132d0497b99f Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Tue, 4 Jun 2024 19:09:23 +0200 Subject: [PATCH] vim-patch:98b73eb: runtime(netrw): prevent accidental data loss fixes: vim/vim#14915 https://github.com/vim/vim/commit/98b73eb645b68b6e197b63bbbae777b388d47612 Co-authored-by: Christian Brabandt --- runtime/autoload/netrw.vim | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/runtime/autoload/netrw.vim b/runtime/autoload/netrw.vim index ae602c5be6..a1929636e5 100644 --- a/runtime/autoload/netrw.vim +++ b/runtime/autoload/netrw.vim @@ -12,6 +12,8 @@ " 2024 May 08 by Vim Project: cleanup legacy Win9X checks " 2024 May 09 by Vim Project: remove hard-coded private.ppk " 2024 May 10 by Vim Project: recursively delete directories by default +" 2024 May 13 by Vim Project: prefer scp over pscp +" 2024 Jun 04 by Vim Project: set bufhidden if buffer changed, nohidden is set and buffer shall be switched (#14915) " Former Maintainer: Charles E Campbell " GetLatestVimScripts: 1075 1 :AutoInstall: netrw.vim " Copyright: Copyright (C) 2016 Charles E. Campbell {{{1 @@ -5681,6 +5683,9 @@ fun! s:NetrwEditFile(cmd,opt,fname) exe "NetrwKeepj keepalt ".a:opt." ".a:cmd." ".fnameescape(a:fname) else " call Decho("exe NetrwKeepj ".a:opt." ".a:cmd." ".fnameescape(a:fname)) + if a:cmd =~# 'e\%[new]!' && !&hidden && getbufvar(bufname('%'), '&modified', 0) + call setbufvar(bufname('%'), '&bufhidden', 'hide') + endif exe "NetrwKeepj ".a:opt." ".a:cmd." ".fnameescape(a:fname) endif " call Dret("s:NetrwEditFile")