patch 9.0.1591: some "gomod" files are not recognized
Problem: Some "gomod" files are not recognized.
Solution: Check for "go.mod" file name before checking out the contents.
(Omar El Halabi, closes #12462)
diff --git a/runtime/autoload/dist/ft.vim b/runtime/autoload/dist/ft.vim
index 7ac053e..770f706 100644
--- a/runtime/autoload/dist/ft.vim
+++ b/runtime/autoload/dist/ft.vim
@@ -484,14 +484,14 @@
export def FTmod()
if exists("g:filetype_mod")
exe "setf " .. g:filetype_mod
+ elseif expand("<afile>") =~ '\<go.mod$'
+ setf gomod
elseif IsLProlog()
setf lprolog
elseif getline(nextnonblank(1)) =~ '\%(\<MODULE\s\+\w\+\s*;\|^\s*(\*\)'
setf modula2
elseif IsRapid()
setf rapid
- elseif expand("<afile>") =~ '\<go.mod$'
- setf gomod
else
# Nothing recognized, assume modsim3
setf modsim3
diff --git a/src/testdir/test_filetype.vim b/src/testdir/test_filetype.vim
index 96cb686..0684383 100644
--- a/src/testdir/test_filetype.vim
+++ b/src/testdir/test_filetype.vim
@@ -1534,6 +1534,12 @@
bwipe!
call delete('go.mod')
+ call writefile(['module M'], 'go.mod')
+ split go.mod
+ call assert_equal('gomod', &filetype)
+ bwipe!
+ call delete('go.mod')
+
filetype off
endfunc
diff --git a/src/version.c b/src/version.c
index fbe684a..ad1b686 100644
--- a/src/version.c
+++ b/src/version.c
@@ -696,6 +696,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1591,
+/**/
1590,
/**/
1589,