Update runtime files.
diff --git a/runtime/ftplugin/ada.vim b/runtime/ftplugin/ada.vim
index 0809e7b..a0621e1 100644
--- a/runtime/ftplugin/ada.vim
+++ b/runtime/ftplugin/ada.vim
@@ -159,40 +159,41 @@
endif
" Section: Commands, Mapping, Menus {{{1
-"
-call ada#Map_Popup (
- \ 'Tag.List',
- \ 'l',
- \ 'call ada#List_Tag ()')
-call ada#Map_Popup (
- \'Tag.Jump',
- \'j',
- \'call ada#Jump_Tag ()')
-call ada#Map_Menu (
- \'Tag.Create File',
- \':AdaTagFile',
- \'call ada#Create_Tags (''file'')')
-call ada#Map_Menu (
- \'Tag.Create Dir',
- \':AdaTagDir',
- \'call ada#Create_Tags (''dir'')')
+if !exists(':AdaTagFile')
+ call ada#Map_Popup (
+ \ 'Tag.List',
+ \ 'l',
+ \ 'call ada#List_Tag ()')
+ call ada#Map_Popup (
+ \'Tag.Jump',
+ \'j',
+ \'call ada#Jump_Tag ()')
+ call ada#Map_Menu (
+ \'Tag.Create File',
+ \':AdaTagFile',
+ \'call ada#Create_Tags (''file'')')
+ call ada#Map_Menu (
+ \'Tag.Create Dir',
+ \':AdaTagDir',
+ \'call ada#Create_Tags (''dir'')')
-call ada#Map_Menu (
- \'Highlight.Toggle Space Errors',
- \ ':AdaSpaces',
- \'call ada#Switch_Syntax_Option (''space_errors'')')
-call ada#Map_Menu (
- \'Highlight.Toggle Lines Errors',
- \ ':AdaLines',
- \'call ada#Switch_Syntax_Option (''line_errors'')')
-call ada#Map_Menu (
- \'Highlight.Toggle Rainbow Color',
- \ ':AdaRainbow',
- \'call ada#Switch_Syntax_Option (''rainbow_color'')')
-call ada#Map_Menu (
- \'Highlight.Toggle Standard Types',
- \ ':AdaTypes',
- \'call ada#Switch_Syntax_Option (''standard_types'')')
+ call ada#Map_Menu (
+ \'Highlight.Toggle Space Errors',
+ \ ':AdaSpaces',
+ \'call ada#Switch_Syntax_Option (''space_errors'')')
+ call ada#Map_Menu (
+ \'Highlight.Toggle Lines Errors',
+ \ ':AdaLines',
+ \'call ada#Switch_Syntax_Option (''line_errors'')')
+ call ada#Map_Menu (
+ \'Highlight.Toggle Rainbow Color',
+ \ ':AdaRainbow',
+ \'call ada#Switch_Syntax_Option (''rainbow_color'')')
+ call ada#Map_Menu (
+ \'Highlight.Toggle Standard Types',
+ \ ':AdaTypes',
+ \'call ada#Switch_Syntax_Option (''standard_types'')')
+endif
" 1}}}
" Reset cpoptions
diff --git a/runtime/ftplugin/basic.vim b/runtime/ftplugin/basic.vim
new file mode 100644
index 0000000..c6ec254
--- /dev/null
+++ b/runtime/ftplugin/basic.vim
@@ -0,0 +1,27 @@
+" Vim filetype plugin file
+" Language: BASIC
+" Maintainer: Doug Kearns <dougkearns@gmail.com>
+" Last Change: 2015 Jan 10
+
+if exists("b:did_ftplugin")
+ finish
+endif
+let b:did_ftplugin = 1
+
+let s:cpo_save = &cpo
+set cpo&vim
+
+setlocal comments=:REM,:'
+setlocal commentstring='\ %s
+setlocal formatoptions-=t formatoptions+=croql
+
+if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
+ let b:browsefilter = "BASIC Source Files (*.bas)\t*.bas\n" .
+ \ "All Files (*.*)\t*.*\n"
+endif
+
+let b:undo_ftplugin = "setl fo< com< cms< sua<" .
+ \ " | unlet! b:browsefilter"
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/bzl.vim b/runtime/ftplugin/bzl.vim
index 0296b0c..8ab876e 100644
--- a/runtime/ftplugin/bzl.vim
+++ b/runtime/ftplugin/bzl.vim
@@ -1,7 +1,7 @@
" Vim filetype plugin file
" Language: Bazel (http://bazel.io)
" Maintainer: David Barnett (https://github.com/google/vim-ft-bzl)
-" Last Change: 2015 Aug 11
+" Last Change: 2021 Jan 19
""
" @section Introduction, intro
@@ -51,6 +51,8 @@
endif
if exists('*BzlFoldText')
+ let &cpo = s:save_cpo
+ unlet s:save_cpo
finish
endif
diff --git a/runtime/ftplugin/framescript.vim b/runtime/ftplugin/framescript.vim
index 48fe0ac..66802ca 100644
--- a/runtime/ftplugin/framescript.vim
+++ b/runtime/ftplugin/framescript.vim
@@ -3,14 +3,14 @@
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-19
-let s:cpo_save = &cpo
-set cpo&vim
-
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo< inc< | unlet! b:matchwords"
setlocal comments=s1:/*,mb:*,ex:*/,:// commentstring=/*\ %s\ */
diff --git a/runtime/ftplugin/freebasic.vim b/runtime/ftplugin/freebasic.vim
new file mode 100644
index 0000000..a2bb459
--- /dev/null
+++ b/runtime/ftplugin/freebasic.vim
@@ -0,0 +1,13 @@
+" Vim filetype plugin file
+" Language: FreeBasic
+" Maintainer: Doug Kearns <dougkearns@gmail.com>
+" Last Change: 2015 Jan 10
+
+if exists("b:did_ftplugin")
+ finish
+endif
+let b:did_ftplugin = 1
+
+runtime! ftplugin/basic.vim
+
+" vim: ts=8
diff --git a/runtime/ftplugin/hamster.vim b/runtime/ftplugin/hamster.vim
index 6c0630f..5446e72 100644
--- a/runtime/ftplugin/hamster.vim
+++ b/runtime/ftplugin/hamster.vim
@@ -2,7 +2,7 @@
" Language: Hamster Script
" Version: 2.0.6.0
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
-" Last Change: 2017 Mar 18
+" Last Change: 2021 Jan 19
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
@@ -57,6 +57,9 @@
endif
setlocal ignorecase
+
let &cpo = s:cpo_save
unlet s:cpo_save
-setlocal cpo+=M " makes \%( match \)
+
+" Disabled, 'cpo' is a global option.
+" setlocal cpo+=M " makes \%( match \)
diff --git a/runtime/ftplugin/ocaml.vim b/runtime/ftplugin/ocaml.vim
index 793b887..8a62860 100644
--- a/runtime/ftplugin/ocaml.vim
+++ b/runtime/ftplugin/ocaml.vim
@@ -159,6 +159,8 @@
" - Only definitions below, executed once -------------------------------------
if exists("*OMLetFoldLevel")
+ let &cpoptions = s:cposet
+ unlet s:cposet
finish
endif
@@ -635,7 +637,7 @@
nnoremap <silent> <Plug>OCamlPrintType :<C-U>call Ocaml_print_type("normal")<CR>
xnoremap <silent> <Plug>OCamlPrintType :<C-U>call Ocaml_print_type("visual")<CR>`<
-let &cpoptions=s:cposet
+let &cpoptions = s:cposet
unlet s:cposet
" vim:sw=2 fdm=indent
diff --git a/runtime/ftplugin/tidy.vim b/runtime/ftplugin/tidy.vim
new file mode 100644
index 0000000..470548d
--- /dev/null
+++ b/runtime/ftplugin/tidy.vim
@@ -0,0 +1,32 @@
+" Vim filetype plugin file
+" Language: HMTL Tidy Configuration
+" Maintainer: Doug Kearns <dougkearns@gmail.com>
+" Last Change: 2020 Sep 4
+
+if exists("b:did_ftplugin")
+ finish
+endif
+let b:did_ftplugin = 1
+
+let s:cpo_save = &cpo
+set cpo&vim
+
+setlocal comments=:#,://
+setlocal commentstring=#\ %s
+setlocal formatoptions-=t formatoptions+=croql
+
+if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
+ let b:browsefilter = "HTML Tidy Files (tidyrc, .tidyrc, tidy.conf)\ttidyrc;.tidyrc;tidy.conf\n" .
+ \ "HTML Files (*.html, *.htm)\t*.html;*.htm\n" .
+ \ "XHTML Files (*.xhtml, *.xhtm)\t*.xhtml;*.xhtm\n" .
+ \ "XML Files (*.xml)\t*.xml\n" .
+ \ "All Files (*.*)\t*.*\n"
+endif
+
+let b:undo_ftplugin = "setl fo< com< cms<" .
+ \ " | unlet! b:browsefilter"
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
+
+" vim: nowrap sw=2 sts=2 ts=8
diff --git a/runtime/ftplugin/vim.vim b/runtime/ftplugin/vim.vim
index 6adadbd..d39ad95 100644
--- a/runtime/ftplugin/vim.vim
+++ b/runtime/ftplugin/vim.vim
@@ -1,7 +1,7 @@
" Vim filetype plugin
" Language: Vim
" Maintainer: Bram Moolenaar <Bram@vim.org>
-" Last Change: 2021 Jan 12
+" Last Change: 2021 Jan 23
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
@@ -88,8 +88,13 @@
" Let the matchit plugin know what items can be matched.
if exists("loaded_matchit")
let b:match_ignorecase = 0
+ " "func" can also be used as a type:
+ " var Ref: func
+ " or to list functions:
+ " func name
+ " require a parenthesis following, then there can be an "endfunc".
let b:match_words =
- \ '\<\%(fu\%[nction]\|def\)\>)\@!:\<retu\%[rn]\>:\<\%(endf\%[unction]\|enddef\)\>,' .
+ \ '\<\%(fu\%[nction]\|def\)\s\+\S\+(:\<retu\%[rn]\>:\<\%(endf\%[unction]\|enddef\)\>,' .
\ '\<\(wh\%[ile]\|for\)\>:\<brea\%[k]\>:\<con\%[tinue]\>:\<end\(w\%[hile]\|fo\%[r]\)\>,' .
\ '\<if\>:\<el\%[seif]\>:\<en\%[dif]\>,' .
\ '{:},' .