mirror of
https://github.com/vim/vim.git
synced 2025-08-26 20:03:41 -04:00
patch 9.1.1606: filetype: a few more files are not recognized
Problem: filetype: a few more files are not recognized Solution: guess Mail, Info and Terminfo files by its content (lacygoill) closes: #17880 Signed-off-by: lacygoill <lacygoill@lacygoill.me> Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
parent
8a65a49d50
commit
eb2aebeb79
7
runtime/autoload/dist/script.vim
vendored
7
runtime/autoload/dist/script.vim
vendored
@ -264,6 +264,7 @@ def DetectFromText(line1: string)
|
|||||||
|
|
||||||
# ELM Mail files
|
# ELM Mail files
|
||||||
elseif line1 =~ '^From \([a-zA-Z][a-zA-Z_0-9\.=-]*\(@[^ ]*\)\=\|-\) .* \(19\|20\)\d\d$'
|
elseif line1 =~ '^From \([a-zA-Z][a-zA-Z_0-9\.=-]*\(@[^ ]*\)\=\|-\) .* \(19\|20\)\d\d$'
|
||||||
|
|| line1 =~ '^\creturn-path:\s<.*@.*>$'
|
||||||
setl ft=mail
|
setl ft=mail
|
||||||
|
|
||||||
# Mason
|
# Mason
|
||||||
@ -453,6 +454,12 @@ def DetectFromText(line1: string)
|
|||||||
elseif line1 =~ '^#n\%($\|\s\)'
|
elseif line1 =~ '^#n\%($\|\s\)'
|
||||||
setl ft=sed
|
setl ft=sed
|
||||||
|
|
||||||
|
elseif line1 =~ '^#\s\+Reconstructed via infocmp from file:'
|
||||||
|
setl ft=terminfo
|
||||||
|
|
||||||
|
elseif line1 =~ '^File: .*\.info, Node: .*, \%(Next\|Prev\): .*, Up: \|This is the top of the INFO tree.'
|
||||||
|
setl ft=info
|
||||||
|
|
||||||
else
|
else
|
||||||
var lnum = 1
|
var lnum = 1
|
||||||
while getline(lnum) =~ "^? " && lnum < line("$")
|
while getline(lnum) =~ "^? " && lnum < line("$")
|
||||||
|
@ -3024,6 +3024,39 @@ func Test_org_file()
|
|||||||
filetype off
|
filetype off
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
func Test_info_file()
|
||||||
|
filetype on
|
||||||
|
|
||||||
|
call writefile(['File: coreutils.info, Node: Top, Next: Introduction, Up: (dir)', 'D'], 'Xfile', 'D')
|
||||||
|
split Xfile
|
||||||
|
call assert_equal('info', &filetype)
|
||||||
|
bwipe!
|
||||||
|
|
||||||
|
filetype off
|
||||||
|
endfunc
|
||||||
|
|
||||||
|
func Test_mail_file()
|
||||||
|
filetype on
|
||||||
|
|
||||||
|
call writefile(['Return-path: <lgc@debian.home.arpa>', 'D'], 'Xfile', 'D')
|
||||||
|
split Xfile
|
||||||
|
call assert_equal('mail', &filetype)
|
||||||
|
bwipe!
|
||||||
|
|
||||||
|
filetype off
|
||||||
|
endfunc
|
||||||
|
|
||||||
|
func Test_terminfo_file()
|
||||||
|
filetype on
|
||||||
|
|
||||||
|
call writefile(['# Reconstructed via infocmp from file: /etc/terminfo/x/xterm', 'D'], 'Xfile', 'D')
|
||||||
|
split Xfile
|
||||||
|
call assert_equal('terminfo', &filetype)
|
||||||
|
bwipe!
|
||||||
|
|
||||||
|
filetype off
|
||||||
|
endfunc
|
||||||
|
|
||||||
" Filetypes detected from names of existing files
|
" Filetypes detected from names of existing files
|
||||||
func Test_pacmanlog()
|
func Test_pacmanlog()
|
||||||
filetype on
|
filetype on
|
||||||
|
@ -719,6 +719,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
1606,
|
||||||
/**/
|
/**/
|
||||||
1605,
|
1605,
|
||||||
/**/
|
/**/
|
||||||
|
Loading…
x
Reference in New Issue
Block a user