changeset 33986:a18b8310956a v9.0.2179

patch 9.0.2179: no filetype detection for execline scripts Commit: https://github.com/vim/vim/commit/63210c214afa6589b6132bd060908a8711f4567f Author: Mazunki Hoksaas <rolferen@gmail.com> Date: Tue Dec 19 20:44:41 2023 +0100 patch 9.0.2179: no filetype detection for execline scripts Problem: no filetype detection for execline scripts Solution: Add filetype detection for execline as a prior to adding syntax support for execline (see https://github.com/djpohly/vim-execline/issues/2), i went ahead and made the filetype detection for execline scripts. closes: #13689 Signed-Off-By: Mazunki Hoksaas <rolferen@gmail.com> Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Tue, 19 Dec 2023 21:00:03 +0100
parents c27cbb76db80
children 30297bf4537f
files runtime/autoload/dist/script.vim runtime/filetype.vim src/testdir/test_filetype.vim src/version.c
diffstat 4 files changed, 13 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/runtime/autoload/dist/script.vim
+++ b/runtime/autoload/dist/script.vim
@@ -225,6 +225,10 @@ export def Exe2filetype(name: string, li
   elseif name =~ '^dart\>'
     return 'dart'
 
+    # Execline (s6)
+  elseif name =~ '^execlineb\>'
+    return 'execline'
+
   endif
 
   return ''
--- a/runtime/filetype.vim
+++ b/runtime/filetype.vim
@@ -497,6 +497,10 @@ if has("fname_case")
    au BufNewFile,BufRead *.EU,*.EW,*.EX,*.EXU,*.EXW  call dist#ft#EuphoriaCheck()
 endif
 
+" Execline (s6) scripts
+au BufNewFile,BufRead *s6*/\(up\|down\|run\|finish\)    setf execline
+au BufNewFile,BufRead s6-*                              setf execline
+
 " Lynx config files
 au BufNewFile,BufRead lynx.cfg			setf lynx
 
--- a/src/testdir/test_filetype.vim
+++ b/src/testdir/test_filetype.vim
@@ -236,6 +236,7 @@ def s:GetFilenameChecks(): dict<list<str
     esqlc: ['file.ec', 'file.EC'],
     esterel: ['file.strl'],
     eterm: ['anyEterm/file.cfg', 'Eterm/file.cfg', 'some-Eterm/file.cfg'],
+    execline: ['/etc/s6-rc/run', './s6-rc/src/dbus-srv/up', '/sbin/s6-shutdown'],
     exim: ['exim.conf'],
     expect: ['file.exp'],
     exports: ['exports'],
@@ -915,6 +916,7 @@ def s:GetScriptChecks(): dict<list<list<
             ['#!/path/itclsh'],
             ['#!/path/itkwish']],
     expect: [['#!/path/expect']],
+    execline: [['#!/sbin/execlineb -S0'], ['#!/usr/bin/execlineb']],
     gnuplot: [['#!/path/gnuplot']],
     make:   [['#!/path/make']],
     nix:    [['#!/path/nix-shell']],
@@ -970,6 +972,7 @@ def s:GetScriptEnvChecks(): dict<list<li
     perl: [['#!/usr/bin/env VAR=val perl']],
     scala: [['#!/usr/bin/env VAR=val VVAR=vval scala']],
     awk: [['#!/usr/bin/env VAR=val -i awk']],
+    execline: [['#!/usr/bin/env execlineb']],
     scheme: [['#!/usr/bin/env VAR=val --ignore-environment scheme']],
     python: [['#!/usr/bin/env VAR=val -S python -w -T']],
     wml: [['#!/usr/bin/env VAR=val --split-string wml']],
--- a/src/version.c
+++ b/src/version.c
@@ -705,6 +705,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2179,
+/**/
     2178,
 /**/
     2177,