runtime(tcsh): Update ftplugin (#13327)
Fix b:browsefilter deletion error when calling b:undo_ftplugin.
Fixes #13167
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/runtime/ftplugin/tcsh.vim b/runtime/ftplugin/tcsh.vim
index 85d3873..b2467b4 100644
--- a/runtime/ftplugin/tcsh.vim
+++ b/runtime/ftplugin/tcsh.vim
@@ -2,9 +2,11 @@
" Language: tcsh
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Previous Maintainer: Dan Sharp
-" Last Change: 2021 Oct 15
+" Last Change: 2023 Oct 09
-if exists("b:did_ftplugin") | finish | endif
+if exists("b:did_ftplugin")
+ finish
+endif
let s:save_cpo = &cpo
set cpo-=C
@@ -12,24 +14,26 @@
" Define some defaults in case the included ftplugins don't set them.
let s:undo_ftplugin = ""
let s:browsefilter = "csh Files (*.csh)\t*.csh\n" ..
- \ "All Files (*.*)\t*.*\n"
+ \ "All Files (*.*)\t*.*\n"
runtime! ftplugin/csh.vim ftplugin/csh_*.vim ftplugin/csh/*.vim
let b:did_ftplugin = 1
" Override our defaults if these were set by an included ftplugin.
if exists("b:undo_ftplugin")
- let s:undo_ftplugin = b:undo_ftplugin
+ let s:undo_ftplugin = b:undo_ftplugin
endif
if exists("b:browsefilter")
- let s:browsefilter = b:browsefilter
+ let s:browsefilter = b:browsefilter
endif
-if (has("gui_win32") || has("gui_gtk"))
- let b:browsefilter="tcsh Scripts (*.tcsh)\t*.tcsh\n" .. s:browsefilter
+if (has("gui_win32") || has("gui_gtk")) &&
+ \ (!exists("b:browsefilter") || exists("b:csh_set_browsefilter"))
+ let b:browsefilter = "tcsh Scripts (*.tcsh)\t*.tcsh\n" .. s:browsefilter
+ let s:undo_ftplugin = "unlet! b:browsefilter | " .. s:undo_ftplugin
endif
-let b:undo_ftplugin = "unlet! b:browsefilter | " .. s:undo_ftplugin
+let b:undo_ftplugin = s:undo_ftplugin
let &cpo = s:save_cpo
unlet s:save_cpo