fish-shell/tests/checks/for.fish

46 lines
812 B
Fish
Raw Normal View History

# RUN: %fish %s | %filter-ctrlseqs
# 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