diff options
author | Elwardi <elwardifadeli@gmail.com> | 2022-01-11 18:14:23 +0000 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2022-01-11 18:14:23 +0000 |
commit | 2284f6cca384e0ccc352bfec7277dc26386cac3d (patch) | |
tree | 1062cf2ce54b2bb7cef3d981268f18335e2aa69d /runtime/autoload | |
parent | b8822442d716df0230c79531132e530e95cc17e3 (diff) |
patch 8.2.4064: foam files are not detectedv8.2.4064
Problem: Foam files are not detected.
Solution: Detect the foam filetype by the path and file contents. (Mohammed
Elwardi Fadeli, closes #9501)
Diffstat (limited to 'runtime/autoload')
-rw-r--r-- | runtime/autoload/dist/ft.vim | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/runtime/autoload/dist/ft.vim b/runtime/autoload/dist/ft.vim index 9933ace8c2..342731b272 100644 --- a/runtime/autoload/dist/ft.vim +++ b/runtime/autoload/dist/ft.vim @@ -829,6 +829,23 @@ func dist#ft#Dep3patch() endfor endfunc +" This function checks the first 15 lines for appearance of 'FoamFile' +" and then 'object' in a following line. +" In that case, it's probably an OpenFOAM file +func dist#ft#FTfoam() + let ffile = 0 + let lnum = 1 + while lnum <= 15 + if getline(lnum) =~# '^FoamFile' + let ffile = 1 + elseif ffile == 1 && getline(lnum) =~# '^\s*object' + setf foam + return + endif + let lnum = lnum + 1 + endwhile +endfunc + " Restore 'cpoptions' let &cpo = s:cpo_save unlet s:cpo_save |