From 68a89470693c7687d4e736ca056c05de632e3ac7 Mon Sep 17 00:00:00 2001 From: Doug Kearns Date: Fri, 5 Jan 2024 17:59:04 +0100 Subject: patch 9.1.0013: Modula2 filetype support lacking Problem: Modula2 filetype support lacking Solution: Improve the Modula-2 runtime support, add additional modula2 dialects, add compiler plugin, update syntax highlighting, include syntax tests, update Makefiles (Doug Kearns) closes: #6796 closes: #8115 Signed-off-by: Doug Kearns Signed-off-by: Benjamin Kowarsch Signed-off-by: Christian Brabandt --- src/testdir/test_filetype.vim | 38 +++++++++++++++++++++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) (limited to 'src/testdir') diff --git a/src/testdir/test_filetype.vim b/src/testdir/test_filetype.vim index fe22069a53..6913eec57c 100644 --- a/src/testdir/test_filetype.vim +++ b/src/testdir/test_filetype.vim @@ -453,7 +453,6 @@ def s:GetFilenameChecks(): dict> mma: ['file.nb'], mmp: ['file.mmp'], modconf: ['/etc/modules.conf', '/etc/modules', '/etc/conf.modules', '/etc/modprobe.file', 'any/etc/conf.modules', 'any/etc/modprobe.file', 'any/etc/modules', 'any/etc/modules.conf'], - modula2: ['file.m2', 'file.mi'], modula3: ['file.m3', 'file.mg', 'file.i3', 'file.ig', 'file.lm3'], monk: ['file.isc', 'file.monk', 'file.ssc', 'file.tsc'], moo: ['file.moo'], @@ -1642,13 +1641,16 @@ func Test_mod_file() call writefile(['IMPLEMENTATION MODULE Module2Mod;'], 'modfile.MOD') split modfile.MOD call assert_equal('modula2', &filetype) + call assert_equal('pim', b:modula2.dialect) bwipe! " Modula-2 with comment and empty lines prior MODULE call writefile(['', '(* with', ' comment *)', '', 'MODULE Module2Mod;'], 'modfile.MOD') split modfile.MOD call assert_equal('modula2', &filetype) + call assert_equal('pim', b:modula2.dialect) bwipe! + call delete('modfile.MOD') " LambdaProlog module @@ -2376,4 +2378,38 @@ func Test_i_file() filetype off endfunc +func Test_def_file() + filetype on + + call writefile(['this is the fallback'], 'Xfile.def', 'D') + split Xfile.def + call assert_equal('def', &filetype) + bwipe! + + " Test dist#ft#FTdef() + + let g:filetype_def = 'modula2' + split Xfile.def + call assert_equal('modula2', &filetype) + call assert_equal('pim', b:modula2.dialect) + bwipe! + unlet g:filetype_def + + " Modula-2 + + call writefile(['(* a Modula-2 comment *)'], 'Xfile.def') + split Xfile.def + call assert_equal('modula2', &filetype) + call assert_equal('pim', b:modula2.dialect) + bwipe! + + call writefile(['IMPLEMENTATION MODULE Module2Mod;'], 'Xfile.def') + split Xfile.def + call assert_equal('modula2', &filetype) + call assert_equal('pim', b:modula2.dialect) + bwipe! + + filetype off +endfunc + " vim: shiftwidth=2 sts=2 expandtab -- cgit v1.2.3