diff options
Diffstat (limited to 'runtime')
-rw-r--r-- | runtime/autoload/dist/ft.vim | 17 | ||||
-rw-r--r-- | runtime/filetype.vim | 5 | ||||
-rw-r--r-- | runtime/lua/vim/filetype.lua | 3 |
3 files changed, 25 insertions, 0 deletions
diff --git a/runtime/autoload/dist/ft.vim b/runtime/autoload/dist/ft.vim index c52def1051..959f4be896 100644 --- a/runtime/autoload/dist/ft.vim +++ b/runtime/autoload/dist/ft.vim @@ -899,6 +899,23 @@ func dist#ft#FTtf() setf tf endfunc +" Determine if a *.src file is Kuka Robot Language +func dist#ft#FTsrc() + if exists("g:filetype_src") + exe "setf " .. g:filetype_src + elseif getline(nextnonblank(1)) =~? '^\s*\%(&\w\+\|\%(global\s\+\)\?def\>\)' + setf krl + endif +endfunc + +" Determine if a *.dat file is Kuka Robot Language +func dist#ft#FTdat() + if exists("g:filetype_dat") + exe "setf " .. g:filetype_dat + elseif getline(nextnonblank(1)) =~? '^\s*\%(&\w\+\|defdat\>\)' + setf krl + endif +endfunc " Restore 'cpoptions' let &cpo = s:cpo_save diff --git a/runtime/filetype.vim b/runtime/filetype.vim index 2f4b03606c..d7a3ec182f 100644 --- a/runtime/filetype.vim +++ b/runtime/filetype.vim @@ -947,6 +947,11 @@ au BufNewFile,BufRead *.jl setf julia " Kixtart au BufNewFile,BufRead *.kix setf kix +" Kuka Robot Language +au BufNewFile,BufRead *.src\c call dist#ft#FTsrc() +au BufNewFile,BufRead *.dat\c call dist#ft#FTdat() +au BufNewFile,BufRead *.sub\c setf krl + " Kimwitu[++] au BufNewFile,BufRead *.k setf kwt diff --git a/runtime/lua/vim/filetype.lua b/runtime/lua/vim/filetype.lua index 65edaed530..0466057d72 100644 --- a/runtime/lua/vim/filetype.lua +++ b/runtime/lua/vim/filetype.lua @@ -1427,6 +1427,9 @@ local pattern = { return "git" end end, + [".*%.[Dd][Aa][Tt]"] = function() vim.fn["dist#ft#FTdat"]() end, + [".*%.[Ss][Rr][Cc]"] = function() vim.fn["dist#ft#FTsrc"]() end, + [".*%.[Ss][Uu][Bb]"] = "krl", -- Neovim only [".*/queries/.*%.scm"] = "query", -- tree-sitter queries -- END PATTERN |