changeset 22971:f39f960f3ea0 v8.2.2032

patch 8.2.2032: cabalconfig and cabalproject filetypes not recognized Commit: https://github.com/vim/vim/commit/dcbab75db3ba5e812f119e08cda6a02c6b028a14 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Nov 22 15:51:24 2020 +0100 patch 8.2.2032: cabalconfig and cabalproject filetypes not recognized Problem: Cabalconfig and cabalproject filetypes not recognized. Solution: Detect more cabal files. (Marcin Szamotulski, closes https://github.com/vim/vim/issues/7339)
author Bram Moolenaar <Bram@vim.org>
date Sun, 22 Nov 2020 16:00:04 +0100
parents adb0bfdf4be3
children d2b36acb42dd
files runtime/filetype.vim src/testdir/test_filetype.vim src/version.c
diffstat 3 files changed, 17 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/runtime/filetype.vim
+++ b/runtime/filetype.vim
@@ -696,12 +696,21 @@ au BufNewFile,BufRead .gtkrc,gtkrc		setf
 au BufNewFile,BufRead *.haml			setf haml
 
 " Hamster Classic | Playground files
-au BufNewFile,BufRead *.hsc,*.hsm		setf hamster
+au BufNewFile,BufRead *.hsm	  		setf hamster
+au BufNewFile,BufRead *.hsc
+	\ if match(join(getline(1,10), "\n"), '\%(^\|\n\)\s*\%({-#\_s*LANGUAGE\>\|\<module\>\)') != -1 |
+	\   setf haskell |
+	\ else |
+	\   setf hamster |
+	\ endif
 
 " Haskell
 au BufNewFile,BufRead *.hs,*.hs-boot		setf haskell
 au BufNewFile,BufRead *.lhs			setf lhaskell
 au BufNewFile,BufRead *.chs			setf chaskell
+au BufNewFile,BufRead cabal.project		setf cabalproject
+au BufNewFile,BufRead $HOME/.cabal/config	setf cabalconfig
+au BufNewFile,BufRead cabal.config		setf cabalconfig
 
 " Haste
 au BufNewFile,BufRead *.ht			setf haste
@@ -2037,12 +2046,14 @@ au BufNewFile,BufRead bzr_log.*			setf b
 
 " Bazel build file
 if !has("fname_case")
-  au BufNewFile,BufRead *.BUILD,BUILD			setf bzl
+  au BufNewFile,BufRead *.BUILD,BUILD		setf bzl
 endif
 
 " BIND zone
 au BufNewFile,BufRead */named/db.*,*/bind/db.*	call s:StarSetf('bindzone')
 
+au BufNewFile,BufRead cabal.project.*		call s:StarSetf('cabalproject')
+
 " Calendar
 au BufNewFile,BufRead */.calendar/*,
 	\*/share/calendar/*/calendar.*,*/share/calendar/calendar.*
--- a/src/testdir/test_filetype.vim
+++ b/src/testdir/test_filetype.vim
@@ -87,6 +87,8 @@ let s:filename_checks = {
     \ 'bzr': ['bzr_log.any', 'bzr_log.file'],
     \ 'c': ['enlightenment/file.cfg', 'file.qc', 'file.c', 'some-enlightenment/file.cfg'],
     \ 'cabal': ['file.cabal'],
+    \ 'cabalconfig': ['cabal.config'],
+    \ 'cabalproject': ['cabal.project', 'cabal.project.local'],
     \ 'calendar': ['calendar', '/.calendar/file', '/share/calendar/any/calendar.file', '/share/calendar/calendar.file', 'any/share/calendar/any/calendar.file', 'any/share/calendar/calendar.file'],
     \ 'catalog': ['catalog', 'sgml.catalogfile', 'sgml.catalog', 'sgml.catalog-file'],
     \ 'cdl': ['file.cdl'],
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2032,
+/**/
     2031,
 /**/
     2030,