patch 9.1.0486: filetype: Snakemake files are not recognized
Problem: filetype: Snakemake files are not recognized
Solution: Detect '*.smk' and Snakefile files as snakemake filetype
(Riley Bruins)
See:
https://snakemake.readthedocs.io/en/stable/snakefiles/deployment.html#distribution-and-reproducibility
closes: #14992
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Riley Bruins <ribru17@hotmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/runtime/filetype.vim b/runtime/filetype.vim
index 801a8f3..a2daf14 100644
--- a/runtime/filetype.vim
+++ b/runtime/filetype.vim
@@ -2243,6 +2243,9 @@
" Smithy
au BufNewFile,BufRead *.smithy setf smithy
+" Snakemake
+au BufNewFile,BufRead Snakefile,*.smk setf snakemake
+
" Snobol4 and spitbol
au BufNewFile,BufRead *.sno,*.spt setf snobol4
diff --git a/runtime/ftplugin/snakemake.vim b/runtime/ftplugin/snakemake.vim
new file mode 100644
index 0000000..ab90ca1
--- /dev/null
+++ b/runtime/ftplugin/snakemake.vim
@@ -0,0 +1,13 @@
+" Vim filetype plugin
+" Language: snakemake
+" Maintainer: Riley Bruins <ribru17@gmail.com>
+" Last Change: 2024 Jun 13
+
+if exists('b:did_ftplugin')
+ finish
+endif
+let b:did_ftplugin = 1
+
+setl comments=:# commentstring=#\ %s
+
+let b:undo_ftplugin = 'setl com< cms<'