mirror of
https://github.com/fish-shell/fish-shell.git
synced 2024-12-03 08:23:51 +08:00
1e858eae35
This demonstrates that we only write control sequences when interactive.
46 lines
793 B
Fish
46 lines
793 B
Fish
# RUN: %fish %s
|
|
|
|
# A for-loop-variable is a local variable in the enclosing scope.
|
|
set -g i global
|
|
# implicit set -l i $i
|
|
for i in local
|
|
end
|
|
set -ql i && echo $i
|
|
# CHECK: local
|
|
|
|
# The loop variable is initialized with any previous value.
|
|
set -g j global
|
|
for j in
|
|
end
|
|
set -ql j && echo $j
|
|
# CHECK: global
|
|
|
|
# Loop variables exist only locally in the enclosing local scope.
|
|
# They do not modify other local/global/universal variables.
|
|
set -g k global
|
|
begin
|
|
for k in local1
|
|
echo $k
|
|
# CHECK: local1
|
|
for k in local2
|
|
end
|
|
echo $k
|
|
# CHECK: local2
|
|
end
|
|
echo $k
|
|
# CHECK: local1
|
|
end
|
|
echo $k
|
|
# CHECK: global
|
|
|
|
function foo --on-variable foo
|
|
echo foo set
|
|
end
|
|
|
|
for foo in 1 2 3
|
|
true
|
|
end
|
|
# CHECK: foo set
|
|
# CHECK: foo set
|
|
# CHECK: foo set
|