Skip to content

Commit

Permalink
patch 8.2.3432: octave/Matlab filetype detection does not work properly
Browse files Browse the repository at this point in the history
Problem:    Octave/Matlab filetype detection does not work properly.
Solution:   Update the patterns used for matching. (Doug Kearns)
  • Loading branch information
brammool committed Sep 12, 2021
1 parent dfe04db commit ca0627d
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 14 deletions.
6 changes: 3 additions & 3 deletions runtime/autoload/dist/ft.vim
Expand Up @@ -269,7 +269,8 @@ func dist#ft#FTm()
return
endif

let octave_block_terminators = '\<end\%(_try_catch\|classdef\|enumeration\|events\|for\|function\|if\|methods\|parfor\|properties\|switch\|while\)\>'
" excluding end(for|function|if|switch|while) common to Murphi
let octave_block_terminators = '\<end\%(_try_catch\|classdef\|enumeration\|events\|methods\|parfor\|properties\)\>'

let n = 1
let saw_comment = 0 " Whether we've seen a multiline comment leader.
Expand All @@ -285,8 +286,7 @@ func dist#ft#FTm()
setf objc
return
endif
if line =~ '^\s*\%(#\|%!\|[#%]{\=\s*$\)' ||
\ line =~ '^\s*unwind_protect\>' ||
if line =~ '^\s*\%(#\|%!\)' || line =~ '^\s*unwind_protect\>' ||
\ line =~ '\%(^\|;\)\s*' .. octave_block_terminators
setf octave
return
Expand Down
19 changes: 8 additions & 11 deletions src/testdir/test_filetype.vim
Expand Up @@ -893,16 +893,6 @@ func Test_m_file()
call assert_equal('octave', &filetype)
bwipe!

call writefile(['#{', 'Octave block comment', '#}'], 'Xfile.m')
split Xfile.m
call assert_equal('octave', &filetype)
bwipe!

call writefile(['%{', 'Octave block comment', '%}'], 'Xfile.m')
split Xfile.m
call assert_equal('octave', &filetype)
bwipe!

call writefile(['%!test "Octave test"'], 'Xfile.m')
split Xfile.m
call assert_equal('octave', &filetype)
Expand All @@ -913,7 +903,7 @@ func Test_m_file()
call assert_equal('octave', &filetype)
bwipe!

call writefile(['function test(); 42; endfunction'], 'Xfile.m')
call writefile(['try; 42; end_try_catch'], 'Xfile.m')
split Xfile.m
call assert_equal('octave', &filetype)
bwipe!
Expand All @@ -925,6 +915,13 @@ func Test_m_file()
call assert_equal('mma', &filetype)
bwipe!

" MATLAB

call writefile(['% MATLAB line comment'], 'Xfile.m')
split Xfile.m
call assert_equal('matlab', &filetype)
bwipe!

" Murphi

call writefile(['-- Murphi comment'], 'Xfile.m')
Expand Down
2 changes: 2 additions & 0 deletions src/version.c
Expand Up @@ -755,6 +755,8 @@ static char *(features[]) =

static int included_patches[] =
{ /* Add new patch number below this line */
/**/
3432,
/**/
3431,
/**/
Expand Down

0 comments on commit ca0627d

Please sign in to comment.