1
0
forked from aniani/vim

patch 8.2.4766: KRL files using "deffct" not recognized

Problem:    KRL files using "deffct" not recognized.
Solution:   Adjust the pattern used for matching. (Patrick Meiser-Knosowski,
            closes #10200)
This commit is contained in:
KnoP-01
2022-04-16 21:14:04 +01:00
committed by Bram Moolenaar
parent 047a7019b2
commit 93c7a45e86
3 changed files with 15 additions and 8 deletions

View File

@@ -989,20 +989,23 @@ export def FTtf()
setf tf
enddef
var ft_krl_header = '\&\w+'
# Determine if a *.src file is Kuka Robot Language
export def FTsrc()
var ft_krl_def_or_deffct = '%(global\s+)?def%(fct)?>'
if exists("g:filetype_src")
exe "setf " .. g:filetype_src
elseif getline(nextnonblank(1)) =~? '^\s*\%(&\w\+\|\%(global\s\+\)\?def\>\)'
elseif getline(nextnonblank(1)) =~? '\v^\s*%(' .. ft_krl_header .. '|' .. ft_krl_def_or_deffct .. ')'
setf krl
endif
enddef
# Determine if a *.dat file is Kuka Robot Language
export def FTdat()
var ft_krl_defdat = 'defdat>'
if exists("g:filetype_dat")
exe "setf " .. g:filetype_dat
elseif getline(nextnonblank(1)) =~? '^\s*\%(&\w\+\|defdat\>\)'
elseif getline(nextnonblank(1)) =~? '\v^\s*%(' .. ft_krl_header .. '|' .. ft_krl_defdat .. ')'
setf krl
endif
enddef

View File

@@ -768,7 +768,7 @@ func Test_filetype_indent_off()
endfunc
"""""""""""""""""""""""""""""""""""""""""""""""""
" Tests for specific extentions and filetypes.
" Tests for specific extensions and filetypes.
" Keep sorted.
"""""""""""""""""""""""""""""""""""""""""""""""""
@@ -1562,11 +1562,13 @@ func Test_src_file()
bwipe!
call delete('srcfile.Src')
" KRL global def with embedded spaces, file starts with empty line(s).
call writefile(['', 'global def srcfile()'], 'srcfile.SRC')
split srcfile.SRC
call assert_equal('krl', &filetype)
bwipe!
" KRL global deffct with embedded spaces, file starts with empty line(s).
for text in ['global def srcfile()', 'global deffct srcfile()']
call writefile(['', text], 'srcfile.SRC')
split srcfile.SRC
call assert_equal('krl', &filetype, text)
bwipe!
endfor
" User may overrule file inspection
let g:filetype_src = 'src'

View File

@@ -746,6 +746,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
4766,
/**/
4765,
/**/