mirror of
https://github.com/fish-shell/fish-shell.git
synced 2024-11-27 19:53:36 +08:00
44184f68e4
There's a terrible number of fishscripts that start with set path (dirname (status filename)) And that's really just a bit boring. So let's let it be set path (status dirname)
54 lines
1.1 KiB
Fish
54 lines
1.1 KiB
Fish
#RUN: env FISH_PATH=%fish FILE_PATH=%s %fish %s
|
|
|
|
status line-number
|
|
# CHECK: 3
|
|
|
|
# Check status fish-path
|
|
# No output expected on success
|
|
set status_fish_path (realpath (status fish-path))
|
|
set env_fish_path (realpath $FISH_PATH)
|
|
test "$status_fish_path" = "$env_fish_path"
|
|
or echo "Fish path disagreement: $status_fish_path vs $env_fish_path"
|
|
|
|
# Check is-block
|
|
status is-block
|
|
echo $status
|
|
begin
|
|
status is-block
|
|
echo $status
|
|
end
|
|
# CHECK: 1
|
|
# CHECK: 0
|
|
|
|
# Check filename
|
|
set status_filename (status filename)
|
|
test (status filename) = "$FILE_PATH"
|
|
or echo "File path disagreement: $status_filename vs $FILE_PATH"
|
|
|
|
function print_my_name
|
|
status function
|
|
end
|
|
print_my_name
|
|
# CHECK: print_my_name
|
|
|
|
status is-command-substitution
|
|
echo $status
|
|
echo (status is-command-substitution; echo $status)
|
|
# CHECK: 1
|
|
# CHECK: 0
|
|
|
|
test (status filename) = (status dirname)/(status basename)
|
|
|
|
status basename
|
|
#CHECK: status-command.fish
|
|
|
|
status dirname | string match -q '*checks'
|
|
echo $status
|
|
#CHECK: 0
|
|
|
|
echo "status dirname" | source
|
|
#CHECK: .
|
|
|
|
$FISH_PATH -c 'status dirname'
|
|
#CHECK: Standard input
|