mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2026-01-15 21:52:11 +01:00
56 lines
1.8 KiB
Diff
56 lines
1.8 KiB
Diff
From e6ca8eadfebbddf87b2ea356db7cbd285ae0f07f Mon Sep 17 00:00:00 2001
|
|
From: Kaarle Ritvanen <kaarle.ritvanen@datakunkku.fi>
|
|
Date: Fri, 26 Dec 2014 13:27:13 +0200
|
|
Subject: [PATCH 11/11] Shellvars: allow command-specific environment variables
|
|
|
|
---
|
|
lenses/shellvars.aug | 4 +++-
|
|
lenses/tests/test_shellvars.aug | 9 ++++++++-
|
|
2 files changed, 11 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/lenses/shellvars.aug b/lenses/shellvars.aug
|
|
index 07c7a52..9ee0d05 100644
|
|
--- a/lenses/shellvars.aug
|
|
+++ b/lenses/shellvars.aug
|
|
@@ -97,7 +97,9 @@ module Shellvars =
|
|
let command =
|
|
let reserved_key = /exit|shift|return|ulimit|unset|export|source|\.|if|for|select|while|until|then|else|fi|done|case/
|
|
in let word = /[A-Za-z0-9_.-\/]+/
|
|
- in Util.indent . label "@command" . store (word - reserved_key)
|
|
+ in Util.indent . label "@command"
|
|
+ . [ key key_re . eq . store anyquot . Sep.space . del /(\\\\\n[ \t]*)?/ "" ]*
|
|
+ . store (word - reserved_key - /zzz/)
|
|
. [ Sep.space . label "@arg" . sto_to_semicol]?
|
|
|
|
(************************************************************************
|
|
diff --git a/lenses/tests/test_shellvars.aug b/lenses/tests/test_shellvars.aug
|
|
index 68a77ad..dd4132e 100644
|
|
--- a/lenses/tests/test_shellvars.aug
|
|
+++ b/lenses/tests/test_shellvars.aug
|
|
@@ -552,7 +552,9 @@ esac\n" =
|
|
test Shellvars.lns get "echo foobar 'and this is baz'
|
|
/usr/local/bin/myscript.sh with args
|
|
echo foo \
|
|
-bar\n" =
|
|
+bar
|
|
+abc=def \
|
|
+ ghi=\"jkl mno\" command arg1 arg2\n" =
|
|
{ "@command" = "echo"
|
|
{ "@arg" = "foobar 'and this is baz'" }
|
|
}
|
|
@@ -563,6 +565,11 @@ bar\n" =
|
|
{ "@arg" = "foo \
|
|
bar" }
|
|
}
|
|
+ { "@command" = "command"
|
|
+ { "abc" = "def" }
|
|
+ { "ghi" = "\"jkl mno\"" }
|
|
+ { "@arg" = "arg1 arg2" }
|
|
+ }
|
|
|
|
(* Local Variables: *)
|
|
(* mode: caml *)
|
|
--
|
|
1.9.3
|
|
|