]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
patch 9.1.1196: filetype: config files for container tools are not recognized v9.1.1196
authorDavid Mandelberg <david@mandelberg.org>
Wed, 12 Mar 2025 20:23:39 +0000 (21:23 +0100)
committerChristian Brabandt <cb@256bit.org>
Wed, 12 Mar 2025 20:23:39 +0000 (21:23 +0100)
Problem:  filetype: config files for container tools are not recognized
Solution: detect the ones that aren't detected yet as toml filetype
          (David Mandelberg)

The .containerignore format doesn't look exactly the same as gitignore,
but very close. And .dockerignore is already using gitignore.

References:
https://github.com/containers/common/blob/main/docs/containerignore.5.md
https://github.com/containers/common/blob/main/docs/containers.conf.5.md
https://github.com/containers/storage/blob/main/docs/containers-storage.conf.5.md
https://github.com/containers/image/blob/main/docs/containers-registries.conf.5.md
https://github.com/containers/image/blob/main/docs/containers-registries.conf.d.5.md

I wasn't sure exactly how to interpret what containers.conf(5) was
saying about modules, so I looked at
https://github.com/containers/common/tree/main/pkg/config/testdata/modules
to get examples, and based the detection off those.

closes: #16852

Signed-off-by: David Mandelberg <david@mandelberg.org>
Signed-off-by: Christian Brabandt <cb@256bit.org>
runtime/filetype.vim
src/testdir/test_filetype.vim
src/version.c

index 77ca3a3c72c249055f5996b1d3492a7575f90dca..44dec008fa915af083e07d6f5c4ff2cf7443defe 100644 (file)
@@ -1,7 +1,7 @@
 " Vim support file to detect file types
 "
 " Maintainer:  The Vim Project <https://github.com/vim/vim>
-" Last Change: 2025 Mar 10
+" Last Change: 2025 Mar 12
 " Former Maintainer:   Bram Moolenaar <Bram@vim.org>
 
 " Listen very carefully, I will say this only once
@@ -395,6 +395,12 @@ au BufNewFile,BufRead *.cdl                        setf cdl
 " Conary Recipe
 au BufNewFile,BufRead *.recipe                 setf conaryrecipe
 
+" Containers config files
+au BufNewFile,BufRead */containers/containers.conf{,.d/*.conf}         setf toml
+au BufNewFile,BufRead */containers/containers.conf.modules/*.conf      setf toml
+au BufNewFile,BufRead */containers/registries.conf{,.d/*.conf}         setf toml
+au BufNewFile,BufRead */containers/storage.conf                                setf toml
+
 " Corn config file
 au BufNewFile,BufRead *.corn                   setf corn
 
@@ -963,7 +969,7 @@ au BufNewFile,BufRead */etc/gitattributes                   setf gitattributes
 au BufNewFile,BufRead .gitignore,*.git/info/exclude            setf gitignore
 au BufNewFile,BufRead */.config/git/ignore,*.prettierignore    setf gitignore
 au BufNewFile,BufRead */.config/fd/ignore,.fdignore,.ignore    setf gitignore
-au BufNewFile,BufRead .rgignore,.dockerignore                  setf gitignore
+au BufNewFile,BufRead .rgignore,.dockerignore,.containerignore setf gitignore
 au BufNewFile,BufRead .npmignore,.vscodeignore                 setf gitignore
 au BufNewFile,BufRead git-rebase-todo                          setf gitrebase
 au BufRead,BufNewFile .gitsendemail.msg.??????                 setf gitsendemail
index 84a4864a41b19fc7443261cf176cc06a314d9be3..27733953f9bdb8c8ebef4d8243d912d57a1f065a 100644 (file)
@@ -306,7 +306,7 @@ def s:GetFilenameChecks(): dict<list<string>>
     gitattributes: ['file.git/info/attributes', '.gitattributes', '/.config/git/attributes', '/etc/gitattributes', '/usr/local/etc/gitattributes', 'some.git/info/attributes'] + WhenConfigHome('$XDG_CONFIG_HOME/git/attributes'),
     gitcommit: ['COMMIT_EDITMSG', 'MERGE_MSG', 'TAG_EDITMSG', 'NOTES_EDITMSG', 'EDIT_DESCRIPTION'],
     gitconfig: ['file.git/config', 'file.git/config.worktree', 'file.git/worktrees/x/config.worktree', '.gitconfig', '.gitmodules', 'file.git/modules//config', '/.config/git/config', '/etc/gitconfig', '/usr/local/etc/gitconfig', '/etc/gitconfig.d/file', 'any/etc/gitconfig.d/file', '/.gitconfig.d/file', 'any/.config/git/config', 'any/.gitconfig.d/file', 'some.git/config', 'some.git/modules/any/config'] + WhenConfigHome('$XDG_CONFIG_HOME/git/config'),
-    gitignore: ['file.git/info/exclude', '.gitignore', '/.config/git/ignore', 'some.git/info/exclude'] + WhenConfigHome('$XDG_CONFIG_HOME/git/ignore') + ['.prettierignore', '.fdignore', '/.config/fd/ignore', '.ignore', '.rgignore', '.dockerignore', '.npmignore', '.vscodeignore'],
+    gitignore: ['file.git/info/exclude', '.gitignore', '/.config/git/ignore', 'some.git/info/exclude'] + WhenConfigHome('$XDG_CONFIG_HOME/git/ignore') + ['.prettierignore', '.fdignore', '/.config/fd/ignore', '.ignore', '.rgignore', '.dockerignore', '.containerignore', '.npmignore', '.vscodeignore'],
     gitolite: ['gitolite.conf', '/gitolite-admin/conf/file', 'any/gitolite-admin/conf/file'],
     gitrebase: ['git-rebase-todo'],
     gitsendemail: ['.gitsendemail.msg.xxxxxx'],
@@ -819,7 +819,11 @@ def s:GetFilenameChecks(): dict<list<string>>
     tla: ['file.tla'],
     tli: ['file.tli'],
     tmux: ['tmuxfile.conf', '.tmuxfile.conf', '.tmux-file.conf', '.tmux.conf', 'tmux-file.conf', 'tmux.conf', 'tmux.conf.local'],
-    toml: ['file.toml', 'Gopkg.lock', 'Pipfile', '/home/user/.cargo/config', '.black'],
+    toml: ['file.toml', 'Gopkg.lock', 'Pipfile', '/home/user/.cargo/config', '.black',
+           'any/containers/containers.conf', 'any/containers/containers.conf.d/file.conf',
+           'any/containers/containers.conf.modules/file.conf', 'any/containers/containers.conf.modules/any/file.conf',
+           'any/containers/registries.conf', 'any/containers/registries.conf.d/file.conf',
+           'any/containers/storage.conf'],
     tpp: ['file.tpp'],
     trace32: ['file.cmm', 'file.cmmt', 'file.t32'],
     treetop: ['file.treetop'],
index 6297c2b4a16da9a338509217dbb356c28246c99a..474d2c7e115dc86a70fe35304a5ee0cbb828070c 100644 (file)
@@ -704,6 +704,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1196,
 /**/
     1195,
 /**/