summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOmar El Halabi <omar.el.halabi@freiheit.com>2023-05-29 19:59:45 +0100
committerBram Moolenaar <Bram@vim.org>2023-05-29 19:59:45 +0100
commitc9fbd2560f24180d2efa40028ed68427341d2d99 (patch)
treee5d77e56c8a6eacabfdd5624918642b7c0198077
parent247caa378fc1121c99ecc594fab024691a6d7a9b (diff)
patch 9.0.1591: some "gomod" files are not recognizedv9.0.1591
Problem: Some "gomod" files are not recognized. Solution: Check for "go.mod" file name before checking out the contents. (Omar El Halabi, closes #12462)
-rw-r--r--runtime/autoload/dist/ft.vim4
-rw-r--r--src/testdir/test_filetype.vim6
-rw-r--r--src/version.c2
3 files changed, 10 insertions, 2 deletions
diff --git a/runtime/autoload/dist/ft.vim b/runtime/autoload/dist/ft.vim
index 7ac053eb2f..770f7066c3 100644
--- a/runtime/autoload/dist/ft.vim
+++ b/runtime/autoload/dist/ft.vim
@@ -484,14 +484,14 @@ enddef
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 96cb686863..0684383ee4 100644
--- a/src/testdir/test_filetype.vim
+++ b/src/testdir/test_filetype.vim
@@ -1534,6 +1534,12 @@ func Test_mod_file()
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 fbe684a5af..ad1b686ea6 100644
--- a/src/version.c
+++ b/src/version.c
@@ -696,6 +696,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1591,
+/**/
1590,
/**/
1589,