mirror of
https://github.com/neovim/neovim.git
synced 2026-07-14 13:20:35 +00:00
fix(ftplugin): source inherited Lua ftplugins
Problem:
Vimscript ftplugins that inherit a base ftplugin often use explicit
`runtime! ftplugin/foo.vim` patterns. This skips corresponding Lua
ftplugins, unlike top-level ftplugin loading.
Solution:
Use the existing `{vim,lua}` patterns for bang runtime imports while
preserving each call's current lookup breadth.
This commit is contained in:
committed by
Christian Clason
parent
fd02e91319
commit
0bb2f5cc08
@@ -23,7 +23,7 @@ else
|
||||
let s:browsefilter .= "All Files (*)\t*\n"
|
||||
endif
|
||||
|
||||
runtime! ftplugin/xml.vim ftplugin/xml_*.vim ftplugin/xml/*.vim
|
||||
runtime! ftplugin/xml[.]{vim,lua} ftplugin/xml_*.{vim,lua} ftplugin/xml/*.{vim,lua}
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
" Override our defaults if these were set by an included ftplugin.
|
||||
|
||||
@@ -24,7 +24,7 @@ else
|
||||
endif
|
||||
let s:match_words = ""
|
||||
|
||||
runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
|
||||
runtime! ftplugin/html[.]{vim,lua} ftplugin/html_*.{vim,lua} ftplugin/html/*.{vim,lua}
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
" Override our defaults if these were set by an included ftplugin.
|
||||
|
||||
@@ -10,7 +10,7 @@ endif
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
runtime! ftplugin/make.vim ftplugin/make_*.vim ftplugin/make/*.vim
|
||||
runtime! ftplugin/make[.]{vim,lua} ftplugin/make_*.{vim,lua} ftplugin/make/*.{vim,lua}
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -15,6 +15,6 @@ unlet! b:is_sh
|
||||
unlet! b:is_kornshell
|
||||
let b:is_bash = 1
|
||||
|
||||
runtime! ftplugin/sh.vim ftplugin/sh_*.vim ftplugin/sh/*.vim
|
||||
runtime! ftplugin/sh[.]{vim,lua} ftplugin/sh_*.{vim,lua} ftplugin/sh/*.{vim,lua}
|
||||
|
||||
" vim: ts=8
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
" Placeholder for maximum compatibility. While bicepparam files are treated as distinct filetypes,
|
||||
" they are should share the same ftplugin settings as bicep files.
|
||||
runtime! ftplugin/bicep.vim
|
||||
runtime! ftplugin/bicep[.]{vim,lua}
|
||||
|
||||
@@ -8,4 +8,4 @@ if exists('b:did_ftplugin')
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
runtime! ftplugin/brightscript.vim
|
||||
runtime! ftplugin/brightscript[.]{vim,lua}
|
||||
|
||||
@@ -10,4 +10,4 @@ if exists("b:did_ftplugin")
|
||||
endif
|
||||
|
||||
" Behaves just like dosbatch
|
||||
runtime! ftplugin/dosbatch.vim ftplugin/dosbatch_*.vim ftplugin/dosbatch/*.vim
|
||||
runtime! ftplugin/dosbatch[.]{vim,lua} ftplugin/dosbatch_*.{vim,lua} ftplugin/dosbatch/*.{vim,lua}
|
||||
|
||||
@@ -14,4 +14,4 @@ if exists("b:did_ftplugin")
|
||||
endif
|
||||
|
||||
" Behaves just like C
|
||||
runtime! ftplugin/c.vim ftplugin/c_*.vim ftplugin/c/*.vim
|
||||
runtime! ftplugin/c[.]{vim,lua} ftplugin/c_*.{vim,lua} ftplugin/c/*.{vim,lua}
|
||||
|
||||
@@ -24,7 +24,7 @@ else
|
||||
endif
|
||||
let s:match_words = ""
|
||||
|
||||
runtime! ftplugin/sh.vim ftplugin/sh_*.vim ftplugin/sh/*.vim
|
||||
runtime! ftplugin/sh[.]{vim,lua} ftplugin/sh_*.{vim,lua} ftplugin/sh/*.{vim,lua}
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
" Override our defaults if these were set by an included ftplugin.
|
||||
|
||||
@@ -7,4 +7,4 @@ if exists("b:did_ftplugin")
|
||||
endif
|
||||
|
||||
" Use the cfg plugin, it's similar enough.
|
||||
runtime! ftplugin/cfg.vim
|
||||
runtime! ftplugin/cfg[.]{vim,lua}
|
||||
|
||||
@@ -8,4 +8,4 @@ if exists('b:did_ftplugin')
|
||||
endif
|
||||
|
||||
" Behaves mostly just like C++
|
||||
runtime! ftplugin/cpp.vim
|
||||
runtime! ftplugin/cpp[.]{vim,lua}
|
||||
|
||||
@@ -8,4 +8,4 @@ if exists('b:did_ftplugin')
|
||||
endif
|
||||
|
||||
" Behaves mostly just like cfg
|
||||
runtime! ftplugin/cfg.vim
|
||||
runtime! ftplugin/cfg[.]{vim,lua}
|
||||
|
||||
@@ -16,9 +16,9 @@ if !exists('b:docbk_type')
|
||||
endif
|
||||
|
||||
if b:docbk_type == 'sgml'
|
||||
runtime! ftplugin/sgml.vim ftplugin/sgml_*.vim ftplugin/sgml/*.vim
|
||||
runtime! ftplugin/sgml[.]{vim,lua} ftplugin/sgml_*.{vim,lua} ftplugin/sgml/*.{vim,lua}
|
||||
else
|
||||
runtime! ftplugin/xml.vim ftplugin/xml_*.vim ftplugin/xml/*.vim
|
||||
runtime! ftplugin/xml[.]{vim,lua} ftplugin/xml_*.{vim,lua} ftplugin/xml/*.{vim,lua}
|
||||
endif
|
||||
|
||||
let b:undo_ftplugin = "unlet! b:docbk_type"
|
||||
|
||||
@@ -52,9 +52,9 @@ elseif !exists("b:eruby_subtype")
|
||||
endif
|
||||
|
||||
if exists("b:eruby_subtype") && b:eruby_subtype != '' && b:eruby_subtype !=? 'eruby'
|
||||
exe "runtime! ftplugin/".b:eruby_subtype.".vim ftplugin/".b:eruby_subtype."_*.vim ftplugin/".b:eruby_subtype."/*.vim"
|
||||
exe "runtime! ftplugin/".b:eruby_subtype."[.]{vim,lua} ftplugin/".b:eruby_subtype."_*.{vim,lua} ftplugin/".b:eruby_subtype."/*.{vim,lua}"
|
||||
else
|
||||
runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
|
||||
runtime! ftplugin/html[.]{vim,lua} ftplugin/html_*.{vim,lua} ftplugin/html/*.{vim,lua}
|
||||
endif
|
||||
unlet! b:did_ftplugin
|
||||
|
||||
@@ -87,7 +87,7 @@ let s:include = &l:include
|
||||
let s:path = &l:path
|
||||
let s:suffixesadd = &l:suffixesadd
|
||||
|
||||
runtime! ftplugin/ruby.vim ftplugin/ruby_*.vim ftplugin/ruby/*.vim
|
||||
runtime! ftplugin/ruby[.]{vim,lua} ftplugin/ruby_*.{vim,lua} ftplugin/ruby/*.{vim,lua}
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
" Combine the new set of values with those previously included.
|
||||
|
||||
@@ -8,7 +8,7 @@ if exists("b:did_ftplugin")
|
||||
endif
|
||||
|
||||
" Syntax is similar to Tcl
|
||||
runtime! ftplugin/tcl.vim
|
||||
runtime! ftplugin/tcl[.]{vim,lua}
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
@@ -10,7 +10,7 @@ endif
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
runtime! ftplugin/make.vim
|
||||
runtime! ftplugin/make[.]{vim,lua}
|
||||
|
||||
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:browsefilter = "Free Pascal Makefile Definition Files (*.fpc)\t*.fpc\n"
|
||||
|
||||
@@ -11,7 +11,7 @@ endif
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
runtime! ftplugin/basic.vim
|
||||
runtime! ftplugin/basic[.]{vim,lua}
|
||||
|
||||
let s:dialect = freebasic#GetDialect()
|
||||
|
||||
|
||||
@@ -7,4 +7,4 @@ if exists("b:did_ftplugin")
|
||||
endif
|
||||
|
||||
" Use the cfg plugin, it's similar enough.
|
||||
runtime! ftplugin/cfg.vim
|
||||
runtime! ftplugin/cfg[.]{vim,lua}
|
||||
|
||||
@@ -3,4 +3,4 @@
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" Last Change: 2009 Dec 24
|
||||
|
||||
runtime! ftplugin/mail.vim
|
||||
runtime! ftplugin/mail[.]{vim,lua}
|
||||
|
||||
@@ -10,7 +10,7 @@ endif
|
||||
|
||||
let b:nroff_is_groff = 1
|
||||
|
||||
runtime! ftplugin/nroff.vim
|
||||
runtime! ftplugin/nroff[.]{vim,lua}
|
||||
|
||||
setlocal commentstring=\\#\ %s
|
||||
setlocal comments=:\\#,:.\\\",:\\\",:'\\\",:'''
|
||||
|
||||
@@ -21,7 +21,7 @@ else
|
||||
endif
|
||||
let s:match_words = ""
|
||||
|
||||
runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
|
||||
runtime! ftplugin/html[.]{vim,lua} ftplugin/html_*.{vim,lua} ftplugin/html/*.{vim,lua}
|
||||
unlet! b:did_ftplugin
|
||||
set matchpairs-=<:>
|
||||
|
||||
@@ -39,7 +39,7 @@ if exists("b:match_words")
|
||||
unlet b:match_words
|
||||
endif
|
||||
|
||||
runtime! ftplugin/ruby.vim ftplugin/ruby_*.vim ftplugin/ruby/*.vim
|
||||
runtime! ftplugin/ruby[.]{vim,lua} ftplugin/ruby_*.{vim,lua} ftplugin/ruby/*.{vim,lua}
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let &l:define .= empty(&l:define ? '' : '\|') . '^\s*\%(%\w*\)\=\%(\.[[:alnum:]_-]\+\)*#'
|
||||
|
||||
@@ -7,4 +7,4 @@ if exists('b:did_ftplugin')
|
||||
finish
|
||||
endif
|
||||
|
||||
runtime! ftplugin/terraform.vim
|
||||
runtime! ftplugin/terraform[.]{vim,lua}
|
||||
|
||||
@@ -9,4 +9,4 @@ if exists("b:did_ftplugin")
|
||||
endif
|
||||
|
||||
" source the HTML ftplugin
|
||||
runtime! ftplugin/html.vim
|
||||
runtime! ftplugin/html[.]{vim,lua}
|
||||
|
||||
@@ -9,5 +9,5 @@ if exists("b:did_ftplugin")
|
||||
endif
|
||||
|
||||
" Use HTML and Django template ftplugins.
|
||||
runtime! ftplugin/html.vim
|
||||
runtime! ftplugin/django.vim
|
||||
runtime! ftplugin/html[.]{vim,lua}
|
||||
runtime! ftplugin/django[.]{vim,lua}
|
||||
|
||||
@@ -4,4 +4,4 @@
|
||||
" Last Change: 2020 Aug 19
|
||||
|
||||
" Placeholder for backwards compatilibity: .jsx used to stand for JavaScript.
|
||||
runtime! ftplugin/javascript.vim
|
||||
runtime! ftplugin/javascript[.]{vim,lua}
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
" Last Change: 2021 Nov 22
|
||||
" 2024 May 23 by Riley Bruins <ribru17@gmail.com> ('commentstring')
|
||||
|
||||
runtime! ftplugin/json.vim
|
||||
runtime! ftplugin/json[.]{vim,lua}
|
||||
|
||||
if exists('b:did_ftplugin_jsonc')
|
||||
finish
|
||||
|
||||
@@ -25,7 +25,7 @@ else
|
||||
endif
|
||||
let s:match_words = ""
|
||||
|
||||
runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
|
||||
runtime! ftplugin/html[.]{vim,lua} ftplugin/html_*.{vim,lua} ftplugin/html/*.{vim,lua}
|
||||
unlet b:did_ftplugin
|
||||
|
||||
" Override our defaults if these were set by an included ftplugin.
|
||||
@@ -42,7 +42,7 @@ if exists("b:match_words")
|
||||
unlet b:match_words
|
||||
endif
|
||||
|
||||
runtime! ftplugin/java.vim ftplugin/java_*.vim ftplugin/java/*.vim
|
||||
runtime! ftplugin/java[.]{vim,lua} ftplugin/java_*.{vim,lua} ftplugin/java/*.{vim,lua}
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
" Combine the new set of values with those previously included.
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
" 2024 Jan 14 by Vim Project (browsefilter)
|
||||
|
||||
" Behaves almost like C++
|
||||
runtime! ftplugin/cpp.vim ftplugin/cpp_*.vim ftplugin/cpp/*.vim
|
||||
runtime! ftplugin/cpp[.]{vim,lua} ftplugin/cpp_*.{vim,lua} ftplugin/cpp/*.{vim,lua}
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
@@ -11,4 +11,4 @@ if exists('b:did_ftplugin')
|
||||
finish
|
||||
endif
|
||||
|
||||
runtime! ftplugin/erlang.vim
|
||||
runtime! ftplugin/erlang[.]{vim,lua}
|
||||
|
||||
@@ -27,9 +27,9 @@ if !exists('b:liquid_subtype')
|
||||
endif
|
||||
|
||||
if exists('b:liquid_subtype') && b:liquid_subtype != ''
|
||||
exe 'runtime! ftplugin/'.b:liquid_subtype.'.vim ftplugin/'.b:liquid_subtype.'_*.vim ftplugin/'.b:liquid_subtype.'/*.vim'
|
||||
exe 'runtime! ftplugin/'.b:liquid_subtype.'[.]{vim,lua} ftplugin/'.b:liquid_subtype.'_*.{vim,lua} ftplugin/'.b:liquid_subtype.'/*.{vim,lua}'
|
||||
else
|
||||
runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
|
||||
runtime! ftplugin/html[.]{vim,lua} ftplugin/html_*.{vim,lua} ftplugin/html/*.{vim,lua}
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
|
||||
@@ -6,4 +6,4 @@ if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
|
||||
runtime! ftplugin/markdown.vim ftplugin/markdown_*.vim ftplugin/markdown/*.vim
|
||||
runtime! ftplugin/markdown[.]{vim,lua} ftplugin/markdown_*.{vim,lua} ftplugin/markdown/*.{vim,lua}
|
||||
|
||||
@@ -10,7 +10,7 @@ endif
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
runtime! ftplugin/m3quake.vim
|
||||
runtime! ftplugin/m3quake[.]{vim,lua}
|
||||
|
||||
if (has("gui_win32") || has("gui_gtk")) && exists("b:m3quake_set_browsefilter")
|
||||
let b:browsefilter = "Modula-3 Makefile (m3makefile, m3overrides)\tm3makefile;m3overrides\n"
|
||||
|
||||
@@ -9,7 +9,7 @@ if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
|
||||
runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
|
||||
runtime! ftplugin/html[.]{vim,lua} ftplugin/html_*.{vim,lua} ftplugin/html/*.{vim,lua}
|
||||
|
||||
let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
|
||||
@@ -10,4 +10,4 @@ if exists("b:did_ftplugin")
|
||||
endif
|
||||
|
||||
" Behaves just like C
|
||||
runtime! ftplugin/c.vim ftplugin/c_*.vim ftplugin/c/*.vim
|
||||
runtime! ftplugin/c[.]{vim,lua} ftplugin/c_*.{vim,lua} ftplugin/c/*.{vim,lua}
|
||||
|
||||
@@ -1 +1 @@
|
||||
runtime! ftplugin/objc.vim
|
||||
runtime! ftplugin/objc[.]{vim,lua}
|
||||
|
||||
@@ -24,7 +24,7 @@ else
|
||||
endif
|
||||
let s:match_words = ""
|
||||
|
||||
runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
|
||||
runtime! ftplugin/html[.]{vim,lua} ftplugin/html_*.{vim,lua} ftplugin/html/*.{vim,lua}
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
" Override our defaults if these were set by an included ftplugin.
|
||||
|
||||
@@ -13,7 +13,7 @@ let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Behaves just like Python
|
||||
runtime! ftplugin/python.vim ftplugin/python_*.vim ftplugin/python/*.vim
|
||||
runtime! ftplugin/python[.]{vim,lua} ftplugin/python_*.{vim,lua} ftplugin/python/*.{vim,lua}
|
||||
|
||||
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:browsefilter = "Pyrex files (*.pyx, *.pxd)\t*.pyx;*.pxd\n" .
|
||||
|
||||
@@ -9,7 +9,7 @@ endif
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
runtime! ftplugin/basic.vim
|
||||
runtime! ftplugin/basic[.]{vim,lua}
|
||||
|
||||
let s:not_end = '\%(end\s\+\)\@<!'
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ vim.treesitter.start()
|
||||
-- set omnifunc
|
||||
vim.bo.omnifunc = 'v:lua.vim.treesitter.query.omnifunc'
|
||||
|
||||
vim.opt_local.iskeyword:append('.')
|
||||
vim.api.nvim_set_option_value('iskeyword', '.', { scope = 'local', operation = 'append' })
|
||||
|
||||
-- query linter
|
||||
local buf = vim.api.nvim_get_current_buf()
|
||||
|
||||
@@ -14,7 +14,7 @@ if exists("b:did_ftplugin")
|
||||
endif
|
||||
|
||||
if exists('g:rmd_include_html') && g:rmd_include_html
|
||||
runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
|
||||
runtime! ftplugin/html[.]{vim,lua} ftplugin/html_*.{vim,lua} ftplugin/html/*.{vim,lua}
|
||||
endif
|
||||
|
||||
setlocal comments=fb:*,fb:-,fb:+,n:>
|
||||
|
||||
@@ -13,7 +13,7 @@ endif
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
runtime! ftplugin/tex.vim
|
||||
runtime! ftplugin/tex[.]{vim,lua}
|
||||
|
||||
" Don't load another plugin for this buffer
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
@@ -9,6 +9,6 @@ if exists('b:did_ftplugin') || &cp
|
||||
finish
|
||||
endif
|
||||
|
||||
runtime! ftplugin/scala.vim
|
||||
runtime! ftplugin/scala[.]{vim,lua}
|
||||
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
@@ -52,7 +52,7 @@ let b:undo_ftplugin = b:undo_ftplugin . ' lispwords<'
|
||||
let b:did_scheme_ftplugin = 1
|
||||
|
||||
if exists('b:is_chicken') || exists('g:is_chicken')
|
||||
runtime! ftplugin/chicken.vim
|
||||
runtime! ftplugin/chicken[.]{vim,lua}
|
||||
endif
|
||||
|
||||
unlet b:did_scheme_ftplugin
|
||||
|
||||
@@ -7,7 +7,7 @@ if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
|
||||
runtime! ftplugin/sass.vim
|
||||
runtime! ftplugin/sass[.]{vim,lua}
|
||||
setlocal comments=s1:/*,mb:*,ex:*/,://
|
||||
|
||||
" vim:set sw=2:
|
||||
|
||||
@@ -23,7 +23,7 @@ else
|
||||
let s:browsefilter .= "All Files (*)\t*\n"
|
||||
endif
|
||||
|
||||
runtime! ftplugin/xml.vim ftplugin/xml_*.vim ftplugin/xml/*.vim
|
||||
runtime! ftplugin/xml[.]{vim,lua} ftplugin/xml_*.{vim,lua} ftplugin/xml/*.{vim,lua}
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
" Override our defaults if these were set by an included ftplugin.
|
||||
|
||||
@@ -7,4 +7,4 @@ if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
|
||||
runtime! ftplugin/conf.vim
|
||||
runtime! ftplugin/conf[.]{vim,lua}
|
||||
|
||||
@@ -15,7 +15,7 @@ set cpo-=C
|
||||
let s:undo_ftplugin = ""
|
||||
let s:browsefilter = "All Files (*.*)\t*.*\n"
|
||||
|
||||
runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
|
||||
runtime! ftplugin/html[.]{vim,lua} ftplugin/html_*.{vim,lua} ftplugin/html/*.{vim,lua}
|
||||
unlet! b:did_ftplugin
|
||||
|
||||
" Override our defaults if these were set by an included ftplugin.
|
||||
|
||||
@@ -23,7 +23,7 @@ else
|
||||
let s:browsefilter .= "All Files (*)\t*\n"
|
||||
endif
|
||||
|
||||
runtime! ftplugin/xml.vim ftplugin/xml_*.vim ftplugin/xml/*.vim
|
||||
runtime! ftplugin/xml[.]{vim,lua} ftplugin/xml_*.{vim,lua} ftplugin/xml/*.{vim,lua}
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
" Override our defaults if these were set by an included ftplugin.
|
||||
|
||||
@@ -8,4 +8,4 @@
|
||||
"
|
||||
" Vim maintainer: Emir SARI <bitigchi@me.com>
|
||||
|
||||
runtime! ftplugin/swift.vim
|
||||
runtime! ftplugin/swift[.]{vim,lua}
|
||||
|
||||
@@ -9,4 +9,4 @@ if exists("b:did_ftplugin")
|
||||
endif
|
||||
|
||||
" Behaves mostly just like KerML, only differs by keywords
|
||||
runtime! ftplugin/kerml.vim
|
||||
runtime! ftplugin/kerml[.]{vim,lua}
|
||||
|
||||
@@ -7,7 +7,7 @@ if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
" Looks a lot like dosini files.
|
||||
runtime! ftplugin/dosini.vim
|
||||
runtime! ftplugin/dosini[.]{vim,lua}
|
||||
|
||||
if has('unix') && executable('less') && exists(':terminal') == 2
|
||||
command! -buffer -nargs=1 SystemdKeywordPrg silent exe 'term ++close ' KeywordLookup_systemd(<q-args>)
|
||||
|
||||
@@ -9,7 +9,7 @@ if exists("b:did_ftplugin")
|
||||
endif
|
||||
|
||||
" Behaves just like Verilog
|
||||
runtime! ftplugin/verilog.vim
|
||||
runtime! ftplugin/verilog[.]{vim,lua}
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
@@ -20,7 +20,7 @@ else
|
||||
let s:browsefilter ..= "All Files (*)\t*\n"
|
||||
endif
|
||||
|
||||
runtime! ftplugin/csh.vim ftplugin/csh_*.vim ftplugin/csh/*.vim
|
||||
runtime! ftplugin/csh[.]{vim,lua} ftplugin/csh_*.{vim,lua} ftplugin/csh/*.{vim,lua}
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
" Override our defaults if these were set by an included ftplugin.
|
||||
|
||||
@@ -12,4 +12,4 @@ if exists("b:did_ftplugin")
|
||||
endif
|
||||
|
||||
" Just use the HTML plugin for now.
|
||||
runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
|
||||
runtime! ftplugin/html[.]{vim,lua} ftplugin/html_*.{vim,lua} ftplugin/html/*.{vim,lua}
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
let s:match_words = ""
|
||||
let s:undo_ftplugin = ""
|
||||
|
||||
runtime! ftplugin/typescript.vim
|
||||
runtime! ftplugin/typescript[.]{vim,lua}
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
|
||||
@@ -25,7 +25,7 @@ else
|
||||
endif
|
||||
let s:match_words = ""
|
||||
|
||||
runtime! ftplugin/xml.vim ftplugin/xml_*.vim ftplugin/xml/*.vim
|
||||
runtime! ftplugin/xml[.]{vim,lua} ftplugin/xml_*.{vim,lua} ftplugin/xml/*.{vim,lua}
|
||||
unlet b:did_ftplugin
|
||||
|
||||
" Override our defaults if these were set by an included ftplugin.
|
||||
@@ -42,7 +42,7 @@ if exists("b:match_words")
|
||||
unlet b:match_words
|
||||
endif
|
||||
|
||||
runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
|
||||
runtime! ftplugin/html[.]{vim,lua} ftplugin/html_*.{vim,lua} ftplugin/html/*.{vim,lua}
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
" Combine the new set of values with those previously included.
|
||||
|
||||
@@ -12,4 +12,4 @@ if exists("b:did_ftplugin")
|
||||
endif
|
||||
|
||||
" Just use the C plugin for now.
|
||||
runtime! ftplugin/c.vim ftplugin/c_*.vim ftplugin/c/*.vim
|
||||
runtime! ftplugin/c[.]{vim,lua} ftplugin/c_*.{vim,lua} ftplugin/c/*.{vim,lua}
|
||||
|
||||
@@ -23,7 +23,7 @@ else
|
||||
let s:browsefilter .= "All Files (*)\t*\n"
|
||||
endif
|
||||
|
||||
runtime! ftplugin/xml.vim ftplugin/xml_*.vim ftplugin/xml/*.vim
|
||||
runtime! ftplugin/xml[.]{vim,lua} ftplugin/xml_*.{vim,lua} ftplugin/xml/*.{vim,lua}
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
" Override our defaults if these were set by an included ftplugin.
|
||||
|
||||
@@ -8,7 +8,7 @@ if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
|
||||
runtime! ftplugin/xml.vim ftplugin/xml_*.vim ftplugin/xml/*.vim
|
||||
runtime! ftplugin/xml[.]{vim,lua} ftplugin/xml_*.{vim,lua} ftplugin/xml/*.{vim,lua}
|
||||
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
|
||||
@@ -235,6 +235,18 @@ describe('runtime:', function()
|
||||
exec('setfiletype new-ft')
|
||||
eq('ABCDEFabcdef', eval('g:seq'))
|
||||
end)
|
||||
|
||||
it('inherited Vimscript ftplugins load bundled Lua ftplugins', function()
|
||||
exec('setfiletype objc')
|
||||
eq(1, eval([[b:undo_ftplugin =~# 'path<']]))
|
||||
end)
|
||||
|
||||
it('inherited Vimscript ftplugins load user Lua ftplugins', function()
|
||||
mkdir_p(ftplugin_folder)
|
||||
write_file(('%s/mail.lua'):format(ftplugin_folder), [[vim.b.mail_lua = 1]])
|
||||
exec('setfiletype gitsendemail')
|
||||
eq(1, eval([[get(b:, 'mail_lua', 0)]]))
|
||||
end)
|
||||
end)
|
||||
|
||||
describe('indent', function()
|
||||
|
||||
Reference in New Issue
Block a user