0
0
mirror of https://github.com/vim/vim.git synced 2025-08-30 20:43:35 -04:00

patch 9.1.1713: filetype: fvwm2m4 files are no longer detected

Problem:  filetype: fvwm2m4 files are no longer recognized
          (after 9.1.1687).
Solution: Add a special case in m4 filetype detection (zeertzjq).

closes: #18146

Co-authored-by: Damien Lejay <damien@lejay.be>
Signed-off-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
zeertzjq 2025-08-29 18:31:29 +02:00 committed by Christian Brabandt
parent 99af7690eb
commit 5355e81868
No known key found for this signature in database
GPG Key ID: F3F92DA383FDDE09
4 changed files with 22 additions and 18 deletions

View File

@ -601,31 +601,36 @@ enddef
# For files ending in *.m4, distinguish:
# *.html.m4 files
# - *fvwm2rc*.m4 files
# files in the Autoconf M4 dialect
# files in POSIX M4
export def FTm4()
var fname = expand('%:t')
var path = expand('%:p:h')
# Case 0: canonical Autoconf file
if fname ==# 'aclocal.m4'
setf config
return
endif
# Case 1: html.m4
if fname =~# 'html\.m4$'
setf htmlm4
return
endif
# Case 2: repo heuristic (nearby configure.ac)
if fname =~# 'fvwm2rc'
setf fvwm2m4
return
endif
# Canonical Autoconf file
if fname ==# 'aclocal.m4'
setf config
return
endif
# Repo heuristic for Autoconf M4 (nearby configure.ac)
if filereadable(path .. '/../configure.ac') || filereadable(path .. '/configure.ac')
setf config
return
endif
# Case 3: content heuristic (scan first ~200 lines)
# Content heuristic for Autoconf M4 (scan first ~200 lines)
# Signals:
# - Autoconf macro prefixes: AC_/AM_/AS_/AU_/AT_
var n = 1
@ -639,7 +644,7 @@ export def FTm4()
n += 1
endwhile
# Case 4: default to POSIX M4
# Default to POSIX M4
setf m4
enddef

View File

@ -1,7 +1,7 @@
" Vim support file to detect file types
"
" Maintainer: The Vim Project <https://github.com/vim/vim>
" Last Change: 2025 Aug 26
" Last Change: 2025 Aug 29
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
" Listen very carefully, I will say this only once
@ -1519,7 +1519,7 @@ au BufNewFile,BufRead *.lsl call dist#ft#FTlsl()
au BufNewFile,BufRead *.lss setf lss
" M4
au BufNewFile,BufRead *.m4 call dist#ft#FTm4()
au BufNewFile,BufRead *.m4 call dist#ft#FTm4()
au BufNewFile,BufRead .m4_history setf m4
@ -3190,11 +3190,7 @@ au BufNewFile,BufRead */.fvwm/* call s:StarSetf('fvwm')
au BufNewFile,BufRead *fvwmrc*,*fvwm95*.hook
\ let b:fvwm_version = 1 | call s:StarSetf('fvwm')
au BufNewFile,BufRead *fvwm2rc*
\ if expand("<afile>:e") == "m4"
\| call s:StarSetf('fvwm2m4')
\|else
\| let b:fvwm_version = 2 | call s:StarSetf('fvwm')
\|endif
\ let b:fvwm_version = 2 | call s:StarSetf('fvwm')
" Gedcom
au BufNewFile,BufRead */tmp/lltmp* call s:StarSetf('gedcom')

View File

@ -308,7 +308,8 @@ def s:GetFilenameChecks(): dict<list<string>>
fstab: ['fstab', 'mtab'],
func: ['file.fc'],
fusion: ['file.fusion'],
fvwm: ['/.fvwm/file', 'any/.fvwm/file'],
fvwm: ['/.fvwm/file', 'any/.fvwm/file', '.fvwmrc', 'foo.fvwmrc', 'fvwmrc.foo', '.fvwm2rc', 'foo.fvwm2rc', 'fvwm2rc.foo', 'foo.fvwm95.hook', 'fvwm95.foo.hook'],
fvwm2m4: ['.fvwm2rc.m4', 'foo.fvwm2rc.m4', 'fvwm2rc.foo.m4'],
gdb: ['.gdbinit', 'gdbinit', '.cuda-gdbinit', 'cuda-gdbinit', 'file.gdb', '.config/gdbearlyinit', '.gdbearlyinit'],
gdmo: ['file.mo', 'file.gdmo'],
gdresource: ['file.tscn', 'file.tres'],

View File

@ -724,6 +724,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
1713,
/**/
1712,
/**/