summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2020-06-07 21:58:54 +0200
committerBram Moolenaar <Bram@vim.org>2020-06-07 21:58:54 +0200
commitb5e18f29fac9253b0ccf1fde5e74bff72fa1ba60 (patch)
tree76fd7a1da3baaccd00d4896c08eef49b4b07c0ed /src
parentcc613031b96f1cfa5a184253e745c26f1def9be4 (diff)
patch 8.2.0930: script filetype detection trips over env -S argumentv8.2.0930
Problem: Script filetype detection trips over env -S argument. Solution: Remove "-S" and "--ignore-environment". (closes #5013) Add tests.
Diffstat (limited to 'src')
-rw-r--r--src/testdir/test_filetype.vim19
-rw-r--r--src/version.c2
2 files changed, 19 insertions, 2 deletions
diff --git a/src/testdir/test_filetype.vim b/src/testdir/test_filetype.vim
index 0929e14d85..244de242ce 100644
--- a/src/testdir/test_filetype.vim
+++ b/src/testdir/test_filetype.vim
@@ -607,9 +607,19 @@ let s:script_checks = {
\ 'yaml': [['%YAML 1.2']],
\ }
-func Test_script_detection()
+" Various forms of "env" optional arguments.
+let s:script_env_checks = {
+ \ 'perl': [['#!/usr/bin/env VAR=val perl']],
+ \ 'scala': [['#!/usr/bin/env VAR=val VVAR=vval scala']],
+ \ 'awk': [['#!/usr/bin/env VAR=val -i awk']],
+ \ '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']],
+ \ }
+
+func Run_script_detection(test_dict)
filetype on
- for [ft, files] in items(s:script_checks)
+ for [ft, files] in items(a:test_dict)
for file in files
call writefile(file, 'Xtest')
split Xtest
@@ -621,6 +631,11 @@ func Test_script_detection()
filetype off
endfunc
+func Test_script_detection()
+ call Run_script_detection(s:script_checks)
+ call Run_script_detection(s:script_env_checks)
+endfunc
+
func Test_setfiletype_completion()
call feedkeys(":setfiletype java\<C-A>\<C-B>\"\<CR>", 'tx')
call assert_equal('"setfiletype java javacc javascript javascriptreact', @:)
diff --git a/src/version.c b/src/version.c
index 3015f8fd16..e446a7be41 100644
--- a/src/version.c
+++ b/src/version.c
@@ -755,6 +755,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 930,
+/**/
929,
/**/
928,