Merge pull request #17223 from clason/vim-8.2.4238

vim-patch:8.2.4238: *.tf file could be fileytpe "tf" or "terraform"
This commit is contained in:
Christian Clason 2022-01-28 18:44:03 +01:00 committed by GitHub
commit 65529dd7a1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 40 additions and 4 deletions

View File

@ -862,6 +862,21 @@ func dist#ft#FTfoam()
endwhile
endfunc
" Determine if a *.tf file is TF mud client or terraform
func dist#ft#FTtf()
let numberOfLines = line('$')
for i in range(1, numberOfLines)
let currentLine = trim(getline(i))
let firstCharacter = currentLine[0]
if firstCharacter !=? ";" && firstCharacter !=? "/" && firstCharacter !=? ""
setf terraform
return
endif
endfor
setf tf
endfunc
" Restore 'cpoptions'
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@ -1942,10 +1942,13 @@ au BufNewFile,BufRead texmf.cnf setf texmf
au BufNewFile,BufRead .tidyrc,tidyrc,tidy.conf setf tidy
" TF mud client
au BufNewFile,BufRead *.tf,.tfrc,tfrc setf tf
au BufNewFile,BufRead .tfrc,tfrc setf tf
" TF mud client or terraform
au BufNewFile,BufRead *.tf call dist#ft#FTtf()
" TLA+
au BufRead,BufNewFile *.tla setf tla
au BufNewFile,BufRead *.tla setf tla
" tmux configuration
au BufNewFile,BufRead {.,}tmux*.conf setf tmux
@ -1954,7 +1957,7 @@ au BufNewFile,BufRead {.,}tmux*.conf setf tmux
au BufNewFile,BufRead *.toml setf toml
" TPP - Text Presentation Program
au BufNewFile,BufReadPost *.tpp setf tpp
au BufNewFile,BufRead *.tpp setf tpp
" Treetop
au BufRead,BufNewFile *.treetop setf treetop

View File

@ -661,7 +661,6 @@ local extension = {
txi = "texinfo",
texinfo = "texinfo",
text = "text",
tf = "tf",
tfvars = "terraform",
tla = "tla",
tli = "tli",
@ -827,6 +826,7 @@ local extension = {
stm = function() vim.fn["dist#ft#FThtml"]() end,
tcsh = function() vim.fn["dist#ft#SetFileTypeShell"]("tcsh") end,
tex = function() vim.fn["dist#ft#FTtex"]() end,
tf = function() vim.fn["dist#ft#FTtf"]() end,
w = function() vim.fn["dist#ft#FTprogress_cweb"]() end,
xml = function() vim.fn["dist#ft#FTxml"]() end,
y = function() vim.fn["dist#ft#FTy"]() end,

View File

@ -746,6 +746,24 @@ func Test_hook_file()
filetype off
endfunc
func Test_tf_file()
filetype on
call writefile([';;; TF MUD client is super duper cool'], 'Xfile.tf')
split Xfile.tf
call assert_equal('tf', &filetype)
bwipe!
call writefile(['provider "azurerm" {'], 'Xfile.tf')
split Xfile.tf
call assert_equal('terraform', &filetype)
bwipe!
call delete('Xfile.tf')
filetype off
endfunc
func Test_ts_file()
filetype on