From 4e722fdfdd987c11136e3533bd65d0ed4d15f829 Mon Sep 17 00:00:00 2001 From: Scott McKendry Date: Sat, 27 Dec 2025 15:15:35 +0000 Subject: [PATCH] patch 9.1.2027: filetype: bicep filetype used for 2 bicep file types Problem: filetype: bicep filetype used for 2 bicep file types Solution: Detect *.bicepparam files as bicep-param filetype, include new bicep-params and bicep filetype plugin (Scott McKendry) The bicep language server handles parameter files differently than regular bicep files. Treating them the same at the editor level leads to false positive diagnostics in the editor. References: Bicep Language Constants: - https://github.com/Azure/bicep/blob/51392d32ca2c8b94b1bb7a255e78e1d559d12573/src/Bicep.Core/LanguageConstants.cs#L23 VS Code Extension definition: - https://github.com/Azure/bicep/blob/51392d32ca2c8b94b1bb7a255e78e1d559d12573/src/vscode-bicep/package.json#L47 closes: #19026 Signed-off-by: Scott McKendry Signed-off-by: Christian Brabandt --- .github/MAINTAINERS | 2 ++ runtime/autoload/dist/ft.vim | 4 ++-- runtime/ftplugin/bicep-params.vim | 3 +++ runtime/ftplugin/bicep.vim | 14 ++++++++++++++ src/testdir/test_filetype.vim | 3 ++- src/version.c | 2 ++ 6 files changed, 25 insertions(+), 3 deletions(-) create mode 100644 runtime/ftplugin/bicep-params.vim create mode 100644 runtime/ftplugin/bicep.vim diff --git a/.github/MAINTAINERS b/.github/MAINTAINERS index 64ec25726..94c9eff88 100644 --- a/.github/MAINTAINERS +++ b/.github/MAINTAINERS @@ -127,6 +127,8 @@ runtime/ftplugin/asy.vim @avidseeker runtime/ftplugin/autohotkey.vim @telemachus runtime/ftplugin/awk.vim @dkearns runtime/ftplugin/basic.vim @dkearns +runtime/ftplugin/bicep.vim @scottmckendry +runtime/ftplugin/bicep-params.vim @scottmckendry runtime/ftplugin/brighterscript.vim @ribru17 runtime/ftplugin/brightscript.vim @ribru17 runtime/ftplugin/bst.vim @tpope diff --git a/runtime/autoload/dist/ft.vim b/runtime/autoload/dist/ft.vim index 0ab087b0f..a81768bbd 100644 --- a/runtime/autoload/dist/ft.vim +++ b/runtime/autoload/dist/ft.vim @@ -3,7 +3,7 @@ vim9script # Vim functions for file type detection # # Maintainer: The Vim Project -# Last Change: 2025 Dec 26 +# Last Change: 2025 Dec 27 # Former Maintainer: Bram Moolenaar # These functions are moved here from runtime/filetype.vim to make startup @@ -1746,7 +1746,7 @@ const ft_from_ext = { "bst": "bst", # Bicep "bicep": "bicep", - "bicepparam": "bicep", + "bicepparam": "bicep-params", # BIND zone "zone": "bindzone", # Blank diff --git a/runtime/ftplugin/bicep-params.vim b/runtime/ftplugin/bicep-params.vim new file mode 100644 index 000000000..7cc2d8512 --- /dev/null +++ b/runtime/ftplugin/bicep-params.vim @@ -0,0 +1,3 @@ +" Placeholder for maximum compatibility. While bicepparam files are treated as distinct filetypes, +" they are should share the same ftplugin settings as bicep files. +runtime! ftplugin/bicep.vim diff --git a/runtime/ftplugin/bicep.vim b/runtime/ftplugin/bicep.vim new file mode 100644 index 000000000..f142daf13 --- /dev/null +++ b/runtime/ftplugin/bicep.vim @@ -0,0 +1,14 @@ +" Vim filetype plugin +" Language: Bicep +" Maintainer: Scott McKendry +" Last Change: 2025 Dec 27 + +if exists('b:did_ftplugin') + finish +endif +let b:did_ftplugin = 1 + +setlocal comments=s1:/*,mb:*,ex:*/,:// +setlocal commentstring=//\ %s + +let b:undo_ftplugin = "setlocal comments< commentstring<" diff --git a/src/testdir/test_filetype.vim b/src/testdir/test_filetype.vim index b3e6fc171..cdf854bdd 100644 --- a/src/testdir/test_filetype.vim +++ b/src/testdir/test_filetype.vim @@ -140,7 +140,8 @@ def s:GetFilenameChecks(): dict> bdf: ['file.bdf'], beancount: ['file.beancount'], bib: ['file.bib'], - bicep: ['file.bicep', 'file.bicepparam'], + bicep: ['file.bicep'], + bicep-params: ['file.bicepparam'], bindzone: ['named.root', '/bind/db.file', '/named/db.file', 'any/bind/db.file', 'any/named/db.file', 'foobar.zone'], bitbake: ['file.bb', 'file.bbappend', 'file.bbclass', 'build/conf/local.conf', 'meta/conf/layer.conf', 'build/conf/bbappend.conf', 'meta-layer/conf/distro/foo.conf', 'project-spec/configs/zynqmp-generic-xczu7ev.conf'], diff --git a/src/version.c b/src/version.c index 14e983bea..a4d0ed19a 100644 --- a/src/version.c +++ b/src/version.c @@ -734,6 +734,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 2027, /**/ 2026, /**/ -- 2.43.0